diff --git a/benchmarks/src/anvil.ts b/benchmarks/src/anvil.ts index d4f2d6b08..909dcb720 100644 --- a/benchmarks/src/anvil.ts +++ b/benchmarks/src/anvil.ts @@ -19,7 +19,7 @@ if (!process.env.ANVIL_FORK_BLOCK_NUMBER) { throw new Error('Missing environment variable "ANVIL_FORK_BLOCK_NUMBER"'); } export const FORK_BLOCK_NUMBER = BigInt( - Number(process.env.ANVIL_FORK_BLOCK_NUMBER) + Number(process.env.ANVIL_FORK_BLOCK_NUMBER), ); export const anvil = { diff --git a/benchmarks/src/ponder.ts b/benchmarks/src/ponder.ts index 85c30f333..0ee7bc0e6 100644 --- a/benchmarks/src/ponder.ts +++ b/benchmarks/src/ponder.ts @@ -7,7 +7,7 @@ const END_BLOCK_TIMESTAMP = 1687010711; // Mainnet block 17500010 const fetchPonderMetrics = async () => { try { const metricsResponse = await fetchWithTimeout( - "http://localhost:42069/metrics" + "http://localhost:42069/metrics", ); const metricsRaw = await metricsResponse.text(); const metrics = parsePrometheusText(metricsRaw); @@ -26,10 +26,10 @@ const waitForSyncComplete = async () => { const metrics = await fetchPonderMetrics(); const latestProcessedTimestamp = metrics.find( - (m) => m.name === "ponder_indexing_latest_processed_timestamp" + (m) => m.name === "ponder_indexing_latest_processed_timestamp", )?.metrics[0].value ?? 0; console.log( - `Latest processed timestamp: ${latestProcessedTimestamp}/${END_BLOCK_TIMESTAMP}` + `Latest processed timestamp: ${latestProcessedTimestamp}/${END_BLOCK_TIMESTAMP}`, ); if (latestProcessedTimestamp >= END_BLOCK_TIMESTAMP) { diff --git a/benchmarks/src/subgraph.ts b/benchmarks/src/subgraph.ts index 4efddbdf7..2447db9e1 100644 --- a/benchmarks/src/subgraph.ts +++ b/benchmarks/src/subgraph.ts @@ -17,7 +17,7 @@ const fetchSubgraphLatestBlockNumber = async () => { number } } - }` + }`, ); const error = response.errors?.[0]; @@ -25,7 +25,7 @@ const fetchSubgraphLatestBlockNumber = async () => { if (error) { if ( error.message?.endsWith( - "Wait for it to ingest a few blocks before querying it" + "Wait for it to ingest a few blocks before querying it", ) ) { return 0; @@ -82,7 +82,7 @@ const waitForSyncComplete = async () => { const interval = setInterval(async () => { const latestSyncedBlockNumber = await fetchSubgraphLatestBlockNumber(); console.log( - `Latest synced block number: ${latestSyncedBlockNumber}/${END_BLOCK}` + `Latest synced block number: ${latestSyncedBlockNumber}/${END_BLOCK}`, ); if (latestSyncedBlockNumber >= END_BLOCK) { @@ -114,7 +114,7 @@ export const subgraph = async () => { { timeout: 10_000, stdio: "inherit", - } + }, ); console.log("Deploying subgraph..."); @@ -132,7 +132,7 @@ export const subgraph = async () => { { timeout: 10_000, stdio: "inherit", - } + }, ); const duration = await waitForSyncComplete(); diff --git a/benchmarks/src/utils.ts b/benchmarks/src/utils.ts index 189fd91a2..15fb9c250 100644 --- a/benchmarks/src/utils.ts +++ b/benchmarks/src/utils.ts @@ -11,7 +11,7 @@ export const startClock = () => { export const fetchWithTimeout = async ( input: RequestInfo | URL, - options: RequestInit & { timeout?: number } = {} + options: RequestInit & { timeout?: number } = {}, ) => { const { timeout = 2_000 } = options; diff --git a/docs/package.json b/docs/package.json index 1d3318d5e..a37f32c48 100644 --- a/docs/package.json +++ b/docs/package.json @@ -8,21 +8,21 @@ "lint": "next lint" }, "dependencies": { - "@segment/analytics-node": "^1.1.0", - "next": "^13.4.12", + "@segment/analytics-node": "^1.1.3", + "next": "^14.0.2", "nextra": "^2.13.2", "nextra-theme-docs": "^2.13.2", - "react": "^18.1.0", - "react-dom": "^18.1.0" + "react": "^18.2.0", + "react-dom": "^18.2.0" }, "devDependencies": { - "@mdx-js/react": "^2.1.5", - "@svgr/webpack": "^6.5.1", - "@types/node": "^18.7.8", - "@types/react": "^18.0.25", - "@types/react-dom": "^18.0.9", - "eslint": "^8.17.0", - "eslint-config-next": "^13.0.5", - "typescript": "^4.9.3" + "@mdx-js/react": "^3.0.0", + "@svgr/webpack": "^8.1.0", + "@types/node": "^20.9.0", + "@types/react": "^18.2.37", + "@types/react-dom": "^18.2.15", + "eslint": "^8.53.0", + "eslint-config-next": "^14.0.2", + "typescript": "^5.2.2" } } diff --git a/docs/pages/api/telemetry/index.ts b/docs/pages/api/telemetry/index.ts index 970169b5b..5b55a6525 100644 --- a/docs/pages/api/telemetry/index.ts +++ b/docs/pages/api/telemetry/index.ts @@ -26,7 +26,7 @@ const asyncTrack = (payload: TrackParams) => { export default async function forwardTelemetry( req: NextApiRequest, - res: NextApiResponse + res: NextApiResponse, ) { if (req.method !== "POST") { return res.status(405).json({ diff --git a/examples/art-gobblers/package.json b/examples/art-gobblers/package.json index 48aa7ba5f..557e50ec2 100644 --- a/examples/art-gobblers/package.json +++ b/examples/art-gobblers/package.json @@ -11,10 +11,10 @@ "@ponder/core": "workspace:*" }, "devDependencies": { - "abitype": "^0.8.11", - "eslint": "^8.43.0", + "abitype": "^0.10.2", + "eslint": "^8.53.0", "eslint-config-ponder": "workspace:*", - "typescript": "^5.1.3", - "viem": "^1.2.6" + "typescript": "^5.2.2", + "viem": "^1.18.9" } } diff --git a/examples/ethfs/package.json b/examples/ethfs/package.json index bf7a09102..ccf002792 100644 --- a/examples/ethfs/package.json +++ b/examples/ethfs/package.json @@ -11,10 +11,10 @@ "@ponder/core": "workspace:*" }, "devDependencies": { - "abitype": "^0.8.11", - "eslint": "^8.43.0", + "abitype": "^0.10.2", + "eslint": "^8.53.0", "eslint-config-ponder": "workspace:*", - "typescript": "^5.1.3", - "viem": "^1.2.6" + "typescript": "^5.2.2", + "viem": "^1.18.9" } } diff --git a/examples/factory-llama/package.json b/examples/factory-llama/package.json index fbd3d4392..699f38b50 100644 --- a/examples/factory-llama/package.json +++ b/examples/factory-llama/package.json @@ -11,10 +11,10 @@ "@ponder/core": "workspace:latest" }, "devDependencies": { - "abitype": "^0.8.11", - "eslint": "^8.43.0", + "abitype": "^0.10.2", + "eslint": "^8.53.0", "eslint-config-ponder": "workspace:latest", - "typescript": "^5.1.3", - "viem": "^1.2.6" + "typescript": "^5.2.2", + "viem": "^1.18.9" } } diff --git a/examples/friendtech/package.json b/examples/friendtech/package.json index b739d59ab..e278c9abf 100644 --- a/examples/friendtech/package.json +++ b/examples/friendtech/package.json @@ -11,10 +11,10 @@ "@ponder/core": "workspace:*" }, "devDependencies": { - "abitype": "^0.8.11", - "eslint": "^8.43.0", + "abitype": "^0.10.2", + "eslint": "^8.53.0", "eslint-config-ponder": "workspace:*", - "typescript": "^5.1.3", - "viem": "^1.2.6" + "typescript": "^5.2.2", + "viem": "^1.18.9" } } diff --git a/examples/token-erc721/package.json b/examples/token-erc721/package.json index 5b72874ea..bea0de0be 100644 --- a/examples/token-erc721/package.json +++ b/examples/token-erc721/package.json @@ -11,10 +11,10 @@ "@ponder/core": "workspace:*" }, "devDependencies": { - "abitype": "^0.8.11", - "eslint": "^8.43.0", + "abitype": "^0.10.2", + "eslint": "^8.53.0", "eslint-config-ponder": "workspace:*", - "typescript": "^5.1.3", - "viem": "^1.2.6" + "typescript": "^5.2.2", + "viem": "^1.18.9" } } diff --git a/examples/token-reth/package.json b/examples/token-reth/package.json index a4eee22ea..e8d992ee3 100644 --- a/examples/token-reth/package.json +++ b/examples/token-reth/package.json @@ -11,10 +11,10 @@ "@ponder/core": "workspace:*" }, "devDependencies": { - "abitype": "^0.8.11", - "eslint": "^8.43.0", + "abitype": "^0.10.2", + "eslint": "^8.53.0", "eslint-config-ponder": "workspace:*", - "typescript": "^5.1.3", - "viem": "^1.2.6" + "typescript": "^5.2.2", + "viem": "^1.18.9" } } diff --git a/package.json b/package.json index 06e14be99..9d7502983 100644 --- a/package.json +++ b/package.json @@ -19,16 +19,16 @@ }, "devDependencies": { "@changesets/changelog-github": "^0.4.8", - "@changesets/cli": "^2.26.1", - "@typescript-eslint/eslint-plugin": "^6.3.0", - "@typescript-eslint/parser": "^6.3.0", - "eslint": "^8.43.0", - "eslint-config-prettier": "^8.8.0", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-simple-import-sort": "^7.0.0", - "lint-staged": "^13.2.3", - "prettier": "^2.8.8", + "@changesets/cli": "^2.26.2", + "@typescript-eslint/eslint-plugin": "^6.10.0", + "@typescript-eslint/parser": "^6.10.0", + "eslint": "^8.53.0", + "eslint-config-prettier": "^9.0.0", + "eslint-plugin-import": "^2.29.0", + "eslint-plugin-prettier": "^5.0.1", + "eslint-plugin-simple-import-sort": "^10.0.0", + "lint-staged": "^15.0.2", + "prettier": "^3.0.3", "simple-git-hooks": "^2.9.0", "typescript": "^5.2.2" }, diff --git a/packages/core/package.json b/packages/core/package.json index 9588794d2..891c75fef 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -32,57 +32,59 @@ "test": "vitest", "typecheck": "tsc --project tsconfig.json --noEmit" }, + "peerDependencies": { + "viem": "^1", + "typescript": "^5" + }, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@jridgewell/trace-mapping": "^0.3.17", - "abitype": "^0.8.11", + "@babel/code-frame": "^7.22.13", + "@jridgewell/trace-mapping": "^0.3.20", + "abitype": "^0.10.2", "async-mutex": "^0.4.0", - "better-sqlite3": "^8.7.0", + "better-sqlite3": "^9.1.1", "cac": "^6.7.14", "conf": "^12.0.0", "cors": "^2.8.5", - "data-uri-to-buffer": "3.0.1", - "detect-package-manager": "^2.0.1", - "dotenv": "^16.0.1", - "emittery": "^0.13.1", + "data-uri-to-buffer": "6.0.1", + "detect-package-manager": "^3.0.1", + "dotenv": "^16.3.1", + "emittery": "^1.0.1", "ethereum-bloom-filters": "^1.0.10", - "express": "^4.18.1", - "glob": "^8.1.0", + "express": "^4.18.2", + "glob": "^10.3.10", "graphql": "^16.8.1", "graphql-http": "^1.22.0", "http-terminator": "^3.2.0", - "ink": "^3.2.0", - "kysely": "^0.24.2", - "p-limit": "3", + "ink": "^4.4.1", + "kysely": "^0.26.3", + "p-limit": "^5.0.0", "p-queue": "^7.4.1", "pg": "^8.11.3", "picocolors": "^1.0.0", - "pino": "^8.14.1", - "prom-client": "^14.2.0", - "react": "17", + "pino": "^8.16.1", + "prom-client": "^15.0.0", + "react": "^18.2.0", "retry": "^0.13.1", "stacktrace-parser": "^0.1.10", - "viem": "^1.2.6", "vite": "^4.5.0", "vite-node": "^0.34.6" }, "devDependencies": { - "@types/babel__code-frame": "^7.0.3", - "@types/better-sqlite3": "^7.6.0", - "@types/cors": "^2.8.12", - "@types/express": "^4.17.13", - "@types/glob": "^8.0.0", + "@types/babel__code-frame": "^7.0.6", + "@types/better-sqlite3": "^7.6.7", + "@types/cors": "^2.8.16", + "@types/express": "^4.17.21", + "@types/glob": "^8.1.0", "@types/node": "^20.9.0", - "@types/pg": "^8.6.6", - "@types/react": "^18.0.25", - "@types/retry": "^0.12.2", - "@types/supertest": "^2.0.12", + "@types/pg": "^8.10.9", + "@types/react": "^18.2.37", + "@types/retry": "^0.12.5", + "@types/supertest": "^2.0.16", "@viem/anvil": "^0.0.6", - "concurrently": "^8.2.0", - "rimraf": "^5.0.1", + "concurrently": "^8.2.2", + "rimraf": "^5.0.5", "supertest": "^6.3.3", - "tsc-alias": "^1.8.2", - "typescript": "^5.2.2", + "tsc-alias": "^1.8.8", "vitest": "^0.34.6" } } diff --git a/packages/core/src/Ponder.ts b/packages/core/src/Ponder.ts index 712767133..519324fcc 100644 --- a/packages/core/src/Ponder.ts +++ b/packages/core/src/Ponder.ts @@ -4,7 +4,7 @@ import process from "node:process"; import { BuildService } from "@/build/service.js"; import { CodegenService } from "@/codegen/service.js"; import { buildDatabase } from "@/config/database.js"; -import { type Network, buildNetwork } from "@/config/networks.js"; +import { buildNetwork, type Network } from "@/config/networks.js"; import { type Options } from "@/config/options.js"; import { UserErrorService } from "@/errors/service.js"; import { IndexingService } from "@/indexing/service.js"; @@ -87,7 +87,7 @@ export class Ponder { service: "app", msg: `Started using config file: ${path.relative( this.common.options.rootDir, - this.common.options.configFile + this.common.options.configFile, )}`, }); @@ -122,7 +122,7 @@ export class Ponder { .map((network) => buildNetwork({ network, common: this.common })) .filter((network) => { const hasEventSources = this.sources.some( - (eventSource) => eventSource.network === network.name + (eventSource) => eventSource.network === network.name, ); if (!hasEventSources) { this.common.logger.warn({ @@ -136,7 +136,7 @@ export class Ponder { this.syncServices = []; networksToSync.forEach((network) => { const sourcesForNetwork = this.sources.filter( - (logSource) => logSource.network === network.name + (logSource) => logSource.network === network.name, ); this.syncServices.push({ network, @@ -215,7 +215,7 @@ export class Ponder { historical.start(); await realtime.start(); - }) + }), ); } @@ -236,7 +236,7 @@ export class Ponder { historical.start(); await realtime.start(); - }) + }), ); } @@ -266,7 +266,7 @@ export class Ponder { this.syncServices.map(async ({ realtime, historical }) => { await realtime.kill(); await historical.kill(); - }) + }), ); await this.buildService.kill(); @@ -317,7 +317,7 @@ export class Ponder { await this.indexingService.reset({ indexingFunctions: hydrated }); await this.indexingService.processEvents(); - } + }, ); this.syncServices.forEach(({ network, historical, realtime }) => { diff --git a/packages/core/src/_test/art-gobblers/app.test.ts b/packages/core/src/_test/art-gobblers/app.test.ts index bc5bc2a5f..29b820fce 100644 --- a/packages/core/src/_test/art-gobblers/app.test.ts +++ b/packages/core/src/_test/art-gobblers/app.test.ts @@ -1,6 +1,7 @@ import { rmSync } from "node:fs"; + import request from "supertest"; -import { type TestContext, afterEach, beforeEach, expect, test } from "vitest"; +import { afterEach, beforeEach, expect, test, type TestContext } from "vitest"; import { setupIndexingStore, setupSyncStore } from "@/_test/setup.js"; import { buildOptions } from "@/config/options.js"; diff --git a/packages/core/src/_test/constants.ts b/packages/core/src/_test/constants.ts index b1bfeb2ce..d0288aa82 100644 --- a/packages/core/src/_test/constants.ts +++ b/packages/core/src/_test/constants.ts @@ -1,8 +1,8 @@ import { + parseAbiItem, type RpcBlock, type RpcLog, type RpcTransaction, - parseAbiItem, } from "viem"; import { getEvents } from "@/config/abi.js"; @@ -901,7 +901,7 @@ export const uniswapV3PoolFactoryConfig = { criteria: buildFactoryCriteria({ address: "0x1f98431c8ad98523631ae4a59f267346ea31f984", event: parseAbiItem( - "event PoolCreated(address indexed token0, address indexed token1, uint24 indexed fee, int24 tickSpacing, address pool)" + "event PoolCreated(address indexed token0, address indexed token1, uint24 indexed fee, int24 tickSpacing, address pool)", ), parameter: "pool", }), diff --git a/packages/core/src/_test/ens/app.test.ts b/packages/core/src/_test/ens/app.test.ts index 76c6da7f1..bacd1e71e 100644 --- a/packages/core/src/_test/ens/app.test.ts +++ b/packages/core/src/_test/ens/app.test.ts @@ -1,6 +1,7 @@ import { rmSync } from "node:fs"; + import request from "supertest"; -import { type TestContext, afterEach, beforeEach, expect, test } from "vitest"; +import { afterEach, beforeEach, expect, test, type TestContext } from "vitest"; import { setupIndexingStore, setupSyncStore } from "@/_test/setup.js"; import { buildOptions } from "@/config/options.js"; diff --git a/packages/core/src/_test/ens/app/src/index.ts b/packages/core/src/_test/ens/app/src/index.ts index 4560de839..0d2840dc6 100644 --- a/packages/core/src/_test/ens/app/src/index.ts +++ b/packages/core/src/_test/ens/app/src/index.ts @@ -40,5 +40,5 @@ ponder.on( lastActive: Number(event.block.timestamp), }, }); - } + }, ); diff --git a/packages/core/src/_test/globalSetup.ts b/packages/core/src/_test/globalSetup.ts index fc5243b2a..064a40002 100644 --- a/packages/core/src/_test/globalSetup.ts +++ b/packages/core/src/_test/globalSetup.ts @@ -38,7 +38,7 @@ export default async function () { for (const table of tables) { await pool.query( - `DROP TABLE IF EXISTS "${schema}"."${table}" CASCADE` + `DROP TABLE IF EXISTS "${schema}"."${table}" CASCADE`, ); } await pool.query(`DROP SCHEMA IF EXISTS "${schema}" CASCADE`); diff --git a/packages/core/src/_test/setup.ts b/packages/core/src/_test/setup.ts index b978f92a5..60aa39c53 100644 --- a/packages/core/src/_test/setup.ts +++ b/packages/core/src/_test/setup.ts @@ -1,6 +1,6 @@ import SqliteDatabase from "better-sqlite3"; import { Pool } from "pg"; -import { type TestContext, beforeEach } from "vitest"; +import { beforeEach, type TestContext } from "vitest"; import { patchSqliteDatabase } from "@/config/database.js"; import { buildOptions } from "@/config/options.js"; @@ -61,7 +61,7 @@ beforeEach((context) => { */ export async function setupSyncStore( context: TestContext, - options = { migrateUp: true } + options = { migrateUp: true }, ) { if (process.env.DATABASE_URL) { const pool = new Pool({ connectionString: process.env.DATABASE_URL }); diff --git a/packages/core/src/_test/utils.ts b/packages/core/src/_test/utils.ts index c97e09427..2513c86bb 100644 --- a/packages/core/src/_test/utils.ts +++ b/packages/core/src/_test/utils.ts @@ -1,13 +1,13 @@ import { type Chain, - type HttpTransport, - type PublicClient, - type TestClient, - type WalletClient, createPublicClient, createTestClient, createWalletClient, http, + type HttpTransport, + type PublicClient, + type TestClient, + type WalletClient, } from "viem"; import { mainnet } from "viem/chains"; diff --git a/packages/core/src/build/functions.ts b/packages/core/src/build/functions.ts index d6ef7b9e9..041e210a1 100644 --- a/packages/core/src/build/functions.ts +++ b/packages/core/src/build/functions.ts @@ -103,7 +103,7 @@ export const hydrateIndexingFunctions = ({ eventData.safeName ] = { ...eventData, fn: fn }; }); - } + }, ); return indexingFunctions; diff --git a/packages/core/src/build/service.ts b/packages/core/src/build/service.ts index b13b9e69e..75f0144ad 100644 --- a/packages/core/src/build/service.ts +++ b/packages/core/src/build/service.ts @@ -1,8 +1,9 @@ /* eslint-disable @typescript-eslint/ban-ts-comment */ +import path from "node:path"; + import Emittery from "emittery"; -import glob from "glob"; +import { glob } from "glob"; import type { GraphQLSchema } from "graphql"; -import path from "node:path"; // @ts-ignore import type { ViteDevServer } from "vite"; // @ts-ignore @@ -123,7 +124,7 @@ export class BuildService extends Emittery { const handleFileChange = async (files_: string[]) => { const files = files_.map( (file) => - toFilePath(normalizeModuleId(file), this.common.options.rootDir).path + toFilePath(normalizeModuleId(file), this.common.options.rootDir).path, ); // Invalidate all modules that depend on the updated files. @@ -149,8 +150,8 @@ export class BuildService extends Emittery { const srcRegex = new RegExp( `^${this.common.options.srcDir.replace( /[.*+?^${}()|[\]\\]/g, - "\\$&" - )}/.*\\.(js|ts)$` + "\\$&", + )}/.*\\.(js|ts)$`, ); const srcFiles = invalidated.filter((file) => srcRegex.test(file)); @@ -166,8 +167,8 @@ export class BuildService extends Emittery { const ignoreRegex = new RegExp( `^${this.common.options.ponderDir.replace( /[.*+?^${}()|[\]\\]/g, - "\\$&" - )}/.*[^/]$` + "\\$&", + )}/.*[^/]$`, ); if (ignoreRegex.test(file)) return; @@ -223,15 +224,15 @@ export class BuildService extends Emittery { const files = files_ ?? glob.sync( - path.join(this.common.options.srcDir, "**/*.{js,cjs,mjs,ts,mts}") + path.join(this.common.options.srcDir, "**/*.{js,cjs,mjs,ts,mts}"), ); const results = await Promise.all( - files.map((file) => this.executeFile(file)) + files.map((file) => this.executeFile(file)), ); const errorResults = results.filter( - (r): r is { file: string; error: ViteNodeError } => r.error !== undefined + (r): r is { file: string; error: ViteNodeError } => r.error !== undefined, ); if (errorResults.length > 0) { this.handleViteNodeError(errorResults[0]); @@ -239,7 +240,7 @@ export class BuildService extends Emittery { } const successResults = results.filter( - (r): r is { file: string; exports: any } => r.exports !== undefined + (r): r is { file: string; exports: any } => r.exports !== undefined, ); for (const result of successResults) { @@ -261,7 +262,7 @@ export class BuildService extends Emittery { for (const eventName of Object.keys(this.indexingFunctions[file])) { if (eventNameSet.has(eventName)) { throw new Error( - `Cannot register two indexing functions for one event '${eventName}' in '${file}'` + `Cannot register two indexing functions for one event '${eventName}' in '${file}'`, ); } eventNameSet.add(eventName); @@ -280,7 +281,7 @@ export class BuildService extends Emittery { const rawIndexingFunctions: RawIndexingFunctions = { eventSources: {} }; for (const file of Object.keys(this.indexingFunctions)) { for (const [fullName, fn] of Object.entries( - this.indexingFunctions[file] + this.indexingFunctions[file], )) { if (fullName === "setup") { rawIndexingFunctions._meta_ ||= {}; @@ -292,7 +293,7 @@ export class BuildService extends Emittery { rawIndexingFunctions.eventSources[eventSourceName] ||= {}; if (rawIndexingFunctions.eventSources[eventSourceName][eventName]) throw new Error( - `Cannot add multiple handler functions for event: ${name}` + `Cannot add multiple handler functions for event: ${name}`, ); rawIndexingFunctions.eventSources[eventSourceName][eventName] = fn; } @@ -333,7 +334,7 @@ export class BuildService extends Emittery { service: "build", msg: `Error while ${verb} ${path.relative( this.common.options.rootDir, - file + file, )}`, error: error, }); diff --git a/packages/core/src/build/stacktrace.ts b/packages/core/src/build/stacktrace.ts index d683ea903..0a93d4281 100644 --- a/packages/core/src/build/stacktrace.ts +++ b/packages/core/src/build/stacktrace.ts @@ -1,5 +1,6 @@ -import { codeFrameColumns } from "@babel/code-frame"; import { readFileSync } from "node:fs"; + +import { codeFrameColumns } from "@babel/code-frame"; import { parse as parseStackTrace } from "stacktrace-parser"; class ESBuildTransformError extends Error { @@ -103,7 +104,7 @@ export function parseViteNodeError(error: Error): ViteNodeError { codeFrame = codeFrameColumns( sourceFileContents, { start: { line: lineNumber, column: column ?? undefined } }, - { highlightCode: true } + { highlightCode: true }, ); break; } catch (err) { diff --git a/packages/core/src/codegen/service.ts b/packages/core/src/codegen/service.ts index fee777cd1..eadf5c823 100644 --- a/packages/core/src/codegen/service.ts +++ b/packages/core/src/codegen/service.ts @@ -1,8 +1,9 @@ +import { writeFileSync } from "node:fs"; +import path from "node:path"; + import Emittery from "emittery"; import type { GraphQLSchema } from "graphql"; import { printSchema } from "graphql"; -import { writeFileSync } from "node:fs"; -import path from "node:path"; import type { Common } from "@/Ponder.js"; import { ensureDirExists } from "@/utils/exists.js"; @@ -57,7 +58,7 @@ export class CodegenService extends Emittery { const filePath = path.join( this.common.options.generatedDir, - "schema.graphql" + "schema.graphql", ); ensureDirExists(filePath); writeFileSync(filePath, final, "utf8"); diff --git a/packages/core/src/config/abi.ts b/packages/core/src/config/abi.ts index b97beff18..621aec2b6 100644 --- a/packages/core/src/config/abi.ts +++ b/packages/core/src/config/abi.ts @@ -1,5 +1,5 @@ import { type Abi, type AbiEvent, formatAbiItem } from "abitype"; -import { type Hex, getEventSelector } from "viem"; +import { getEventSelector, type Hex } from "viem"; import { getDuplicateElements } from "@/utils/duplicates.js"; @@ -25,7 +25,7 @@ export const getEvents = ({ abi }: { abi: Abi }) => { .filter((item) => item.anonymous === undefined || item.anonymous === false); const overloadedEventNames = getDuplicateElements( - abiEvents.map((item) => item.name) + abiEvents.map((item) => item.name), ); return abiEvents.reduce((acc, item) => { diff --git a/packages/core/src/config/config.test-d.ts b/packages/core/src/config/config.test-d.ts index 973b603b1..5bdd11772 100644 --- a/packages/core/src/config/config.test-d.ts +++ b/packages/core/src/config/config.test-d.ts @@ -88,7 +88,7 @@ type OneAbi = ParseAbi< [ "event Event0(bytes32 indexed arg3)", "event Event1(bytes32 indexed)", - "constructor()" + "constructor()", ] >; type TwoAbi = ParseAbi<["event Event(bytes32 indexed)", "event Event()"]>; @@ -100,7 +100,7 @@ test("filter events", () => { assertType( [] as unknown as ParseAbi< ["event Event0(bytes32 indexed arg3)", "event Event1(bytes32 indexed)"] - > + >, ); }); diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index 9903e04bc..b2cacad42 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -3,7 +3,7 @@ import type { GetEventArgs, Transport } from "viem"; export type FilterAbiEvents = T extends readonly [ infer First, - ...infer Rest extends Abi + ...infer Rest extends Abi, ] ? First extends AbiEvent ? readonly [First, ...FilterAbiEvents] @@ -15,7 +15,7 @@ export type FilterAbiEvents = T extends readonly [ */ type FilterElement< TElement, - TArr extends readonly unknown[] + TArr extends readonly unknown[], > = TArr extends readonly [infer First, ...infer Rest] ? TElement extends First ? FilterElement @@ -27,10 +27,10 @@ type FilterElement< */ export type SafeEventNames< TAbi extends readonly AbiEvent[], - TArr extends readonly AbiEvent[] = TAbi + TArr extends readonly AbiEvent[] = TAbi, > = TAbi extends readonly [ infer First extends AbiEvent, - ...infer Rest extends readonly AbiEvent[] + ...infer Rest extends readonly AbiEvent[], ] ? First["name"] extends FilterElement[number]["name"] ? // Overriding occurs, use full name @@ -47,14 +47,14 @@ export type SafeEventNames< export type RecoverAbiEvent< TAbi extends readonly AbiEvent[], TSafeName extends string, - TSafeNames extends readonly string[] = SafeEventNames + TSafeNames extends readonly string[] = SafeEventNames, > = TAbi extends readonly [ infer FirstAbi, - ...infer RestAbi extends readonly AbiEvent[] + ...infer RestAbi extends readonly AbiEvent[], ] ? TSafeNames extends readonly [ infer FirstName, - ...infer RestName extends readonly string[] + ...infer RestName extends readonly string[], ] ? FirstName extends TSafeName ? FirstAbi @@ -66,7 +66,7 @@ export type RecoverAbiEvent< export type ContractRequired< TNetworkNames extends string, TAbi extends readonly AbiEvent[], - TEventName extends string + TEventName extends string, > = { /** Contract name. Must be unique across `contracts` and `filters`. */ name: string; @@ -85,7 +85,7 @@ export type ContractRequired< /** Fields for a contract used to filter down which events indexed. */ export type ContractFilter< TAbi extends readonly AbiEvent[], - TEventName extends string + TEventName extends string, > = ( | { address?: `0x${string}` | readonly `0x${string}`[]; @@ -145,7 +145,7 @@ export type ContractFilter< export type Contract< TNetworkNames extends string, TAbi extends readonly AbiEvent[], - TEventName extends string + TEventName extends string, > = ContractRequired & ContractFilter; @@ -212,10 +212,10 @@ export type Config = { type InferContracts< TContracts extends InternalContracts, - TNetworks extends readonly Network[] + TNetworks extends readonly Network[], > = TContracts extends readonly [ infer First extends Contract, - ...infer Rest extends InternalContracts + ...infer Rest extends InternalContracts, ] ? readonly [ Contract< @@ -227,7 +227,7 @@ type InferContracts< ? _event : string >, - ...InferContracts + ...InferContracts, ] : []; @@ -243,9 +243,9 @@ export const createConfig = < TConfig["networks"] >; options?: Option; - } + }, >( - config: TConfig + config: TConfig, ): TConfig => { // convert to an easier type to use const contracts = config.contracts as readonly Contract< @@ -258,7 +258,7 @@ export const createConfig = < contract.network.forEach((contractOverride) => { // Make sure network matches an element in config.networks const network = config.networks.find( - (n) => n.name === contractOverride.name + (n) => n.name === contractOverride.name, ); if (!network) throw Error('Contract network does not match a network in "networks"'); diff --git a/packages/core/src/config/database.ts b/packages/core/src/config/database.ts index 8b0feb41e..5eca26dd1 100644 --- a/packages/core/src/config/database.ts +++ b/packages/core/src/config/database.ts @@ -1,5 +1,6 @@ -import Sqlite from "better-sqlite3"; import path from "node:path"; + +import Sqlite from "better-sqlite3"; import pg from "pg"; import type { Config } from "@/config/config.js"; diff --git a/packages/core/src/config/factories.test.ts b/packages/core/src/config/factories.test.ts index f4d2f090d..b61576f96 100644 --- a/packages/core/src/config/factories.test.ts +++ b/packages/core/src/config/factories.test.ts @@ -8,7 +8,7 @@ import { } from "./factories.js"; const llamaFactoryEventAbiItem = parseAbiItem( - "event LlamaInstanceCreated(address indexed deployer, string indexed name, address llamaCore, address llamaExecutor, address llamaPolicy, uint256 chainId)" + "event LlamaInstanceCreated(address indexed deployer, string indexed name, address llamaCore, address llamaExecutor, address llamaPolicy, uint256 chainId)", ); test("buildFactoryCriteria throws if provided parameter not found in inputs", () => { @@ -17,9 +17,9 @@ test("buildFactoryCriteria throws if provided parameter not found in inputs", () address: "0xa", event: llamaFactoryEventAbiItem, parameter: "fakeParameter", - }) + }), ).toThrowError( - "Factory event parameter 'fakeParameter' not found in factory event signature. Found: deployer, name, llamaCore, llamaExecutor, llamaPolicy, chainId." + "Factory event parameter 'fakeParameter' not found in factory event signature. Found: deployer, name, llamaCore, llamaExecutor, llamaPolicy, chainId.", ); }); @@ -80,9 +80,9 @@ test("getAddressFromFactoryEventLog throws for invalid child address location", childAddressLocation: "notATopicOrOffset123", }, log: llamaInstanceCreatedLog, - }) + }), ).toThrowError( - "Invalid child address location identifier: notATopicOrOffset123" + "Invalid child address location identifier: notATopicOrOffset123", ); }); @@ -97,9 +97,9 @@ test("getAddressFromFactoryEventLog throws for log with not enough data", () => getAddressFromFactoryEventLog({ criteria, log: { ...llamaInstanceCreatedLog, data: "0x01" }, - }) + }), ).toThrowError( - "Invalid log for factory criteria: Data size too small, expected at least 32 bytes" + "Invalid log for factory criteria: Data size too small, expected at least 32 bytes", ); }); @@ -119,9 +119,9 @@ test("getAddressFromFactoryEventLog throws for log with not enough topics", () = "0x00fef2d461a2fabbb523f9f42752c61336f03b17a602af52cc6c83cb8b110599", ], }, - }) + }), ).toThrowError( - "Invalid log for factory criteria: Not enough topic values, expected at least 1" + "Invalid log for factory criteria: Not enough topic values, expected at least 1", ); }); diff --git a/packages/core/src/config/factories.ts b/packages/core/src/config/factories.ts index 3ab2d5eea..0dafaa133 100644 --- a/packages/core/src/config/factories.ts +++ b/packages/core/src/config/factories.ts @@ -34,17 +34,17 @@ export function buildFactoryCriteria({ } const nonIndexedInputs = event.inputs.filter( - (x) => !("indexed" in x && x.indexed) + (x) => !("indexed" in x && x.indexed), ); const nonIndexedInputPosition = nonIndexedInputs.findIndex( - (input) => input.name === parameter + (input) => input.name === parameter, ); if (nonIndexedInputPosition === -1) { throw new Error( `Factory event parameter '${parameter}' not found in factory event signature. Found: ${event.inputs .map((i) => i.name) - .join(", ")}.` + .join(", ")}.`, ); } @@ -74,7 +74,7 @@ export function getAddressFromFactoryEventLog({ const topic = log.topics[childAddressTopic]; if (topic === undefined) { throw new Error( - `Invalid log for factory criteria: Not enough topic values, expected at least ${childAddressTopic}` + `Invalid log for factory criteria: Not enough topic values, expected at least ${childAddressTopic}`, ); } const start = 2 + 12 * 2; @@ -91,7 +91,7 @@ export function getAddressFromFactoryEventLog({ throw new Error( `Invalid log for factory criteria: Data size too small, expected at least ${ end / 2 - 1 - } bytes` + } bytes`, ); } @@ -99,6 +99,6 @@ export function getAddressFromFactoryEventLog({ } throw new Error( - `Invalid child address location identifier: ${childAddressLocation}` + `Invalid child address location identifier: ${childAddressLocation}`, ); } diff --git a/packages/core/src/config/networks.ts b/packages/core/src/config/networks.ts index 397c514a4..53e1b7e09 100644 --- a/packages/core/src/config/networks.ts +++ b/packages/core/src/config/networks.ts @@ -1,4 +1,4 @@ -import { type Client, type PublicClient, createPublicClient } from "viem"; +import { type Client, createPublicClient, type PublicClient } from "viem"; import type { Config } from "@/config/config.js"; import type { Common } from "@/Ponder.js"; diff --git a/packages/core/src/config/options.ts b/packages/core/src/config/options.ts index 2587494fa..053c3e9d3 100644 --- a/packages/core/src/config/options.ts +++ b/packages/core/src/config/options.ts @@ -1,4 +1,5 @@ import path from "node:path"; + import type { LevelWithSilent } from "pino"; import type { CliOptions } from "@/bin/ponder.js"; @@ -34,7 +35,7 @@ export const buildOptions = ({ const logLevel = ( process.env.PONDER_LOG_LEVEL && ["silent", "fatal", "error", "warn", "info", "debug", "trace"].includes( - process.env.PONDER_LOG_LEVEL + process.env.PONDER_LOG_LEVEL, ) ? process.env.PONDER_LOG_LEVEL : "info" @@ -55,7 +56,7 @@ export const buildOptions = ({ telemetryUrl: "https://ponder.sh/api/telemetry", telemetryDisabled: Boolean(process.env.PONDER_TELEMETRY_DISABLED), telemetryIsExampleProject: Boolean( - process.env.PONDER_TELEMETRY_IS_EXAMPLE_PROJECT + process.env.PONDER_TELEMETRY_IS_EXAMPLE_PROJECT, ), logLevel, diff --git a/packages/core/src/config/sources.test.ts b/packages/core/src/config/sources.test.ts index 85c9625f3..532a35a85 100644 --- a/packages/core/src/config/sources.test.ts +++ b/packages/core/src/config/sources.test.ts @@ -145,6 +145,6 @@ test("buildSources() overrides default values with network values", () => { }); expect(sources[0].criteria.address).toBe( - "0xf39d15cb3910d5e33fb1a2e42d4a2da153ba076b" + "0xf39d15cb3910d5e33fb1a2e42d4a2da153ba076b", ); }); diff --git a/packages/core/src/config/sources.ts b/packages/core/src/config/sources.ts index db6234f84..eaf64bf4f 100644 --- a/packages/core/src/config/sources.ts +++ b/packages/core/src/config/sources.ts @@ -78,7 +78,7 @@ export const buildSources = ({ config }: { config: Config }): Source[] => { return contract.network .map((networkContract) => { const network = config.networks.find( - (n) => n.name === networkContract.name + (n) => n.name === networkContract.name, )!; const resolvedFilter = networkContract.filter ?? contract.filter; @@ -142,7 +142,7 @@ export const buildSources = ({ config }: { config: Config }): Source[] => { const buildTopics = ( abi: Abi, - filter: NonNullable[number]["filter"]> + filter: NonNullable[number]["filter"]>, ): Topics => { if (Array.isArray(filter.event)) { // List of event signatures diff --git a/packages/core/src/errors/postgres.ts b/packages/core/src/errors/postgres.ts index b4b62c880..9311ce411 100644 --- a/packages/core/src/errors/postgres.ts +++ b/packages/core/src/errors/postgres.ts @@ -21,7 +21,7 @@ export class PostgresError extends BaseError { acc[idx + 1] = parameter; return acc; }, - {} + {}, ); const metaMessages = []; diff --git a/packages/core/src/errors/sqlite.ts b/packages/core/src/errors/sqlite.ts index 033f4349d..1910bd466 100644 --- a/packages/core/src/errors/sqlite.ts +++ b/packages/core/src/errors/sqlite.ts @@ -19,7 +19,7 @@ export class SqliteError extends BaseError { acc[idx + 1] = parameter; return acc; }, - {} + {}, ); const metaMessages = []; diff --git a/packages/core/src/errors/user.ts b/packages/core/src/errors/user.ts index 96dcd09d9..55c792527 100644 --- a/packages/core/src/errors/user.ts +++ b/packages/core/src/errors/user.ts @@ -5,7 +5,7 @@ export class UserError extends Error { constructor( message: string, - options: { stack?: string; meta?: string; cause?: unknown } = {} + options: { stack?: string; meta?: string; cause?: unknown } = {}, ) { super(message, options.cause ? { cause: options.cause } : undefined); diff --git a/packages/core/src/indexing-store/postgres/store.ts b/packages/core/src/indexing-store/postgres/store.ts index d499dc9e9..c4afcfb2a 100644 --- a/packages/core/src/indexing-store/postgres/store.ts +++ b/packages/core/src/indexing-store/postgres/store.ts @@ -54,11 +54,11 @@ export class PostgresIndexingStore implements IndexingStore { ? async (connection) => { await connection.executeQuery( CompiledQuery.raw( - `CREATE SCHEMA IF NOT EXISTS ${databaseSchema}` - ) + `CREATE SCHEMA IF NOT EXISTS ${databaseSchema}`, + ), ); await connection.executeQuery( - CompiledQuery.raw(`SET search_path = ${databaseSchema}`) + CompiledQuery.raw(`SET search_path = ${databaseSchema}`), ); } : undefined, @@ -83,7 +83,7 @@ export class PostgresIndexingStore implements IndexingStore { Object.keys(this.schema.tables).map((tableName) => { const dbTableName = `${tableName}_${this.versionId}`; tx.schema.dropTable(dbTableName); - }) + }), ); } @@ -108,11 +108,11 @@ export class PostgresIndexingStore implements IndexingStore { if (!column.optional) col = col.notNull(); col = col.check( sql`${sql.ref(columnName)} in (${sql.join( - schema!.enums[column.type].map((v) => sql.lit(v)) - )})` + schema!.enums[column.type].map((v) => sql.lit(v)), + )})`, ); return col; - } + }, ); } else if (column.list) { tableBuilder = tableBuilder.addColumn( @@ -121,7 +121,7 @@ export class PostgresIndexingStore implements IndexingStore { (col) => { if (!column.optional) col = col.notNull(); return col; - } + }, ); } else { // Non-list base column @@ -131,7 +131,7 @@ export class PostgresIndexingStore implements IndexingStore { (col) => { if (!column.optional) col = col.notNull(); return col; - } + }, ); } }); @@ -140,22 +140,22 @@ export class PostgresIndexingStore implements IndexingStore { tableBuilder = tableBuilder.addColumn( "effectiveFrom", "integer", - (col) => col.notNull() + (col) => col.notNull(), ); tableBuilder = tableBuilder.addColumn( "effectiveTo", "integer", - (col) => col.notNull() + (col) => col.notNull(), ); tableBuilder = tableBuilder.addPrimaryKeyConstraint( `${dbTableName}_id_effectiveTo_unique`, // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore - ["id", "effectiveTo"] + ["id", "effectiveTo"], ); await tableBuilder.execute(); - }) + }), ); }); }; @@ -169,7 +169,7 @@ export class PostgresIndexingStore implements IndexingStore { await tx.schema .dropTable(`${tableName}_${this.versionId}`) .execute(); - }) + }), ); }); } @@ -515,7 +515,7 @@ export class PostgresIndexingStore implements IndexingStore { fieldName, direction === "asc" || direction === undefined ? sql`asc nulls first` - : sql`desc nulls last` + : sql`desc nulls last`, ); } } @@ -523,7 +523,7 @@ export class PostgresIndexingStore implements IndexingStore { const instances = await query.execute(); return instances.map((instance) => - this.deserializeInstance({ modelName, instance }) + this.deserializeInstance({ modelName, instance }), ); }; @@ -550,8 +550,8 @@ export class PostgresIndexingStore implements IndexingStore { const instances = await Promise.all( chunkedInstances.map((c) => - this.db.insertInto(tableName).values(c).returningAll().execute() - ) + this.db.insertInto(tableName).values(c).returningAll().execute(), + ), ); return instances @@ -650,12 +650,12 @@ export class PostgresIndexingStore implements IndexingStore { }) .returningAll() .executeTakeFirstOrThrow(); - }) + }), ); }); return instances.map((instance) => - this.deserializeInstance({ modelName, instance }) + this.deserializeInstance({ modelName, instance }), ); }; @@ -677,7 +677,7 @@ export class PostgresIndexingStore implements IndexingStore { .where("effectiveTo", ">=", safeTimestamp) .set({ effectiveTo: MAX_INTEGER }) .execute(); - }) + }), ); }); }; @@ -690,7 +690,7 @@ export class PostgresIndexingStore implements IndexingStore { instance: Record; }) => { const entity = Object.entries(this.schema!.tables).find( - ([name]) => name === modelName + ([name]) => name === modelName, )![1]; const deserializedInstance = {} as ModelInstance; diff --git a/packages/core/src/indexing-store/sqlite/store.ts b/packages/core/src/indexing-store/sqlite/store.ts index 163f9beae..ee732f254 100644 --- a/packages/core/src/indexing-store/sqlite/store.ts +++ b/packages/core/src/indexing-store/sqlite/store.ts @@ -64,7 +64,7 @@ export class SqliteIndexingStore implements IndexingStore { Object.keys(this.schema.tables).map((modelName) => { const tableName = `${modelName}_${this.versionId}`; tx.schema.dropTable(tableName); - }) + }), ); } @@ -88,11 +88,11 @@ export class SqliteIndexingStore implements IndexingStore { if (!column.optional) col = col.notNull(); col = col.check( sql`${sql.ref(columnName)} in (${sql.join( - schema!.enums[column.type].map((v) => sql.lit(v)) - )})` + schema!.enums[column.type].map((v) => sql.lit(v)), + )})`, ); return col; - } + }, ); } else if (column.list) { // Handle scalar list columns @@ -102,7 +102,7 @@ export class SqliteIndexingStore implements IndexingStore { (col) => { if (!column.optional) col = col.notNull(); return col; - } + }, ); } else { // Non-list base columns @@ -112,7 +112,7 @@ export class SqliteIndexingStore implements IndexingStore { (col) => { if (!column.optional) col = col.notNull(); return col; - } + }, ); } }); @@ -121,22 +121,22 @@ export class SqliteIndexingStore implements IndexingStore { tableBuilder = tableBuilder.addColumn( "effectiveFrom", "integer", - (col) => col.notNull() + (col) => col.notNull(), ); tableBuilder = tableBuilder.addColumn( "effectiveTo", "integer", - (col) => col.notNull() + (col) => col.notNull(), ); tableBuilder = tableBuilder.addPrimaryKeyConstraint( `${tableName}_id_effectiveTo_unique`, // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore - ["id", "effectiveTo"] + ["id", "effectiveTo"], ); await tableBuilder.execute(); - }) + }), ); }); }; @@ -150,7 +150,7 @@ export class SqliteIndexingStore implements IndexingStore { await tx.schema .dropTable(`${tableName}_${this.versionId}`) .execute(); - }) + }), ); }); } @@ -499,7 +499,7 @@ export class SqliteIndexingStore implements IndexingStore { const instances = await query.execute(); return instances.map((instance) => - this.deserializeInstance({ modelName, instance }) + this.deserializeInstance({ modelName, instance }), ); }; @@ -526,8 +526,8 @@ export class SqliteIndexingStore implements IndexingStore { const instances = await Promise.all( chunkedInstances.map((c) => - this.db.insertInto(tableName).values(c).returningAll().execute() - ) + this.db.insertInto(tableName).values(c).returningAll().execute(), + ), ); return instances @@ -626,12 +626,12 @@ export class SqliteIndexingStore implements IndexingStore { }) .returningAll() .executeTakeFirstOrThrow(); - }) + }), ); }); return instances.map((instance) => - this.deserializeInstance({ modelName, instance }) + this.deserializeInstance({ modelName, instance }), ); }; @@ -654,7 +654,7 @@ export class SqliteIndexingStore implements IndexingStore { .where("effectiveTo", ">=", safeTimestamp) .set({ effectiveTo: MAX_INTEGER }) .execute(); - }) + }), ); }); }; @@ -667,7 +667,7 @@ export class SqliteIndexingStore implements IndexingStore { instance: Record; }) => { const entity = Object.entries(this.schema!.tables).find( - ([name]) => name === modelName + ([name]) => name === modelName, )![1]; const deserializedInstance = {} as ModelInstance; @@ -695,7 +695,7 @@ export class SqliteIndexingStore implements IndexingStore { if (column.type === "bigint") { deserializedInstance[columnName] = decodeToBigInt( - value as unknown as string + value as unknown as string, ); return; } diff --git a/packages/core/src/indexing-store/store.test.ts b/packages/core/src/indexing-store/store.test.ts index 9dda40647..9e57b53ab 100644 --- a/packages/core/src/indexing-store/store.test.ts +++ b/packages/core/src/indexing-store/store.test.ts @@ -101,7 +101,7 @@ test("create() throws on unique constraint violation", async (context) => { timestamp: 15, id: "id1", data: { name: "Skip", age: 13 }, - }) + }), ).rejects.toThrow(); }); @@ -155,7 +155,7 @@ test("create() throws on invalid enum value", async (context) => { timestamp: 10, id: "id1", data: { name: "Skip", kind: "NOTACAT" }, - }) + }), ).rejects.toThrow(); }); @@ -293,7 +293,7 @@ test("update() throws if trying to update an instance in the past", async (conte timestamp: 8, id: "id1", data: { name: "Peanut Butter" }, - }) + }), ).rejects.toThrow(); }); @@ -422,7 +422,7 @@ test("upsert() throws if trying to update an instance in the past", async (conte id: "id1", create: { name: "Jelly" }, update: { name: "Peanut Butter" }, - }) + }), ).rejects.toThrow(); }); @@ -751,7 +751,7 @@ test("findMany() errors on invalid filter condition", async (context) => { indexingStore.findMany({ modelName: "Pet", where: { name: { invalidWhereCondition: "ar" } }, - }) + }), ).rejects.toThrow("Invalid filter condition name: invalidWhereCondition"); }); @@ -763,7 +763,7 @@ test("findMany() errors on orderBy object with multiple keys", async (context) = indexingStore.findMany({ modelName: "Pet", orderBy: { name: "asc", bigAge: "desc" }, - }) + }), ).rejects.toThrow("Invalid sort condition: Must have exactly one property"); }); diff --git a/packages/core/src/indexing-store/store.ts b/packages/core/src/indexing-store/store.ts index 95163cedc..f8323526f 100644 --- a/packages/core/src/indexing-store/store.ts +++ b/packages/core/src/indexing-store/store.ts @@ -27,7 +27,7 @@ type OperatorMap< | bigint | number | boolean - | (string | bigint | number | boolean)[] + | (string | bigint | number | boolean)[], > = { equals?: TField; not?: TField; diff --git a/packages/core/src/indexing-store/utils/format.ts b/packages/core/src/indexing-store/utils/format.ts index 88d0725a0..c28f6ad1e 100644 --- a/packages/core/src/indexing-store/utils/format.ts +++ b/packages/core/src/indexing-store/utils/format.ts @@ -7,7 +7,7 @@ import type { ModelInstance } from "../store.js"; */ export function formatModelInstance( data: Partial, - encodeBigInts: boolean + encodeBigInts: boolean, ) { const instance: { [key: string]: string | number | null | bigint } = {}; diff --git a/packages/core/src/indexing-store/utils/pagination.test.ts b/packages/core/src/indexing-store/utils/pagination.test.ts index 265f22051..a98e149c0 100644 --- a/packages/core/src/indexing-store/utils/pagination.test.ts +++ b/packages/core/src/indexing-store/utils/pagination.test.ts @@ -4,12 +4,12 @@ import { validateSkip, validateTake } from "./pagination.js"; test("validateSkip should throw if more than 5000 records", async () => { expect(() => validateSkip(5001)).toThrowError( - "Invalid query. Cannot skip more than 5000 rows." + "Invalid query. Cannot skip more than 5000 rows.", ); }); test("validateTake should throw if more than 1000 rows", async () => { expect(() => validateTake(5001)).toThrowError( - "Invalid query. Cannot take more than 1000 rows." + "Invalid query. Cannot take more than 1000 rows.", ); }); diff --git a/packages/core/src/indexing-store/utils/pagination.ts b/packages/core/src/indexing-store/utils/pagination.ts index f2bf6815b..ca2c98147 100644 --- a/packages/core/src/indexing-store/utils/pagination.ts +++ b/packages/core/src/indexing-store/utils/pagination.ts @@ -3,7 +3,7 @@ const MAX_SKIP = 5000; export function validateSkip(skip: number) { if (skip > MAX_SKIP) { throw new Error( - `Invalid query. Cannot skip more than 5000 rows. Received: ${skip} rows.` + `Invalid query. Cannot skip more than 5000 rows. Received: ${skip} rows.`, ); } return skip; @@ -14,7 +14,7 @@ const MAX_TAKE = 1000; export function validateTake(take: number) { if (take > MAX_TAKE) { throw new Error( - `Invalid query. Cannot take more than 1000 rows. Received: ${take} rows.` + `Invalid query. Cannot take more than 1000 rows. Received: ${take} rows.`, ); } return take; diff --git a/packages/core/src/indexing-store/utils/where.ts b/packages/core/src/indexing-store/utils/where.ts index 5d463e59b..46f594350 100644 --- a/packages/core/src/indexing-store/utils/where.ts +++ b/packages/core/src/indexing-store/utils/where.ts @@ -71,7 +71,7 @@ export function buildSqlWhereConditions({ const conditions: [ fieldName: string, operator: ComparisonOperatorExpression, - parameter: any + parameter: any, ][] = []; for (const [fieldName, rhs] of Object.entries(where)) { diff --git a/packages/core/src/indexing/ponderActions.test.ts b/packages/core/src/indexing/ponderActions.test.ts index a28068b8f..e94f80f21 100644 --- a/packages/core/src/indexing/ponderActions.test.ts +++ b/packages/core/src/indexing/ponderActions.test.ts @@ -7,9 +7,11 @@ import { } from "@/_test/constants.js"; import { publicClient } from "@/_test/utils.js"; -import { ponderActions } from "./ponderActions.js"; +import { ponderActions, type ReadOnlyClient } from "./ponderActions.js"; -const client = publicClient.extend(ponderActions(() => 16375000n)); +const client = publicClient.extend( + ponderActions(() => 16375000n) as any, +) as ReadOnlyClient; const usdcTotalSupply16375000 = 40921687992499550n; @@ -28,7 +30,7 @@ test("getBytecode()", async () => { expect(bytecode).toBeTruthy(); expect(keccak256(bytecode!)).toBe( - "0xd80d4b7c890cb9d6a4893e6b52bc34b56b25335cb13716e0d1d31383e6b41505" + "0xd80d4b7c890cb9d6a4893e6b52bc34b56b25335cb13716e0d1d31383e6b41505", ); }); @@ -39,7 +41,7 @@ test("getStorageAt()", async () => { }); expect(storage).toBe( - "0x0000000000000000000000001a9c8182c09f50c8318d769245bea52c32be35bc" + "0x0000000000000000000000001a9c8182c09f50c8318d769245bea52c32be35bc", ); }); diff --git a/packages/core/src/indexing/ponderActions.ts b/packages/core/src/indexing/ponderActions.ts index febc06bd5..d891fd227 100644 --- a/packages/core/src/indexing/ponderActions.ts +++ b/packages/core/src/indexing/ponderActions.ts @@ -1,5 +1,6 @@ import type { Abi, + Account, Chain, Client, ContractFunctionConfig, @@ -28,62 +29,66 @@ import type { Prettify } from "@/types/utils.js"; export type PonderActions = { getBalance: ( - args: Omit + args: Omit, ) => Promise; getBytecode: ( - args: Omit + args: Omit, ) => Promise; getStorageAt: ( - args: Omit + args: Omit, ) => Promise; multicall: < TContracts extends ContractFunctionConfig[], - TAllowFailure extends boolean = true + TAllowFailure extends boolean = true, >( args: Omit< MulticallParameters, "blockTag" | "blockNumber" - > + >, ) => Promise>; readContract: < - TAbi extends Abi | readonly unknown[], - TFunctionName extends string + const TAbi extends Abi | readonly unknown[], + TFunctionName extends string, >( args: Omit< ReadContractParameters, "blockTag" | "blockNumber" - > + >, ) => Promise>; }; export type ReadOnlyClient< transport extends Transport = Transport, - chain extends Chain | undefined = Chain | undefined + chain extends Chain | undefined = Chain | undefined, > = Prettify< Client >; export const ponderActions = (getCurrentBlockNumber: () => bigint) => - ( - client: Client + < + TTransport extends Transport = Transport, + TChain extends Chain | undefined = Chain | undefined, + TAccount extends Account | undefined = Account | undefined, + >( + client: Client, ): PonderActions => ({ getBalance: ( - args: Omit + args: Omit, ): Promise => viemGetBalance(client, { ...args, blockNumber: getCurrentBlockNumber(), }), getBytecode: ( - args: Omit + args: Omit, ): Promise => viemGetBytecode(client, { ...args, blockNumber: getCurrentBlockNumber(), }), getStorageAt: ( - args: Omit + args: Omit, ): Promise => viemGetStorageAt(client, { ...args, @@ -91,25 +96,25 @@ export const ponderActions = }), multicall: < TContracts extends ContractFunctionConfig[], - TAllowFailure extends boolean = true + TAllowFailure extends boolean = true, >( args: Omit< MulticallParameters, "blockTag" | "blockNumber" - > + >, ): Promise> => viemMulticall(client, { ...args, blockNumber: getCurrentBlockNumber(), }), readContract: < - TAbi extends Abi | readonly unknown[], - TFunctionName extends string + const TAbi extends Abi | readonly unknown[], + TFunctionName extends string, >( args: Omit< ReadContractParameters, "blockTag" | "blockNumber" - > + >, ): Promise> => viemReadContract(client, { ...args, diff --git a/packages/core/src/indexing/service.test.ts b/packages/core/src/indexing/service.test.ts index 0649347bc..bbf5aecc1 100644 --- a/packages/core/src/indexing/service.test.ts +++ b/packages/core/src/indexing/service.test.ts @@ -132,7 +132,7 @@ test("processEvents() calls getEvents with sequential timestamp ranges", async ( expect.objectContaining({ fromTimestamp: 0, toTimestamp: 10, - }) + }), ); syncGatewayService.checkpoint = 50; @@ -142,7 +142,7 @@ test("processEvents() calls getEvents with sequential timestamp ranges", async ( expect.objectContaining({ fromTimestamp: 11, toTimestamp: 50, - }) + }), ); service.kill(); @@ -179,7 +179,7 @@ test("processEvents() calls indexing functions with correct arguments", async (c context: expect.objectContaining({ models: { TransferEvent: expect.anything() }, }), - }) + }), ); service.kill(); @@ -397,7 +397,7 @@ test("handleReorg() processes the correct range of events after a reorg", async expect.objectContaining({ fromTimestamp: 0, toTimestamp: 10, - }) + }), ); // This simulates a scenario where there was a reorg back to 6 @@ -410,7 +410,7 @@ test("handleReorg() processes the correct range of events after a reorg", async expect.objectContaining({ fromTimestamp: 7, toTimestamp: 9, - }) + }), ); service.kill(); diff --git a/packages/core/src/indexing/service.ts b/packages/core/src/indexing/service.ts index 5628a78b7..29e8e8621 100644 --- a/packages/core/src/indexing/service.ts +++ b/packages/core/src/indexing/service.ts @@ -17,11 +17,11 @@ import type { Model } from "@/types/model.js"; import { chains } from "@/utils/chains.js"; import { formatShortDate } from "@/utils/date.js"; import { prettyPrint } from "@/utils/print.js"; -import { type Queue, type Worker, createQueue } from "@/utils/queue.js"; +import { createQueue, type Queue, type Worker } from "@/utils/queue.js"; import { wait } from "@/utils/wait.js"; import { buildModels } from "./model.js"; -import { ponderActions } from "./ponderActions.js"; +import { ponderActions, type ReadOnlyClient } from "./ponderActions.js"; import { getStackTrace } from "./trace.js"; import { ponderTransport } from "./transport.js"; @@ -99,7 +99,7 @@ export class IndexingService extends Emittery { sources, networks, syncStore, - ponderActions(() => this.currentEventBlockNumber) + ponderActions(() => this.currentEventBlockNumber), ); } @@ -224,7 +224,7 @@ export class IndexingService extends Emittery { this.eventsProcessedToTimestamp = commonAncestorTimestamp; this.common.metrics.ponder_indexing_latest_processed_timestamp.set( - commonAncestorTimestamp + commonAncestorTimestamp, ); // Note: There's currently no way to know how many events are "thrown out" @@ -304,7 +304,7 @@ export class IndexingService extends Emittery { metadata.counts.forEach(({ eventSourceName, selector, count }) => { const safeName = Object.values( this.sources.find((s) => s.name === eventSourceName)?.events || - {} + {}, ) .filter((m): m is LogEventMetadata => !!m) .find((m) => m.selector === selector)?.safeName; @@ -317,12 +317,12 @@ export class IndexingService extends Emittery { this.common.metrics.ponder_indexing_matched_events.inc( { eventName: `${eventSourceName}:${safeName}` }, - count + count, ); if (isHandled) { this.common.metrics.ponder_indexing_handled_events.inc( { eventName: `${eventSourceName}:${safeName}` }, - count + count, ); } }); @@ -364,7 +364,7 @@ export class IndexingService extends Emittery { // Note that this happens both here and in the log event indexing function. // They must also happen here to handle the case where no events were processed. this.common.metrics.ponder_indexing_latest_processed_timestamp.set( - toTimestamp + toTimestamp, ); }); } catch (error) { @@ -449,7 +449,7 @@ export class IndexingService extends Emittery { .bySafeName[event.eventName]; if (!indexingMetadata) throw new Error( - `Internal: Indexing function not found for event source ${event.eventSourceName}` + `Internal: Indexing function not found for event source ${event.eventSourceName}`, ); // This enables contract calls occurring within the @@ -519,7 +519,7 @@ export class IndexingService extends Emittery { eventName: `${event.eventSourceName}:${event.eventName}`, }); this.common.metrics.ponder_indexing_latest_processed_timestamp.set( - this.currentEventTimestamp + this.currentEventTimestamp, ); break; @@ -544,7 +544,7 @@ const buildContexts = ( sources: Source[], networks: Config["networks"], syncStore: SyncStore, - actions: ReturnType + actions: ReturnType, ) => { const contexts: Record< number, @@ -576,7 +576,9 @@ const buildContexts = ( contexts[network.chainId] = { network: { name: network.name, chainId: network.chainId }, - client: client.extend(actions), + // Changing the arguments of readContract is not usually allowed, + // because we have such a limited api we should be good + client: client.extend(actions as any) as ReadOnlyClient, contracts: {}, }; }); diff --git a/packages/core/src/indexing/trace.ts b/packages/core/src/indexing/trace.ts index b13a5468f..65c3af3eb 100644 --- a/packages/core/src/indexing/trace.ts +++ b/packages/core/src/indexing/trace.ts @@ -1,3 +1,6 @@ +import { readFileSync } from "node:fs"; +import path from "node:path"; + import { codeFrameColumns } from "@babel/code-frame"; import { type DecodedSourceMap, @@ -5,11 +8,9 @@ import { sourceContentFor, TraceMap, } from "@jridgewell/trace-mapping"; -import type { MimeBuffer } from "data-uri-to-buffer"; -import dataUriToBuffer from "data-uri-to-buffer"; -import { readFileSync } from "node:fs"; -import path from "node:path"; -import { type StackFrame, parse as parseStackTrace } from "stacktrace-parser"; +import type { ParsedDataURI } from "data-uri-to-buffer"; +import { dataUriToBuffer } from "data-uri-to-buffer"; +import { parse as parseStackTrace, type StackFrame } from "stacktrace-parser"; import type { Options } from "@/config/options.js"; @@ -29,7 +30,7 @@ export const getStackTrace = (error: Error, options: Options) => { const sourceMappedStackFrame = getSourceMappedStackFrame( frame.file, frame.lineNumber, - frame.column + frame.column, ); // If this frame cannot be mapped to the user code build directory, skip it. @@ -58,7 +59,7 @@ export const getStackTrace = (error: Error, options: Options) => { }, { highlightCode: true, - } + }, ); } @@ -98,7 +99,7 @@ export const getStackTrace = (error: Error, options: Options) => { function getSourceMappedStackFrame( file: string, lineNumber: number, - columnNumber: number | null + columnNumber: number | null, ) { let fileContents: string; try { @@ -113,7 +114,7 @@ function getSourceMappedStackFrame( const result = getSourcePositionAndContent( sourceMap, lineNumber, - columnNumber + columnNumber, ); const sourceFileRelative = result?.sourcePosition?.source; @@ -156,7 +157,7 @@ function getRawSourceMap(fileContents: string): DecodedSourceMap | null { return null; } - let buffer: MimeBuffer; + let buffer: ParsedDataURI; try { buffer = dataUriToBuffer(sourceUrl); } catch (err) { @@ -180,7 +181,7 @@ function getRawSourceMap(fileContents: string): DecodedSourceMap | null { function getSourcePositionAndContent( rawSourceMap: DecodedSourceMap, lineNumber: number, - columnNumber: number | null + columnNumber: number | null, ) { const tracer = new TraceMap(rawSourceMap); diff --git a/packages/core/src/indexing/transport.ts b/packages/core/src/indexing/transport.ts index 6ea029181..edfa9ec3b 100644 --- a/packages/core/src/indexing/transport.ts +++ b/packages/core/src/indexing/transport.ts @@ -23,11 +23,11 @@ export const ponderTransport = ({ if (method === "eth_call") { const [{ data, to }, _blockNumber] = params as [ { data: Hex; to: Hex }, - Hex + Hex, ]; request = `${method as string}_${toLowerCase(to)}_${toLowerCase( - data + data, )}`; blockNumber = BigInt(_blockNumber); } else if (method === "eth_getBalance") { @@ -44,7 +44,7 @@ export const ponderTransport = ({ const [address, slot, _blockNumber] = params as [Address, Hex, Hex]; request = `${method as string}_${toLowerCase(address)}_${toLowerCase( - slot + slot, )}`; blockNumber = BigInt(_blockNumber); } diff --git a/packages/core/src/logs/service.ts b/packages/core/src/logs/service.ts index f868d099a..14adb8672 100644 --- a/packages/core/src/logs/service.ts +++ b/packages/core/src/logs/service.ts @@ -1,4 +1,5 @@ import path from "node:path"; + import pc from "picocolors"; import { type LevelWithSilent, type Logger, pino } from "pino"; @@ -50,7 +51,7 @@ export class LoggerService { level: "trace", serializers: { error: pino.stdSerializers.errWithCause }, }, - pino.multistream(streams) + pino.multistream(streams), ); } diff --git a/packages/core/src/schema/columns.ts b/packages/core/src/schema/columns.ts index f4527d1ed..a0c44fa10 100644 --- a/packages/core/src/schema/columns.ts +++ b/packages/core/src/schema/columns.ts @@ -9,7 +9,7 @@ import type { type Optional< TScalar extends Scalar, TReferences extends `${string}.id` | undefined, - TList extends boolean + TList extends boolean, > = () => TReferences extends undefined ? TList extends true ? InternalColumn @@ -25,9 +25,9 @@ type Optional< const optional = < TScalar extends Scalar, TReferences extends `${string}.id` | undefined, - TList extends boolean + TList extends boolean, >( - column: BaseColumn + column: BaseColumn, ): Optional => (() => { const newColumn = { ...column, optional: true } as const; @@ -40,14 +40,14 @@ const optional = < [" column"]: newColumn, list: list(newColumn as BaseColumn), references: references( - newColumn as BaseColumn + newColumn as BaseColumn, ), }; }) as Optional; type List< TScalar extends Scalar, - TOptional extends boolean + TOptional extends boolean, > = () => TOptional extends true ? InternalColumn : InternalColumn & { @@ -60,7 +60,7 @@ type List< * List columns can't be references */ const list = ( - column: BaseColumn + column: BaseColumn, ): List => (() => { const newColumn = { ...column, list: true } as const; @@ -71,15 +71,15 @@ const list = ( : { [" column"]: newColumn, optional: optional( - newColumn as BaseColumn + newColumn as BaseColumn, ), }; }) as List; type References = < - TReferences extends `${string}.id` + TReferences extends `${string}.id`, >( - references: TReferences + references: TReferences, ) => TOptional extends true ? InternalColumn : InternalColumn & { @@ -92,7 +92,7 @@ type References = < * Reference columns can't be lists */ const references = ( - column: BaseColumn + column: BaseColumn, ): References => ((references: TReferences) => { const newColumn = { ...column, references } as const; @@ -102,7 +102,7 @@ const references = ( : { [" column"]: newColumn, optional: optional( - newColumn as BaseColumn + newColumn as BaseColumn, ), }; }) as References; @@ -132,7 +132,7 @@ const emptyColumn = type Enum< TType extends string, - TOptional extends boolean + TOptional extends boolean, > = TOptional extends true ? InternalEnum : InternalEnum & { @@ -165,12 +165,12 @@ const bytes = emptyColumn("bytes"); const bigint = emptyColumn("bigint"); const virtual = ( - derived: T + derived: T, ): VirtualColumn => ({ _type: "v", referenceTable: derived.split(".")[0], referenceColumn: derived.split(".")[1], - } as VirtualColumn); + }) as VirtualColumn; export { _enum, bigint, boolean, bytes, float, int, string, virtual }; diff --git a/packages/core/src/schema/schema.ts b/packages/core/src/schema/schema.ts index e57f683f5..ded56acba 100644 --- a/packages/core/src/schema/schema.ts +++ b/packages/core/src/schema/schema.ts @@ -44,9 +44,9 @@ export const createTable = < | ({ id: { [" column"]: IDColumn }; } & Record) - | unknown + | unknown, >( - columns: TColumns + columns: TColumns, ): { [key in keyof TColumns]: TColumns[key] extends InternalColumn ? TColumns[key][" column"] @@ -57,14 +57,14 @@ export const createTable = < Object.entries( columns as { id: { [" column"]: IDColumn }; - } & Record + } & Record, ).reduce( ( acc: Record< string, NonReferenceColumn | ReferenceColumn | EnumColumn | VirtualColumn >, - cur + cur, ) => ({ ...acc, [cur[0]]: @@ -74,7 +74,7 @@ export const createTable = < ? cur[1][" enum"] : cur[1], }), - {} + {}, ) as { [key in keyof TColumns]: TColumns[key] extends InternalColumn ? TColumns[key][" column"] @@ -102,9 +102,9 @@ export const createSchema = < | VirtualColumn>; }) | Enum; - } + }, >( - _schema: TSchema + _schema: TSchema, ): { tables: { [key in keyof FilterTables]: TSchema[key] }; enums: { @@ -183,7 +183,7 @@ export const createSchema = < if ( ( Object.entries(schema).find( - ([tableName]) => tableName === column.referenceTable + ([tableName]) => tableName === column.referenceTable, )![1] as Record )[column.referenceColumn as string] === undefined ) @@ -198,13 +198,13 @@ export const createSchema = < if ( Object.keys(schema).every( - (_name) => `${_name}.id` !== column.references + (_name) => `${_name}.id` !== column.references, ) ) throw Error("Column doesn't reference a valid table"); const referencingTables = Object.entries(schema).filter( - ([name]) => name === referencedEntityName(column.references) + ([name]) => name === referencedEntityName(column.references), ); for (const [, referencingTable] of referencingTables) { @@ -214,7 +214,7 @@ export const createSchema = < column.type ) throw Error( - "Column type doesn't match the referenced table id type" + "Column type doesn't match the referenced table id type", ); } @@ -242,7 +242,7 @@ export const createSchema = < enums: Record; tables: Record; }, - [name, tableOrEnum] + [name, tableOrEnum], ) => Array.isArray(tableOrEnum) ? { ...acc, enums: { ...acc.enums, [name]: tableOrEnum } } @@ -250,7 +250,7 @@ export const createSchema = < ...acc, tables: { ...acc.tables, [name]: tableOrEnum }, }, - { tables: {}, enums: {} } + { tables: {}, enums: {} }, ) as { tables: { [key in keyof FilterTables]: TSchema[key] }; enums: { diff --git a/packages/core/src/schema/types.ts b/packages/core/src/schema/types.ts index 7b4ac2318..cabc8f437 100644 --- a/packages/core/src/schema/types.ts +++ b/packages/core/src/schema/types.ts @@ -16,7 +16,7 @@ export type BaseColumn< TType extends Scalar = Scalar, TReferences extends `${string}.id` | undefined | unknown = unknown, TOptional extends boolean | unknown = unknown, - TList extends boolean | unknown = unknown + TList extends boolean | unknown = unknown, > = { _type: "b"; type: TType; @@ -28,20 +28,20 @@ export type BaseColumn< export type ReferenceColumn< TType extends Scalar = Scalar, TReferences extends `${string}.id` = `${string}.id`, - TOptional extends boolean = boolean + TOptional extends boolean = boolean, > = BaseColumn; export type NonReferenceColumn< TType extends Scalar = Scalar, TOptional extends boolean = boolean, - TList extends boolean = boolean + TList extends boolean = boolean, > = BaseColumn; export type InternalColumn< TType extends Scalar = Scalar, TReferences extends `${string}.id` | undefined | unknown = unknown, TOptional extends boolean | unknown = unknown, - TList extends boolean | unknown = unknown + TList extends boolean | unknown = unknown, > = { [" column"]: BaseColumn; }; @@ -52,14 +52,14 @@ export type IDColumn = { export type InternalEnum< TType extends string | unknown = unknown, - TOptional extends boolean | unknown = unknown + TOptional extends boolean | unknown = unknown, > = { [" enum"]: EnumColumn; }; export type EnumColumn< TType extends string | unknown = unknown, - TOptional extends boolean | unknown = unknown + TOptional extends boolean | unknown = unknown, > = { _type: "e"; type: TType; @@ -67,7 +67,8 @@ export type EnumColumn< }; export type VirtualColumn = - T extends `${infer TTableName extends string}.${infer TColumnName extends string}` + T extends `${infer TTableName extends string}.${infer TColumnName extends + string}` ? { _type: "v"; referenceTable: TTableName; @@ -84,11 +85,11 @@ export type Table< | ({ id: { [" column"]: IDColumn }; } & Record) - | unknown + | unknown, > = TColumns; export type Enum< - TValues extends readonly string[] | unknown = readonly string[] | unknown + TValues extends readonly string[] | unknown = readonly string[] | unknown, > = TValues; export type Schema = { @@ -146,7 +147,7 @@ export type FilterReferenceColumns< string, NonReferenceColumn | ReferenceColumn | EnumColumn | VirtualColumn > - | Enum + | Enum, > = Pick< TColumns, { @@ -168,7 +169,7 @@ export type ExtractAllNames< NonReferenceColumn | ReferenceColumn | EnumColumn | VirtualColumn > | Enum - > + >, > = { [tableName in keyof FilterTables]: `${tableName & string}.${keyof FilterReferenceColumns & @@ -197,7 +198,7 @@ export type RecoverColumnType< | NonReferenceColumn | ReferenceColumn | EnumColumn - | VirtualColumn + | VirtualColumn, > = TColumn extends { type: infer _type extends Scalar; list: infer _list extends boolean; @@ -211,7 +212,7 @@ export type RecoverOptionalColumns< TColumns extends Record< string, NonReferenceColumn | ReferenceColumn | EnumColumn | VirtualColumn - > + >, > = Pick< TColumns, { @@ -229,7 +230,7 @@ export type RecoverRequiredColumns< TColumns extends Record< string, NonReferenceColumn | ReferenceColumn | EnumColumn | VirtualColumn - > + >, > = Pick< TColumns, { @@ -247,7 +248,7 @@ export type RecoverEnumColumns< TColumns extends Record< string, NonReferenceColumn | ReferenceColumn | EnumColumn | VirtualColumn - > + >, > = Pick< TColumns, { @@ -261,12 +262,12 @@ export type RecoverEnumType< | NonReferenceColumn | ReferenceColumn | EnumColumn - | VirtualColumn + | VirtualColumn, > = TColumn extends EnumColumn ? TEnums[TColumn["type"] & keyof TEnums] : never; export type RecoverTableType< TEnums extends Record, - TTable extends Table + TTable extends Table, > = TTable extends infer _columns extends Record< string, ReferenceColumn | NonReferenceColumn | EnumColumn | VirtualColumn diff --git a/packages/core/src/schema/utils.ts b/packages/core/src/schema/utils.ts index 13cbcb5de..fd1373309 100644 --- a/packages/core/src/schema/utils.ts +++ b/packages/core/src/schema/utils.ts @@ -12,14 +12,14 @@ export const referencedEntityName = (references: unknown) => (references as string).split(".")[0]; export const isVirtualColumn = ( - column: EnumColumn | NonReferenceColumn | ReferenceColumn | VirtualColumn + column: EnumColumn | NonReferenceColumn | ReferenceColumn | VirtualColumn, ): column is VirtualColumn => column._type === "v"; export const isEnumColumn = ( - column: EnumColumn | NonReferenceColumn | ReferenceColumn | VirtualColumn + column: EnumColumn | NonReferenceColumn | ReferenceColumn | VirtualColumn, ): column is EnumColumn => column._type === "e"; export const isReferenceColumn = ( - column: EnumColumn | NonReferenceColumn | ReferenceColumn | VirtualColumn + column: EnumColumn | NonReferenceColumn | ReferenceColumn | VirtualColumn, ): column is ReferenceColumn => column._type === "b" && column.references !== undefined; diff --git a/packages/core/src/server/graphql/entity.ts b/packages/core/src/server/graphql/entity.ts index 857dbc6de..fd4627dcb 100644 --- a/packages/core/src/server/graphql/entity.ts +++ b/packages/core/src/server/graphql/entity.ts @@ -1,7 +1,7 @@ import type { GraphQLFieldResolver } from "graphql"; import { - type GraphQLFieldConfigMap, GraphQLEnumType, + type GraphQLFieldConfigMap, GraphQLInt, GraphQLList, GraphQLNonNull, @@ -40,7 +40,7 @@ export const buildEntityTypes = ({ const resolver: GraphQLFieldResolver = async ( parent, args, - context + context, ) => { const { store } = context; @@ -70,8 +70,8 @@ export const buildEntityTypes = ({ fieldConfigMap[columnName] = { type: new GraphQLNonNull( new GraphQLList( - new GraphQLNonNull(entityGqlTypes[column.referenceTable]) - ) + new GraphQLNonNull(entityGqlTypes[column.referenceTable]), + ), ), args: { skip: { type: GraphQLInt, defaultValue: 0 }, @@ -89,7 +89,7 @@ export const buildEntityTypes = ({ name: enumName, values: schema.enums[enumName].reduce( (acc: Record, cur) => ({ ...acc, [cur]: {} }), - {} + {}, ), }); @@ -103,7 +103,7 @@ export const buildEntityTypes = ({ const resolver: GraphQLFieldResolver = async ( parent, _args, - context + context, ) => { const { store } = context; @@ -126,7 +126,7 @@ export const buildEntityTypes = ({ }; } else if (column.list) { const listType = new GraphQLList( - new GraphQLNonNull(tsTypeToGqlScalar[column.type]) + new GraphQLNonNull(tsTypeToGqlScalar[column.type]), ); fieldConfigMap[columnName] = { type: column.optional ? listType : new GraphQLNonNull(listType), diff --git a/packages/core/src/server/graphql/plural.ts b/packages/core/src/server/graphql/plural.ts index 9e2d0dab4..ea2adf1c2 100644 --- a/packages/core/src/server/graphql/plural.ts +++ b/packages/core/src/server/graphql/plural.ts @@ -2,8 +2,8 @@ import type { GraphQLInputFieldConfigMap, GraphQLObjectType } from "graphql"; import { type GraphQLFieldConfig, type GraphQLFieldResolver, - type GraphQLInputType, GraphQLInputObjectType, + type GraphQLInputType, GraphQLInt, GraphQLList, GraphQLNonNull, @@ -138,7 +138,7 @@ export const buildPluralField = ({ return { type: new GraphQLNonNull( - new GraphQLList(new GraphQLNonNull(entityGqlType)) + new GraphQLList(new GraphQLNonNull(entityGqlType)), ), args: { skip: { type: GraphQLInt, defaultValue: 0 }, @@ -184,7 +184,7 @@ function buildWhereObject({ where }: { where: Record }) { const storeCondition = graphqlFilterToStoreCondition[condition]; if (!storeCondition) { throw new Error( - `Invalid query: Unknown where condition: ${fieldName}_${condition}` + `Invalid query: Unknown where condition: ${fieldName}_${condition}`, ); } diff --git a/packages/core/src/server/graphql/schema.test.ts b/packages/core/src/server/graphql/schema.test.ts index ba355c321..dc622880d 100644 --- a/packages/core/src/server/graphql/schema.test.ts +++ b/packages/core/src/server/graphql/schema.test.ts @@ -40,7 +40,7 @@ test("filter type has correct suffixes and types", () => { acc[key] = value.type.toString(); return acc; }, - {} + {}, ); expect(fieldsPretty).toMatchObject({ diff --git a/packages/core/src/server/graphql/schema.ts b/packages/core/src/server/graphql/schema.ts index 37288d40e..89e226af4 100644 --- a/packages/core/src/server/graphql/schema.ts +++ b/packages/core/src/server/graphql/schema.ts @@ -1,6 +1,6 @@ import { - type GraphQLFieldConfig, GraphQLBoolean, + type GraphQLFieldConfig, GraphQLFloat, GraphQLInt, GraphQLObjectType, @@ -26,7 +26,7 @@ const GraphQLBigInt = new GraphQLScalarType({ return BigInt(value.value); } else { throw new Error( - `Invalid value kind provided for field of type BigInt: ${value.kind}. Expected: StringValue` + `Invalid value kind provided for field of type BigInt: ${value.kind}. Expected: StringValue`, ); } }, diff --git a/packages/core/src/server/graphql/singular.ts b/packages/core/src/server/graphql/singular.ts index 701e50678..ae7d4bca0 100644 --- a/packages/core/src/server/graphql/singular.ts +++ b/packages/core/src/server/graphql/singular.ts @@ -48,7 +48,7 @@ const buildSingularField = ({ type: new GraphQLNonNull( tsTypeToGqlScalar[ (table as { id: BaseColumn }).id.type - ] + ], ), }, timestamp: { type: GraphQLInt }, diff --git a/packages/core/src/server/service.test.ts b/packages/core/src/server/service.test.ts index fa40566ee..792d8de46 100644 --- a/packages/core/src/server/service.test.ts +++ b/packages/core/src/server/service.test.ts @@ -1258,7 +1258,7 @@ test("throws if limit is greater than 1000", async (context) => { `); expect(response.body.errors[0].message).toBe( - "Invalid query. Cannot take more than 1000 rows. Received: 1005 rows." + "Invalid query. Cannot take more than 1000 rows. Received: 1005 rows.", ); expect(response.statusCode).toBe(200); @@ -1306,7 +1306,7 @@ test("throws if skip is greater than 5000", async (context) => { `); expect(response.body.errors[0].message).toBe( - "Invalid query. Cannot skip more than 5000 rows. Received: 5005 rows." + "Invalid query. Cannot skip more than 5000 rows. Received: 5005 rows.", ); expect(response.statusCode).toBe(200); diff --git a/packages/core/src/server/service.ts b/packages/core/src/server/service.ts index f4cfed968..b0600ec92 100644 --- a/packages/core/src/server/service.ts +++ b/packages/core/src/server/service.ts @@ -1,11 +1,12 @@ +import type { Server } from "node:http"; +import { createServer } from "node:http"; + import cors from "cors"; import express from "express"; import type { FormattedExecutionResult, GraphQLSchema } from "graphql"; import { formatError, GraphQLError } from "graphql"; import { createHandler } from "graphql-http/lib/use/express"; import { createHttpTerminator } from "http-terminator"; -import type { Server } from "node:http"; -import { createServer } from "node:http"; import type { IndexingStore } from "@/indexing-store/store.js"; import type { Common } from "@/Ponder.js"; @@ -56,18 +57,18 @@ export class ServerService { const requestSize = Number(req.get("Content-Length") ?? 0); this.common.metrics.ponder_server_request_size.observe( { method, path, status }, - Number(requestSize) + Number(requestSize), ); const responseSize = Number(res.get("Content-Length") ?? 0); this.common.metrics.ponder_server_response_size.observe( { method, path, status }, - Number(responseSize) + Number(responseSize), ); this.common.metrics.ponder_server_response_duration.observe( { method, path, status }, - responseDuration + responseDuration, ); }); next(); diff --git a/packages/core/src/sync-gateway/service.ts b/packages/core/src/sync-gateway/service.ts index ae2fd855d..98e93a4c9 100644 --- a/packages/core/src/sync-gateway/service.ts +++ b/packages/core/src/sync-gateway/service.ts @@ -1,5 +1,5 @@ import Emittery from "emittery"; -import { type Hex, decodeEventLog } from "viem"; +import { decodeEventLog, type Hex } from "viem"; import type { LogEventMetadata } from "@/config/abi.js"; import type { Network } from "@/config/networks.js"; @@ -133,7 +133,7 @@ export class SyncGateway extends Emittery { fromBlock: logFilter.startBlock, toBlock: logFilter.endBlock, includeEventSelectors: Object.keys( - indexingMetadata[logFilter.name]?.bySelector ?? {} + indexingMetadata[logFilter.name]?.bySelector ?? {}, ) as Hex[], })), factories: this.sources.filter(sourceIsFactory).map((factory) => ({ @@ -143,7 +143,7 @@ export class SyncGateway extends Emittery { fromBlock: factory.startBlock, toBlock: factory.endBlock, includeEventSelectors: Object.keys( - indexingMetadata[factory.name]?.bySelector ?? {} + indexingMetadata[factory.name]?.bySelector ?? {}, ) as Hex[], })), }); @@ -155,7 +155,7 @@ export class SyncGateway extends Emittery { const selector = event.log.topics[0]; if (!selector) { throw new Error( - `Received an event log with no selector: ${event.log}` + `Received an event log with no selector: ${event.log}`, ); } @@ -163,7 +163,7 @@ export class SyncGateway extends Emittery { indexingMetadata[event.eventSourceName]?.bySelector[selector]; if (!logEventMetadata) { throw new Error( - `Metadata for event ${event.eventSourceName}:${selector} not found in includeEvents` + `Metadata for event ${event.eventSourceName}:${selector} not found in includeEvents`, ); } const { abiItem, safeName } = logEventMetadata; @@ -212,7 +212,7 @@ export class SyncGateway extends Emittery { this.common.logger.trace({ service: "gateway", msg: `New historical checkpoint at ${timestamp} [${formatShortDate( - timestamp + timestamp, )}] (chainId=${chainId})`, }); @@ -227,7 +227,7 @@ export class SyncGateway extends Emittery { const networkCheckpoints = Object.values(this.networkCheckpoints); if (networkCheckpoints.every((n) => n.isHistoricalSyncComplete)) { const maxHistoricalCheckpoint = Math.max( - ...networkCheckpoints.map((n) => n.historicalCheckpoint) + ...networkCheckpoints.map((n) => n.historicalCheckpoint), ); this.historicalSyncCompletedAt = maxHistoricalCheckpoint; @@ -250,7 +250,7 @@ export class SyncGateway extends Emittery { this.common.logger.trace({ service: "gateway", msg: `New realtime checkpoint at ${timestamp} [${formatShortDate( - timestamp + timestamp, )}] (chainId=${chainId})`, }); @@ -280,7 +280,7 @@ export class SyncGateway extends Emittery { const checkpoints = Object.values(this.networkCheckpoints).map((n) => n.isHistoricalSyncComplete ? Math.max(n.historicalCheckpoint, n.realtimeCheckpoint) - : n.historicalCheckpoint + : n.historicalCheckpoint, ); const newCheckpoint = Math.min(...checkpoints); @@ -290,7 +290,7 @@ export class SyncGateway extends Emittery { this.common.logger.trace({ service: "gateway", msg: `New event checkpoint at ${this.checkpoint} [${formatShortDate( - this.checkpoint + this.checkpoint, )}]`, }); @@ -300,7 +300,9 @@ export class SyncGateway extends Emittery { private recalculateFinalityCheckpoint = () => { const newFinalityCheckpoint = Math.min( - ...Object.values(this.networkCheckpoints).map((n) => n.finalityCheckpoint) + ...Object.values(this.networkCheckpoints).map( + (n) => n.finalityCheckpoint, + ), ); if (newFinalityCheckpoint > this.finalityCheckpoint) { diff --git a/packages/core/src/sync-historical/service.test.ts b/packages/core/src/sync-historical/service.test.ts index 4555bf69c..71ba4fb24 100644 --- a/packages/core/src/sync-historical/service.test.ts +++ b/packages/core/src/sync-historical/service.test.ts @@ -30,7 +30,7 @@ const network: Network = { const rpcRequestSpy = vi.spyOn( network.client as { request: EIP1193RequestFn }, - "request" + "request", ); const blockNumbers = { @@ -138,7 +138,7 @@ test("start() with factory contract inserts child contract addresses", async (co "0x8d92afe4ab7f4d0379d37a6da3643763964cb6df", "0x01b2848a0d9ffced595b0df3df10fb32430fa200", "0xd5f83865bf8edb1f02e688dc2ee02d39e28692b3", - ]) + ]), ); await service.kill(); @@ -248,7 +248,7 @@ test("start() with log filter and factory contract updates rpc request duration method: "eth_getBlockByNumber", }), }), - ]) + ]), ); await service.kill(); @@ -408,9 +408,9 @@ test("start() handles Alchemy 'Log response size exceeded' error", async (contex new InvalidParamsRpcError( new Error( // The suggested block range is 16369995 to 16369996. - "Log response size exceeded. this block range should work: [0xf9c94b, 0xf9c94c]" - ) - ) + "Log response size exceeded. this block range should work: [0xf9c94b, 0xf9c94c]", + ), + ), ); const service = new HistoricalSyncService({ @@ -440,7 +440,7 @@ test("start() handles Quicknode 'eth_getLogs and eth_newFilter are limited to a url: "http://", details: "eth_getLogs and eth_newFilter are limited to a 10,000 blocks range", - }) + }), ); const service = new HistoricalSyncService({ diff --git a/packages/core/src/sync-historical/service.ts b/packages/core/src/sync-historical/service.ts index 4f3a71dfc..d4d830106 100644 --- a/packages/core/src/sync-historical/service.ts +++ b/packages/core/src/sync-historical/service.ts @@ -2,13 +2,13 @@ import Emittery from "emittery"; import type { Hex, RpcError } from "viem"; import { type Hash, - type RpcBlock, - type RpcLog, - type RpcTransaction, hexToNumber, HttpRequestError, InvalidParamsRpcError, LimitExceededRpcError, + type RpcBlock, + type RpcLog, + type RpcTransaction, toHex, } from "viem"; @@ -30,7 +30,7 @@ import { intervalSum, ProgressTracker, } from "@/utils/interval.js"; -import { type Queue, type Worker, createQueue } from "@/utils/queue.js"; +import { createQueue, type Queue, type Worker } from "@/utils/queue.js"; import { hrTimeToMs, startClock } from "@/utils/timer.js"; import { validateHistoricalBlockRange } from "./utils.js"; @@ -73,7 +73,7 @@ type BlockTask = { kind: "BLOCK"; blockNumber: number; callbacks: (( - block: RpcBlock & { transactions: RpcTransaction[] } + block: RpcBlock & { transactions: RpcTransaction[] }, ) => Promise)[]; }; @@ -178,7 +178,7 @@ export class HistoricalSyncService extends Emittery { }); this.common.metrics.ponder_historical_total_blocks.set( { network: this.network.name, eventSource: source.name }, - 0 + 0, ); this.common.logger.warn({ service: "historical", @@ -214,7 +214,7 @@ export class HistoricalSyncService extends Emittery { for (const [fromBlock, toBlock] of logFilterTaskChunks) { this.queue.addTask( { kind: "LOG_FILTER", logFilter: source, fromBlock, toBlock }, - { priority: Number.MAX_SAFE_INTEGER - fromBlock } + { priority: Number.MAX_SAFE_INTEGER - fromBlock }, ); } if (logFilterTaskChunks.length > 0) { @@ -230,17 +230,17 @@ export class HistoricalSyncService extends Emittery { this.common.metrics.ponder_historical_total_blocks.set( { network: this.network.name, eventSource: source.name }, - targetBlockCount + targetBlockCount, ); this.common.metrics.ponder_historical_cached_blocks.set( { network: this.network.name, eventSource: source.name }, - cachedBlockCount + cachedBlockCount, ); this.common.logger.info({ service: "historical", msg: `Started sync with ${formatPercentage( - Math.min(1, cachedBlockCount / (targetBlockCount || 1)) + Math.min(1, cachedBlockCount / (targetBlockCount || 1)), )} cached (eventSource=${source.name} network=${ this.network.name })`, @@ -261,7 +261,7 @@ export class HistoricalSyncService extends Emittery { }); this.common.metrics.ponder_historical_total_blocks.set( { network: this.network.name, eventSource: source.name }, - 0 + 0, ); this.common.logger.warn({ service: "historical", @@ -303,7 +303,7 @@ export class HistoricalSyncService extends Emittery { fromBlock, toBlock, }, - { priority: Number.MAX_SAFE_INTEGER - fromBlock } + { priority: Number.MAX_SAFE_INTEGER - fromBlock }, ); } if (factoryChildAddressTaskChunks.length > 0) { @@ -316,7 +316,7 @@ export class HistoricalSyncService extends Emittery { const targetFactoryChildAddressBlockCount = endBlock - startBlock + 1; const cachedFactoryChildAddressBlockCount = intervalSum( - completedFactoryChildAddressIntervals + completedFactoryChildAddressIntervals, ); this.common.metrics.ponder_historical_total_blocks.set( @@ -324,14 +324,14 @@ export class HistoricalSyncService extends Emittery { network: this.network.name, eventSource: `${source.name}_factory`, }, - targetFactoryChildAddressBlockCount + targetFactoryChildAddressBlockCount, ); this.common.metrics.ponder_historical_cached_blocks.set( { network: this.network.name, eventSource: `${source.name}_factory`, }, - cachedFactoryChildAddressBlockCount + cachedFactoryChildAddressBlockCount, ); const completedFactoryLogFilterIntervals = @@ -353,7 +353,7 @@ export class HistoricalSyncService extends Emittery { factoryLogFilterProgressTracker.getRequired(); const missingFactoryLogFilterIntervals = intervalDifference( requiredFactoryLogFilterIntervals, - requiredFactoryChildAddressIntervals + requiredFactoryChildAddressIntervals, ); const missingFactoryLogFilterTaskChunks = getChunks({ @@ -373,7 +373,7 @@ export class HistoricalSyncService extends Emittery { fromBlock, toBlock, }, - { priority: Number.MAX_SAFE_INTEGER - fromBlock } + { priority: Number.MAX_SAFE_INTEGER - fromBlock }, ); } if (missingFactoryLogFilterTaskChunks.length > 0) { @@ -386,16 +386,16 @@ export class HistoricalSyncService extends Emittery { const targetFactoryLogFilterBlockCount = endBlock - startBlock + 1; const cachedFactoryLogFilterBlockCount = intervalSum( - completedFactoryLogFilterIntervals + completedFactoryLogFilterIntervals, ); this.common.metrics.ponder_historical_total_blocks.set( { network: this.network.name, eventSource: source.name }, - targetFactoryLogFilterBlockCount + targetFactoryLogFilterBlockCount, ); this.common.metrics.ponder_historical_cached_blocks.set( { network: this.network.name, eventSource: source.name }, - cachedFactoryLogFilterBlockCount + cachedFactoryLogFilterBlockCount, ); // Use factory log filter progress for the logger because it better represents @@ -403,18 +403,18 @@ export class HistoricalSyncService extends Emittery { const cacheRate = Math.min( 1, cachedFactoryLogFilterBlockCount / - (targetFactoryLogFilterBlockCount || 1) + (targetFactoryLogFilterBlockCount || 1), ); this.common.logger.info({ service: "historical", msg: `Started sync with ${formatPercentage( - cacheRate + cacheRate, )} cached (eventSource=${source.name} network=${ this.network.name })`, }); } - }) + }), ); } @@ -589,7 +589,7 @@ export class HistoricalSyncService extends Emittery { chainId: logFilter.chainId, block, transactions: block.transactions.filter((tx) => - transactionHashes.has(tx.hash) + transactionHashes.has(tx.hash), ), logs, logFilter: logFilter.criteria, @@ -600,7 +600,7 @@ export class HistoricalSyncService extends Emittery { }); this.common.metrics.ponder_historical_completed_blocks.inc( { network: this.network.name, eventSource: logFilter.name }, - endBlock - startBlock + 1 + endBlock - startBlock + 1, ); }); } @@ -653,7 +653,7 @@ export class HistoricalSyncService extends Emittery { }, block, transactions: block.transactions.filter((tx) => - transactionHashes.has(tx.hash) + transactionHashes.has(tx.hash), ), logs, interval: { @@ -679,13 +679,13 @@ export class HistoricalSyncService extends Emittery { for (const [fromBlock, toBlock] of factoryLogFilterChunks) { this.queue.addTask( { kind: "FACTORY_LOG_FILTER", factory, fromBlock, toBlock }, - { priority: Number.MAX_SAFE_INTEGER - fromBlock } + { priority: Number.MAX_SAFE_INTEGER - fromBlock }, ); } } this.common.metrics.ponder_historical_completed_blocks.inc( { network: this.network.name, eventSource: `${factory.name}_factory` }, - toBlock - fromBlock + 1 + toBlock - fromBlock + 1, ); this.common.logger.trace({ @@ -728,7 +728,7 @@ export class HistoricalSyncService extends Emittery { factory: factory.criteria, block, transactions: block.transactions.filter((tx) => - transactionHashes.has(tx.hash) + transactionHashes.has(tx.hash), ), logs, interval: { @@ -739,7 +739,7 @@ export class HistoricalSyncService extends Emittery { this.common.metrics.ponder_historical_completed_blocks.inc( { network: this.network.name, eventSource: factory.name }, - endBlock - startBlock + 1 + endBlock - startBlock + 1, ); }); } @@ -767,7 +767,7 @@ export class HistoricalSyncService extends Emittery { })) as RpcBlock & { transactions: RpcTransaction[] }; this.common.metrics.ponder_historical_rpc_request_duration.observe( { method: "eth_getBlockByNumber", network: this.network.name }, - stopClock() + stopClock(), ); if (!block) throw new Error(`Block not found: ${blockNumber}`); @@ -806,7 +806,7 @@ export class HistoricalSyncService extends Emittery { logs.forEach((log) => { const blockNumber = hexToNumber(log.blockNumber!); (txHashesByBlockNumber[blockNumber] ||= new Set()).add( - log.transactionHash! + log.transactionHash!, ); (logsByBlockNumber[blockNumber] ||= []).push(log); }); @@ -845,14 +845,14 @@ export class HistoricalSyncService extends Emittery { private enqueueBlockTasks = () => { const blockTasksCanBeEnqueuedTo = Math.min( ...Object.values(this.logFilterProgressTrackers).map((i) => - i.getCheckpoint() + i.getCheckpoint(), ), ...Object.values(this.factoryChildAddressProgressTrackers).map((i) => - i.getCheckpoint() + i.getCheckpoint(), ), ...Object.values(this.factoryLogFilterProgressTrackers).map((i) => - i.getCheckpoint() - ) + i.getCheckpoint(), + ), ); if (blockTasksCanBeEnqueuedTo > this.blockTasksEnqueuedCheckpoint) { @@ -869,7 +869,7 @@ export class HistoricalSyncService extends Emittery { blockNumber, callbacks: this.blockCallbacks[blockNumber], }, - { priority: Number.MAX_SAFE_INTEGER - blockNumber } + { priority: Number.MAX_SAFE_INTEGER - blockNumber }, ); delete this.blockCallbacks[blockNumber]; } @@ -879,7 +879,7 @@ export class HistoricalSyncService extends Emittery { }; private _eth_getLogs = async ( - options: LogFilterCriteria & { fromBlock: Hex; toBlock: Hex } + options: LogFilterCriteria & { fromBlock: Hex; toBlock: Hex }, ) => { const logs: RpcLog[] = []; @@ -897,7 +897,7 @@ export class HistoricalSyncService extends Emittery { } finally { this.common.metrics.ponder_historical_rpc_request_duration.observe( { method: "eth_getLogs", network: this.network.name }, - stopClock() + stopClock(), ); } @@ -927,7 +927,7 @@ export class HistoricalSyncService extends Emittery { maxChunkSize: Math.round((to - from) / 10), }); retryRanges.push( - ...chunks.map(([f, t]) => [toHex(f), toHex(t)] as const) + ...chunks.map(([f, t]) => [toHex(f), toHex(t)] as const), ); } else if ( // Infura block range limit error. @@ -947,7 +947,7 @@ export class HistoricalSyncService extends Emittery { ) { const midpoint = Math.floor( (Number(options.toBlock) - Number(options.fromBlock)) / 2 + - Number(options.fromBlock) + Number(options.fromBlock), ); retryRanges.push([toHex(options.fromBlock), toHex(midpoint)]); @@ -956,12 +956,12 @@ export class HistoricalSyncService extends Emittery { // Handle Quicknode block range limit error (should never happen). error instanceof HttpRequestError && error.details.includes( - "eth_getLogs and eth_newFilter are limited to a 10,000 blocks range" + "eth_getLogs and eth_newFilter are limited to a 10,000 blocks range", ) ) { const midpoint = Math.floor( (Number(options.toBlock) - Number(options.fromBlock)) / 2 + - Number(options.fromBlock) + Number(options.fromBlock), ); retryRanges.push([toHex(options.fromBlock), toHex(midpoint)]); retryRanges.push([toHex(midpoint + 1), options.toBlock]); @@ -997,10 +997,10 @@ export class HistoricalSyncService extends Emittery { return eventSourceNames.map((name) => { const totalBlocks = totalBlocksMetric.find( - (m) => m.labels.eventSource === name + (m) => m.labels.eventSource === name, )?.value; const cachedBlocks = cachedBlocksMetric.find( - (m) => m.labels.eventSource === name + (m) => m.labels.eventSource === name, )?.value; const completedBlocks = completedBlocksMetric.find((m) => m.labels.eventSource === name) @@ -1051,7 +1051,7 @@ export class HistoricalSyncService extends Emittery { completionStats.forEach(({ eventSource, rate }) => { this.common.metrics.ponder_historical_completion_rate.set( { eventSource, network: this.network.name }, - rate + rate, ); }); }; @@ -1065,7 +1065,7 @@ export class HistoricalSyncService extends Emittery { if (eta) { this.common.metrics.ponder_historical_completion_eta.set( { eventSource, network: this.network.name }, - eta + eta, ); } }); diff --git a/packages/core/src/sync-historical/utils.test.ts b/packages/core/src/sync-historical/utils.test.ts index 1d1e5dec0..337d8035c 100644 --- a/packages/core/src/sync-historical/utils.test.ts +++ b/packages/core/src/sync-historical/utils.test.ts @@ -8,9 +8,9 @@ test("validateHistoricalBlockRange throws if start block is greater than latest finalizedBlockNumber: 50, latestBlockNumber: 100, startBlock: 120, - }) + }), ).toThrowError( - "Start block number (120) cannot be greater than latest block number (100)" + "Start block number (120) cannot be greater than latest block number (100)", ); }); @@ -31,9 +31,9 @@ test("validateHistoricalBlockRange throws if end block is greater than start blo latestBlockNumber: 100, startBlock: 40, endBlock: 20, - }) + }), ).toThrowError( - "End block number (20) cannot be less than start block number (40)" + "End block number (20) cannot be less than start block number (40)", ); }); @@ -44,9 +44,9 @@ test("validateHistoricalBlockRange throws if end block is greater than finalized latestBlockNumber: 100, startBlock: 20, endBlock: 75, - }) + }), ).toThrowError( - "End block number (75) cannot be greater than finalized block number (50)" + "End block number (75) cannot be greater than finalized block number (50)", ); }); @@ -57,8 +57,8 @@ test("validateHistoricalBlockRange throws if end block is greater than latest bl latestBlockNumber: 100, startBlock: 20, endBlock: 150, - }) + }), ).toThrowError( - "End block number (150) cannot be greater than latest block number (100)" + "End block number (150) cannot be greater than latest block number (100)", ); }); diff --git a/packages/core/src/sync-historical/utils.ts b/packages/core/src/sync-historical/utils.ts index 27afcd6a2..0b49b125d 100644 --- a/packages/core/src/sync-historical/utils.ts +++ b/packages/core/src/sync-historical/utils.ts @@ -12,7 +12,7 @@ export function validateHistoricalBlockRange({ if (startBlock > latestBlockNumber) { throw new Error( `Start block number (${startBlock}) cannot be greater than latest block number (${latestBlockNumber}). - Are you sure the RPC endpoint is for the correct network?` + Are you sure the RPC endpoint is for the correct network?`, ); } @@ -30,21 +30,21 @@ export function validateHistoricalBlockRange({ if (userDefinedEndBlock < startBlock) { throw new Error( `End block number (${userDefinedEndBlock}) cannot be less than start block number (${startBlock}). - Are you sure the RPC endpoint is for the correct network?` + Are you sure the RPC endpoint is for the correct network?`, ); } if (userDefinedEndBlock > latestBlockNumber) { throw new Error( `End block number (${userDefinedEndBlock}) cannot be greater than latest block number (${latestBlockNumber}). - Are you sure the RPC endpoint is for the correct network?` + Are you sure the RPC endpoint is for the correct network?`, ); } if (userDefinedEndBlock > finalizedBlockNumber) { throw new Error( `End block number (${userDefinedEndBlock}) cannot be greater than finalized block number (${finalizedBlockNumber}). - Are you sure the RPC endpoint is for the correct network?` + Are you sure the RPC endpoint is for the correct network?`, ); } } diff --git a/packages/core/src/sync-realtime/filter.test.ts b/packages/core/src/sync-realtime/filter.test.ts index ef2923070..871e419b5 100644 --- a/packages/core/src/sync-realtime/filter.test.ts +++ b/packages/core/src/sync-realtime/filter.test.ts @@ -60,7 +60,7 @@ test("filterLogs handles one logFilter, one address", () => { expect(filteredLogs).toHaveLength(1); expect(filteredLogs[0].address).toEqual( - "0x15d4c048f83bd7e37d49ea4c83a07267ec4203da" + "0x15d4c048f83bd7e37d49ea4c83a07267ec4203da", ); }); @@ -79,10 +79,10 @@ test("filterLogs handles one logFilter, two addresses", () => { expect(filteredLogs).toHaveLength(2); expect(filteredLogs[0].address).toEqual( - "0x15d4c048f83bd7e37d49ea4c83a07267ec4203da" + "0x15d4c048f83bd7e37d49ea4c83a07267ec4203da", ); expect(filteredLogs[1].address).toEqual( - "0x72d4c048f83bd7e37d49ea4c83a07267ec4203da" + "0x72d4c048f83bd7e37d49ea4c83a07267ec4203da", ); }); @@ -106,10 +106,10 @@ test("filterLogs handles two logFilters, one address each", () => { expect(filteredLogs).toHaveLength(2); expect(filteredLogs[0].address).toEqual( - "0x15d4c048f83bd7e37d49ea4c83a07267ec4203da" + "0x15d4c048f83bd7e37d49ea4c83a07267ec4203da", ); expect(filteredLogs[1].address).toEqual( - "0x72d4c048f83bd7e37d49ea4c83a07267ec4203da" + "0x72d4c048f83bd7e37d49ea4c83a07267ec4203da", ); }); diff --git a/packages/core/src/sync-realtime/format.ts b/packages/core/src/sync-realtime/format.ts index 96c743732..c90e7a7d6 100644 --- a/packages/core/src/sync-realtime/format.ts +++ b/packages/core/src/sync-realtime/format.ts @@ -1,8 +1,8 @@ import { type Hash, + hexToNumber, type RpcBlock, type RpcTransaction, - hexToNumber, } from "viem"; import type { Prettify } from "@/types/utils.js"; diff --git a/packages/core/src/sync-realtime/service.test.ts b/packages/core/src/sync-realtime/service.test.ts index 6c400db34..2376d2398 100644 --- a/packages/core/src/sync-realtime/service.test.ts +++ b/packages/core/src/sync-realtime/service.test.ts @@ -32,7 +32,7 @@ const network: Network = { const rpcRequestSpy = vi.spyOn( network.client as { request: EIP1193RequestFn }, - "request" + "request", ); const usdcLogFilter = { @@ -262,7 +262,7 @@ test("start() handles error while fetching new latest block gracefully", async ( // Mock a failed new block request. rpcRequestSpy.mockRejectedValueOnce( - new HttpRequestError({ url: "http://test.com" }) + new HttpRequestError({ url: "http://test.com" }), ); await service.addNewLatestBlock(); @@ -420,7 +420,7 @@ test("start() deletes data from the store after 3 block shallow reorg", async (c .selectAll() .execute(); expect( - blocksAfterReorg.map((block) => decodeToBigInt(block.number)) + blocksAfterReorg.map((block) => decodeToBigInt(block.number)), ).toMatchObject([ 16379996n, 16379997n, @@ -582,7 +582,7 @@ test("start() with factory contract inserts new child contracts records and chil log: expect.objectContaining({ address: "0x25e0870d42b6cef90b6dc8216588fad55d5f55c4", }), - }) + }), ); await service.kill(); diff --git a/packages/core/src/sync-realtime/service.ts b/packages/core/src/sync-realtime/service.ts index c50569828..8f09d599d 100644 --- a/packages/core/src/sync-realtime/service.ts +++ b/packages/core/src/sync-realtime/service.ts @@ -2,10 +2,10 @@ import Emittery from "emittery"; import pLimit from "p-limit"; import { type Hex, - type RpcLog, hexToBigInt, hexToNumber, numberToHex, + type RpcLog, } from "viem"; import type { Network } from "@/config/networks.js"; @@ -17,7 +17,7 @@ import { import type { Common } from "@/Ponder.js"; import type { SyncStore } from "@/sync-store/store.js"; import { poll } from "@/utils/poll.js"; -import { type Queue, createQueue } from "@/utils/queue.js"; +import { createQueue, type Queue } from "@/utils/queue.js"; import { range } from "@/utils/range.js"; import { startClock } from "@/utils/timer.js"; @@ -87,14 +87,14 @@ export class RealtimeSyncService extends Emittery { this.common.metrics.ponder_realtime_is_connected.set( { network: this.network.name }, - 1 + 1, ); // Set the finalized block number according to the network's finality threshold. // If the finality block count is greater than the latest block number, set to zero. const finalizedBlockNumber = Math.max( 0, - latestBlockNumber - this.network.finalityBlockCount + latestBlockNumber - this.network.finalityBlockCount, ); this.finalizedBlockNumber = finalizedBlockNumber; @@ -114,7 +114,7 @@ export class RealtimeSyncService extends Emittery { if ( endBlocks.every( (endBlock) => - endBlock !== undefined && endBlock < this.finalizedBlockNumber + endBlock !== undefined && endBlock < this.finalizedBlockNumber, ) ) { this.common.logger.warn({ @@ -123,7 +123,7 @@ export class RealtimeSyncService extends Emittery { }); this.common.metrics.ponder_realtime_is_connected.set( { network: this.network.name }, - 0 + 0, ); return; } @@ -131,7 +131,7 @@ export class RealtimeSyncService extends Emittery { // If the latest block was not added to the queue, setup was not completed successfully. if (this.queue.size === 0) { throw new Error( - `Unable to start. Must call setup() method before start().` + `Unable to start. Must call setup() method before start().`, ); } @@ -144,13 +144,13 @@ export class RealtimeSyncService extends Emittery { if (!finalizedBlock) throw new Error(`Unable to fetch finalized block`); this.common.metrics.ponder_realtime_rpc_request_duration.observe( { method: "eth_getBlockByNumber", network: this.network.name }, - stopClock() + stopClock(), ); this.common.logger.info({ service: "realtime", msg: `Fetched finalized block at ${hexToNumber( - finalizedBlock.number! + finalizedBlock.number!, )} (network=${this.network.name})`, }); @@ -167,7 +167,7 @@ export class RealtimeSyncService extends Emittery { async () => { await this.addNewLatestBlock(); }, - { emitOnBegin: false, interval: this.network.pollingInterval } + { emitOnBegin: false, interval: this.network.pollingInterval }, ); }; @@ -195,7 +195,7 @@ export class RealtimeSyncService extends Emittery { if (!latestBlock_) throw new Error(`Unable to fetch latest block`); this.common.metrics.ponder_realtime_rpc_request_duration.observe( { method: "eth_getBlockByNumber", network: this.network.name }, - stopClock() + stopClock(), ); return latestBlock_ as BlockWithTransactions; }; @@ -295,7 +295,7 @@ export class RealtimeSyncService extends Emittery { }); this.common.metrics.ponder_realtime_rpc_request_duration.observe( { method: "eth_getLogs", network: this.network.name }, - stopClock() + stopClock(), ); matchedLogs = filterLogs({ @@ -313,7 +313,7 @@ export class RealtimeSyncService extends Emittery { }); this.common.metrics.ponder_realtime_rpc_request_duration.observe( { method: "eth_getLogs", network: this.network.name }, - stopClock() + stopClock(), ); // Find and insert any new child contracts. @@ -333,7 +333,7 @@ export class RealtimeSyncService extends Emittery { chainId: this.network.chainId, logs: matchedFactoryLogs, }); - }) + }), ); // Find any logs matching log filters or child contract filters. @@ -355,7 +355,7 @@ export class RealtimeSyncService extends Emittery { address: childContractAddresses, topics: factory.criteria.topics, }; - }) + }), ); matchedLogs = filterLogs({ @@ -382,11 +382,11 @@ export class RealtimeSyncService extends Emittery { if (matchedLogCount > 0) { // Filter transactions down to those that are required by the matched logs. const requiredTransactionHashes = new Set( - matchedLogs.map((l) => l.transactionHash) + matchedLogs.map((l) => l.transactionHash), ); const filteredTransactions = newBlockWithTransactions.transactions.filter((t) => - requiredTransactionHashes.has(t.hash) + requiredTransactionHashes.has(t.hash), ); // TODO: Maybe rename or at least document behavior @@ -413,11 +413,11 @@ export class RealtimeSyncService extends Emittery { this.common.metrics.ponder_realtime_latest_block_number.set( { network: this.network.name }, - newBlock.number + newBlock.number, ); this.common.metrics.ponder_realtime_latest_block_timestamp.set( { network: this.network.name }, - newBlock.timestamp + newBlock.timestamp, ); // If this block moves the finality checkpoint, remove now-finalized blocks from the local chain @@ -429,12 +429,12 @@ export class RealtimeSyncService extends Emittery { const newFinalizedBlock = this.blocks.find( (block) => block.number === - this.finalizedBlockNumber + this.network.finalityBlockCount + this.finalizedBlockNumber + this.network.finalityBlockCount, )!; // Remove now-finalized blocks from the local chain (except for the block at newFinalizedBlockNumber). this.blocks = this.blocks.filter( - (block) => block.number >= newFinalizedBlock.number + (block) => block.number >= newFinalizedBlock.number, ); // TODO: Update this to insert: @@ -482,7 +482,7 @@ export class RealtimeSyncService extends Emittery { if (newBlock.number > previousHeadBlock.number + 1) { const missingBlockNumbers = range( previousHeadBlock.number + 1, - newBlock.number + newBlock.number, ); // Fetch all missing blocks using a request concurrency limit of 10. @@ -503,7 +503,7 @@ export class RealtimeSyncService extends Emittery { method: "eth_getBlockByNumber", network: this.network.name, }, - stopClock() + stopClock(), ); return block as BlockWithTransactions; }); @@ -550,7 +550,7 @@ export class RealtimeSyncService extends Emittery { while (canonicalBlock.number > this.finalizedBlockNumber) { const commonAncestorBlock = this.blocks.find( - (b) => b.hash === canonicalBlock.parentHash + (b) => b.hash === canonicalBlock.parentHash, ); // If the common ancestor block is present in our local chain, this is a short reorg. @@ -562,7 +562,7 @@ export class RealtimeSyncService extends Emittery { // Remove all non-canonical blocks from the local chain. this.blocks = this.blocks.filter( - (block) => block.number <= commonAncestorBlock.number + (block) => block.number <= commonAncestorBlock.number, ); await this.syncStore.deleteRealtimeData({ @@ -606,16 +606,16 @@ export class RealtimeSyncService extends Emittery { method: "eth_getBlockByHash", network: this.network.name, }, - stopClock() + stopClock(), ); if (!parentBlock_) throw new Error( - `Failed to fetch parent block with hash: ${canonicalBlock.parentHash}` + `Failed to fetch parent block with hash: ${canonicalBlock.parentHash}`, ); canonicalBlocksWithTransactions.unshift( - parentBlock_ as BlockWithTransactions + parentBlock_ as BlockWithTransactions, ); depth += 1; canonicalBlock = rpcBlockToLightBlock(parentBlock_); diff --git a/packages/core/src/sync-store/postgres/format.ts b/packages/core/src/sync-store/postgres/format.ts index 88f76eeec..272de1ab0 100644 --- a/packages/core/src/sync-store/postgres/format.ts +++ b/packages/core/src/sync-store/postgres/format.ts @@ -1,10 +1,10 @@ import type { Generated, Insertable } from "kysely"; import type { Address, Hash, Hex } from "viem"; import { + hexToNumber, type RpcBlock, type RpcLog, type RpcTransaction, - hexToNumber, } from "viem"; import { toLowerCase } from "@/utils/lowercase.js"; @@ -36,7 +36,7 @@ type BlocksTable = { export type InsertableBlock = Insertable; export function rpcToPostgresBlock( - block: RpcBlock + block: RpcBlock, ): Omit { return { baseFeePerGas: block.baseFeePerGas ? BigInt(block.baseFeePerGas) : null, @@ -88,7 +88,7 @@ type TransactionsTable = { export type InsertableTransaction = Insertable; export function rpcToPostgresTransaction( - transaction: RpcTransaction + transaction: RpcTransaction, ): Omit { return { accessList: transaction.accessList diff --git a/packages/core/src/sync-store/postgres/migrations.test.ts b/packages/core/src/sync-store/postgres/migrations.test.ts index 4259ae457..046d40617 100644 --- a/packages/core/src/sync-store/postgres/migrations.test.ts +++ b/packages/core/src/sync-store/postgres/migrations.test.ts @@ -55,14 +55,14 @@ test("2023_09_19_0_new_sync_design -> 2023_11_06_0_new_rpc_cache_design succeeds if (syncStore.kind !== "postgres") return; const { error } = await syncStore.migrator.migrateTo( - "2023_09_19_0_new_sync_design" + "2023_09_19_0_new_sync_design", ); expect(error).toBeFalsy(); await seed_2023_09_19_0_new_sync_design(syncStore.db); const { error: latestError } = await syncStore.migrator.migrateTo( - "2023_11_06_0_new_rpc_cache_design" + "2023_11_06_0_new_rpc_cache_design", ); expect(latestError).toBeFalsy(); }, 15_000); diff --git a/packages/core/src/sync-store/postgres/migrations.ts b/packages/core/src/sync-store/postgres/migrations.ts index f35e33c28..802e8a5fc 100644 --- a/packages/core/src/sync-store/postgres/migrations.ts +++ b/packages/core/src/sync-store/postgres/migrations.ts @@ -311,7 +311,7 @@ const migrations: Record = { .createTable("logFilterIntervals") .addColumn("id", "serial", (col) => col.notNull().primaryKey()) // Auto-increment .addColumn("logFilterId", "text", (col) => - col.notNull().references("logFilters.id") + col.notNull().references("logFilters.id"), ) .addColumn("startBlock", "numeric(78, 0)", (col) => col.notNull()) .addColumn("endBlock", "numeric(78, 0)", (col) => col.notNull()) @@ -338,7 +338,7 @@ const migrations: Record = { .createTable("factoryLogFilterIntervals") .addColumn("id", "serial", (col) => col.notNull().primaryKey()) // Auto-increment .addColumn("factoryId", "text", (col) => - col.notNull().references("factories.id") + col.notNull().references("factories.id"), ) .addColumn("startBlock", "numeric(78, 0)", (col) => col.notNull()) .addColumn("endBlock", "numeric(78, 0)", (col) => col.notNull()) diff --git a/packages/core/src/sync-store/postgres/store.ts b/packages/core/src/sync-store/postgres/store.ts index 111e35379..4795be956 100644 --- a/packages/core/src/sync-store/postgres/store.ts +++ b/packages/core/src/sync-store/postgres/store.ts @@ -1,11 +1,11 @@ import { - type ExpressionBuilder, - type Transaction as KyselyTransaction, CompiledQuery, + type ExpressionBuilder, Kysely, Migrator, PostgresDialect, sql, + type Transaction as KyselyTransaction, } from "kysely"; import type { Pool } from "pg"; import type { Hex, RpcBlock, RpcLog, RpcTransaction } from "viem"; @@ -24,10 +24,10 @@ import { range } from "@/utils/range.js"; import type { SyncStore } from "../store.js"; import { - type SyncStoreTables, rpcToPostgresBlock, rpcToPostgresLog, rpcToPostgresTransaction, + type SyncStoreTables, } from "./format.js"; import { migrationProvider } from "./migrations.js"; @@ -50,11 +50,11 @@ export class PostgresSyncStore implements SyncStore { ? async (connection) => { await connection.executeQuery( CompiledQuery.raw( - `CREATE SCHEMA IF NOT EXISTS ${databaseSchema}` - ) + `CREATE SCHEMA IF NOT EXISTS ${databaseSchema}`, + ), ); await connection.executeQuery( - CompiledQuery.raw(`SET search_path = ${databaseSchema}`) + CompiledQuery.raw(`SET search_path = ${databaseSchema}`), ); } : undefined, @@ -106,7 +106,7 @@ export class PostgresSyncStore implements SyncStore { rpcTransactions.map((transaction) => ({ ...rpcToPostgresTransaction(transaction), chainId, - })) + })), ) .onConflict((oc) => oc.column("hash").doNothing()) .execute(); @@ -119,7 +119,7 @@ export class PostgresSyncStore implements SyncStore { rpcLogs.map((log) => ({ ...rpcToPostgresLog(log), chainId, - })) + })), ) .onConflict((oc) => oc.column("id").doNothing()) .execute(); @@ -164,7 +164,7 @@ export class PostgresSyncStore implements SyncStore { existingIntervalRows.map((i) => [ Number(i.startBlock), Number(i.endBlock), - ]) + ]), ); const mergedIntervalRows = mergedIntervals.map( @@ -172,7 +172,7 @@ export class PostgresSyncStore implements SyncStore { logFilterId, startBlock: BigInt(startBlock), endBlock: BigInt(endBlock), - }) + }), ); if (mergedIntervalRows.length > 0) { @@ -184,7 +184,7 @@ export class PostgresSyncStore implements SyncStore { return mergedIntervals; }); - }) + }), ); const intervals = await this.db @@ -195,12 +195,12 @@ export class PostgresSyncStore implements SyncStore { fragments.map( (f) => sql`( ${sql.val(f.id)}, ${sql.val(f.address)}, ${sql.val( - f.topic0 + f.topic0, )}, ${sql.val(f.topic1)}, ${sql.val(f.topic2)}, ${sql.val( - f.topic3 - )} )` - ) - )} )` + f.topic3, + )} )`, + ), + )} )`, ) .selectFrom("logFilterIntervals") .leftJoin("logFilters", "logFilterId", "logFilters.id") @@ -209,7 +209,7 @@ export class PostgresSyncStore implements SyncStore { or([ cmpr("address", "is", null), cmpr("fragmentAddress", "=", sql.ref("address")), - ]) + ]), ); for (const idx_ of range(0, 4)) { baseJoin = baseJoin.on(({ or, cmpr }) => { @@ -227,17 +227,20 @@ export class PostgresSyncStore implements SyncStore { .where("chainId", "=", chainId) .execute(); - const intervalsByFragment = intervals.reduce((acc, cur) => { - const { fragmentId, ...rest } = cur; - acc[fragmentId] ||= []; - acc[fragmentId].push(rest); - return acc; - }, {} as Record); + const intervalsByFragment = intervals.reduce( + (acc, cur) => { + const { fragmentId, ...rest } = cur; + acc[fragmentId] ||= []; + acc[fragmentId].push(rest); + return acc; + }, + {} as Record, + ); const fragmentIntervals = fragments.map((f) => { return (intervalsByFragment[f.id] ?? []).map( (r) => - [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number] + [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number], ); }); @@ -259,7 +262,7 @@ export class PostgresSyncStore implements SyncStore { rpcLogs.map((log) => ({ ...rpcToPostgresLog(log), chainId, - })) + })), ) .onConflict((oc) => oc.column("id").doNothing()) .execute(); @@ -395,7 +398,7 @@ export class PostgresSyncStore implements SyncStore { existingIntervals.map((i) => [ Number(i.startBlock), Number(i.endBlock), - ]) + ]), ); const mergedIntervalRows = mergedIntervals.map( @@ -403,7 +406,7 @@ export class PostgresSyncStore implements SyncStore { factoryId, startBlock: BigInt(startBlock), endBlock: BigInt(endBlock), - }) + }), ); if (mergedIntervalRows.length > 0) { @@ -415,7 +418,7 @@ export class PostgresSyncStore implements SyncStore { return mergedIntervals; }); - }) + }), ); const intervals = await this.db @@ -426,14 +429,14 @@ export class PostgresSyncStore implements SyncStore { fragments.map( (f) => sql`( ${sql.val(f.id)}, ${sql.val(f.address)}, ${sql.val( - f.eventSelector + f.eventSelector, )}, ${sql.val(f.childAddressLocation)}, ${sql.val( - f.topic0 + f.topic0, )}, ${sql.val(f.topic1)}, ${sql.val(f.topic2)}, ${sql.val( - f.topic3 - )} )` - ) - )} )` + f.topic3, + )} )`, + ), + )} )`, ) .selectFrom("factoryLogFilterIntervals") .leftJoin("factories", "factoryId", "factories.id") @@ -445,9 +448,9 @@ export class PostgresSyncStore implements SyncStore { cmpr( "fragmentChildAddressLocation", "=", - sql.ref("childAddressLocation") + sql.ref("childAddressLocation"), ), - ]) + ]), ); for (const idx_ of range(0, 4)) { baseJoin = baseJoin.on(({ or, cmpr }) => { @@ -465,20 +468,23 @@ export class PostgresSyncStore implements SyncStore { .where("chainId", "=", chainId) .execute(); - const intervalsByFragment = intervals.reduce((acc, cur) => { - const { fragmentId, ...rest } = cur; - acc[fragmentId] ||= []; - acc[fragmentId].push({ - startBlock: rest.startBlock, - endBlock: rest.endBlock, - }); - return acc; - }, {} as Record); + const intervalsByFragment = intervals.reduce( + (acc, cur) => { + const { fragmentId, ...rest } = cur; + acc[fragmentId] ||= []; + acc[fragmentId].push({ + startBlock: rest.startBlock, + endBlock: rest.endBlock, + }); + return acc; + }, + {} as Record, + ); const fragmentIntervals = fragments.map((f) => { return (intervalsByFragment[f.id] ?? []).map( (r) => - [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number] + [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number], ); }); @@ -597,7 +603,7 @@ export class PostgresSyncStore implements SyncStore { .whereRef("logFilters.id", "=", "logFilterIntervals.logFilterId") .limit(1), "=", - chainId + chainId, ) .where("startBlock", ">", fromBlock) .execute(); @@ -612,7 +618,7 @@ export class PostgresSyncStore implements SyncStore { .whereRef("logFilters.id", "=", "logFilterIntervals.logFilterId") .limit(1), "=", - chainId + chainId, ) .where("endBlock", ">", fromBlock) .execute(); @@ -627,11 +633,11 @@ export class PostgresSyncStore implements SyncStore { .whereRef( "factories.id", "=", - "factoryLogFilterIntervals.factoryId" + "factoryLogFilterIntervals.factoryId", ) .limit(1), "=", - chainId + chainId, ) .where("startBlock", ">", fromBlock) .execute(); @@ -646,11 +652,11 @@ export class PostgresSyncStore implements SyncStore { .whereRef( "factories.id", "=", - "factoryLogFilterIntervals.factoryId" + "factoryLogFilterIntervals.factoryId", ) .limit(1), "=", - chainId + chainId, ) .where("endBlock", ">", fromBlock) .execute(); @@ -687,7 +693,7 @@ export class PostgresSyncStore implements SyncStore { .insertInto("logFilterIntervals") .values({ logFilterId, startBlock, endBlock }) .execute(); - }) + }), ); }; @@ -719,7 +725,7 @@ export class PostgresSyncStore implements SyncStore { .insertInto("factoryLogFilterIntervals") .values({ factoryId, startBlock, endBlock }) .execute(); - }) + }), ); }; @@ -738,7 +744,7 @@ export class PostgresSyncStore implements SyncStore { .insertInto("rpcRequestResults") .values({ request, blockNumber, chainId, result }) .onConflict((oc) => - oc.constraint("rpcRequestResultPrimaryKey").doUpdateSet({ result }) + oc.constraint("rpcRequestResultPrimaryKey").doUpdateSet({ result }), ) .execute(); }; @@ -800,8 +806,8 @@ export class PostgresSyncStore implements SyncStore { "eventSources(eventSource_name)", () => sql`( values ${sql.join( - eventSourceNames.map((name) => sql`( ${sql.val(name)} )`) - )} )` + eventSourceNames.map((name) => sql`( ${sql.val(name)} )`), + )} )`, ) .selectFrom("logs") .leftJoin("blocks", "blocks.hash", "logs.blockHash") @@ -883,8 +889,8 @@ export class PostgresSyncStore implements SyncStore { cmpr( "logs.chainId", "=", - sql`cast (${sql.val(logFilter.chainId)} as integer)` - ) + sql`cast (${sql.val(logFilter.chainId)} as integer)`, + ), ); if (logFilter.criteria.address) { @@ -942,8 +948,8 @@ export class PostgresSyncStore implements SyncStore { cmpr( "logs.chainId", "=", - sql`cast (${sql.val(factory.chainId)} as integer)` - ) + sql`cast (${sql.val(factory.chainId)} as integer)`, + ), ); const selectChildAddressExpression = @@ -959,8 +965,8 @@ export class PostgresSyncStore implements SyncStore { .select(selectChildAddressExpression.as("childAddress")) .where("chainId", "=", factory.chainId) .where("address", "=", factory.criteria.address) - .where("topic0", "=", factory.criteria.eventSelector) - ) + .where("topic0", "=", factory.criteria.eventSelector), + ), ); if (factory.fromBlock) { @@ -984,9 +990,9 @@ export class PostgresSyncStore implements SyncStore { cmprs.push( or( logFilter.includeEventSelectors.map((t) => - cmpr("logs.topic0", "=", t) - ) - ) + cmpr("logs.topic0", "=", t), + ), + ), ); } return and(cmprs); @@ -998,9 +1004,9 @@ export class PostgresSyncStore implements SyncStore { cmprs.push( or( factory.includeEventSelectors.map((t) => - cmpr("logs.topic0", "=", t) - ) - ) + cmpr("logs.topic0", "=", t), + ), + ), ); } return and(cmprs); @@ -1026,11 +1032,11 @@ export class PostgresSyncStore implements SyncStore { // NOTE: Not adding the includeEventSelectors clause here. const logFilterCmprs = logFilters.map((logFilter) => - and(buildLogFilterCmprs({ where, logFilter })) + and(buildLogFilterCmprs({ where, logFilter })), ); const factoryCmprs = factories.map((factory) => - and(buildFactoryCmprs({ where, factory })) + and(buildFactoryCmprs({ where, factory })), ); return or([...logFilterCmprs, ...factoryCmprs]); @@ -1220,7 +1226,7 @@ function buildFactoryChildAddressSelectExpression({ const start = 2 + 12 * 2 + 1; const length = 20 * 2; return sql`'0x' || substring(${sql.ref( - childAddressLocation + childAddressLocation, )} from ${start}::integer for ${length}::integer)`; } } diff --git a/packages/core/src/sync-store/sqlite/format.ts b/packages/core/src/sync-store/sqlite/format.ts index 58204b34b..262393d5e 100644 --- a/packages/core/src/sync-store/sqlite/format.ts +++ b/packages/core/src/sync-store/sqlite/format.ts @@ -1,10 +1,10 @@ import type { Generated, Insertable } from "kysely"; import type { Address, Hash, Hex } from "viem"; import { + hexToNumber, type RpcBlock, type RpcLog, type RpcTransaction, - hexToNumber, } from "viem"; import { encodeAsText } from "@/utils/encoding.js"; @@ -39,7 +39,7 @@ type BlocksTable = { export type InsertableBlock = Insertable; export function rpcToSqliteBlock( - block: RpcBlock + block: RpcBlock, ): Omit { return { baseFeePerGas: block.baseFeePerGas @@ -93,7 +93,7 @@ type TransactionsTable = { export type InsertableTransaction = Insertable; export function rpcToSqliteTransaction( - transaction: RpcTransaction + transaction: RpcTransaction, ): Omit { return { accessList: transaction.accessList diff --git a/packages/core/src/sync-store/sqlite/migrations.test.ts b/packages/core/src/sync-store/sqlite/migrations.test.ts index 4a089984a..9f3806b27 100644 --- a/packages/core/src/sync-store/sqlite/migrations.test.ts +++ b/packages/core/src/sync-store/sqlite/migrations.test.ts @@ -57,16 +57,16 @@ test( if (syncStore.kind !== "sqlite") return; const { error } = await syncStore.migrator.migrateTo( - "2023_09_19_0_new_sync_design" + "2023_09_19_0_new_sync_design", ); expect(error).toBeFalsy(); await seed_2023_09_19_0_new_sync_design(syncStore.db); const { error: latestError } = await syncStore.migrator.migrateTo( - "2023_11_06_0_new_rpc_cache_design" + "2023_11_06_0_new_rpc_cache_design", ); expect(latestError).toBeFalsy(); }, - {} + {}, ); diff --git a/packages/core/src/sync-store/sqlite/migrations.ts b/packages/core/src/sync-store/sqlite/migrations.ts index 99e3e5cd1..7905cab10 100644 --- a/packages/core/src/sync-store/sqlite/migrations.ts +++ b/packages/core/src/sync-store/sqlite/migrations.ts @@ -311,7 +311,7 @@ const migrations: Record = { .createTable("logFilterIntervals") .addColumn("id", "integer", (col) => col.notNull().primaryKey()) // Auto-increment .addColumn("logFilterId", "text", (col) => - col.notNull().references("logFilters.id") + col.notNull().references("logFilters.id"), ) .addColumn("startBlock", "varchar(79)", (col) => col.notNull()) .addColumn("endBlock", "varchar(79)", (col) => col.notNull()) @@ -338,7 +338,7 @@ const migrations: Record = { .createTable("factoryLogFilterIntervals") .addColumn("id", "integer", (col) => col.notNull().primaryKey()) // Auto-increment .addColumn("factoryId", "text", (col) => - col.notNull().references("factories.id") + col.notNull().references("factories.id"), ) .addColumn("startBlock", "varchar(79)", (col) => col.notNull()) .addColumn("endBlock", "varchar(79)", (col) => col.notNull()) diff --git a/packages/core/src/sync-store/sqlite/store.ts b/packages/core/src/sync-store/sqlite/store.ts index bf0585c1d..d6512ef05 100644 --- a/packages/core/src/sync-store/sqlite/store.ts +++ b/packages/core/src/sync-store/sqlite/store.ts @@ -1,11 +1,11 @@ import type Sqlite from "better-sqlite3"; import { type ExpressionBuilder, - type Transaction as KyselyTransaction, Kysely, Migrator, sql, SqliteDialect, + type Transaction as KyselyTransaction, } from "kysely"; import type { Hex, RpcBlock, RpcLog, RpcTransaction } from "viem"; @@ -25,10 +25,10 @@ import { range } from "@/utils/range.js"; import type { SyncStore } from "../store.js"; import type { BigIntText } from "./format.js"; import { - type SyncStoreTables, rpcToSqliteBlock, rpcToSqliteLog, rpcToSqliteTransaction, + type SyncStoreTables, } from "./format.js"; import { migrationProvider } from "./migrations.js"; @@ -134,7 +134,7 @@ export class SqliteSyncStore implements SyncStore { existingIntervalRows.map((i) => [ Number(decodeToBigInt(i.startBlock)), Number(decodeToBigInt(i.endBlock)), - ]) + ]), ); const mergedIntervalRows = mergedIntervals.map( @@ -142,7 +142,7 @@ export class SqliteSyncStore implements SyncStore { logFilterId, startBlock: encodeAsText(startBlock), endBlock: encodeAsText(endBlock), - }) + }), ); if (mergedIntervalRows.length > 0) { @@ -154,7 +154,7 @@ export class SqliteSyncStore implements SyncStore { return mergedIntervals; }); - }) + }), ); const intervals = await this.db @@ -165,12 +165,12 @@ export class SqliteSyncStore implements SyncStore { fragments.map( (f) => sql`( ${sql.val(f.id)}, ${sql.val(f.address)}, ${sql.val( - f.topic0 + f.topic0, )}, ${sql.val(f.topic1)}, ${sql.val(f.topic2)}, ${sql.val( - f.topic3 - )} )` - ) - )} )` + f.topic3, + )} )`, + ), + )} )`, ) .selectFrom("logFilterIntervals") .leftJoin("logFilters", "logFilterId", "logFilters.id") @@ -179,7 +179,7 @@ export class SqliteSyncStore implements SyncStore { or([ cmpr("address", "is", null), cmpr("fragmentAddress", "=", sql.ref("address")), - ]) + ]), ); for (const idx_ of range(0, 4)) { baseJoin = baseJoin.on(({ or, cmpr }) => { @@ -197,20 +197,23 @@ export class SqliteSyncStore implements SyncStore { .where("chainId", "=", chainId) .execute(); - const intervalsByFragment = intervals.reduce((acc, cur) => { - const { fragmentId, ...rest } = cur; - acc[fragmentId] ||= []; - acc[fragmentId].push({ - startBlock: decodeToBigInt(rest.startBlock), - endBlock: decodeToBigInt(rest.endBlock), - }); - return acc; - }, {} as Record); + const intervalsByFragment = intervals.reduce( + (acc, cur) => { + const { fragmentId, ...rest } = cur; + acc[fragmentId] ||= []; + acc[fragmentId].push({ + startBlock: decodeToBigInt(rest.startBlock), + endBlock: decodeToBigInt(rest.endBlock), + }); + return acc; + }, + {} as Record, + ); const fragmentIntervals = fragments.map((f) => { return (intervalsByFragment[f.id] ?? []).map( (r) => - [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number] + [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number], ); }); @@ -363,7 +366,7 @@ export class SqliteSyncStore implements SyncStore { existingIntervals.map((i) => [ Number(decodeToBigInt(i.startBlock)), Number(decodeToBigInt(i.endBlock)), - ]) + ]), ); const mergedIntervalRows = mergedIntervals.map( @@ -371,7 +374,7 @@ export class SqliteSyncStore implements SyncStore { factoryId, startBlock: encodeAsText(startBlock), endBlock: encodeAsText(endBlock), - }) + }), ); if (mergedIntervalRows.length > 0) { @@ -383,7 +386,7 @@ export class SqliteSyncStore implements SyncStore { return mergedIntervals; }); - }) + }), ); const intervals = await this.db @@ -394,14 +397,14 @@ export class SqliteSyncStore implements SyncStore { fragments.map( (f) => sql`( ${sql.val(f.id)}, ${sql.val(f.address)}, ${sql.val( - f.eventSelector + f.eventSelector, )}, ${sql.val(f.childAddressLocation)}, ${sql.val( - f.topic0 + f.topic0, )}, ${sql.val(f.topic1)}, ${sql.val(f.topic2)}, ${sql.val( - f.topic3 - )} )` - ) - )} )` + f.topic3, + )} )`, + ), + )} )`, ) .selectFrom("factoryLogFilterIntervals") .leftJoin("factories", "factoryId", "factories.id") @@ -413,9 +416,9 @@ export class SqliteSyncStore implements SyncStore { cmpr( "fragmentChildAddressLocation", "=", - sql.ref("childAddressLocation") + sql.ref("childAddressLocation"), ), - ]) + ]), ); for (const idx_ of range(0, 4)) { baseJoin = baseJoin.on(({ or, cmpr }) => { @@ -433,20 +436,23 @@ export class SqliteSyncStore implements SyncStore { .where("chainId", "=", chainId) .execute(); - const intervalsByFragment = intervals.reduce((acc, cur) => { - const { fragmentId, ...rest } = cur; - acc[fragmentId] ||= []; - acc[fragmentId].push({ - startBlock: decodeToBigInt(rest.startBlock), - endBlock: decodeToBigInt(rest.endBlock), - }); - return acc; - }, {} as Record); + const intervalsByFragment = intervals.reduce( + (acc, cur) => { + const { fragmentId, ...rest } = cur; + acc[fragmentId] ||= []; + acc[fragmentId].push({ + startBlock: decodeToBigInt(rest.startBlock), + endBlock: decodeToBigInt(rest.endBlock), + }); + return acc; + }, + {} as Record, + ); const fragmentIntervals = fragments.map((f) => { return (intervalsByFragment[f.id] ?? []).map( (r) => - [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number] + [Number(r.startBlock), Number(r.endBlock)] satisfies [number, number], ); }); @@ -567,7 +573,7 @@ export class SqliteSyncStore implements SyncStore { .whereRef("logFilters.id", "=", "logFilterIntervals.logFilterId") .limit(1), "=", - chainId + chainId, ) .where("startBlock", ">", fromBlock) .execute(); @@ -582,7 +588,7 @@ export class SqliteSyncStore implements SyncStore { .whereRef("logFilters.id", "=", "logFilterIntervals.logFilterId") .limit(1), "=", - chainId + chainId, ) .where("endBlock", ">", fromBlock) .execute(); @@ -597,11 +603,11 @@ export class SqliteSyncStore implements SyncStore { .whereRef( "factories.id", "=", - "factoryLogFilterIntervals.factoryId" + "factoryLogFilterIntervals.factoryId", ) .limit(1), "=", - chainId + chainId, ) .where("startBlock", ">", fromBlock) .execute(); @@ -616,11 +622,11 @@ export class SqliteSyncStore implements SyncStore { .whereRef( "factories.id", "=", - "factoryLogFilterIntervals.factoryId" + "factoryLogFilterIntervals.factoryId", ) .limit(1), "=", - chainId + chainId, ) .where("endBlock", ">", fromBlock) .execute(); @@ -661,7 +667,7 @@ export class SqliteSyncStore implements SyncStore { endBlock: encodeAsText(endBlock), }) .execute(); - }) + }), ); }; @@ -697,7 +703,7 @@ export class SqliteSyncStore implements SyncStore { endBlock: encodeAsText(endBlock), }) .execute(); - }) + }), ); }; @@ -788,8 +794,8 @@ export class SqliteSyncStore implements SyncStore { "eventSources(eventSource_name)", () => sql`( values ${sql.join( - eventSourceNames.map((name) => sql`( ${sql.val(name)} )`) - )} )` + eventSourceNames.map((name) => sql`( ${sql.val(name)} )`), + )} )`, ) .selectFrom("logs") .leftJoin("blocks", "blocks.hash", "logs.blockHash") @@ -904,13 +910,13 @@ export class SqliteSyncStore implements SyncStore { if (logFilter.fromBlock) { cmprs.push( - cmpr("blocks.number", ">=", encodeAsText(logFilter.fromBlock)) + cmpr("blocks.number", ">=", encodeAsText(logFilter.fromBlock)), ); } if (logFilter.toBlock) { cmprs.push( - cmpr("blocks.number", "<=", encodeAsText(logFilter.toBlock)) + cmpr("blocks.number", "<=", encodeAsText(logFilter.toBlock)), ); } @@ -943,13 +949,13 @@ export class SqliteSyncStore implements SyncStore { .select(selectChildAddressExpression.as("childAddress")) .where("chainId", "=", factory.chainId) .where("address", "=", factory.criteria.address) - .where("topic0", "=", factory.criteria.eventSelector) - ) + .where("topic0", "=", factory.criteria.eventSelector), + ), ); if (factory.fromBlock) { cmprs.push( - cmpr("blocks.number", ">=", encodeAsText(factory.fromBlock)) + cmpr("blocks.number", ">=", encodeAsText(factory.fromBlock)), ); } @@ -970,9 +976,9 @@ export class SqliteSyncStore implements SyncStore { cmprs.push( or( logFilter.includeEventSelectors.map((t) => - cmpr("logs.topic0", "=", t) - ) - ) + cmpr("logs.topic0", "=", t), + ), + ), ); } return and(cmprs); @@ -984,9 +990,9 @@ export class SqliteSyncStore implements SyncStore { cmprs.push( or( factory.includeEventSelectors.map((t) => - cmpr("logs.topic0", "=", t) - ) - ) + cmpr("logs.topic0", "=", t), + ), + ), ); } return and(cmprs); @@ -1012,11 +1018,11 @@ export class SqliteSyncStore implements SyncStore { // NOTE: Not adding the includeEventSelectors clause here. const logFilterCmprs = logFilters.map((logFilter) => - and(buildLogFilterCmprs({ where, logFilter })) + and(buildLogFilterCmprs({ where, logFilter })), ); const factoryCmprs = factories.map((factory) => - and(buildFactoryCmprs({ where, factory })) + and(buildFactoryCmprs({ where, factory })), ); return or([...logFilterCmprs, ...factoryCmprs]); @@ -1149,7 +1155,7 @@ export class SqliteSyncStore implements SyncStore { type: "eip1559", maxFeePerGas: decodeToBigInt(row.tx_maxFeePerGas), maxPriorityFeePerGas: decodeToBigInt( - row.tx_maxPriorityFeePerGas + row.tx_maxPriorityFeePerGas, ), } : row.tx_type === "0x7e" @@ -1157,7 +1163,7 @@ export class SqliteSyncStore implements SyncStore { type: "deposit", maxFeePerGas: decodeToBigInt(row.tx_maxFeePerGas), maxPriorityFeePerGas: decodeToBigInt( - row.tx_maxPriorityFeePerGas + row.tx_maxPriorityFeePerGas, ), } : { @@ -1216,7 +1222,7 @@ function buildFactoryChildAddressSelectExpression({ const start = 2 + 12 * 2 + 1; const length = 20 * 2; return sql`'0x' || substring(${sql.ref( - childAddressLocation + childAddressLocation, )}, ${start}, ${length})`; } } diff --git a/packages/core/src/sync-store/store.test.ts b/packages/core/src/sync-store/store.test.ts index d79b6b3c3..747f9c97a 100644 --- a/packages/core/src/sync-store/store.test.ts +++ b/packages/core/src/sync-store/store.test.ts @@ -730,7 +730,7 @@ test("insertRealtimeInterval inserts log filter intervals", async (context) => { await syncStore.getLogFilterIntervals({ chainId: 1, logFilter: logFilterCriteria, - }) + }), ).toMatchObject([[500, 550]]); // Confirm log filters have been inserted for factory child address logs. @@ -741,7 +741,7 @@ test("insertRealtimeInterval inserts log filter intervals", async (context) => { address: factoryCriteriaOne.address, topics: [factoryCriteriaOne.eventSelector], }, - }) + }), ).toMatchObject([[500, 550]]); expect( await syncStore.getLogFilterIntervals({ @@ -750,7 +750,7 @@ test("insertRealtimeInterval inserts log filter intervals", async (context) => { address: factoryCriteriaOne.address, topics: [factoryCriteriaOne.eventSelector], }, - }) + }), ).toMatchObject([[500, 550]]); // Also confirm factory log filters have been inserted. @@ -758,13 +758,13 @@ test("insertRealtimeInterval inserts log filter intervals", async (context) => { await syncStore.getFactoryLogFilterIntervals({ chainId: 1, factory: factoryCriteriaOne, - }) + }), ).toMatchObject([[500, 550]]); expect( await syncStore.getFactoryLogFilterIntervals({ chainId: 1, factory: factoryCriteriaTwo, - }) + }), ).toMatchObject([[500, 550]]); }); @@ -866,14 +866,14 @@ test("deleteRealtimeData updates interval data", async (context) => { await syncStore.getLogFilterIntervals({ chainId: 1, logFilter: logFilterCriteria, - }) + }), ).toMatchObject([[15495110, 15495111]]); expect( await syncStore.getFactoryLogFilterIntervals({ chainId: 1, factory: factoryCriteria, - }) + }), ).toMatchObject([[15495110, 15495111]]); await syncStore.deleteRealtimeData({ @@ -885,14 +885,14 @@ test("deleteRealtimeData updates interval data", async (context) => { await syncStore.getLogFilterIntervals({ chainId: 1, logFilter: logFilterCriteria, - }) + }), ).toMatchObject([[15495110, 15495110]]); expect( await syncStore.getFactoryLogFilterIntervals({ chainId: 1, factory: factoryCriteria, - }) + }), ).toMatchObject([[15495110, 15495110]]); }); diff --git a/packages/core/src/telemetry/detached-flush.js b/packages/core/src/telemetry/detached-flush.js index 9a97d5c6d..cc1c3e338 100644 --- a/packages/core/src/telemetry/detached-flush.js +++ b/packages/core/src/telemetry/detached-flush.js @@ -9,7 +9,7 @@ async function detachedFlush() { const events = JSON.parse(eventsContent); console.log( - `Sending ${events.length} telemetry events to ${telemetryUrl} from temporary file ${eventsFilePath}` + `Sending ${events.length} telemetry events to ${telemetryUrl} from temporary file ${eventsFilePath}`, ); try { @@ -22,7 +22,7 @@ async function detachedFlush() { "Content-Type": "application/json", }, }); - }) + }), ); } catch (e) { console.error(e); diff --git a/packages/core/src/telemetry/detached-flush.test.ts b/packages/core/src/telemetry/detached-flush.test.ts index 39a271f79..5757a6da9 100644 --- a/packages/core/src/telemetry/detached-flush.test.ts +++ b/packages/core/src/telemetry/detached-flush.test.ts @@ -3,6 +3,7 @@ import { existsSync, writeFileSync } from "node:fs"; import { tmpdir } from "node:os"; import path from "node:path"; import process from "node:process"; + import { expect, test } from "vitest"; test("detached flush script should run without error", async () => { @@ -26,14 +27,14 @@ test("detached flush script should run without error", async () => { }>((resolve) => { child_process.exec( `"${process.execPath}" "${flushDetachedScriptPath}" "${telemetryUrl}" "${telemetryEventsFilePath}"`, - (error, stdout, stderr) => resolve({ error, stdout, stderr }) + (error, stdout, stderr) => resolve({ error, stdout, stderr }), ); }); expect(stderr).toBe(""); expect(error).toBe(null); expect(stdout).toContain( - `Sending 5 telemetry events to ${telemetryUrl} from temporary file ${telemetryEventsFilePath}` + `Sending 5 telemetry events to ${telemetryUrl} from temporary file ${telemetryEventsFilePath}`, ); expect(existsSync(telemetryEventsFilePath)).toBeFalsy(); }); diff --git a/packages/core/src/telemetry/remote.ts b/packages/core/src/telemetry/remote.ts index 832eeba91..01a31ba57 100644 --- a/packages/core/src/telemetry/remote.ts +++ b/packages/core/src/telemetry/remote.ts @@ -20,7 +20,7 @@ export async function getGitRemoteUrl() { return; } resolve(stdout); - } + }, ); return String(await promise).trim(); diff --git a/packages/core/src/telemetry/service.test.ts b/packages/core/src/telemetry/service.test.ts index 28af4f31f..5820d8c6e 100644 --- a/packages/core/src/telemetry/service.test.ts +++ b/packages/core/src/telemetry/service.test.ts @@ -1,6 +1,7 @@ import child_process from "node:child_process"; import fs from "node:fs"; import { tmpdir } from "node:os"; + import path from "path"; import { beforeEach, expect, test, vi } from "vitest"; diff --git a/packages/core/src/telemetry/service.ts b/packages/core/src/telemetry/service.ts index 52de3a706..e72210918 100644 --- a/packages/core/src/telemetry/service.ts +++ b/packages/core/src/telemetry/service.ts @@ -1,10 +1,11 @@ -import Conf from "conf"; -import { randomBytes } from "crypto"; -import { createRequire } from "module"; import child_process from "node:child_process"; import { createHash } from "node:crypto"; import fs from "node:fs"; import url from "node:url"; + +import Conf from "conf"; +import { randomBytes } from "crypto"; +import { createRequire } from "module"; import os from "os"; import PQueue from "p-queue"; import path from "path"; @@ -131,8 +132,8 @@ export class TelemetryService { console.log( `${pc.magenta( - "Attention" - )}: Ponder now collects completely anonymous telemetry regarding usage. This data helps shape Ponder's roadmap and prioritize features. See https://ponder.sh/advanced/telemetry for more information.` + "Attention", + )}: Ponder now collects completely anonymous telemetry regarding usage. This data helps shape Ponder's roadmap and prioritize features. See https://ponder.sh/advanced/telemetry for more information.`, ); } @@ -149,7 +150,7 @@ export class TelemetryService { const telemetryEventsFilePath = path.join( this.options.ponderDir, - "telemetry-events.json" + "telemetry-events.json", ); fs.writeFileSync(telemetryEventsFilePath, serializedEvents); diff --git a/packages/core/src/types/model.ts b/packages/core/src/types/model.ts index 3388ca89f..c1d01929b 100644 --- a/packages/core/src/types/model.ts +++ b/packages/core/src/types/model.ts @@ -16,7 +16,7 @@ export type Model = { : HasRequiredPropertiesOtherThanId extends true ? { data: Prettify> } : { data?: Prettify> }) - > + >, ) => Promise>; createMany: (options: { data: Prettify[] }) => Promise[]>; @@ -42,7 +42,7 @@ export type Model = { current: Prettify; }) => Prettify, "id">>); }) - > + >, ) => Promise>; updateMany: (options: { @@ -77,7 +77,7 @@ export type Model = { current: Prettify; }) => Prettify, "id">>); }) - > + >, ) => Promise>; findUnique: (options: { id: T["id"] }) => Promise | null>; diff --git a/packages/core/src/types/ponder.test-d.ts b/packages/core/src/types/ponder.test-d.ts index cf443273f..78d118589 100644 --- a/packages/core/src/types/ponder.test-d.ts +++ b/packages/core/src/types/ponder.test-d.ts @@ -32,7 +32,7 @@ test("ExtractAllAddress", () => { { name: "optimism"; factory: { address: "0x2"; event: AbiEvent; parameter: string }; - } + }, ] >[never]; // ^? @@ -78,7 +78,7 @@ test("PonderApp multiple contracts", () => { networks: any; contracts: readonly [ { name: "One"; network: any; abi: OneAbi }, - { name: "Two"; network: any; abi: TwoAbi } + { name: "Two"; network: any; abi: TwoAbi }, ]; }, any @@ -127,7 +127,7 @@ test("PonderApp context network type", () => { name: "One"; network: [{ name: "mainnet" }, { name: "optimism" }]; abi: OneAbi; - } + }, ]; }, any @@ -150,7 +150,7 @@ test("PonderApp context client type", () => { name: "One"; network: [{ name: "mainnet" }, { name: "optimism" }]; abi: OneAbi; - } + }, ]; }, any @@ -176,7 +176,7 @@ test("PonderApp context contracts type", () => { address: "0x2"; startBlock: 1; endBlock: 2; - } + }, ]; }, any diff --git a/packages/core/src/types/ponder.ts b/packages/core/src/types/ponder.ts index fad7a3884..5da7fc860 100644 --- a/packages/core/src/types/ponder.ts +++ b/packages/core/src/types/ponder.ts @@ -26,7 +26,7 @@ export type Name = export type Names = TContracts extends readonly [ infer First extends Config["contracts"][number], - ...infer Rest extends Config["contracts"] + ...infer Rest extends Config["contracts"], ] ? [Name, ...Names] : []; @@ -34,10 +34,10 @@ export type Names = /** Recover the `contract` element at the index where {@link TName} is equal to {@link TContracts}[index]. */ export type RecoverContract< TContracts extends Config["contracts"], - TName extends string + TName extends string, > = TContracts extends readonly [ infer First extends Config["contracts"][number], - ...infer Rest extends Config["contracts"] + ...infer Rest extends Config["contracts"], ] ? First["name"] extends TName ? First @@ -54,28 +54,28 @@ type ContractNetworkOverrides = ContractRequired< export type ExtractAddress< TContract extends | ContractNetworkOverrides - | ContractFilter + | ContractFilter, > = Extract["address"]; /** Extract the startBlock type from a Contract. */ export type ExtractStartBlock< TContract extends | ContractNetworkOverrides - | ContractFilter + | ContractFilter, > = Extract["startBlock"]; /** Extract the endBlock type from a Contract. */ export type ExtractEndBlock< TContract extends | ContractNetworkOverrides - | ContractFilter + | ContractFilter, > = Extract["endBlock"]; /** Extract all address from a list of Contracts. */ export type ExtractAllAddresses = TContracts extends readonly [ infer First extends ContractNetworkOverrides[number], - ...infer Rest extends ContractNetworkOverrides + ...infer Rest extends ContractNetworkOverrides, ] ? readonly [ExtractAddress, ...ExtractAllAddresses] : []; @@ -84,7 +84,7 @@ export type ExtractAllAddresses = export type ExtractAllStartBlocks = TContracts extends readonly [ infer First extends ContractNetworkOverrides[number], - ...infer Rest extends ContractNetworkOverrides + ...infer Rest extends ContractNetworkOverrides, ] ? readonly [ExtractStartBlock, ...ExtractAllStartBlocks] : []; @@ -93,7 +93,7 @@ export type ExtractAllStartBlocks = export type ExtractAllEndBlocks = TContracts extends readonly [ infer First extends ContractNetworkOverrides[number], - ...infer Rest extends ContractNetworkOverrides + ...infer Rest extends ContractNetworkOverrides, ] ? readonly [ExtractEndBlock, ...ExtractAllEndBlocks] : []; @@ -102,7 +102,7 @@ export type ExtractAllEndBlocks = type AppContracts = TContracts extends readonly [ infer First extends Config["contracts"][number], - ...infer Rest extends Config["contracts"] + ...infer Rest extends Config["contracts"], ] ? Record< First["name"], @@ -165,11 +165,11 @@ export type PonderApp = { >["network"][number]["name"] : never; }; - client: ReadOnlyClient; + client: Omit; models: { [key in keyof Infer]: Model[key]>; }; }; - }) => Promise | void + }) => Promise | void, ) => void; }; diff --git a/packages/core/src/ui/app.tsx b/packages/core/src/ui/app.tsx index 3b44b7ffa..446305230 100644 --- a/packages/core/src/ui/app.tsx +++ b/packages/core/src/ui/app.tsx @@ -97,7 +97,7 @@ const App = (ui: UiState) => { title={eventSourceName} stat={stat} /> - ) + ), )} diff --git a/packages/core/src/ui/service.ts b/packages/core/src/ui/service.ts index f2a09efd7..61253fb38 100644 --- a/packages/core/src/ui/service.ts +++ b/packages/core/src/ui/service.ts @@ -1,7 +1,7 @@ import type { Source } from "@/config/sources.js"; import type { Common } from "@/Ponder.js"; -import { type UiState, buildUiState, setupInkApp } from "./app.js"; +import { buildUiState, setupInkApp, type UiState } from "./app.js"; export class UiService { private common: Common; @@ -31,7 +31,7 @@ export class UiService { this.renderInterval = setInterval(async () => { const eventSourceNames = Object.keys( - this.ui.historicalSyncEventSourceStats + this.ui.historicalSyncEventSourceStats, ); // Historical sync @@ -43,9 +43,8 @@ export class UiService { ).values; eventSourceNames.forEach((name) => { - const rate = rateMetric.find( - (m) => m.labels.eventSource === name - )?.value; + const rate = rateMetric.find((m) => m.labels.eventSource === name) + ?.value; const eta = etaMetric.find((m) => m.labels.eventSource === name)?.value; if (rate !== undefined) { @@ -56,8 +55,8 @@ export class UiService { const minRate = Math.min( ...eventSourceNames.map( - (name) => this.ui.historicalSyncEventSourceStats[name].rate - ) + (name) => this.ui.historicalSyncEventSourceStats[name].rate, + ), ); if (!this.ui.isHistoricalSyncComplete && minRate === 1) { diff --git a/packages/core/src/utils/encoding.test.ts b/packages/core/src/utils/encoding.test.ts index f4f3a70a8..89cfc5bf6 100644 --- a/packages/core/src/utils/encoding.test.ts +++ b/packages/core/src/utils/encoding.test.ts @@ -12,7 +12,7 @@ test("encodeAsText handles small positive integer", () => { const encoded = encodeAsText(value); expect(encoded).toBe( - "0000000000000000000000000000000000000000000000000000000000000000000000000000101" + "0000000000000000000000000000000000000000000000000000000000000000000000000000101", ); expect(decodeToBigInt(encoded)).toBe(value); }); @@ -22,7 +22,7 @@ test("encodeAsText handles max positive integer", () => { const encoded = encodeAsText(value); expect(encoded).toBe( - "0115792089237316195423570985008687907853269984665640564039457584007913129639935" + "0115792089237316195423570985008687907853269984665640564039457584007913129639935", ); expect(decodeToBigInt(encoded)).toBe(value); }); @@ -31,7 +31,7 @@ test("encodeAsText throws if value is less than max negative int", () => { const value = EVM_MAX_UINT + 1n; expect(() => encodeAsText(value)).toThrow( - "Value cannot be greater than EVM_MAX_UINT (115792089237316195423570985008687907853269984665640564039457584007913129639936)" + "Value cannot be greater than EVM_MAX_UINT (115792089237316195423570985008687907853269984665640564039457584007913129639936)", ); }); @@ -40,7 +40,7 @@ test("encodeAsText handles small negative int", () => { const encoded = encodeAsText(value); expect(encoded).toBe( - "-057896044618658097711785492504343953926634992332820282019728792003956564819713" + "-057896044618658097711785492504343953926634992332820282019728792003956564819713", ); expect(decodeToBigInt(encoded)).toBe(value); }); @@ -50,7 +50,7 @@ test("encodeAsText handles max negative int", () => { const encoded = encodeAsText(value); expect(encoded).toBe( - "-000000000000000000000000000000000000000000000000000000000000000000000000000000" + "-000000000000000000000000000000000000000000000000000000000000000000000000000000", ); expect(decodeToBigInt(encoded)).toBe(value); }); @@ -59,7 +59,7 @@ test("encodeAsText throws if value is less than max negative int", () => { const value = EVM_MIN_INT - 1n; expect(() => encodeAsText(value)).toThrow( - "Value cannot be less than EVM_MIN_INT (-57896044618658097711785492504343953926634992332820282019728792003956564819969)" + "Value cannot be less than EVM_MIN_INT (-57896044618658097711785492504343953926634992332820282019728792003956564819969)", ); }); @@ -68,7 +68,7 @@ test("encodeAsText handles zero", () => { const encoded = encodeAsText(value); expect(encoded).toBe( - "0000000000000000000000000000000000000000000000000000000000000000000000000000000" + "0000000000000000000000000000000000000000000000000000000000000000000000000000000", ); expect(decodeToBigInt(encoded)).toBe(value); }); diff --git a/packages/core/src/utils/fragments.test.ts b/packages/core/src/utils/fragments.test.ts index c02ec900f..3e7b96fd1 100644 --- a/packages/core/src/utils/fragments.test.ts +++ b/packages/core/src/utils/fragments.test.ts @@ -6,7 +6,7 @@ import { buildFactoryCriteria } from "@/config/factories.js"; import { buildFactoryFragments, buildLogFilterFragments } from "./fragments.js"; const llamaFactoryEventAbiItem = parseAbiItem( - "event LlamaInstanceCreated(address indexed deployer, string indexed name, address llamaCore, address llamaExecutor, address llamaPolicy, uint256 chainId)" + "event LlamaInstanceCreated(address indexed deployer, string indexed name, address llamaCore, address llamaExecutor, address llamaPolicy, uint256 chainId)", ); test("buildLogFilterFragments generates 1 log filter fragment for null filter", () => { @@ -103,7 +103,7 @@ test("buildFactoryFragments builds id containing topic", () => { }); expect(buildFactoryFragments({ chainId: 1, ...criteria })[0].id).toBe( - "1_0xa_0x00fef2d461a2fabbb523f9f42752c61336f03b17a602af52cc6c83cb8b110599_topic1_null_null_null_null" + "1_0xa_0x00fef2d461a2fabbb523f9f42752c61336f03b17a602af52cc6c83cb8b110599_topic1_null_null_null_null", ); }); @@ -115,6 +115,6 @@ test("buildFactoryFragments builds id containing offset", () => { }); expect(buildFactoryFragments({ chainId: 115511, ...criteria })[0].id).toBe( - "115511_0xa_0x00fef2d461a2fabbb523f9f42752c61336f03b17a602af52cc6c83cb8b110599_offset64_null_null_null_null" + "115511_0xa_0x00fef2d461a2fabbb523f9f42752c61336f03b17a602af52cc6c83cb8b110599_offset64_null_null_null_null", ); }); diff --git a/packages/core/src/utils/fragments.ts b/packages/core/src/utils/fragments.ts index 121440fe6..5af1e810a 100644 --- a/packages/core/src/utils/fragments.ts +++ b/packages/core/src/utils/fragments.ts @@ -62,17 +62,16 @@ function buildFragments({ chainId, idCallback, ...rest -}: - | (LogFilterCriteria | FactoryCriteria) & { - idCallback: ( - address: Address | null, - topic0: ReturnType["topic0"], - topic1: ReturnType["topic1"], - topic2: ReturnType["topic2"], - topic3: ReturnType["topic3"] - ) => string; - chainId: number; - }) { +}: (LogFilterCriteria | FactoryCriteria) & { + idCallback: ( + address: Address | null, + topic0: ReturnType["topic0"], + topic1: ReturnType["topic1"], + topic2: ReturnType["topic2"], + topic3: ReturnType["topic3"], + ) => string; + chainId: number; +}) { const fragments: { id: string; chainId: number; diff --git a/packages/core/src/utils/interval.test.ts b/packages/core/src/utils/interval.test.ts index ee8f02988..842633767 100644 --- a/packages/core/src/utils/interval.test.ts +++ b/packages/core/src/utils/interval.test.ts @@ -98,7 +98,7 @@ test("intervalIntersection correctly finds intersections", () => { [2, 4], [4, 6], [10, 11], - ] + ], ); expect(result).toEqual([ [2, 6], @@ -116,7 +116,7 @@ test("intervalIntersection handles no intersections", () => { [ [4, 4], [8, 8], - ] + ], ); expect(result).toEqual([]); }); @@ -135,7 +135,7 @@ test("intervalDifference correctly finds differences", () => { [ [2, 4], [8, 10], - ] + ], ); expect(result).toEqual([ @@ -154,7 +154,7 @@ test("intervalDifference handles no difference", () => { [ [0, 0], [4, 4], - ] + ], ); expect(result).toEqual([ [1, 3], @@ -168,7 +168,7 @@ test("intervalDifference handles full difference", () => { [1, 5], [4, 7], ], - [[0, 8]] + [[0, 8]], ); expect(result).toEqual([]); }); @@ -182,7 +182,7 @@ test("ProgressTracker constructor initializes correctly", () => { test("ProgressTracker constructor throws if passed an invalid interval", () => { expect( - () => new ProgressTracker({ target: [10, 1], completed: [] }) + () => new ProgressTracker({ target: [10, 1], completed: [] }), ).toThrowError("Invalid interval: start (10) is greater than end (1)"); }); @@ -217,7 +217,7 @@ test("ProgressTracker addCompletedInterval constructor throws if passed an inval const tracker = new ProgressTracker({ target: [1, 10], completed: [] }); expect(() => tracker.addCompletedInterval([5, 3])).toThrowError( - "Invalid interval: start (5) is greater than end (3)" + "Invalid interval: start (5) is greater than end (3)", ); }); @@ -358,9 +358,9 @@ test("BlockProgressTracker throws if pending blocks are added out of order", () tracker.addPendingBlocks({ blockNumbers: [5, 6, 9, 10] }); expect(() => - tracker.addPendingBlocks({ blockNumbers: [8, 12] }) + tracker.addPendingBlocks({ blockNumbers: [8, 12] }), ).toThrowError( - "New pending block number 8 was added out of order. Already added block number 10." + "New pending block number 8 was added out of order. Already added block number 10.", ); }); @@ -368,8 +368,8 @@ test("BlockProgressTracker throws if completed block was not pending", () => { const tracker = new BlockProgressTracker(); expect(() => - tracker.addCompletedBlock({ blockNumber: 5, blockTimestamp: 98 }) + tracker.addCompletedBlock({ blockNumber: 5, blockTimestamp: 98 }), ).toThrowError( - "Block number 5 was not pending. Ensure to add blocks as pending before marking them as completed." + "Block number 5 was not pending. Ensure to add blocks as pending before marking them as completed.", ); }); diff --git a/packages/core/src/utils/interval.ts b/packages/core/src/utils/interval.ts index d1afd21b5..65fe5f3d7 100644 --- a/packages/core/src/utils/interval.ts +++ b/packages/core/src/utils/interval.ts @@ -55,7 +55,7 @@ export function intervalUnion(intervals: [number, number][]) { */ export function intervalIntersection( list1: [number, number][], - list2: [number, number][] + list2: [number, number][], ) { const result: [number, number][] = []; let i = 0; @@ -112,7 +112,7 @@ export function intervalIntersectionMany(lists: [number, number][][]) { */ export function intervalDifference( initial: [number, number][], - remove: [number, number][] + remove: [number, number][], ) { const result: [number, number][] = []; @@ -202,7 +202,7 @@ export class ProgressTracker { }) { if (target[0] > target[1]) throw new Error( - `Invalid interval: start (${target[0]}) is greater than end (${target[1]})` + `Invalid interval: start (${target[0]}) is greater than end (${target[1]})`, ); this.target = target; @@ -217,7 +217,7 @@ export class ProgressTracker { addCompletedInterval(interval: [number, number]) { if (interval[0] > interval[1]) throw new Error( - `Invalid interval: start (${interval[0]}) is greater than end (${interval[1]})` + `Invalid interval: start (${interval[0]}) is greater than end (${interval[1]})`, ); const prevCheckpoint = this.getCheckpoint(); @@ -349,7 +349,7 @@ export class BlockProgressTracker { minNewPendingBlock <= maxPendingBlock ) { throw new Error( - `New pending block number ${minNewPendingBlock} was added out of order. Already added block number ${maxPendingBlock}.` + `New pending block number ${minNewPendingBlock} was added out of order. Already added block number ${maxPendingBlock}.`, ); } @@ -367,11 +367,11 @@ export class BlockProgressTracker { }) { // Find and remove the completed block from the pending list. const pendingBlockIndex = this.pendingBlocks.findIndex( - (pendingBlock) => pendingBlock === blockNumber + (pendingBlock) => pendingBlock === blockNumber, ); if (pendingBlockIndex === -1) { throw new Error( - `Block number ${blockNumber} was not pending. Ensure to add blocks as pending before marking them as completed.` + `Block number ${blockNumber} was not pending. Ensure to add blocks as pending before marking them as completed.`, ); } this.pendingBlocks.splice(pendingBlockIndex, 1); @@ -393,7 +393,7 @@ export class BlockProgressTracker { // Find all completed blocks that are less than the minimum pending block. // These blocks are "safe". const safeCompletedBlocks = this.completedBlocks.filter( - ({ blockNumber }) => blockNumber < this.pendingBlocks[0] + ({ blockNumber }) => blockNumber < this.pendingBlocks[0], ); // If there are no safe blocks, the first pending block has not been completed yet. @@ -405,7 +405,7 @@ export class BlockProgressTracker { // Remove all safe completed blocks that are less than the new checkpoint. // This avoid a memory leak and speeds up subsequent calls. this.completedBlocks = this.completedBlocks.filter( - ({ blockNumber }) => blockNumber >= maximumSafeCompletedBlock.blockNumber + ({ blockNumber }) => blockNumber >= maximumSafeCompletedBlock.blockNumber, ); return maximumSafeCompletedBlock; diff --git a/packages/core/src/utils/offset.test.ts b/packages/core/src/utils/offset.test.ts index 5cea87d0e..1092768a0 100644 --- a/packages/core/src/utils/offset.test.ts +++ b/packages/core/src/utils/offset.test.ts @@ -28,7 +28,7 @@ test("getBytesConsumedByParam returns 32 for tuple type containing nested dynami ], name: "fooOut", type: "tuple", - }) + }), ).toBe(32); }); @@ -46,6 +46,6 @@ test("getBytesConsumedByParam returns expanded byte amount for static tuple type ], name: "fooOut", type: "tuple", - }) + }), ).toBe(32 * 3); }); diff --git a/packages/core/src/utils/offset.ts b/packages/core/src/utils/offset.ts index 55a50179b..1bfbb3a65 100644 --- a/packages/core/src/utils/offset.ts +++ b/packages/core/src/utils/offset.ts @@ -78,7 +78,7 @@ function hasDynamicChild(param: AbiParameter) { } function getArrayComponents( - type: string + type: string, ): [length: number | null, innerType: string] | undefined { const matches = type.match(/^(.*)\[(\d+)?\]$/); return matches diff --git a/packages/core/src/utils/poll.ts b/packages/core/src/utils/poll.ts index 94d50221d..9d2011d52 100644 --- a/packages/core/src/utils/poll.ts +++ b/packages/core/src/utils/poll.ts @@ -15,7 +15,7 @@ type PollOptions = { */ export function poll( fn: ({ unpoll }: { unpoll: () => void }) => Promise | unknown, - { emitOnBegin, interval }: PollOptions + { emitOnBegin, interval }: PollOptions, ) { let active = true; diff --git a/packages/core/src/utils/print.ts b/packages/core/src/utils/print.ts index 0012737d4..361eff3fb 100644 --- a/packages/core/src/utils/print.ts +++ b/packages/core/src/utils/print.ts @@ -1,7 +1,7 @@ // Adapted from viem. // https://github.com/wagmi-dev/viem/blob/021ce8e5a3fb02db6139564345a91fc77cba08a6/src/errors/transaction.ts#L6-L19 export function prettyPrint( - args: Record + args: Record, ) { const entries = Object.entries(args) .map(([key, value]) => { @@ -17,7 +17,7 @@ export function prettyPrint( .filter(Boolean) as [string, string][]; const maxLength = entries.reduce( (acc, [key]) => Math.max(acc, key.length), - 0 + 0, ); return entries .map(([key, value]) => ` ${`${key}:`.padEnd(maxLength + 1)} ${value}`) diff --git a/packages/core/src/utils/queue.ts b/packages/core/src/utils/queue.ts index 0370fd8d3..45adf91b9 100644 --- a/packages/core/src/utils/queue.ts +++ b/packages/core/src/utils/queue.ts @@ -10,11 +10,11 @@ type TaskOptions = { priority?: number; retry?: boolean }; export type Queue = PQueue & { addTask: ( task: TTask & { _retryCount?: number }, - options?: TaskOptions + options?: TaskOptions, ) => Promise; addTasks: ( tasks: (TTask & { _retryCount?: number })[], - options?: TaskOptions + options?: TaskOptions, ) => Promise; }; @@ -98,7 +98,7 @@ export function createQueue({ retries: 3, factor: 2, minTimeout: 100, // 100 ms - } + }, ); queue.addTask = async (task, taskOptions) => { @@ -130,7 +130,7 @@ export function createQueue({ } await onComplete?.({ result, task, context, queue }); }, - { priority } + { priority }, ); }; @@ -165,9 +165,9 @@ export function createQueue({ } await onComplete?.({ result, task, context, queue }); }, - { priority } + { priority }, ); - }) + }), ); }; diff --git a/packages/core/vite.config.ts b/packages/core/vite.config.ts index c52e0e1bc..d0778072f 100644 --- a/packages/core/vite.config.ts +++ b/packages/core/vite.config.ts @@ -1,4 +1,5 @@ import path from "node:path"; + import { defineConfig } from "vitest/config"; export default defineConfig({ diff --git a/packages/create-ponder/src/bin/create-ponder.ts b/packages/create-ponder/src/bin/create-ponder.ts index b13dfb1fb..712c33b48 100644 --- a/packages/create-ponder/src/bin/create-ponder.ts +++ b/packages/create-ponder/src/bin/create-ponder.ts @@ -1,6 +1,7 @@ #!/usr/bin/env node -import { cac } from "cac"; import path from "node:path"; + +import { cac } from "cac"; import prompts from "prompts"; import type { CreatePonderOptions, Template } from "@/common"; @@ -41,7 +42,7 @@ const createPonder = async () => { // Validate CLI options. if (fromSubgraphId && fromEtherscan) { throw new Error( - `Cannot specify more than one "--from" option:\n --from-subgraph\n --from-etherscan-id\n` + `Cannot specify more than one "--from" option:\n --from-subgraph\n --from-etherscan-id\n`, ); } diff --git a/packages/create-ponder/src/helpers/getGraphProtocolChainId.ts b/packages/create-ponder/src/helpers/getGraphProtocolChainId.ts index a2458ac95..5b406a993 100644 --- a/packages/create-ponder/src/helpers/getGraphProtocolChainId.ts +++ b/packages/create-ponder/src/helpers/getGraphProtocolChainId.ts @@ -37,5 +37,5 @@ export const getGraphProtocolChainId = (networkName: string) => { }; export const subgraphYamlFileNames = ["subgraph.yaml"].concat( - Object.keys(chainIdByGraphNetwork).map((n) => `subgraph-${n}.yaml`) + Object.keys(chainIdByGraphNetwork).map((n) => `subgraph-${n}.yaml`), ); diff --git a/packages/create-ponder/src/index.ts b/packages/create-ponder/src/index.ts index fb75e955b..2e8b59012 100644 --- a/packages/create-ponder/src/index.ts +++ b/packages/create-ponder/src/index.ts @@ -1,7 +1,8 @@ -import type { Abi, AbiEvent } from "abitype"; import { execSync } from "node:child_process"; import { mkdirSync, readFileSync, writeFileSync } from "node:fs"; import path from "node:path"; + +import type { Abi, AbiEvent } from "abitype"; import pico from "picocolors"; import prettier from "prettier"; @@ -40,7 +41,7 @@ export type SerializableConfig = { export const run = async ( options: CreatePonderOptions, - overrides: { installCommand?: string } = {} + overrides: { installCommand?: string } = {}, ) => { const ponderVersion = rootPackageJson.version; const { rootDir } = options; @@ -52,7 +53,7 @@ export const run = async ( let config: SerializableConfig; console.log( - `\nCreating a new Ponder app in ${pico.bold(pico.green(rootDir))}.` + `\nCreating a new Ponder app in ${pico.bold(pico.green(rootDir))}.`, ); switch (options.template?.kind) { @@ -96,7 +97,7 @@ export const run = async ( } const abiEvents = abi.filter( - (item): item is AbiEvent => item.type === "event" + (item): item is AbiEvent => item.type === "event", ); const eventNamesToWrite = abiEvents.map((event) => event.name).slice(0, 2); @@ -109,14 +110,14 @@ export const run = async ( (eventName) => ` ponder.on("${contract.name}:${eventName}", async ({ event, context }) => { console.log(event.params) - })` + })`, ) .join("\n")} `; writeFileSync( path.join(rootDir, `./src/${contract.name}.ts`), - prettier.format(indexingFunctionFileContents, { parser: "typescript" }) + prettier.format(indexingFunctionFileContents, { parser: "typescript" }), ); }); @@ -129,7 +130,7 @@ export const run = async ( networks: ${JSON.stringify(config.networks) .replaceAll( /"process.env.PONDER_RPC_URL_(.*?)"/g, - "process.env.PONDER_RPC_URL_$1" + "process.env.PONDER_RPC_URL_$1", ) .replaceAll(/"http\((.*?)\)"/g, "http($1)")}, contracts: ${JSON.stringify(config.contracts)}, @@ -138,7 +139,7 @@ export const run = async ( writeFileSync( path.join(rootDir, "ponder.config.ts"), - prettier.format(finalConfig, { parser: "babel" }) + prettier.format(finalConfig, { parser: "babel" }), ); // Write the ponder.schema.ts file @@ -162,15 +163,15 @@ export const run = async ( writeFileSync( path.join(rootDir, "ponder.schema.ts"), - prettier.format(schemaGraphqlFileContents, { parser: "babel" }) + prettier.format(schemaGraphqlFileContents, { parser: "babel" }), ); // Write the .env.local file. const uniqueChainIds = Array.from( - new Set(config.networks.map((n) => n.chainId)) + new Set(config.networks.map((n) => n.chainId)), ); const envLocal = `${uniqueChainIds.map( - (chainId) => `PONDER_RPC_URL_${chainId}=""\n` + (chainId) => `PONDER_RPC_URL_${chainId}=""\n`, )}`; writeFileSync(path.join(rootDir, ".env.local"), envLocal); @@ -199,7 +200,7 @@ export const run = async ( `; writeFileSync( path.join(rootDir, "package.json"), - prettier.format(packageJson, { parser: "json" }) + prettier.format(packageJson, { parser: "json" }), ); // Write the tsconfig.json file. @@ -220,7 +221,7 @@ export const run = async ( `; writeFileSync( path.join(rootDir, "tsconfig.json"), - prettier.format(tsConfig, { parser: "json" }) + prettier.format(tsConfig, { parser: "json" }), ); if (options.eslint) { @@ -232,7 +233,7 @@ export const run = async ( writeFileSync( path.join(rootDir, ".eslintrc.json"), - prettier.format(eslintConfig, { parser: "json" }) + prettier.format(eslintConfig, { parser: "json" }), ); } @@ -259,7 +260,7 @@ yarn-error.log* /generated/ # TypeScript -ponder-env.d.ts` +ponder-env.d.ts`, ); const packageManager = await getPackageManager(); @@ -294,6 +295,6 @@ ponder-env.d.ts` console.log(`\nGenerated types.`); console.log( - pico.green("\nSuccess! ") + `Created ${options.projectName} at ${rootDir}` + pico.green("\nSuccess! ") + `Created ${options.projectName} at ${rootDir}`, ); }; diff --git a/packages/create-ponder/src/main.test.ts b/packages/create-ponder/src/main.test.ts index 6a055b59e..bb95e4241 100644 --- a/packages/create-ponder/src/main.test.ts +++ b/packages/create-ponder/src/main.test.ts @@ -1,6 +1,7 @@ import { randomUUID } from "node:crypto"; import fs from "node:fs"; import path from "node:path"; + import { afterAll, beforeAll, describe, expect, test } from "vitest"; import { TemplateKind } from "@/common"; @@ -30,7 +31,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -51,7 +52,7 @@ describe("create-ponder", () => { test("downloads abi", async () => { const abiString = fs.readFileSync( path.join(rootDir, `abis/FileStore.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); const abi = JSON.parse(abiString); @@ -85,7 +86,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -106,7 +107,7 @@ describe("create-ponder", () => { test("downloads abi", async () => { const abiString = fs.readFileSync( path.join(rootDir, `abis/Collector.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); const abi = JSON.parse(abiString); @@ -140,7 +141,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -161,13 +162,13 @@ describe("create-ponder", () => { test("downloads abis", async () => { const proxyAbiString = fs.readFileSync( path.join(rootDir, `abis/Zora1155.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(proxyAbiString).length).toBeGreaterThan(0); const implementationAbiString = fs.readFileSync( path.join(rootDir, `abis/ZoraCreator1155Impl_0xd056.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(implementationAbiString).length).toBeGreaterThan(0); }); @@ -199,20 +200,20 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); test("downloads abis", async () => { const proxyAbiString = fs.readFileSync( path.join(rootDir, `abis/FiatTokenProxy.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(proxyAbiString).length).toBeGreaterThan(0); const implementationAbiString = fs.readFileSync( path.join(rootDir, `abis/FiatTokenV2_0xb727.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(implementationAbiString).length).toBeGreaterThan(0); }); @@ -234,7 +235,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -255,13 +256,13 @@ describe("create-ponder", () => { test("downloads abis", async () => { const proxyAbiString = fs.readFileSync( path.join(rootDir, `abis/ZoraNFTCreatorProxy.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(proxyAbiString).length).toBeGreaterThan(0); const implementationAbiString = fs.readFileSync( path.join(rootDir, `abis/ZoraNFTCreatorV1_0xe776.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(implementationAbiString).length).toBeGreaterThan(0); }); @@ -293,7 +294,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -314,7 +315,7 @@ describe("create-ponder", () => { test("downloads abis", async () => { const abiString = fs.readFileSync( path.join(rootDir, `abis/BasePaint.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); expect(JSON.parse(abiString).length).toBeGreaterThan(0); }); @@ -348,7 +349,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -370,7 +371,7 @@ describe("create-ponder", () => { test("downloads abi", async () => { const abiString = fs.readFileSync( path.join(rootDir, `abis/LToken.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); const abi = JSON.parse(abiString); @@ -385,7 +386,7 @@ describe("create-ponder", () => { test("creates src files", async () => { const src = fs.readdirSync(path.join(rootDir, "src")); expect(src.sort()).toEqual( - ["LETH.ts", "LFRAX.ts", "LUSDC.ts", "LUSDT.ts"].sort() + ["LETH.ts", "LFRAX.ts", "LUSDC.ts", "LUSDT.ts"].sort(), ); }); }); @@ -406,7 +407,7 @@ describe("create-ponder", () => { { installCommand: 'export npm_config_LOCKFILE=false ; pnpm --silent --filter "." install', - } + }, ); }); @@ -428,7 +429,7 @@ describe("create-ponder", () => { test("downloads abi", async () => { const abiString = fs.readFileSync( path.join(rootDir, `abis/FiatTokenV1.json`), - { encoding: "utf8" } + { encoding: "utf8" }, ); const abi = JSON.parse(abiString); diff --git a/packages/create-ponder/src/templates/etherscan.ts b/packages/create-ponder/src/templates/etherscan.ts index d705c7772..271c8c2ec 100644 --- a/packages/create-ponder/src/templates/etherscan.ts +++ b/packages/create-ponder/src/templates/etherscan.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/ban-ts-comment */ import { writeFileSync } from "node:fs"; import path from "node:path"; + import prettier from "prettier"; import type { SerializableConfig } from "src/index"; @@ -33,7 +34,7 @@ export const fromEtherscan = async ({ const txHash = await getContractCreationTxn( contractAddress, apiUrl, - apiKey + apiKey, ); if (!apiKey) { @@ -43,7 +44,7 @@ export const fromEtherscan = async ({ const contractCreationBlockNumber = await getTxBlockNumber( txHash, apiUrl, - apiKey + apiKey, ); blockNumber = contractCreationBlockNumber; @@ -59,7 +60,7 @@ export const fromEtherscan = async ({ const { abi, contractName } = await getContractAbiAndName( contractAddress, apiUrl, - apiKey + apiKey, ); abis.push({ abi, contractName }); @@ -69,11 +70,11 @@ export const fromEtherscan = async ({ (item) => item.type === "event" && item.name === "Upgraded" && - item.inputs[0].name === "implementation" + item.inputs[0].name === "implementation", ) ) { console.log( - "Detected EIP-1967 proxy, fetching implementation contract ABIs" + "Detected EIP-1967 proxy, fetching implementation contract ABIs", ); if (!apiKey) { console.log("(3/n) Waiting 5 seconds for Etherscan API rate limit"); @@ -92,14 +93,14 @@ export const fromEtherscan = async ({ console.log( `(${4 + index}/${ 4 + implAddresses.length - 1 - }) Waiting 5 seconds for Etherscan API rate limit` + }) Waiting 5 seconds for Etherscan API rate limit`, ); await wait(5000); } const { abi, contractName } = await getContractAbiAndName( implAddress, apiUrl, - apiKey + apiKey, ); abis.push({ @@ -172,7 +173,7 @@ const fetchEtherscan = async (url: string) => { const getContractCreationTxn = async ( contractAddress: string, apiUrl: string, - apiKey?: string + apiKey?: string, ) => { const searchParams = new URLSearchParams({ module: "contract", @@ -188,7 +189,7 @@ const getContractCreationTxn = async ( const getTxBlockNumber = async ( txHash: string, apiUrl: string, - apiKey?: string + apiKey?: string, ) => { const searchParams = new URLSearchParams({ module: "proxy", @@ -205,7 +206,7 @@ const getTxBlockNumber = async ( const getContractAbiAndName = async ( contractAddress: string, apiUrl: string, - apiKey?: string + apiKey?: string, ) => { const searchParams = new URLSearchParams({ module: "contract", diff --git a/packages/create-ponder/src/templates/subgraphId.ts b/packages/create-ponder/src/templates/subgraphId.ts index b30af3695..1800bdacb 100644 --- a/packages/create-ponder/src/templates/subgraphId.ts +++ b/packages/create-ponder/src/templates/subgraphId.ts @@ -1,5 +1,6 @@ import { writeFileSync } from "node:fs"; import path from "node:path"; + import prettier from "prettier"; import type { SerializableConfig, @@ -43,11 +44,11 @@ export const fromSubgraphId = async ({ const ponderSchemaFilePath = path.join(rootDir, "schema.graphql"); writeFileSync( ponderSchemaFilePath, - prettier.format(schemaCleaned, { parser: "graphql" }) + prettier.format(schemaCleaned, { parser: "graphql" }), ); const dataSources = (manifest.dataSources as unknown[]).map( - validateGraphProtocolSource + validateGraphProtocolSource, ); // Fetch and write all referenced ABIs. @@ -55,14 +56,15 @@ export const fromSubgraphId = async ({ .map((source) => source.mapping.abis) .flat() .filter( - (source, idx, arr) => arr.findIndex((s) => s.name === source.name) === idx + (source, idx, arr) => + arr.findIndex((s) => s.name === source.name) === idx, ); await Promise.all( abiFiles.map(async (abi) => { const abiContent = await fetchIpfsFile(abi.file["/"].slice(6)); const abiPath = path.join(rootDir, `./abis/${abi.name}.json`); writeFileSync(abiPath, prettier.format(abiContent, { parser: "json" })); - }) + }), ); // Build the ponder sources. diff --git a/packages/create-ponder/vite.config.ts b/packages/create-ponder/vite.config.ts index 5bdab51df..d9a468183 100644 --- a/packages/create-ponder/vite.config.ts +++ b/packages/create-ponder/vite.config.ts @@ -1,4 +1,5 @@ import path from "node:path"; + import { defineConfig } from "vitest/config"; export default defineConfig({ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d3f881b3b..a8f678cee 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,35 +17,35 @@ importers: specifier: ^0.4.8 version: 0.4.8 '@changesets/cli': - specifier: ^2.26.1 - version: 2.26.1 + specifier: ^2.26.2 + version: 2.26.2 '@typescript-eslint/eslint-plugin': - specifier: ^6.3.0 - version: 6.3.0(@typescript-eslint/parser@6.3.0)(eslint@8.43.0)(typescript@5.2.2) + specifier: ^6.10.0 + version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.53.0)(typescript@5.2.2) '@typescript-eslint/parser': - specifier: ^6.3.0 - version: 6.3.0(eslint@8.43.0)(typescript@5.2.2) + specifier: ^6.10.0 + version: 6.10.0(eslint@8.53.0)(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-prettier: - specifier: ^8.8.0 - version: 8.8.0(eslint@8.43.0) + specifier: ^9.0.0 + version: 9.0.0(eslint@8.53.0) eslint-plugin-import: - specifier: ^2.27.5 - version: 2.27.5(@typescript-eslint/parser@6.3.0)(eslint@8.43.0) + specifier: ^2.29.0 + version: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0) eslint-plugin-prettier: - specifier: ^4.2.1 - version: 4.2.1(eslint-config-prettier@8.8.0)(eslint@8.43.0)(prettier@2.8.8) + specifier: ^5.0.1 + version: 5.0.1(eslint-config-prettier@9.0.0)(eslint@8.53.0)(prettier@3.0.3) eslint-plugin-simple-import-sort: - specifier: ^7.0.0 - version: 7.0.0(eslint@8.43.0) + specifier: ^10.0.0 + version: 10.0.0(eslint@8.53.0) lint-staged: - specifier: ^13.2.3 - version: 13.2.3 + specifier: ^15.0.2 + version: 15.0.2 prettier: - specifier: ^2.8.8 - version: 2.8.8 + specifier: ^3.0.3 + version: 3.0.3 simple-git-hooks: specifier: ^2.9.0 version: 2.9.0 @@ -57,7 +57,7 @@ importers: devDependencies: '@graphprotocol/graph-cli': specifier: ^0.51.1 - version: 0.51.1(@types/node@18.16.18)(node-fetch@3.3.2)(typescript@5.1.3) + version: 0.51.1(@types/node@18.16.18)(node-fetch@3.3.2)(typescript@5.2.2) '@graphprotocol/graph-ts': specifier: ^0.31.0 version: 0.31.0 @@ -75,59 +75,59 @@ importers: version: 1.1.1 tsup: specifier: ^7.0.0 - version: 7.0.0(typescript@5.1.3) + version: 7.0.0(typescript@5.2.2) typescript: specifier: ^5.1.3 - version: 5.1.3 + version: 5.2.2 viem: specifier: 0.3.50 - version: 0.3.50(typescript@5.1.3) + version: 0.3.50(typescript@5.2.2) docs: dependencies: '@segment/analytics-node': - specifier: ^1.1.0 - version: 1.1.0 + specifier: ^1.1.3 + version: 1.1.3 next: - specifier: ^13.4.12 - version: 13.4.12(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) + specifier: ^14.0.2 + version: 14.0.2(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0) nextra: specifier: ^2.13.2 - version: 2.13.2(next@13.4.12)(react-dom@18.2.0)(react@18.2.0) + version: 2.13.2(next@14.0.2)(react-dom@18.2.0)(react@18.2.0) nextra-theme-docs: specifier: ^2.13.2 - version: 2.13.2(next@13.4.12)(nextra@2.13.2)(react-dom@18.2.0)(react@18.2.0) + version: 2.13.2(next@14.0.2)(nextra@2.13.2)(react-dom@18.2.0)(react@18.2.0) react: - specifier: ^18.1.0 + specifier: ^18.2.0 version: 18.2.0 react-dom: - specifier: ^18.1.0 + specifier: ^18.2.0 version: 18.2.0(react@18.2.0) devDependencies: '@mdx-js/react': - specifier: ^2.1.5 - version: 2.3.0(react@18.2.0) + specifier: ^3.0.0 + version: 3.0.0(@types/react@18.2.37)(react@18.2.0) '@svgr/webpack': - specifier: ^6.5.1 - version: 6.5.1 + specifier: ^8.1.0 + version: 8.1.0(typescript@5.2.2) '@types/node': - specifier: ^18.7.8 - version: 18.16.18 + specifier: ^20.9.0 + version: 20.9.0 '@types/react': - specifier: ^18.0.25 - version: 18.0.25 + specifier: ^18.2.37 + version: 18.2.37 '@types/react-dom': - specifier: ^18.0.9 - version: 18.0.9 + specifier: ^18.2.15 + version: 18.2.15 eslint: - specifier: ^8.17.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-next: - specifier: ^13.0.5 - version: 13.0.5(eslint@8.43.0)(typescript@4.9.5) + specifier: ^14.0.2 + version: 14.0.2(eslint@8.53.0)(typescript@5.2.2) typescript: - specifier: ^4.9.3 - version: 4.9.5 + specifier: ^5.2.2 + version: 5.2.2 examples/art-gobblers: dependencies: @@ -136,20 +136,20 @@ importers: version: link:../../packages/core devDependencies: abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.2.2 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + specifier: ^1.18.9 + version: 1.18.9(typescript@5.2.2) examples/ethfs: dependencies: @@ -158,20 +158,20 @@ importers: version: link:../../packages/core devDependencies: abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.2.2 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + specifier: ^1.18.9 + version: 1.18.9(typescript@5.2.2) examples/factory-llama: dependencies: @@ -180,20 +180,20 @@ importers: version: link:../../packages/core devDependencies: abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:latest version: link:../../packages/eslint-config-ponder typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.2.2 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + specifier: ^1.18.9 + version: 1.18.9(typescript@5.2.2) examples/friendtech: dependencies: @@ -202,20 +202,20 @@ importers: version: link:../../packages/core devDependencies: abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.2.2 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + specifier: ^1.18.9 + version: 1.18.9(typescript@5.2.2) examples/token-erc20: dependencies: @@ -225,19 +225,19 @@ importers: devDependencies: abitype: specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + version: 0.8.11(typescript@5.2.2) eslint: specifier: ^8.43.0 - version: 8.43.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: specifier: ^5.1.3 - version: 5.1.3 + version: 5.2.2 viem: specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + version: 1.18.9(typescript@5.2.2) examples/token-erc721: dependencies: @@ -246,20 +246,20 @@ importers: version: link:../../packages/core devDependencies: abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.2.2 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + specifier: ^1.18.9 + version: 1.18.9(typescript@5.2.2) examples/token-reth: dependencies: @@ -268,20 +268,20 @@ importers: version: link:../../packages/core devDependencies: abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) eslint: - specifier: ^8.43.0 - version: 8.43.0 + specifier: ^8.53.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: - specifier: ^5.1.3 - version: 5.1.3 + specifier: ^5.2.2 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + specifier: ^1.18.9 + version: 1.18.9(typescript@5.2.2) examples/with-docker: dependencies: @@ -291,37 +291,37 @@ importers: devDependencies: abitype: specifier: ^0.8.11 - version: 0.8.11(typescript@5.1.3) + version: 0.8.11(typescript@5.2.2) eslint: specifier: ^8.43.0 - version: 8.43.0 + version: 8.53.0 eslint-config-ponder: specifier: workspace:* version: link:../../packages/eslint-config-ponder typescript: specifier: ^5.1.3 - version: 5.1.3 + version: 5.2.2 viem: specifier: ^1.2.6 - version: 1.2.6(typescript@5.1.3) + version: 1.18.9(typescript@5.2.2) packages/core: dependencies: '@babel/code-frame': - specifier: ^7.18.6 - version: 7.22.5 + specifier: ^7.22.13 + version: 7.22.13 '@jridgewell/trace-mapping': - specifier: ^0.3.17 - version: 0.3.18 + specifier: ^0.3.20 + version: 0.3.20 abitype: - specifier: ^0.8.11 - version: 0.8.11(typescript@5.2.2) + specifier: ^0.10.2 + version: 0.10.2(typescript@5.2.2) async-mutex: specifier: ^0.4.0 version: 0.4.0 better-sqlite3: - specifier: ^8.7.0 - version: 8.7.0 + specifier: ^9.1.1 + version: 9.1.1 cac: specifier: ^6.7.14 version: 6.7.14 @@ -332,26 +332,26 @@ importers: specifier: ^2.8.5 version: 2.8.5 data-uri-to-buffer: - specifier: 3.0.1 - version: 3.0.1 + specifier: 6.0.1 + version: 6.0.1 detect-package-manager: - specifier: ^2.0.1 - version: 2.0.1 + specifier: ^3.0.1 + version: 3.0.1 dotenv: - specifier: ^16.0.1 - version: 16.0.1 + specifier: ^16.3.1 + version: 16.3.1 emittery: - specifier: ^0.13.1 - version: 0.13.1 + specifier: ^1.0.1 + version: 1.0.1 ethereum-bloom-filters: specifier: ^1.0.10 version: 1.0.10 express: - specifier: ^4.18.1 - version: 4.18.1 + specifier: ^4.18.2 + version: 4.18.2 glob: - specifier: ^8.1.0 - version: 8.1.0 + specifier: ^10.3.10 + version: 10.3.10 graphql: specifier: ^16.8.1 version: 16.8.1(patch_hash=3zvcnrptpojleshpmtp6be677a) @@ -362,14 +362,14 @@ importers: specifier: ^3.2.0 version: 3.2.0 ink: - specifier: ^3.2.0 - version: 3.2.0(@types/react@18.0.25)(react@17.0.2) + specifier: ^4.4.1 + version: 4.4.1(@types/react@18.2.37)(react@18.2.0) kysely: - specifier: ^0.24.2 - version: 0.24.2 + specifier: ^0.26.3 + version: 0.26.3 p-limit: - specifier: '3' - version: 3.1.0 + specifier: ^5.0.0 + version: 5.0.0 p-queue: specifier: ^7.4.1 version: 7.4.1 @@ -380,23 +380,26 @@ importers: specifier: ^1.0.0 version: 1.0.0 pino: - specifier: ^8.14.1 - version: 8.14.1 + specifier: ^8.16.1 + version: 8.16.1 prom-client: - specifier: ^14.2.0 - version: 14.2.0 + specifier: ^15.0.0 + version: 15.0.0 react: - specifier: '17' - version: 17.0.2 + specifier: ^18.2.0 + version: 18.2.0 retry: specifier: ^0.13.1 version: 0.13.1 stacktrace-parser: specifier: ^0.1.10 version: 0.1.10 + typescript: + specifier: ^5 + version: 5.2.2 viem: - specifier: ^1.2.6 - version: 1.2.6(typescript@5.2.2) + specifier: ^1 + version: 1.18.9(typescript@5.2.2) vite: specifier: ^4.5.0 version: 4.5.0(@types/node@20.9.0) @@ -405,53 +408,50 @@ importers: version: 0.34.6(@types/node@20.9.0) devDependencies: '@types/babel__code-frame': - specifier: ^7.0.3 - version: 7.0.3 + specifier: ^7.0.6 + version: 7.0.6 '@types/better-sqlite3': - specifier: ^7.6.0 - version: 7.6.0 + specifier: ^7.6.7 + version: 7.6.7 '@types/cors': - specifier: ^2.8.12 - version: 2.8.12 + specifier: ^2.8.16 + version: 2.8.16 '@types/express': - specifier: ^4.17.13 - version: 4.17.13 + specifier: ^4.17.21 + version: 4.17.21 '@types/glob': - specifier: ^8.0.0 - version: 8.0.0 + specifier: ^8.1.0 + version: 8.1.0 '@types/node': specifier: ^20.9.0 version: 20.9.0 '@types/pg': - specifier: ^8.6.6 - version: 8.6.6 + specifier: ^8.10.9 + version: 8.10.9 '@types/react': - specifier: ^18.0.25 - version: 18.0.25 + specifier: ^18.2.37 + version: 18.2.37 '@types/retry': - specifier: ^0.12.2 - version: 0.12.2 + specifier: ^0.12.5 + version: 0.12.5 '@types/supertest': - specifier: ^2.0.12 - version: 2.0.12 + specifier: ^2.0.16 + version: 2.0.16 '@viem/anvil': specifier: ^0.0.6 version: 0.0.6 concurrently: - specifier: ^8.2.0 - version: 8.2.0 + specifier: ^8.2.2 + version: 8.2.2 rimraf: - specifier: ^5.0.1 - version: 5.0.1 + specifier: ^5.0.5 + version: 5.0.5 supertest: specifier: ^6.3.3 version: 6.3.3 tsc-alias: - specifier: ^1.8.2 - version: 1.8.2 - typescript: - specifier: ^5.2.2 - version: 5.2.2 + specifier: ^1.8.8 + version: 1.8.8 vitest: specifier: ^0.34.6 version: 0.34.6 @@ -478,10 +478,10 @@ importers: version: 2.4.2 rimraf: specifier: ^5.0.1 - version: 5.0.1 + version: 5.0.5 yaml: specifier: ^2.1.1 - version: 2.3.1 + version: 2.3.3 devDependencies: '@ponder/core': specifier: workspace:* @@ -497,19 +497,19 @@ importers: version: 2.4.2 abitype: specifier: ^0.6.7 - version: 0.6.7(typescript@5.1.3) + version: 0.6.7(typescript@5.2.2) concurrently: specifier: ^8.2.0 - version: 8.2.0 + version: 8.2.2 dotenv: specifier: ^16.0.1 - version: 16.0.1 + version: 16.3.1 tsc-alias: specifier: ^1.8.2 - version: 1.8.2 + version: 1.8.8 typescript: specifier: ^5.1.3 - version: 5.1.3 + version: 5.2.2 vitest: specifier: ^0.34.6 version: 0.34.6 @@ -518,1300 +518,1311 @@ importers: dependencies: '@typescript-eslint/eslint-plugin': specifier: ^6.3.0 - version: 6.3.0(@typescript-eslint/parser@6.3.0)(eslint@8.43.0)(typescript@5.2.2) + version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.53.0)(typescript@5.2.2) '@typescript-eslint/parser': specifier: ^6.3.0 - version: 6.3.0(eslint@8.43.0)(typescript@5.2.2) + version: 6.10.0(eslint@8.53.0)(typescript@5.2.2) eslint: specifier: '>= 3' - version: 8.43.0 + version: 8.53.0 packages: + /@aashutoshrathi/word-wrap@1.2.6: + resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} + engines: {node: '>=0.10.0'} + /@adraffy/ens-normalize@1.9.0: resolution: {integrity: sha512-iowxq3U30sghZotgl4s/oJRci6WPBfNO5YYgk2cIOMCHr3LeGPcsZjCEr+33Q4N+oV3OABDAtA+pyvWjbvBifQ==} + dev: true + + /@adraffy/ens-normalize@1.9.4: + resolution: {integrity: sha512-UK0bHA7hh9cR39V+4gl2/NnBBjoXIxkuWAPCaY4X7fbH4L/azIi7ilWOCjMUYfpJgraLUAqkRi2BqrjME8Rynw==} + + /@alcalzone/ansi-tokenize@0.1.3: + resolution: {integrity: sha512-3yWxPTq3UQ/FY9p1ErPxIyfT64elWaMvM9lIHnaqpyft63tkxodF5aUElYHrdisWve5cETkh1+KBw1yJuW0aRw==} + engines: {node: '>=14.13.1'} + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 4.0.0 + dev: false - /@ampproject/remapping@2.2.0: - resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} + /@ampproject/remapping@2.2.1: + resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} engines: {node: '>=6.0.0'} dependencies: - '@jridgewell/gen-mapping': 0.1.1 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.20 - /@babel/code-frame@7.22.5: - resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==} + /@babel/code-frame@7.22.13: + resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.22.5 + '@babel/highlight': 7.22.20 + chalk: 2.4.2 - /@babel/compat-data@7.21.0: - resolution: {integrity: sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==} + /@babel/compat-data@7.23.3: + resolution: {integrity: sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==} engines: {node: '>=6.9.0'} - /@babel/core@7.21.0: - resolution: {integrity: sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==} + /@babel/core@7.23.3: + resolution: {integrity: sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==} engines: {node: '>=6.9.0'} dependencies: - '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.21.1 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-module-transforms': 7.21.2 - '@babel/helpers': 7.21.0 - '@babel/parser': 7.21.2 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.2 - '@babel/types': 7.21.2 - convert-source-map: 1.8.0 + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.23.3 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) + '@babel/helpers': 7.23.2 + '@babel/parser': 7.23.3 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.3 + '@babel/types': 7.23.3 + convert-source-map: 2.0.0 debug: 4.3.4(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 - semver: 6.3.0 + semver: 6.3.1 transitivePeerDependencies: - supports-color - /@babel/generator@7.21.1: - resolution: {integrity: sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==} + /@babel/generator@7.23.3: + resolution: {integrity: sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.18 + '@jridgewell/trace-mapping': 0.3.20 jsesc: 2.5.2 - /@babel/helper-annotate-as-pure@7.18.6: - resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} + /@babel/helper-annotate-as-pure@7.22.5: + resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 dev: true - /@babel/helper-builder-binary-assignment-operator-visitor@7.18.9: - resolution: {integrity: sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==} + /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: + resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-explode-assignable-expression': 7.18.6 - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 dev: true - /@babel/helper-compilation-targets@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} + /@babel/helper-compilation-targets@7.22.15: + resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-validator-option': 7.21.0 - browserslist: 4.21.5 + '@babel/compat-data': 7.23.3 + '@babel/helper-validator-option': 7.22.15 + browserslist: 4.22.1 lru-cache: 5.1.1 - semver: 6.3.0 + semver: 6.3.1 - /@babel/helper-create-class-features-plugin@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==} + /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.23.3): + resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-member-expression-to-functions': 7.21.0 - '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/helper-replace-supers': 7.20.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/helper-split-export-declaration': 7.18.6 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.3) + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + semver: 6.3.1 dev: true - /@babel/helper-create-regexp-features-plugin@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==} + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.3): + resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - regexpu-core: 5.3.1 + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + regexpu-core: 5.3.2 + semver: 6.3.1 dev: true - /@babel/helper-define-polyfill-provider@0.3.3(@babel/core@7.21.0): - resolution: {integrity: sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==} + /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.3): + resolution: {integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==} peerDependencies: - '@babel/core': ^7.4.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 debug: 4.3.4(supports-color@8.1.1) lodash.debounce: 4.0.8 - resolve: 1.22.2 - semver: 6.3.0 + resolve: 1.22.8 transitivePeerDependencies: - supports-color dev: true - /@babel/helper-environment-visitor@7.18.9: - resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} - engines: {node: '>=6.9.0'} - - /@babel/helper-explode-assignable-expression@7.18.6: - resolution: {integrity: sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==} + /@babel/helper-environment-visitor@7.22.20: + resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.21.2 - dev: true - /@babel/helper-function-name@7.21.0: - resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} + /@babel/helper-function-name@7.23.0: + resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.20.7 - '@babel/types': 7.21.2 + '@babel/template': 7.22.15 + '@babel/types': 7.23.3 - /@babel/helper-hoist-variables@7.18.6: - resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} + /@babel/helper-hoist-variables@7.22.5: + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 - /@babel/helper-member-expression-to-functions@7.21.0: - resolution: {integrity: sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==} + /@babel/helper-member-expression-to-functions@7.23.0: + resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 dev: true - /@babel/helper-module-imports@7.18.6: - resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} + /@babel/helper-module-imports@7.22.15: + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 - /@babel/helper-module-transforms@7.21.2: - resolution: {integrity: sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==} + /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-simple-access': 7.20.2 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/helper-validator-identifier': 7.22.5 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.2 - '@babel/types': 7.21.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@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-optimise-call-expression@7.18.6: - resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==} + /@babel/helper-optimise-call-expression@7.22.5: + resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 dev: true - /@babel/helper-plugin-utils@7.20.2: - resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} + /@babel/helper-plugin-utils@7.22.5: + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} engines: {node: '>=6.9.0'} dev: true - /@babel/helper-remap-async-to-generator@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==} + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.3): + resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-wrap-function': 7.20.5 - '@babel/types': 7.21.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-wrap-function': 7.22.20 dev: true - /@babel/helper-replace-supers@7.20.7: - resolution: {integrity: sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==} + /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.3): + resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 dependencies: - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-member-expression-to-functions': 7.21.0 - '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.2 - '@babel/types': 7.21.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-member-expression-to-functions': 7.23.0 + '@babel/helper-optimise-call-expression': 7.22.5 dev: true - /@babel/helper-simple-access@7.20.2: - resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==} + /@babel/helper-simple-access@7.22.5: + resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 - /@babel/helper-skip-transparent-expression-wrappers@7.20.0: - resolution: {integrity: sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==} + /@babel/helper-skip-transparent-expression-wrappers@7.22.5: + resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 dev: true - /@babel/helper-split-export-declaration@7.18.6: - resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} + /@babel/helper-split-export-declaration@7.22.6: + resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 - /@babel/helper-string-parser@7.19.4: - resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} + /@babel/helper-string-parser@7.22.5: + resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-identifier@7.22.5: - resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} + /@babel/helper-validator-identifier@7.22.20: + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-option@7.21.0: - resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} + /@babel/helper-validator-option@7.22.15: + resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} engines: {node: '>=6.9.0'} - /@babel/helper-wrap-function@7.20.5: - resolution: {integrity: sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==} + /@babel/helper-wrap-function@7.22.20: + resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-function-name': 7.21.0 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.2 - '@babel/types': 7.21.2 - transitivePeerDependencies: - - supports-color + '@babel/helper-function-name': 7.23.0 + '@babel/template': 7.22.15 + '@babel/types': 7.23.3 dev: true - /@babel/helpers@7.21.0: - resolution: {integrity: sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==} + /@babel/helpers@7.23.2: + resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.2 - '@babel/types': 7.21.2 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.3 + '@babel/types': 7.23.3 transitivePeerDependencies: - supports-color - /@babel/highlight@7.22.5: - resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==} + /@babel/highlight@7.22.20: + resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser@7.21.2: - resolution: {integrity: sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==} + /@babel/parser@7.23.3: + resolution: {integrity: sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==} + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==} + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-transform-optional-chaining': 7.23.3(@babel/core@7.23.3) dev: true - /@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} + /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==} engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead. peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.3): + resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 dev: true - /@babel/plugin-proposal-class-static-block@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead. + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.3): + resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: - '@babel/core': ^7.12.0 + '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-dynamic-import@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead. + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.3): + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.3): + resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-json-strings@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead. + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-logical-assignment-operators@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead. + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} + /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} + /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.3): + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-transform-parameters': 7.20.7(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} + /@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==} engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead. + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.3): + resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-private-property-in-object@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==} - engines: {node: '>=6.9.0'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead. + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-proposal-unicode-property-regex@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==} - engines: {node: '>=4'} - deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead. + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.3): + resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.21.0): - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.21.0): - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.21.0): - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.3): + resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.3): + resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.3): + resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-import-assertions@7.20.0(@babel/core@7.21.0): - resolution: {integrity: sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==} + /@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.3): + resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} + engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-jsx@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} + /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.21.0): - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + /@babel/plugin-transform-async-generator-functions@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-59GsVNavGxAXCDDbakWSMJhajASb4kBCqDjqJsv+p5nKdbz7istmZ3HrX3L2LuiI80+zsOADCvooqQH3qGCucQ==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.3) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.3) dev: true - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.3) dev: true - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.21.0): - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + /@babel/plugin-transform-block-scoping@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-QPZxHrThbQia7UdvfpaRRlq/J9ciz1J4go0k+lPBXbgaNeY7IQrBj/9ceWjvMMI07/ZBzHl/F0R/2K0qH7jCVw==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.21.0): - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + /@babel/plugin-transform-class-static-block@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-PENDVxdr7ZxKPyi5Ffc0LjXdnJyrJxyqF5T5YjlVg4a0VFfQHW0r8iAtRiDXkfHlu1wwcvdtnndGYIeJLSuRMQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + dependencies: + '@babel/core': 7.23.3 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.3) + dev: true + + /@babel/plugin-transform-classes@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.3) + '@babel/helper-split-export-declaration': 7.22.6 + globals: 11.12.0 dev: true - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.21.0): - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} + /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/template': 7.22.15 dev: true - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.21.0): - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} + /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-syntax-typescript@7.20.0(@babel/core@7.21.0): - resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==} + /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-arrow-functions@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==} + /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-async-to-generator@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==} + /@babel/plugin-transform-dynamic-import@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-vTG+cTGxPFou12Rj7ll+eD5yWeNl5/8xvQvF08y5Gv3v4mZQoyFf8/n9zg4q5vvCWt5jmgymfzMAldO7orBn7A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-block-scoped-functions@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==} + /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-block-scoping@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==} + /@babel/plugin-transform-export-namespace-from@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-yCLhW34wpJWRdTxxWtFZASJisihrfyMOTOQexhVzA78jlU+dH7Dw+zQgcPepQ5F3C6bAIiblZZ+qBggJdHiBAg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-classes@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==} + /@babel/plugin-transform-for-of@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-replace-supers': 7.20.7 - '@babel/helper-split-export-declaration': 7.18.6 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-computed-properties@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==} + /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/template': 7.20.7 + '@babel/core': 7.23.3 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-destructuring@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==} + /@babel/plugin-transform-json-strings@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-H9Ej2OiISIZowZHaBwF0tsJOih1PftXJtE8EWqlEIwpc7LMTGq0rPOrywKLQ4nefzx8/HMR0D3JGXoMHYvhi0A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-dotall-regex@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==} + /@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-duplicate-keys@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==} + /@babel/plugin-transform-logical-assignment-operators@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-+pD5ZbxofyOygEp+zZAfujY2ShNCXRpDRIPOiBmTO693hhyOEteZgl876Xs9SAHPQpcV0vz8LvA/T+w8AzyX8A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-exponentiation-operator@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==} + /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.18.9 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-for-of@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==} + /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-function-name@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==} + /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-function-name': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-simple-access': 7.22.5 dev: true - /@babel/plugin-transform-literals@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==} + /@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 dev: true - /@babel/plugin-transform-member-expression-literals@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==} + /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + dev: true + + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.3): + resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.23.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-modules-amd@7.20.11(@babel/core@7.21.0): - resolution: {integrity: sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==} + /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.2 - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-modules-commonjs@7.21.2(@babel/core@7.21.0): - resolution: {integrity: sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==} + /@babel/plugin-transform-nullish-coalescing-operator@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-xzg24Lnld4DYIdysyf07zJ1P+iIfJpxtVFOzX4g+bsJ3Ng5Le7rXx9KwqKzuyaUeRnt+I1EICwQITqc0E2PmpA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.2 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-simple-access': 7.20.2 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-modules-systemjs@7.20.11(@babel/core@7.21.0): - resolution: {integrity: sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==} + /@babel/plugin-transform-numeric-separator@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-s9GO7fIBi/BLsZ0v3Rftr6Oe4t0ctJ8h4CCXfPoEJwmvAPMyNrfkOOJzm6b9PX9YXcCJWWQd/sBF/N26eBiMVw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-module-transforms': 7.21.2 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-identifier': 7.22.5 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-modules-umd@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==} + /@babel/plugin-transform-object-rest-spread@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-VxHt0ANkDmu8TANdE9Kc0rndo/ccsmfe2Cx2y5sI4hu3AukHQ5wAu4cM7j3ba8B9548ijVyclBU+nuDQftZsog==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.2 - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color + '@babel/compat-data': 7.23.3 + '@babel/core': 7.23.3 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-named-capturing-groups-regex@7.20.5(@babel/core@7.21.0): - resolution: {integrity: sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==} + /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} engines: {node: '>=6.9.0'} peerDependencies: - '@babel/core': ^7.0.0 + '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-new-target@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==} + /@babel/plugin-transform-optional-catch-binding@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-LxYSb0iLjUamfm7f1D7GpiS4j0UAC8AOiehnsGAP8BEsIX8EOi3qV6bbctw8M7ZvLtcoZfZX5Z7rN9PlWk0m5A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-object-super@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==} + /@babel/plugin-transform-optional-chaining@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-zvL8vIfIUgMccIAK1lxjvNv572JHFJIKb4MWBz5OGdBQA0fB0Xluix5rmOby48exiJc987neOmP/m9Fnpkz3Tg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-replace-supers': 7.20.7 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-parameters@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==} + /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-property-literals@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==} + /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-react-constant-elements@7.20.2(@babel/core@7.21.0): - resolution: {integrity: sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==} + /@babel/plugin-transform-private-property-in-object@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-a5m2oLNFyje2e/rGKjVfAELTVI5mbA0FeZpBnkOWWV7eSmKQ+T/XW0Vf+29ScLzSxX+rnsarvU0oie/4m6hkxA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-react-display-name@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==} + /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-react-jsx-development@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==} + /@babel/plugin-transform-react-constant-elements@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-zP0QKq/p6O42OL94udMgSfKXyse4RyJ0JqbQ34zDAONWjyrEsghYEyTSK5FIpmXmCpB55SHokL1cRRKHv8L2Qw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-transform-react-jsx': 7.21.0(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-react-jsx@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==} + /@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-jsx': 7.18.6(@babel/core@7.21.0) - '@babel/types': 7.21.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-react-pure-annotations@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==} + /@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.23.3): + resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.3) dev: true - /@babel/plugin-transform-regenerator@7.20.5(@babel/core@7.21.0): - resolution: {integrity: sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==} + /@babel/plugin-transform-react-jsx@7.22.15(@babel/core@7.23.3): + resolution: {integrity: sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - regenerator-transform: 0.15.1 + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.3) + '@babel/types': 7.23.3 dev: true - /@babel/plugin-transform-reserved-words@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==} + /@babel/plugin-transform-react-pure-annotations@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-qMFdSS+TUhB7Q/3HVPnEdYJDQIk57jkntAwSuz9xfSE4n+3I+vHYCli3HoHawN1Z3RfCz/y1zXA/JXjG6cVImQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-shorthand-properties@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==} + /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + regenerator-transform: 0.15.2 dev: true - /@babel/plugin-transform-spread@7.20.7(@babel/core@7.21.0): - resolution: {integrity: sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==} + /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-sticky-regex@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==} + /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-template-literals@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==} + /@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: true - /@babel/plugin-transform-typeof-symbol@7.18.9(@babel/core@7.21.0): - resolution: {integrity: sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==} + /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-typescript@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==} + /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-typescript': 7.20.0(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-unicode-escapes@7.18.10(@babel/core@7.21.0): - resolution: {integrity: sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==} + /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/plugin-transform-unicode-regex@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==} + /@babel/plugin-transform-typescript@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-ogV0yWnq38CFwH20l2Afz0dfKuZBx9o/Y2Rmh5vuSS0YD1hswgEgTfyTzuSrT2q9btmHRSqYoSfwFUVaC1M1Jw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 + '@babel/core': 7.23.3 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.3) dev: true - /@babel/preset-env@7.20.2(@babel/core@7.21.0): - resolution: {integrity: sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==} + /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-class-static-block': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-dynamic-import': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-proposal-json-strings': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-logical-assignment-operators': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-private-property-in-object': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-unicode-property-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.21.0) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.21.0) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.21.0) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-import-assertions': 7.20.0(@babel/core@7.21.0) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.21.0) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.21.0) - '@babel/plugin-transform-arrow-functions': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-async-to-generator': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-block-scoped-functions': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-block-scoping': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-classes': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-computed-properties': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-destructuring': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-dotall-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-duplicate-keys': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-exponentiation-operator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-for-of': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-function-name': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-literals': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-member-expression-literals': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-modules-amd': 7.20.11(@babel/core@7.21.0) - '@babel/plugin-transform-modules-commonjs': 7.21.2(@babel/core@7.21.0) - '@babel/plugin-transform-modules-systemjs': 7.20.11(@babel/core@7.21.0) - '@babel/plugin-transform-modules-umd': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-named-capturing-groups-regex': 7.20.5(@babel/core@7.21.0) - '@babel/plugin-transform-new-target': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-object-super': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-parameters': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-property-literals': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-regenerator': 7.20.5(@babel/core@7.21.0) - '@babel/plugin-transform-reserved-words': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-shorthand-properties': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-spread': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-sticky-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-template-literals': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-typeof-symbol': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-unicode-escapes': 7.18.10(@babel/core@7.21.0) - '@babel/plugin-transform-unicode-regex': 7.18.6(@babel/core@7.21.0) - '@babel/preset-modules': 0.1.5(@babel/core@7.21.0) - '@babel/types': 7.21.2 - babel-plugin-polyfill-corejs2: 0.3.3(@babel/core@7.21.0) - babel-plugin-polyfill-corejs3: 0.6.0(@babel/core@7.21.0) - babel-plugin-polyfill-regenerator: 0.4.1(@babel/core@7.21.0) - core-js-compat: 3.29.0 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/preset-modules@0.1.5(@babel/core@7.21.0): - resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} + /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} + engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-dotall-regex': 7.18.6(@babel/core@7.21.0) - '@babel/types': 7.21.2 - esutils: 2.0.3 + '@babel/core': 7.23.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/preset-react@7.18.6(@babel/core@7.21.0): - resolution: {integrity: sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==} + /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-transform-react-display-name': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-react-jsx': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-react-jsx-development': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-react-pure-annotations': 7.18.6(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 + dev: true + + /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.23.3 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.3) + '@babel/helper-plugin-utils': 7.22.5 dev: true - /@babel/preset-typescript@7.21.0(@babel/core@7.21.0): - resolution: {integrity: sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==} + /@babel/preset-env@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-transform-typescript': 7.21.0(@babel/core@7.21.0) + '@babel/compat-data': 7.23.3 + '@babel/core': 7.23.3 + '@babel/helper-compilation-targets': 7.22.15 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.3) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.3) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.3) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.3) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.3) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.3) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.3) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.3) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.3) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.3) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.3) + '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-async-generator-functions': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-block-scoping': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-class-static-block': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-classes': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-dynamic-import': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-export-namespace-from': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-for-of': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-json-strings': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-logical-assignment-operators': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-modules-systemjs': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.3) + '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-nullish-coalescing-operator': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-numeric-separator': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-object-rest-spread': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-optional-catch-binding': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-optional-chaining': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-private-property-in-object': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.23.3) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.3) + babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.3) + babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.3) + babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.3) + core-js-compat: 3.33.2 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /@babel/regjsgen@0.8.0: - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.3): + resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} + peerDependencies: + '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 + dependencies: + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/types': 7.23.3 + esutils: 2.0.3 dev: true - /@babel/runtime-corejs3@7.20.6: - resolution: {integrity: sha512-tqeujPiuEfcH067mx+7otTQWROVMKHXEaOQcAeNV5dDdbPWvPcFA8/W9LXw2NfjNmOetqLl03dfnG2WALPlsRQ==} + /@babel/preset-react@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-tbkHOS9axH6Ysf2OUEqoSZ6T3Fa2SrNH6WTWSPBboxKzdxNc9qOICeLXkNG0ZEwbQ1HY8liwOce4aN/Ceyuq6w==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-react-jsx': 7.22.15(@babel/core@7.23.3) + '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.23.3) + '@babel/plugin-transform-react-pure-annotations': 7.23.3(@babel/core@7.23.3) + dev: true + + /@babel/preset-typescript@7.23.3(@babel/core@7.23.3): + resolution: {integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 dependencies: - core-js-pure: 3.26.1 - regenerator-runtime: 0.13.11 + '@babel/core': 7.23.3 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-validator-option': 7.22.15 + '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.3) + '@babel/plugin-transform-typescript': 7.23.3(@babel/core@7.23.3) + dev: true + + /@babel/regjsgen@0.8.0: + resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} dev: true - /@babel/runtime@7.22.5: - resolution: {integrity: sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==} + /@babel/runtime@7.23.2: + resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==} engines: {node: '>=6.9.0'} dependencies: - regenerator-runtime: 0.13.11 + regenerator-runtime: 0.14.0 - /@babel/template@7.20.7: - resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} + /@babel/template@7.22.15: + resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/parser': 7.21.2 - '@babel/types': 7.21.2 + '@babel/code-frame': 7.22.13 + '@babel/parser': 7.23.3 + '@babel/types': 7.23.3 - /@babel/traverse@7.21.2: - resolution: {integrity: sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==} + /@babel/traverse@7.23.3: + resolution: {integrity: sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.22.5 - '@babel/generator': 7.21.1 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.21.2 - '@babel/types': 7.21.2 + '@babel/code-frame': 7.22.13 + '@babel/generator': 7.23.3 + '@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.3 + '@babel/types': 7.23.3 debug: 4.3.4(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/types@7.21.2: - resolution: {integrity: sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==} + /@babel/types@7.23.3: + resolution: {integrity: sha512-OZnvoH2l8PK5eUvEcUyCt/sXgr/h+UWpVuBbOljwcrAgUl6lpchoQ++PHGyQy1AtYnVA6CEq3y5xeEI10brpXw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-string-parser': 7.19.4 - '@babel/helper-validator-identifier': 7.22.5 + '@babel/helper-string-parser': 7.22.5 + '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 - /@braintree/sanitize-url@6.0.2: - resolution: {integrity: sha512-Tbsj02wXCbqGmzdnXNk0SOF19ChhRU70BsroIi4Pm6Ehp56in6vch94mfbdQ17DozxkL3BAVjbZ4Qc1a0HFRAg==} + /@braintree/sanitize-url@6.0.4: + resolution: {integrity: sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==} dev: false - /@changesets/apply-release-plan@6.1.3: - resolution: {integrity: sha512-ECDNeoc3nfeAe1jqJb5aFQX7CqzQhD2klXRez2JDb/aVpGUbX673HgKrnrgJRuQR/9f2TtLoYIzrGB9qwD77mg==} + /@changesets/apply-release-plan@6.1.4: + resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==} dependencies: - '@babel/runtime': 7.22.5 - '@changesets/config': 2.3.0 + '@babel/runtime': 7.23.2 + '@changesets/config': 2.3.1 '@changesets/get-version-range-type': 0.3.2 '@changesets/git': 2.0.0 '@changesets/types': 5.2.1 @@ -1822,18 +1833,18 @@ packages: outdent: 0.5.0 prettier: 2.8.8 resolve-from: 5.0.0 - semver: 5.7.1 + semver: 7.5.4 dev: true - /@changesets/assemble-release-plan@5.2.3: - resolution: {integrity: sha512-g7EVZCmnWz3zMBAdrcKhid4hkHT+Ft1n0mLussFMcB1dE2zCuwcvGoy9ec3yOgPGF4hoMtgHaMIk3T3TBdvU9g==} + /@changesets/assemble-release-plan@5.2.4: + resolution: {integrity: sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@changesets/errors': 0.1.4 - '@changesets/get-dependents-graph': 1.3.5 + '@changesets/get-dependents-graph': 1.3.6 '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 - semver: 5.7.1 + semver: 7.5.4 dev: true /@changesets/changelog-git@0.1.14: @@ -1852,18 +1863,18 @@ packages: - encoding dev: true - /@changesets/cli@2.26.1: - resolution: {integrity: sha512-XnTa+b51vt057fyAudvDKGB0Sh72xutQZNAdXkCqPBKO2zvs2yYZx5hFZj1u9cbtpwM6Sxtcr02/FQJfZOzemQ==} + /@changesets/cli@2.26.2: + resolution: {integrity: sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==} hasBin: true dependencies: - '@babel/runtime': 7.22.5 - '@changesets/apply-release-plan': 6.1.3 - '@changesets/assemble-release-plan': 5.2.3 + '@babel/runtime': 7.23.2 + '@changesets/apply-release-plan': 6.1.4 + '@changesets/assemble-release-plan': 5.2.4 '@changesets/changelog-git': 0.1.14 - '@changesets/config': 2.3.0 + '@changesets/config': 2.3.1 '@changesets/errors': 0.1.4 - '@changesets/get-dependents-graph': 1.3.5 - '@changesets/get-release-plan': 3.0.16 + '@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 @@ -1871,11 +1882,11 @@ packages: '@changesets/types': 5.2.1 '@changesets/write': 0.2.3 '@manypkg/get-packages': 1.1.3 - '@types/is-ci': 3.0.0 - '@types/semver': 6.2.3 + '@types/is-ci': 3.0.4 + '@types/semver': 7.5.5 ansi-colors: 4.1.3 chalk: 2.4.2 - enquirer: 2.3.6 + enquirer: 2.4.1 external-editor: 3.1.0 fs-extra: 7.0.1 human-id: 1.0.2 @@ -1883,19 +1894,19 @@ packages: meow: 6.1.1 outdent: 0.5.0 p-limit: 2.3.0 - preferred-pm: 3.0.3 + preferred-pm: 3.1.2 resolve-from: 5.0.0 - semver: 5.7.1 + semver: 7.5.4 spawndamnit: 2.0.0 term-size: 2.2.1 - tty-table: 4.2.1 + tty-table: 4.2.3 dev: true - /@changesets/config@2.3.0: - resolution: {integrity: sha512-EgP/px6mhCx8QeaMAvWtRrgyxW08k/Bx2tpGT+M84jEdX37v3VKfh4Cz1BkwrYKuMV2HZKeHOh8sHvja/HcXfQ==} + /@changesets/config@2.3.1: + resolution: {integrity: sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==} dependencies: '@changesets/errors': 0.1.4 - '@changesets/get-dependents-graph': 1.3.5 + '@changesets/get-dependents-graph': 1.3.6 '@changesets/logger': 0.0.5 '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 @@ -1909,31 +1920,31 @@ packages: extendable-error: 0.1.7 dev: true - /@changesets/get-dependents-graph@1.3.5: - resolution: {integrity: sha512-w1eEvnWlbVDIY8mWXqWuYE9oKhvIaBhzqzo4ITSJY9hgoqQ3RoBqwlcAzg11qHxv/b8ReDWnMrpjpKrW6m1ZTA==} + /@changesets/get-dependents-graph@1.3.6: + resolution: {integrity: sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==} dependencies: '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 chalk: 2.4.2 fs-extra: 7.0.1 - semver: 5.7.1 + semver: 7.5.4 dev: true /@changesets/get-github-info@0.5.2: resolution: {integrity: sha512-JppheLu7S114aEs157fOZDjFqUDpm7eHdq5E8SSR0gUBTEK0cNSHsrSR5a66xs0z3RWuo46QvA3vawp8BxDHvg==} dependencies: dataloader: 1.4.0 - node-fetch: 2.6.11 + node-fetch: 2.7.0 transitivePeerDependencies: - encoding dev: true - /@changesets/get-release-plan@3.0.16: - resolution: {integrity: sha512-OpP9QILpBp1bY2YNIKFzwigKh7Qe9KizRsZomzLe6pK8IUo8onkAAVUD8+JRKSr8R7d4+JRuQrfSSNlEwKyPYg==} + /@changesets/get-release-plan@3.0.17: + resolution: {integrity: sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==} dependencies: - '@babel/runtime': 7.22.5 - '@changesets/assemble-release-plan': 5.2.3 - '@changesets/config': 2.3.0 + '@babel/runtime': 7.23.2 + '@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 @@ -1947,7 +1958,7 @@ packages: /@changesets/git@2.0.0: resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@changesets/errors': 0.1.4 '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 @@ -1972,7 +1983,7 @@ packages: /@changesets/pre@1.0.14: resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@changesets/errors': 0.1.4 '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 @@ -1982,7 +1993,7 @@ packages: /@changesets/read@0.5.9: resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@changesets/git': 2.0.0 '@changesets/logger': 0.0.5 '@changesets/parse': 0.3.16 @@ -2003,7 +2014,7 @@ packages: /@changesets/write@0.2.3: resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@changesets/types': 5.2.1 fs-extra: 7.0.1 human-id: 1.0.2 @@ -2193,27 +2204,27 @@ packages: requiresBuild: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.43.0): + /@eslint-community/eslint-utils@4.4.0(eslint@8.53.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.43.0 - eslint-visitor-keys: 3.4.1 + eslint: 8.53.0 + eslint-visitor-keys: 3.4.3 - /@eslint-community/regexpp@4.5.1: - resolution: {integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==} + /@eslint-community/regexpp@4.10.0: + resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - /@eslint/eslintrc@2.0.3: - resolution: {integrity: sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==} + /@eslint/eslintrc@2.1.3: + resolution: {integrity: sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.4(supports-color@8.1.1) - espree: 9.5.2 - globals: 13.20.0 + espree: 9.6.1 + globals: 13.23.0 ignore: 5.2.4 import-fresh: 3.3.0 js-yaml: 4.1.0 @@ -2222,8 +2233,8 @@ packages: transitivePeerDependencies: - supports-color - /@eslint/js@8.43.0: - resolution: {integrity: sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==} + /@eslint/js@8.53.0: + resolution: {integrity: sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} /@ethersproject/abi@5.0.7: @@ -2395,13 +2406,13 @@ packages: js-yaml: 4.1.0 dev: true - /@graphprotocol/graph-cli@0.51.1(@types/node@18.16.18)(node-fetch@3.3.2)(typescript@5.1.3): + /@graphprotocol/graph-cli@0.51.1(@types/node@18.16.18)(node-fetch@3.3.2)(typescript@5.2.2): resolution: {integrity: sha512-6W1aphU/0Uq1ju8e4Ya5plmXUcjCR2N30wjDrf5Cn6QjHsk9VUqMt4x3+D3DHGSVvXve2+ThiEU2s2xktP3PTw==} engines: {node: '>=14'} hasBin: true dependencies: '@float-capital/float-subgraph-uncrashable': 0.0.0-internal-testing.5 - '@oclif/core': 2.8.4(@types/node@18.16.18)(typescript@5.1.3) + '@oclif/core': 2.8.4(@types/node@18.16.18)(typescript@5.2.2) '@whatwg-node/fetch': 0.8.8 assemblyscript: 0.19.23 binary-install-raw: 0.0.13(debug@4.3.4) @@ -2444,8 +2455,8 @@ packages: assemblyscript: 0.19.10 dev: true - /@headlessui/react@1.7.15(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-OTO0XtoRQ6JPB1cKNFYBZv2Q0JMqMGNhYP1CjPvcJvjz8YGokz8oAj89HIYZGN0gZzn/4kk9iUpmMF4Q21Gsqw==} + /@headlessui/react@1.7.17(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-4am+tzvkqDSSgiwrsEpGWqgGo9dz8qU5M3znCkC4PgkpY4HcCZzEDEvozltGGGHIKl9jbXbZPSH5TWn4sWJdow==} engines: {node: '>=10'} peerDependencies: react: ^16 || ^17 || ^18 @@ -2456,11 +2467,11 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@humanwhocodes/config-array@0.11.10: - resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==} + /@humanwhocodes/config-array@0.11.13: + resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} engines: {node: '>=10.10.0'} dependencies: - '@humanwhocodes/object-schema': 1.2.1 + '@humanwhocodes/object-schema': 2.0.1 debug: 4.3.4(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: @@ -2470,8 +2481,8 @@ packages: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - /@humanwhocodes/object-schema@1.2.1: - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + /@humanwhocodes/object-schema@2.0.1: + resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} /@ipld/dag-cbor@7.0.3: resolution: {integrity: sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==} @@ -2499,7 +2510,7 @@ packages: dependencies: string-width: 5.1.2 string-width-cjs: /string-width@4.2.3 - strip-ansi: 7.0.1 + 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 @@ -2511,45 +2522,30 @@ packages: '@sinclair/typebox': 0.27.8 dev: true - /@jridgewell/gen-mapping@0.1.1: - resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} - engines: {node: '>=6.0.0'} - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 - /@jridgewell/gen-mapping@0.3.3: resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} engines: {node: '>=6.0.0'} dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.18 - - /@jridgewell/resolve-uri@3.1.0: - resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} - engines: {node: '>=6.0.0'} + '@jridgewell/trace-mapping': 0.3.20 /@jridgewell/resolve-uri@3.1.1: resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/set-array@1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} - /@jridgewell/sourcemap-codec@1.4.14: - resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} - /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - /@jridgewell/trace-mapping@0.3.18: - resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} + /@jridgewell/trace-mapping@0.3.20: + resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 + '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/sourcemap-codec': 1.4.15 /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} @@ -2573,7 +2569,7 @@ packages: /@manypkg/find-root@1.1.0: resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@types/node': 12.20.55 find-up: 4.1.0 fs-extra: 8.1.0 @@ -2582,7 +2578,7 @@ packages: /@manypkg/get-packages@1.1.3: resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 '@changesets/types': 4.1.0 '@manypkg/find-root': 1.1.0 fs-extra: 8.1.0 @@ -2593,8 +2589,8 @@ packages: /@mdx-js/mdx@2.3.0: resolution: {integrity: sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==} dependencies: - '@types/estree-jsx': 1.0.0 - '@types/mdx': 2.0.5 + '@types/estree-jsx': 1.0.3 + '@types/mdx': 2.0.10 estree-util-build-jsx: 2.2.2 estree-util-is-identifier-name: 2.1.0 estree-util-to-js: 1.2.0 @@ -2619,9 +2615,21 @@ packages: peerDependencies: react: '>=16' dependencies: - '@types/mdx': 2.0.5 - '@types/react': 18.0.25 + '@types/mdx': 2.0.10 + '@types/react': 18.2.37 + react: 18.2.0 + dev: false + + /@mdx-js/react@3.0.0(@types/react@18.2.37)(react@18.2.0): + resolution: {integrity: sha512-nDctevR9KyYFyV+m+/+S4cpzCWHqj+iHDHq3QrsWezcC+B17uZdIWgCguESUkwFhM3n/56KxWVE3V6EokrmONQ==} + peerDependencies: + '@types/react': '>=16' + react: '>=16' + dependencies: + '@types/mdx': 2.0.10 + '@types/react': 18.2.37 react: 18.2.0 + dev: true /@napi-rs/simple-git-android-arm-eabi@0.1.9: resolution: {integrity: sha512-9D4JnfePMpgL4pg9aMUX7/TIWEUQ+Tgx8n3Pf8TNCMGjUbImJyYsDSLJzbcv9wH7srgn4GRjSizXFJHAPjzEug==} @@ -2739,18 +2747,18 @@ packages: '@napi-rs/simple-git-win32-x64-msvc': 0.1.9 dev: false - /@next/env@13.4.12: - resolution: {integrity: sha512-RmHanbV21saP/6OEPBJ7yJMuys68cIf8OBBWd7+uj40LdpmswVAwe1uzeuFyUsd6SfeITWT3XnQfn6wULeKwDQ==} + /@next/env@14.0.2: + resolution: {integrity: sha512-HAW1sljizEaduEOes/m84oUqeIDAUYBR1CDwu2tobNlNDFP3cSm9d6QsOsGeNlIppU1p/p1+bWbYCbvwjFiceA==} dev: false - /@next/eslint-plugin-next@13.0.5: - resolution: {integrity: sha512-H9U9B1dFnCDmylDZ6/dYt95Ie1Iu+SLBMcO6rkIGIDcj5UK+DNyMiWm83xWBZ1gREM8cfp5Srv1g6wqf8pM4lw==} + /@next/eslint-plugin-next@14.0.2: + resolution: {integrity: sha512-APrYFsXfAhnysycqxHcpg6Y4i7Ukp30GzVSZQRKT3OczbzkqGjt33vNhScmgoOXYBU1CfkwgtXmNxdiwv1jKmg==} dependencies: glob: 7.1.7 dev: true - /@next/swc-darwin-arm64@13.4.12: - resolution: {integrity: sha512-deUrbCXTMZ6ZhbOoloqecnUeNpUOupi8SE2tx4jPfNS9uyUR9zK4iXBvH65opVcA/9F5I/p8vDXSYbUlbmBjZg==} + /@next/swc-darwin-arm64@14.0.2: + resolution: {integrity: sha512-i+jQY0fOb8L5gvGvojWyZMfQoQtDVB2kYe7fufOEiST6sicvzI2W5/EXo4lX5bLUjapHKe+nFxuVv7BA+Pd7LQ==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] @@ -2758,8 +2766,8 @@ packages: dev: false optional: true - /@next/swc-darwin-x64@13.4.12: - resolution: {integrity: sha512-WRvH7RxgRHlC1yb5oG0ZLx8F7uci9AivM5/HGGv9ZyG2Als8Ij64GC3d+mQ5sJhWjusyU6T6V1WKTUoTmOB0zQ==} + /@next/swc-darwin-x64@14.0.2: + resolution: {integrity: sha512-zRCAO0d2hW6gBEa4wJaLn+gY8qtIqD3gYd9NjruuN98OCI6YyelmhWVVLlREjS7RYrm9OUQIp/iVJFeB6kP1hg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] @@ -2767,8 +2775,8 @@ packages: dev: false optional: true - /@next/swc-linux-arm64-gnu@13.4.12: - resolution: {integrity: sha512-YEKracAWuxp54tKiAvvq73PUs9lok57cc8meYRibTWe/VdPB2vLgkTVWFcw31YDuRXdEhdX0fWS6Q+ESBhnEig==} + /@next/swc-linux-arm64-gnu@14.0.2: + resolution: {integrity: sha512-tSJmiaon8YaKsVhi7GgRizZoV0N1Sx5+i+hFTrCKKQN7s3tuqW0Rov+RYdPhAv/pJl4qiG+XfSX4eJXqpNg3dA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -2776,8 +2784,8 @@ packages: dev: false optional: true - /@next/swc-linux-arm64-musl@13.4.12: - resolution: {integrity: sha512-LhJR7/RAjdHJ2Isl2pgc/JaoxNk0KtBgkVpiDJPVExVWA1c6gzY57+3zWuxuyWzTG+fhLZo2Y80pLXgIJv7g3g==} + /@next/swc-linux-arm64-musl@14.0.2: + resolution: {integrity: sha512-dXJLMSEOwqJKcag1BeX1C+ekdPPJ9yXbWIt3nAadhbLx5CjACoB2NQj9Xcqu2tmdr5L6m34fR+fjGPs+ZVPLzA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -2785,8 +2793,8 @@ packages: dev: false optional: true - /@next/swc-linux-x64-gnu@13.4.12: - resolution: {integrity: sha512-1DWLL/B9nBNiQRng+1aqs3OaZcxC16Nf+mOnpcrZZSdyKHek3WQh6j/fkbukObgNGwmCoVevLUa/p3UFTTqgqg==} + /@next/swc-linux-x64-gnu@14.0.2: + resolution: {integrity: sha512-WC9KAPSowj6as76P3vf1J3mf2QTm3Wv3FBzQi7UJ+dxWjK3MhHVWsWUo24AnmHx9qDcEtHM58okgZkXVqeLB+Q==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -2794,8 +2802,8 @@ packages: dev: false optional: true - /@next/swc-linux-x64-musl@13.4.12: - resolution: {integrity: sha512-kEAJmgYFhp0VL+eRWmUkVxLVunn7oL9Mdue/FS8yzRBVj7Z0AnIrHpTIeIUl1bbdQq1VaoOztnKicAjfkLTRCQ==} + /@next/swc-linux-x64-musl@14.0.2: + resolution: {integrity: sha512-KSSAwvUcjtdZY4zJFa2f5VNJIwuEVnOSlqYqbQIawREJA+gUI6egeiRu290pXioQXnQHYYdXmnVNZ4M+VMB7KQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -2803,8 +2811,8 @@ packages: dev: false optional: true - /@next/swc-win32-arm64-msvc@13.4.12: - resolution: {integrity: sha512-GMLuL/loR6yIIRTnPRY6UGbLL9MBdw2anxkOnANxvLvsml4F0HNIgvnU3Ej4BjbqMTNjD4hcPFdlEow4XHPdZA==} + /@next/swc-win32-arm64-msvc@14.0.2: + resolution: {integrity: sha512-2/O0F1SqJ0bD3zqNuYge0ok7OEWCQwk55RPheDYD0va5ij7kYwrFkq5ycCRN0TLjLfxSF6xI5NM6nC5ux7svEQ==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] @@ -2812,8 +2820,8 @@ packages: dev: false optional: true - /@next/swc-win32-ia32-msvc@13.4.12: - resolution: {integrity: sha512-PhgNqN2Vnkm7XaMdRmmX0ZSwZXQAtamBVSa9A/V1dfKQCV1rjIZeiy/dbBnVYGdj63ANfsOR/30XpxP71W0eww==} + /@next/swc-win32-ia32-msvc@14.0.2: + resolution: {integrity: sha512-vJI/x70Id0oN4Bq/R6byBqV1/NS5Dl31zC+lowO8SDu1fHmUxoAdILZR5X/sKbiJpuvKcCrwbYgJU8FF/Gh50Q==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] @@ -2821,8 +2829,8 @@ packages: dev: false optional: true - /@next/swc-win32-x64-msvc@13.4.12: - resolution: {integrity: sha512-Z+56e/Ljt0bUs+T+jPjhFyxYBcdY2RIq9ELFU+qAMQMteHo7ymbV7CKmlcX59RI9C4YzN8PgMgLyAoi916b5HA==} + /@next/swc-win32-x64-msvc@14.0.2: + resolution: {integrity: sha512-Ut4LXIUvC5m8pHTe2j0vq/YDnTEyq6RSR9vHYPqnELrDapPhLNz9Od/L5Ow3J8RNDWpEnfCiQXuVdfjlNEJ7ug==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -2834,9 +2842,20 @@ packages: resolution: {integrity: sha512-2upgEu0iLiDVDZkNLeFV2+ht0BAVgQnEmCk6JsOch9Rp8xfkMCbvbAZlA2pBHQc73dbl+vFOXfqkf4uemdn0bw==} dependencies: '@noble/hashes': 1.3.0 + dev: true + + /@noble/curves@1.2.0: + resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} + dependencies: + '@noble/hashes': 1.3.2 /@noble/hashes@1.3.0: resolution: {integrity: sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==} + dev: true + + /@noble/hashes@1.3.2: + resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} + engines: {node: '>= 16'} /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -2856,7 +2875,7 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 - /@oclif/core@2.8.4(@types/node@18.16.18)(typescript@5.1.3): + /@oclif/core@2.8.4(@types/node@18.16.18)(typescript@5.2.2): resolution: {integrity: sha512-VlFDhoAJ1RDwcpDF46wAlciWTIryapMUViACttY9GwX6Ci6Lud1awe/pC3k4jad5472XshnPQV4bHAl4a/yxpA==} engines: {node: '>=14.0.0'} dependencies: @@ -2884,8 +2903,8 @@ packages: strip-ansi: 6.0.1 supports-color: 8.1.1 supports-hyperlinks: 2.3.0 - ts-node: 10.9.1(@types/node@18.16.18)(typescript@5.1.3) - tslib: 2.5.3 + ts-node: 10.9.1(@types/node@18.16.18)(typescript@5.2.2) + tslib: 2.6.2 widest-line: 3.1.0 wordwrap: 1.0.0 wrap-ansi: 7.0.0 @@ -2896,19 +2915,24 @@ packages: - typescript dev: true + /@opentelemetry/api@1.7.0: + resolution: {integrity: sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw==} + engines: {node: '>=8.0.0'} + dev: false + /@peculiar/asn1-schema@2.3.6: resolution: {integrity: sha512-izNRxPoaeJeg/AyH8hER6s+H7p4itk+03QCa4sbxI3lNdseQYCuxzgsuNK8bTXChtLTjpJz6NmXKA73qLa3rCA==} dependencies: asn1js: 3.0.5 pvtsutils: 1.3.2 - tslib: 2.5.3 + tslib: 2.6.2 dev: true /@peculiar/json-schema@1.1.12: resolution: {integrity: sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==} engines: {node: '>=8.0.0'} dependencies: - tslib: 2.5.3 + tslib: 2.6.2 dev: true /@peculiar/webcrypto@1.4.3: @@ -2918,7 +2942,7 @@ packages: '@peculiar/asn1-schema': 2.3.6 '@peculiar/json-schema': 1.1.12 pvtsutils: 1.3.2 - tslib: 2.5.3 + tslib: 2.6.2 webcrypto-core: 1.7.7 dev: true @@ -2928,20 +2952,20 @@ packages: requiresBuild: true optional: true - /@pkgr/utils@2.3.1: - resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} + /@pkgr/utils@2.4.2: + resolution: {integrity: sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} dependencies: cross-spawn: 7.0.3 + fast-glob: 3.3.2 is-glob: 4.0.3 - open: 8.4.0 + open: 9.1.0 picocolors: 1.0.0 - tiny-glob: 0.2.9 - tslib: 2.5.3 + tslib: 2.6.2 dev: true - /@popperjs/core@2.11.6: - resolution: {integrity: sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==} + /@popperjs/core@2.11.8: + resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} dev: false /@protobufjs/aspromise@1.1.2: @@ -2991,43 +3015,63 @@ packages: resolution: {integrity: sha512-zGzFsgtZ44mgL4Xef2gOy1hrRVdrs9mcxCOOKZrIPsmbZW14yTkaF591GXxpQvjXiHtgZ/iA9qLyWH6oSReIxQ==} dev: true - /@rushstack/eslint-patch@1.2.0: - resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==} + /@rushstack/eslint-patch@1.5.1: + resolution: {integrity: sha512-6i/8UoL0P5y4leBIGzvkZdS85RDMG9y1ihZzmTZQ5LdHUYmZ7pKFoj8X0236s3lusPs1Fa5HTQUpwI+UfTcmeA==} dev: true - /@scure/base@1.1.1: - resolution: {integrity: sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==} + /@scure/base@1.1.3: + resolution: {integrity: sha512-/+SgoRjLq7Xlf0CWuLHq2LUZeL/w65kfzAPG5NH9pcmBhs+nunQTn4gvdwgMTIXnt9b2C/1SeL2XiysZEyIC9Q==} /@scure/bip32@1.3.0: resolution: {integrity: sha512-bcKpo1oj54hGholplGLpqPHRbIsnbixFtc06nwuNM5/dwSXOq/AAYoIBRsBmnZJSdfeNW5rnff7NTAz3ZCqR9Q==} dependencies: '@noble/curves': 1.0.0 - '@noble/hashes': 1.3.0 - '@scure/base': 1.1.1 + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.3 + dev: true + + /@scure/bip32@1.3.2: + resolution: {integrity: sha512-N1ZhksgwD3OBlwTv3R6KFEcPojl/W4ElJOeCZdi+vuI5QmTFwLq3OFf2zd2ROpKvxFdgZ6hUpb0dx9bVNEwYCA==} + dependencies: + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.3 /@scure/bip39@1.2.0: resolution: {integrity: sha512-SX/uKq52cuxm4YFXWFaVByaSHJh2w3BnokVSeUJVCv6K7WulT9u2BuNRBhuFl8vAuYnzx9bEu9WgpcNYTrYieg==} dependencies: - '@noble/hashes': 1.3.0 - '@scure/base': 1.1.1 + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.3 + dev: true + + /@scure/bip39@1.2.1: + resolution: {integrity: sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==} + dependencies: + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.3 - /@segment/analytics-core@1.3.0: - resolution: {integrity: sha512-ujScWZH49NK1hYlp2/EMw45nOPEh+pmTydAnR6gSkRNucZD4fuinvpPL03rmFCw8ibaMuKLAdgPJfQ0gkLKZ5A==} + /@segment/analytics-core@1.3.2: + resolution: {integrity: sha512-NpeBCfOyMdO2/BDKfhCUNHcEwxg88N2iTnswBoEMh38rtsQ03TWLVYwgiTakPjNQFezdKkR6jq3JhQ3WWgq67g==} dependencies: '@lukeed/uuid': 2.0.1 - dset: 3.1.2 - tslib: 2.5.3 + dset: 3.1.3 + tslib: 2.6.2 + dev: false + + /@segment/analytics-generic-utils@1.0.0: + resolution: {integrity: sha512-rAqcIQESnCsc80DMAxH06C4sJQ1MjwRLrWsih9qA2E0XwxydrMYgLA8eazxLW/wqEdctSJHCPnkMynpPIQgatw==} dev: false - /@segment/analytics-node@1.1.0: - resolution: {integrity: sha512-q8MPpvQJgMUSIRmQXficA33ZmLQ6s5YqUMr623xJhhfp/TGkkgfpcdMk+qSniZVIm8JuQRXm8Mbh922LG3goBQ==} + /@segment/analytics-node@1.1.3: + resolution: {integrity: sha512-RGmD/VIW4iHqY+raeHlxdGY/FQpE6ATZHU8LrbwI+16uvT+sfw8d725J/lmzJIgNScJ/NFLg3LyHjitwPpqTxw==} engines: {node: '>=14'} dependencies: '@lukeed/uuid': 2.0.1 - '@segment/analytics-core': 1.3.0 + '@segment/analytics-core': 1.3.2 + '@segment/analytics-generic-utils': 1.0.0 buffer: 6.0.3 - node-fetch: 2.6.11 - tslib: 2.5.3 + node-fetch: 2.7.0 + tslib: 2.6.2 transitivePeerDependencies: - encoding dev: false @@ -3036,163 +3080,167 @@ packages: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true - /@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} - engines: {node: '>=10'} + /@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-remove-jsx-attribute@6.5.0(@babel/core@7.21.0): - resolution: {integrity: sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==} - engines: {node: '>=10'} + /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-remove-jsx-empty-expression@6.5.0(@babel/core@7.21.0): - resolution: {integrity: sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==} - engines: {node: '>=10'} + /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} - engines: {node: '>=10'} + /@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} - engines: {node: '>=10'} + /@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} - engines: {node: '>=10'} + /@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} - engines: {node: '>=10'} + /@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.23.3): + resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} + /@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.23.3): + resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==} engines: {node: '>=12'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 dev: true - /@svgr/babel-preset@6.5.1(@babel/core@7.21.0): - resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} - engines: {node: '>=10'} + /@svgr/babel-preset@8.1.0(@babel/core@7.23.3): + resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==} + engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.0 - '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-remove-jsx-attribute': 6.5.0(@babel/core@7.21.0) - '@svgr/babel-plugin-remove-jsx-empty-expression': 6.5.0(@babel/core@7.21.0) - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.23.3) + '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.3) + '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.3) + '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.23.3) + '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.23.3) + '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.23.3) + '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.23.3) + '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.23.3) dev: true - /@svgr/core@6.5.1: - resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} - engines: {node: '>=10'} + /@svgr/core@8.1.0(typescript@5.2.2): + resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==} + engines: {node: '>=14'} dependencies: - '@babel/core': 7.21.0 - '@svgr/babel-preset': 6.5.1(@babel/core@7.21.0) - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) + '@babel/core': 7.23.3 + '@svgr/babel-preset': 8.1.0(@babel/core@7.23.3) camelcase: 6.3.0 - cosmiconfig: 7.1.0 + cosmiconfig: 8.3.6(typescript@5.2.2) + snake-case: 3.0.4 transitivePeerDependencies: - supports-color + - typescript dev: true - /@svgr/hast-util-to-babel-ast@6.5.1: - resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} - engines: {node: '>=10'} + /@svgr/hast-util-to-babel-ast@8.0.0: + resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==} + engines: {node: '>=14'} dependencies: - '@babel/types': 7.21.2 + '@babel/types': 7.23.3 entities: 4.5.0 dev: true - /@svgr/plugin-jsx@6.5.1(@svgr/core@6.5.1): - resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} - engines: {node: '>=10'} + /@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0): + resolution: {integrity: sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==} + engines: {node: '>=14'} peerDependencies: - '@svgr/core': ^6.0.0 + '@svgr/core': '*' dependencies: - '@babel/core': 7.21.0 - '@svgr/babel-preset': 6.5.1(@babel/core@7.21.0) - '@svgr/core': 6.5.1 - '@svgr/hast-util-to-babel-ast': 6.5.1 + '@babel/core': 7.23.3 + '@svgr/babel-preset': 8.1.0(@babel/core@7.23.3) + '@svgr/core': 8.1.0(typescript@5.2.2) + '@svgr/hast-util-to-babel-ast': 8.0.0 svg-parser: 2.0.4 transitivePeerDependencies: - supports-color dev: true - /@svgr/plugin-svgo@6.5.1(@svgr/core@6.5.1): - resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} - engines: {node: '>=10'} + /@svgr/plugin-svgo@8.1.0(@svgr/core@8.1.0)(typescript@5.2.2): + resolution: {integrity: sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==} + engines: {node: '>=14'} peerDependencies: '@svgr/core': '*' dependencies: - '@svgr/core': 6.5.1 - cosmiconfig: 7.1.0 - deepmerge: 4.2.2 - svgo: 2.8.0 + '@svgr/core': 8.1.0(typescript@5.2.2) + cosmiconfig: 8.3.6(typescript@5.2.2) + deepmerge: 4.3.1 + svgo: 3.0.3 + transitivePeerDependencies: + - typescript dev: true - /@svgr/webpack@6.5.1: - resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} - engines: {node: '>=10'} + /@svgr/webpack@8.1.0(typescript@5.2.2): + resolution: {integrity: sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==} + engines: {node: '>=14'} dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-transform-react-constant-elements': 7.20.2(@babel/core@7.21.0) - '@babel/preset-env': 7.20.2(@babel/core@7.21.0) - '@babel/preset-react': 7.18.6(@babel/core@7.21.0) - '@babel/preset-typescript': 7.21.0(@babel/core@7.21.0) - '@svgr/core': 6.5.1 - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - '@svgr/plugin-svgo': 6.5.1(@svgr/core@6.5.1) + '@babel/core': 7.23.3 + '@babel/plugin-transform-react-constant-elements': 7.23.3(@babel/core@7.23.3) + '@babel/preset-env': 7.23.3(@babel/core@7.23.3) + '@babel/preset-react': 7.23.3(@babel/core@7.23.3) + '@babel/preset-typescript': 7.23.3(@babel/core@7.23.3) + '@svgr/core': 8.1.0(typescript@5.2.2) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0) + '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0)(typescript@5.2.2) transitivePeerDependencies: - supports-color + - typescript dev: true - /@swc/helpers@0.5.1: - resolution: {integrity: sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==} + /@swc/helpers@0.5.2: + resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} dependencies: - tslib: 2.5.3 + tslib: 2.6.2 dev: false /@theguild/remark-mermaid@0.0.5(react@18.2.0): @@ -3200,7 +3248,7 @@ packages: peerDependencies: react: ^18.2.0 dependencies: - mermaid: 10.2.4 + mermaid: 10.6.1 react: 18.2.0 unist-util-visit: 5.0.0 transitivePeerDependencies: @@ -3238,17 +3286,17 @@ packages: /@types/acorn@4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 dev: false - /@types/babel__code-frame@7.0.3: - resolution: {integrity: sha512-2TN6oiwtNjOezilFVl77zwdNPwQWaDBBCCWWxyo1ctiO3vAtd7H/aB/CBJdw9+kqq3+latD0SXoedIuHySSZWw==} + /@types/babel__code-frame@7.0.6: + resolution: {integrity: sha512-Anitqkl3+KrzcW2k77lRlg/GfLZLWXBuNgbEcIOU6M92yw42vsd3xV/Z/yAHEj8m+KUjL6bWOVOFqX8PFPJ4LA==} dev: true - /@types/better-sqlite3@7.6.0: - resolution: {integrity: sha512-rnSP9vY+fVsF3iJja5yRGBJV63PNBiezJlYrCkqUmQWFoB16cxAHwOkjsAYEu317miOfKaJpa65cbp0P4XJ/jw==} + /@types/better-sqlite3@7.6.7: + resolution: {integrity: sha512-+c2YGPWY5831v3uj2/X0HRTK94u1GXU3sCnLqu7AKlxlSfawswnAiJR//TFzSL5azWsLQkG/uS+YnnqHtuZxPw==} dependencies: - '@types/node': 20.9.0 + '@types/node': 18.16.18 dev: true /@types/bn.js@5.1.1: @@ -3257,11 +3305,11 @@ packages: '@types/node': 18.16.18 dev: true - /@types/body-parser@1.19.2: - resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} + /@types/body-parser@1.19.5: + resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: - '@types/connect': 3.4.35 - '@types/node': 20.9.0 + '@types/connect': 3.4.38 + '@types/node': 18.16.18 dev: true /@types/chai-subset@1.3.3: @@ -3286,51 +3334,68 @@ packages: '@types/node': 18.16.18 dev: true - /@types/connect@3.4.35: - resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} + /@types/connect@3.4.38: + resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.9.0 + '@types/node': 18.16.18 dev: true - /@types/cookiejar@2.1.2: - resolution: {integrity: sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==} + /@types/cookiejar@2.1.4: + resolution: {integrity: sha512-b698BLJ6kPVd6uhHsY7wlebZdrWPXYied883PDSzpJZYOP97EOn/oGdLCH3jJf157srkFReIZY5v0H1s8Dozrg==} dev: true - /@types/cors@2.8.12: - resolution: {integrity: sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==} - dev: true + /@types/cors@2.8.16: + resolution: {integrity: sha512-Trx5or1Nyg1Fq138PCuWqoApzvoSLWzZ25ORBiHMbbUT42g578lH1GT4TwYDbiUOLFuDsCkfLneT2105fsFWGg==} + dependencies: + '@types/node': 18.16.18 + dev: true + + /@types/d3-scale-chromatic@3.0.2: + resolution: {integrity: sha512-kpKNZMDT3OAX6b5ct5nS/mv6LULagnUy4DmS6yyNjclje1qVe7vbjPwY3q1TGz6+Wr2IUkgFatCzqYUl54fHag==} + dev: false + + /@types/d3-scale@4.0.8: + resolution: {integrity: sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==} + dependencies: + '@types/d3-time': 3.0.3 + dev: false + + /@types/d3-time@3.0.3: + resolution: {integrity: sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==} + dev: false - /@types/debug@4.1.8: - resolution: {integrity: sha512-/vPO1EPOs306Cvhwv7KfVfYvOJqA/S/AXjaHQiJboCZzcNDb+TIJFN9/2C9DZ//ijSKWioNyUxD792QmDJ+HKQ==} + /@types/debug@4.1.12: + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} dependencies: - '@types/ms': 0.7.31 + '@types/ms': 0.7.34 dev: false - /@types/estree-jsx@1.0.0: - resolution: {integrity: sha512-3qvGd0z8F2ENTGr/GG1yViqfiKmRfrXVx5sJyHGFu3z7m5g5utCQtGp/g29JnjflhtQJBv1WDQukHiT58xPcYQ==} + /@types/estree-jsx@1.0.3: + resolution: {integrity: sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 dev: false - /@types/estree@1.0.1: - resolution: {integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==} + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} dev: false - /@types/express-serve-static-core@4.17.30: - resolution: {integrity: sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==} + /@types/express-serve-static-core@4.17.41: + resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} dependencies: - '@types/node': 20.9.0 - '@types/qs': 6.9.7 - '@types/range-parser': 1.2.4 + '@types/node': 18.16.18 + '@types/qs': 6.9.10 + '@types/range-parser': 1.2.7 + '@types/send': 0.17.4 dev: true - /@types/express@4.17.13: - resolution: {integrity: sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==} + /@types/express@4.17.21: + resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} dependencies: - '@types/body-parser': 1.19.2 - '@types/express-serve-static-core': 4.17.30 - '@types/qs': 6.9.7 - '@types/serve-static': 1.15.0 + '@types/body-parser': 1.19.5 + '@types/express-serve-static-core': 4.17.41 + '@types/qs': 6.9.10 + '@types/serve-static': 1.15.5 dev: true /@types/form-data@0.0.33: @@ -3339,67 +3404,75 @@ packages: '@types/node': 18.16.18 dev: true - /@types/glob@8.0.0: - resolution: {integrity: sha512-l6NQsDDyQUVeoTynNpC9uRvCUint/gSUXQA2euwmTuWGvPY5LSDUu6tkCtJB2SvGQlJQzLaKqcGZP4//7EDveA==} + /@types/glob@8.1.0: + resolution: {integrity: sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.9.0 + '@types/node': 18.16.18 dev: true - /@types/hast@2.3.5: - resolution: {integrity: sha512-SvQi0L/lNpThgPoleH53cdjB3y9zpLlVjRbqB3rH8hx1jiRSBGAhyjV3H+URFjNVRqt2EdYNrbZE5IsGlNfpRg==} + /@types/hast@2.3.8: + resolution: {integrity: sha512-aMIqAlFd2wTIDZuvLbhUT+TGvMxrNC8ECUIVtH6xxy0sQLs3iu6NO8Kp/VT5je7i5ufnebXzdV1dNDMnvaH6IQ==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 dev: false - /@types/hast@3.0.2: - resolution: {integrity: sha512-B5hZHgHsXvfCoO3xgNJvBnX7N8p86TqQeGKXcokW4XXi+qY4vxxPSFYofytvVmpFxzPv7oxDQzjg5Un5m2/xiw==} + /@types/hast@3.0.3: + resolution: {integrity: sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 dev: false - /@types/is-ci@3.0.0: - resolution: {integrity: sha512-Q0Op0hdWbYd1iahB+IFNQcWXFq4O0Q5MwQP7uN0souuQ4rPg1vEYcnIOfr1gY+M+6rc8FGoRaBO1mOOvL29sEQ==} + /@types/http-errors@2.0.4: + resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} + dev: true + + /@types/is-ci@3.0.4: + resolution: {integrity: sha512-AkCYCmwlXeuH89DagDCzvCAyltI2v9lh3U3DqSg/GrBYoReAaWwxfXCqMx9UV5MajLZ4ZFwZzV4cABGIxk2XRw==} dependencies: - ci-info: 3.8.0 + ci-info: 3.9.0 dev: true - /@types/js-yaml@4.0.5: - resolution: {integrity: sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==} + /@types/js-yaml@4.0.9: + resolution: {integrity: sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==} dev: false - /@types/json-schema@7.0.12: - resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} + /@types/json-schema@7.0.15: + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} /@types/json5@0.0.29: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true - /@types/katex@0.16.1: - resolution: {integrity: sha512-cwglq2A63Yk082CQk0t8LIoDhZAVgJqkumLyk3grpg3K8sevaDW//Qsspmxj9Sf+97biqt79CfAlPrvizHlP0w==} + /@types/katex@0.16.6: + resolution: {integrity: sha512-rZYO1HInM99rAFYNwGqbYPxHZHxu2IwZYKj4bJ4oh6edVrm1UId8mmbHIZLBtG253qU6y3piag0XYe/joNnwzQ==} dev: false /@types/long@4.0.2: resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} dev: true - /@types/mdast@3.0.12: - resolution: {integrity: sha512-DT+iNIRNX884cx0/Q1ja7NyUPpZuv0KPyL5rGNxm1WC1OtHstl7n4Jb7nk+xacNShQMbczJjt8uFzznpp6kYBg==} + /@types/mdast@3.0.15: + resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 dev: false - /@types/mdast@4.0.2: - resolution: {integrity: sha512-tYR83EignvhYO9iU3kDg8V28M0jqyh9zzp5GV+EO+AYnyUl3P5ltkTeJuTiFZQFz670FSb3EwT/6LQdX+UdKfw==} + /@types/mdast@4.0.3: + resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 dev: false - /@types/mdx@2.0.5: - resolution: {integrity: sha512-76CqzuD6Q7LC+AtbPqrvD9AqsN0k8bsYo2bM2J8pmNldP1aIPAbzUQ7QbobyXL4eLr1wK5x8FZFe8eF/ubRuBg==} + /@types/mdx@2.0.10: + resolution: {integrity: sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==} - /@types/mime@3.0.1: - resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} + /@types/mime@1.3.5: + resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} + dev: true + + /@types/mime@3.0.4: + resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} dev: true /@types/minimatch@3.0.5: @@ -3410,12 +3483,12 @@ packages: resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} dev: true - /@types/minimist@1.2.2: - resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} + /@types/minimist@1.2.5: + resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} dev: true - /@types/ms@0.7.31: - resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} + /@types/ms@0.7.34: + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} dev: false /@types/node@10.17.60: @@ -3439,8 +3512,8 @@ packages: resolution: {integrity: sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==} dev: true - /@types/normalize-package-data@2.4.1: - resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} + /@types/normalize-package-data@2.4.4: + resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} dev: true /@types/parse-json@4.0.0: @@ -3453,12 +3526,12 @@ packages: '@types/node': 18.16.18 dev: true - /@types/pg@8.6.6: - resolution: {integrity: sha512-O2xNmXebtwVekJDD+02udOncjVcMZQuTEQEMpKJ0ZRf5E7/9JJX3izhKUcUifBkyKpljyUM6BTgy2trmviKlpw==} + /@types/pg@8.10.9: + resolution: {integrity: sha512-UksbANNE/f8w0wOMxVKKIrLCbEMV+oM1uKejmwXr39olg4xqcfBDbXxObJAt6XxHbDa4XTKOlUEcEltXDX+XLQ==} dependencies: - '@types/node': 20.9.0 + '@types/node': 18.16.18 pg-protocol: 1.6.0 - pg-types: 2.2.0 + pg-types: 4.0.1 dev: true /@types/prettier@2.7.1: @@ -3475,29 +3548,29 @@ packages: /@types/prop-types@15.7.5: resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - /@types/qs@6.9.7: - resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} + /@types/qs@6.9.10: + resolution: {integrity: sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==} dev: true - /@types/range-parser@1.2.4: - resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} + /@types/range-parser@1.2.7: + resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} dev: true - /@types/react-dom@18.0.9: - resolution: {integrity: sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==} + /@types/react-dom@18.2.15: + resolution: {integrity: sha512-HWMdW+7r7MR5+PZqJF6YFNSCtjz1T0dsvo/f1BV6HkV+6erD/nA7wd9NM00KVG83zf2nJ7uATPO9ttdIPvi3gg==} dependencies: - '@types/react': 18.0.25 + '@types/react': 18.2.37 dev: true - /@types/react@18.0.25: - resolution: {integrity: sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g==} + /@types/react@18.2.37: + resolution: {integrity: sha512-RGAYMi2bhRgEXT3f4B92WTohopH6bIXw05FuGlmJEnv/omEn190+QYEIYxIAuIBdKgboYYdVved2p1AxZVQnaw==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.2 csstype: 3.1.1 - /@types/retry@0.12.2: - resolution: {integrity: sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==} + /@types/retry@0.12.5: + resolution: {integrity: sha512-3xSjTp3v03X/lSQLkczaN9UIEwJMoMCA1+Nb5HfbJEQWogdeQIyVtTvxPXDQjZ5zws8rFQfVfRdz03ARihPJgw==} dev: true /@types/scheduler@0.16.2: @@ -3509,39 +3582,43 @@ packages: '@types/node': 18.16.18 dev: true - /@types/semver@6.2.3: - resolution: {integrity: sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A==} - dev: true + /@types/semver@7.5.5: + resolution: {integrity: sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==} - /@types/semver@7.5.0: - resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} + /@types/send@0.17.4: + resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} + dependencies: + '@types/mime': 1.3.5 + '@types/node': 18.16.18 + dev: true - /@types/serve-static@1.15.0: - resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==} + /@types/serve-static@1.15.5: + resolution: {integrity: sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==} dependencies: - '@types/mime': 3.0.1 - '@types/node': 20.9.0 + '@types/http-errors': 2.0.4 + '@types/mime': 3.0.4 + '@types/node': 18.16.18 dev: true - /@types/superagent@4.1.16: - resolution: {integrity: sha512-tLfnlJf6A5mB6ddqF159GqcDizfzbMUB1/DeT59/wBNqzRTNNKsaw79A/1TZ84X+f/EwWH8FeuSkjlCLyqS/zQ==} + /@types/superagent@4.1.21: + resolution: {integrity: sha512-yrbAccEEY9+BSa1wji3ry8R3/BdW9kyWnjkRKctrtw5ebn/k2a2CsMeaQ7dD4iLfomgHkomBVIVgOFRMV4XYHA==} dependencies: - '@types/cookiejar': 2.1.2 - '@types/node': 20.9.0 + '@types/cookiejar': 2.1.4 + '@types/node': 18.16.18 dev: true - /@types/supertest@2.0.12: - resolution: {integrity: sha512-X3HPWTwXRerBZS7Mo1k6vMVR1Z6zmJcDVn5O/31whe0tnjE4te6ZJSJGq1RiqHPjzPdMTfjCFogDJmwng9xHaQ==} + /@types/supertest@2.0.16: + resolution: {integrity: sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==} dependencies: - '@types/superagent': 4.1.16 + '@types/superagent': 4.1.21 dev: true - /@types/unist@2.0.7: - resolution: {integrity: sha512-cputDpIbFgLUaGQn6Vqg3/YsJwxUwHLO13v3i5ouxT4lat0khip9AEWxtERujXV9wxIB1EyF97BSJFt6vpdI8g==} + /@types/unist@2.0.10: + resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} dev: false - /@types/unist@3.0.0: - resolution: {integrity: sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==} + /@types/unist@3.0.2: + resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} dev: false /@types/ws@7.4.7: @@ -3550,12 +3627,8 @@ packages: '@types/node': 18.16.18 dev: true - /@types/yoga-layout@1.9.2: - resolution: {integrity: sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw==} - dev: false - - /@typescript-eslint/eslint-plugin@6.3.0(@typescript-eslint/parser@6.3.0)(eslint@8.43.0)(typescript@5.2.2): - resolution: {integrity: sha512-IZYjYZ0ifGSLZbwMqIip/nOamFiWJ9AH+T/GYNZBWkVcyNQOFGtSMoWV7RvY4poYCMZ/4lHzNl796WOSNxmk8A==} + /@typescript-eslint/eslint-plugin@6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-uoLj4g2OTL8rfUQVx2AFO1hp/zja1wABJq77P6IclQs6I/m9GLrm7jCdgzZkvWdDCQf1uEvoa8s8CupsgWQgVg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha @@ -3565,46 +3638,25 @@ packages: typescript: optional: true dependencies: - '@eslint-community/regexpp': 4.5.1 - '@typescript-eslint/parser': 6.3.0(eslint@8.43.0)(typescript@5.2.2) - '@typescript-eslint/scope-manager': 6.3.0 - '@typescript-eslint/type-utils': 6.3.0(eslint@8.43.0)(typescript@5.2.2) - '@typescript-eslint/utils': 6.3.0(eslint@8.43.0)(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.3.0 + '@eslint-community/regexpp': 4.10.0 + '@typescript-eslint/parser': 6.10.0(eslint@8.53.0)(typescript@5.2.2) + '@typescript-eslint/scope-manager': 6.10.0 + '@typescript-eslint/type-utils': 6.10.0(eslint@8.53.0)(typescript@5.2.2) + '@typescript-eslint/utils': 6.10.0(eslint@8.53.0)(typescript@5.2.2) + '@typescript-eslint/visitor-keys': 6.10.0 debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0 + eslint: 8.53.0 graphemer: 1.4.0 ignore: 5.2.4 natural-compare: 1.4.0 - natural-compare-lite: 1.4.0 semver: 7.5.4 - ts-api-utils: 1.0.1(typescript@5.2.2) + ts-api-utils: 1.0.3(typescript@5.2.2) typescript: 5.2.2 transitivePeerDependencies: - supports-color - /@typescript-eslint/parser@5.59.11(eslint@8.43.0)(typescript@4.9.5): - resolution: {integrity: sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/scope-manager': 5.59.11 - '@typescript-eslint/types': 5.59.11 - '@typescript-eslint/typescript-estree': 5.59.11(typescript@4.9.5) - debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0 - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/parser@6.3.0(eslint@8.43.0)(typescript@5.2.2): - resolution: {integrity: sha512-ibP+y2Gr6p0qsUkhs7InMdXrwldjxZw66wpcQq9/PzAroM45wdwyu81T+7RibNCh8oc0AgrsyCwJByncY0Ongg==} + /@typescript-eslint/parser@6.10.0(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-+sZwIj+s+io9ozSxIWbNB5873OSdfeBEH/FR0re14WLI6BaKuSOnnwCJ2foUiu8uXf4dRp1UqHP0vrZ1zXGrog==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -3613,33 +3665,25 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.3.0 - '@typescript-eslint/types': 6.3.0 - '@typescript-eslint/typescript-estree': 6.3.0(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.3.0 + '@typescript-eslint/scope-manager': 6.10.0 + '@typescript-eslint/types': 6.10.0 + '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.2.2) + '@typescript-eslint/visitor-keys': 6.10.0 debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0 + eslint: 8.53.0 typescript: 5.2.2 transitivePeerDependencies: - supports-color - /@typescript-eslint/scope-manager@5.59.11: - resolution: {integrity: sha512-dHFOsxoLFtrIcSj5h0QoBT/89hxQONwmn3FOQ0GOQcLOOXm+MIrS8zEAhs4tWl5MraxCY3ZJpaXQQdFMc2Tu+Q==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.59.11 - '@typescript-eslint/visitor-keys': 5.59.11 - dev: true - - /@typescript-eslint/scope-manager@6.3.0: - resolution: {integrity: sha512-WlNFgBEuGu74ahrXzgefiz/QlVb+qg8KDTpknKwR7hMH+lQygWyx0CQFoUmMn1zDkQjTBBIn75IxtWss77iBIQ==} + /@typescript-eslint/scope-manager@6.10.0: + resolution: {integrity: sha512-TN/plV7dzqqC2iPNf1KrxozDgZs53Gfgg5ZHyw8erd6jd5Ta/JIEcdCheXFt9b1NYb93a1wmIIVW/2gLkombDg==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.3.0 - '@typescript-eslint/visitor-keys': 6.3.0 + '@typescript-eslint/types': 6.10.0 + '@typescript-eslint/visitor-keys': 6.10.0 - /@typescript-eslint/type-utils@6.3.0(eslint@8.43.0)(typescript@5.2.2): - resolution: {integrity: sha512-7Oj+1ox1T2Yc8PKpBvOKWhoI/4rWFd1j7FA/rPE0lbBPXTKjdbtC+7Ev0SeBjEKkIhKWVeZSP+mR7y1Db1CdfQ==} + /@typescript-eslint/type-utils@6.10.0(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-wYpPs3hgTFblMYwbYWPT3eZtaDOjbLyIYuqpwuLBBqhLiuvJ+9sEp2gNRJEtR5N/c9G1uTtQQL5AhV0fEPJYcg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -3648,47 +3692,21 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.3.0(typescript@5.2.2) - '@typescript-eslint/utils': 6.3.0(eslint@8.43.0)(typescript@5.2.2) + '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.2.2) + '@typescript-eslint/utils': 6.10.0(eslint@8.53.0)(typescript@5.2.2) debug: 4.3.4(supports-color@8.1.1) - eslint: 8.43.0 - ts-api-utils: 1.0.1(typescript@5.2.2) + eslint: 8.53.0 + ts-api-utils: 1.0.3(typescript@5.2.2) typescript: 5.2.2 transitivePeerDependencies: - supports-color - /@typescript-eslint/types@5.59.11: - resolution: {integrity: sha512-epoN6R6tkvBYSc+cllrz+c2sOFWkbisJZWkOE+y3xHtvYaOE6Wk6B8e114McRJwFRjGvYdJwLXQH5c9osME/AA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - - /@typescript-eslint/types@6.3.0: - resolution: {integrity: sha512-K6TZOvfVyc7MO9j60MkRNWyFSf86IbOatTKGrpTQnzarDZPYPVy0oe3myTMq7VjhfsUAbNUW8I5s+2lZvtx1gg==} + /@typescript-eslint/types@6.10.0: + resolution: {integrity: sha512-36Fq1PWh9dusgo3vH7qmQAj5/AZqARky1Wi6WpINxB6SkQdY5vQoT2/7rW7uBIsPDcvvGCLi4r10p0OJ7ITAeg==} engines: {node: ^16.0.0 || >=18.0.0} - /@typescript-eslint/typescript-estree@5.59.11(typescript@4.9.5): - resolution: {integrity: sha512-YupOpot5hJO0maupJXixi6l5ETdrITxeo5eBOeuV7RSKgYdU3G5cxO49/9WRnJq9EMrB7AuTSLH/bqOsXi7wPA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 5.59.11 - '@typescript-eslint/visitor-keys': 5.59.11 - debug: 4.3.4(supports-color@8.1.1) - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.5.4 - tsutils: 3.21.0(typescript@4.9.5) - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/typescript-estree@6.3.0(typescript@5.2.2): - resolution: {integrity: sha512-Xh4NVDaC4eYKY4O3QGPuQNp5NxBAlEvNQYOqJquR2MePNxO11E5K3t5x4M4Mx53IZvtpW+mBxIT0s274fLUocg==} + /@typescript-eslint/typescript-estree@6.10.0(typescript@5.2.2): + resolution: {integrity: sha512-ek0Eyuy6P15LJVeghbWhSrBCj/vJpPXXR+EpaRZqou7achUWL8IdYnMSC5WHAeTWswYQuP2hAZgij/bC9fanBg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' @@ -3696,61 +3714,52 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.3.0 - '@typescript-eslint/visitor-keys': 6.3.0 + '@typescript-eslint/types': 6.10.0 + '@typescript-eslint/visitor-keys': 6.10.0 debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 semver: 7.5.4 - ts-api-utils: 1.0.1(typescript@5.2.2) + ts-api-utils: 1.0.3(typescript@5.2.2) typescript: 5.2.2 transitivePeerDependencies: - supports-color - /@typescript-eslint/utils@6.3.0(eslint@8.43.0)(typescript@5.2.2): - resolution: {integrity: sha512-hLLg3BZE07XHnpzglNBG8P/IXq/ZVXraEbgY7FM0Cnc1ehM8RMdn9mat3LubJ3KBeYXXPxV1nugWbQPjGeJk6Q==} + /@typescript-eslint/utils@6.10.0(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-v+pJ1/RcVyRc0o4wAGux9x42RHmAjIGzPRo538Z8M1tVx6HOnoQBCX/NoadHQlZeC+QO2yr4nNSFWOoraZCAyg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0) - '@types/json-schema': 7.0.12 - '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 6.3.0 - '@typescript-eslint/types': 6.3.0 - '@typescript-eslint/typescript-estree': 6.3.0(typescript@5.2.2) - eslint: 8.43.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.53.0) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.5 + '@typescript-eslint/scope-manager': 6.10.0 + '@typescript-eslint/types': 6.10.0 + '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.2.2) + eslint: 8.53.0 semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript - /@typescript-eslint/visitor-keys@5.59.11: - resolution: {integrity: sha512-KGYniTGG3AMTuKF9QBD7EIrvufkB6O6uX3knP73xbKLMpH+QRPcgnCxjWXSHjMRuOxFLovljqQgQpR0c7GvjoA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - '@typescript-eslint/types': 5.59.11 - eslint-visitor-keys: 3.4.1 - dev: true - - /@typescript-eslint/visitor-keys@6.3.0: - resolution: {integrity: sha512-kEhRRj7HnvaSjux1J9+7dBen15CdWmDnwrpyiHsFX6Qx2iW5LOBUgNefOFeh2PjWPlNwN8TOn6+4eBU3J/gupw==} + /@typescript-eslint/visitor-keys@6.10.0: + resolution: {integrity: sha512-xMGluxQIEtOM7bqFCo+rCMh5fqI+ZxV5RUUOa29iVPz1OgCZrtc7rFnz5cLUazlkPKYqX+75iuDq7m0HQ48nCg==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.3.0 - eslint-visitor-keys: 3.4.1 + '@typescript-eslint/types': 6.10.0 + eslint-visitor-keys: 3.4.3 /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - dev: false /@viem/anvil@0.0.6: resolution: {integrity: sha512-OjKR/+FVwzuygXYFqP8MBal1SXG8bT2gbZwqqB0XuLw81LNBBvmE/Repm6+5kkBh4IUj0PhYdrqOsnayS14Gtg==} dependencies: - execa: 7.1.1 + execa: 7.2.0 get-port: 6.1.2 http-proxy: 1.18.1 - ws: 8.13.0 + ws: 8.14.2 transitivePeerDependencies: - bufferutil - debug @@ -3795,30 +3804,8 @@ packages: pretty-format: 29.7.0 dev: true - /@wagmi/chains@1.0.0(typescript@5.1.3): + /@wagmi/chains@1.0.0(typescript@5.2.2): resolution: {integrity: sha512-eNbqRWyHbivcMNq5tbXJks4NaOzVLHnNQauHPeE/EDT9AlpqzcrMc+v2T1/2Iw8zN4zgqB86NCsxeJHJs7+xng==} - peerDependencies: - typescript: '>=5.0.4' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - typescript: 5.1.3 - dev: true - - /@wagmi/chains@1.2.0(typescript@5.1.3): - resolution: {integrity: sha512-dmDRipsE54JfyudOBkuhEexqQWcrZqxn/qiujG8SBzMh/az/AH5xlJSA+j1CPWTx9+QofSMF3B7A4gb6XRmSaQ==} - peerDependencies: - typescript: '>=5.0.4' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - typescript: 5.1.3 - dev: true - - /@wagmi/chains@1.2.0(typescript@5.2.2): - resolution: {integrity: sha512-dmDRipsE54JfyudOBkuhEexqQWcrZqxn/qiujG8SBzMh/az/AH5xlJSA+j1CPWTx9+QofSMF3B7A4gb6XRmSaQ==} peerDependencies: typescript: '>=5.0.4' peerDependenciesMeta: @@ -3826,7 +3813,7 @@ packages: optional: true dependencies: typescript: 5.2.2 - dev: false + dev: true /@whatwg-node/events@0.0.3: resolution: {integrity: sha512-IqnKIDWfXBJkvy/k6tzskWTc2NK3LcqHlb+KHGCrjOCH4jfQckRX0NAiIcC/vIqQkzLYw2r2CTSwAxcrtcD6lA==} @@ -3849,7 +3836,7 @@ packages: busboy: 1.6.0 fast-querystring: 1.1.2 fast-url-parser: 1.1.3 - tslib: 2.5.3 + tslib: 2.6.2 dev: true /JSONStream@1.3.2: @@ -3868,7 +3855,20 @@ packages: through: 2.3.8 dev: true - /abitype@0.6.7(typescript@5.1.3): + /abitype@0.10.2(typescript@5.2.2): + resolution: {integrity: sha512-1XndI+RKFWK4+TXCNv1683MRyX5NGmlHXCvqzjOqhSS3PQrxT2QYRZq1bMPPRNjn89B3eVaM2w7y3jVj/OIUzA==} + peerDependencies: + typescript: '>=5.0.4' + zod: ^3 >=3.22.0 + peerDependenciesMeta: + typescript: + optional: true + zod: + optional: true + dependencies: + typescript: 5.2.2 + + /abitype@0.6.7(typescript@5.2.2): resolution: {integrity: sha512-PFiyVoR09ZYqOG8/LJg9T1CTsYzfBRcyp5sNQYq7PRZ4oZ+c3yp22GFIeP99pTrMEQxuoA3pq4f0kEjWyVqOSQ==} peerDependencies: typescript: '>=4.9.4' @@ -3877,10 +3877,10 @@ packages: zod: optional: true dependencies: - typescript: 5.1.3 + typescript: 5.2.2 dev: true - /abitype@0.8.11(typescript@5.1.3): + /abitype@0.8.11(typescript@5.2.2): resolution: {integrity: sha512-bM4v2dKvX08sZ9IU38IN5BKmN+ZkOSd2oI4a9f0ejHYZQYV6cDr7j+d95ga0z2XHG36Y4jzoG5Z7qDqxp7fi/A==} peerDependencies: typescript: '>=5.0.4' @@ -3889,11 +3889,11 @@ packages: zod: optional: true dependencies: - typescript: 5.1.3 + typescript: 5.2.2 dev: true - /abitype@0.8.11(typescript@5.2.2): - resolution: {integrity: sha512-bM4v2dKvX08sZ9IU38IN5BKmN+ZkOSd2oI4a9f0ejHYZQYV6cDr7j+d95ga0z2XHG36Y4jzoG5Z7qDqxp7fi/A==} + /abitype@0.8.7(typescript@5.2.2): + resolution: {integrity: sha512-wQ7hV8Yg/yKmGyFpqrNZufCxbszDe5es4AZGYPBitocfSqXtjrTG9JMWFcc4N30ukl2ve48aBTwt7NJxVQdU3w==} peerDependencies: typescript: '>=5.0.4' zod: ^3 >=3.19.1 @@ -3902,19 +3902,20 @@ packages: optional: true dependencies: typescript: 5.2.2 - dev: false + dev: true - /abitype@0.8.7(typescript@5.1.3): - resolution: {integrity: sha512-wQ7hV8Yg/yKmGyFpqrNZufCxbszDe5es4AZGYPBitocfSqXtjrTG9JMWFcc4N30ukl2ve48aBTwt7NJxVQdU3w==} + /abitype@0.9.8(typescript@5.2.2): + resolution: {integrity: sha512-puLifILdm+8sjyss4S+fsUN09obiT1g2YW6CtcQF+QDzxR0euzgEB29MZujC6zMk2a6SVmtttq1fc6+YFA7WYQ==} peerDependencies: typescript: '>=5.0.4' zod: ^3 >=3.19.1 peerDependenciesMeta: + typescript: + optional: true zod: optional: true dependencies: - typescript: 5.1.3 - dev: true + typescript: 5.2.2 /abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} @@ -3930,31 +3931,23 @@ packages: negotiator: 0.6.3 dev: false - /acorn-jsx@5.3.2(acorn@8.10.0): + /acorn-jsx@5.3.2(acorn@8.11.2): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - acorn: 8.10.0 + acorn: 8.11.2 - /acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} + /acorn-walk@8.3.0: + resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==} engines: {node: '>=0.4.0'} dev: true - /acorn@8.10.0: - resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} + /acorn@8.11.2: + resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} engines: {node: '>=0.4.0'} hasBin: true - /aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} - dependencies: - clean-stack: 2.2.0 - indent-string: 4.0.0 - dev: true - /ajv-formats@2.1.1(ajv@8.12.0): resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: @@ -3998,6 +3991,21 @@ packages: engines: {node: '>=8'} dependencies: type-fest: 0.21.3 + dev: true + + /ansi-escapes@5.0.0: + resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} + engines: {node: '>=12'} + dependencies: + type-fest: 1.4.0 + dev: true + + /ansi-escapes@6.2.0: + resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} + engines: {node: '>=14.16'} + dependencies: + type-fest: 3.13.1 + dev: false /ansi-regex@4.1.1: resolution: {integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==} @@ -4012,8 +4020,8 @@ packages: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} - /ansi-sequence-parser@1.1.0: - resolution: {integrity: sha512-lEm8mt52to2fT8GhciPCGeCXACSz2UwIN4X2e2LJSnZ5uAbn2/dsYdOmUXq0AtWS5cpAupysIneExOgH0Vd2TQ==} + /ansi-sequence-parser@1.1.1: + resolution: {integrity: sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==} dev: false /ansi-styles@3.2.1: @@ -4096,18 +4104,16 @@ packages: /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - /aria-query@4.2.2: - resolution: {integrity: sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==} - engines: {node: '>=6.0'} + /aria-query@5.3.0: + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} dependencies: - '@babel/runtime': 7.22.5 - '@babel/runtime-corejs3': 7.20.6 + dequal: 2.0.3 dev: true /array-buffer-byte-length@1.0.0: resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 is-array-buffer: 3.0.2 dev: true @@ -4115,14 +4121,14 @@ packages: resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} dev: false - /array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} + /array-includes@3.1.7: + resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 is-string: 1.0.7 dev: true @@ -4130,34 +4136,58 @@ packages: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - /array.prototype.flat@1.3.1: - resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} + /array.prototype.findlastindex@1.2.3: + resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 + get-intrinsic: 1.2.2 + dev: true + + /array.prototype.flat@1.3.2: + resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 - es-shim-unscopables: 1.0.0 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 dev: true - /array.prototype.flatmap@1.3.1: - resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} + /array.prototype.flatmap@1.3.2: + resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 - es-shim-unscopables: 1.0.0 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 + dev: true + + /array.prototype.tosorted@1.1.2: + resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==} + dependencies: + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-shim-unscopables: 1.0.2 + get-intrinsic: 1.2.2 dev: true - /array.prototype.tosorted@1.1.1: - resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} + /arraybuffer.prototype.slice@1.0.2: + resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 - es-shim-unscopables: 1.0.0 - get-intrinsic: 1.2.1 + array-buffer-byte-length: 1.0.0 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 + is-array-buffer: 3.0.2 + is-shared-array-buffer: 1.0.2 dev: true /arrify@1.0.1: @@ -4181,7 +4211,7 @@ packages: dependencies: pvtsutils: 1.3.2 pvutils: 1.1.3 - tslib: 2.5.3 + tslib: 2.6.2 dev: true /assemblyscript@0.19.10: @@ -4210,14 +4240,10 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /ast-types-flow@0.0.7: - resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} + /ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} dev: true - /astral-regex@2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} - /astring@1.8.6: resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==} hasBin: true @@ -4226,13 +4252,19 @@ packages: /async-mutex@0.4.0: resolution: {integrity: sha512-eJFZ1YhRR8UN8eBLoNzcDPcy/jqjsg6I1AP+KvWQX80BqOSW1oJPJXDylPUEeMr2ZQvHgnQ//Lp6f3RQ1zI7HA==} dependencies: - tslib: 2.5.3 + tslib: 2.6.2 dev: false /async@3.2.4: resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} dev: true + /asynciterator.prototype@1.0.0: + resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} + dependencies: + has-symbols: 1.0.3 + dev: true + /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: true @@ -4254,9 +4286,9 @@ packages: when-exit: 2.1.1 dev: false - /auto-bind@4.0.0: - resolution: {integrity: sha512-Hdw8qdNiqdJ8LqT0iK0sVzkFbzg6fhnQqqfWhBDxcHZvU75+B+ayzTy8x+k5Ix0Y92XOhOUlx74ps+bA6BeYMQ==} - engines: {node: '>=8'} + /auto-bind@5.0.1: + resolution: {integrity: sha512-ooviqdwwgfIfNmDwo94wlshcdzfO64XV0Cg6oDsDYBJfITDz1EngD2z7DkbvCWn+XIMsIqW27sEVF6qcpJrRcg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /available-typed-arrays@1.0.5: @@ -4272,55 +4304,57 @@ packages: resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} dev: true - /axe-core@4.5.2: - resolution: {integrity: sha512-u2MVsXfew5HBvjsczCv+xlwdNnB1oQR9HlAcsejZttNjKKSkeDNVwB1vMThIUIFI9GoT57Vtk8iQLwqOfAkboA==} + /axe-core@4.7.0: + resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} engines: {node: '>=4'} dev: true /axios@0.21.4(debug@4.3.4): resolution: {integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==} dependencies: - follow-redirects: 1.15.2(debug@4.3.4) + follow-redirects: 1.15.3(debug@4.3.4) transitivePeerDependencies: - debug dev: true - /axobject-query@2.2.0: - resolution: {integrity: sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==} + /axobject-query@3.2.1: + resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} + dependencies: + dequal: 2.0.3 dev: true - /babel-plugin-polyfill-corejs2@0.3.3(@babel/core@7.21.0): - resolution: {integrity: sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==} + /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.3): + resolution: {integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.3.3(@babel/core@7.21.0) - semver: 6.3.0 + '@babel/compat-data': 7.23.3 + '@babel/core': 7.23.3 + '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.3) + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-corejs3@0.6.0(@babel/core@7.21.0): - resolution: {integrity: sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==} + /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.3): + resolution: {integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.3.3(@babel/core@7.21.0) - core-js-compat: 3.29.0 + '@babel/core': 7.23.3 + '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.3) + core-js-compat: 3.33.2 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-regenerator@0.4.1(@babel/core@7.21.0): - resolution: {integrity: sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==} + /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.3): + resolution: {integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==} peerDependencies: - '@babel/core': ^7.0.0-0 + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.3.3(@babel/core@7.21.0) + '@babel/core': 7.23.3 + '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.3) transitivePeerDependencies: - supports-color dev: true @@ -4354,14 +4388,19 @@ packages: is-windows: 1.0.2 dev: true - /better-sqlite3@8.7.0: - resolution: {integrity: sha512-99jZU4le+f3G6aIl6PmmV0cxUIWqKieHxsiF7G34CVFiE+/UabpYqkU0NJIkY/96mQKikHeBjtR27vFfs5JpEw==} + /better-sqlite3@9.1.1: + resolution: {integrity: sha512-FhW7bS7cXwkB2SFnPJrSGPmQerVSCzwBgmQ1cIRcYKxLsyiKjljzCbyEqqhYXo5TTBqt5BISiBj2YE2Sy2ynaA==} requiresBuild: true dependencies: bindings: 1.5.0 prebuild-install: 7.1.1 dev: false + /big-integer@1.6.51: + resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} + engines: {node: '>=0.6'} + dev: true + /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} @@ -4435,19 +4474,19 @@ packages: resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} dev: true - /body-parser@1.20.0: - resolution: {integrity: sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==} + /body-parser@1.20.1: + resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} dependencies: bytes: 3.1.2 - content-type: 1.0.4 + content-type: 1.0.5 debug: 2.6.9 depd: 2.0.0 destroy: 1.2.0 http-errors: 2.0.0 iconv-lite: 0.4.24 on-finished: 2.4.1 - qs: 6.10.3 + qs: 6.11.0 raw-body: 2.5.1 type-is: 1.6.18 unpipe: 1.0.0 @@ -4463,6 +4502,13 @@ packages: resolution: {integrity: sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==} dev: false + /bplist-parser@0.2.0: + resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} + engines: {node: '>= 5.10.0'} + dependencies: + big-integer: 1.6.51 + dev: true + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -4505,15 +4551,15 @@ packages: safe-buffer: 5.2.1 dev: true - /browserslist@4.21.5: - resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} + /browserslist@4.22.1: + resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001460 - electron-to-chromium: 1.4.320 - node-releases: 2.0.10 - update-browserslist-db: 1.0.10(browserslist@4.21.5) + caniuse-lite: 1.0.30001561 + electron-to-chromium: 1.4.580 + node-releases: 2.0.13 + update-browserslist-db: 1.0.13(browserslist@4.22.1) /bs58@4.0.1: resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} @@ -4570,6 +4616,13 @@ packages: base64-js: 1.5.1 ieee754: 1.2.1 + /bundle-name@3.0.0: + resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==} + engines: {node: '>=12'} + dependencies: + run-applescript: 5.0.0 + dev: true + /bundle-require@4.0.1(esbuild@0.18.20): resolution: {integrity: sha512-9NQkRHlNdNpDBGmLpngF3EFDcwodhMUuLz9PaWYciVcQF9SE4LFjM2DB/xV1Li5JiuDMv7ZUWuC3rGbqR0MAXQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -4595,11 +4648,12 @@ packages: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} - /call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} + /call-bind@1.0.5: + resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.2.1 + function-bind: 1.1.2 + get-intrinsic: 1.2.2 + set-function-length: 1.1.1 /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} @@ -4624,8 +4678,8 @@ packages: engines: {node: '>=10'} dev: true - /caniuse-lite@1.0.30001460: - resolution: {integrity: sha512-Bud7abqjvEjipUkpLs4D7gR0l8hBYBHoa+tGtKJHvT2AYzLp1z7EmVkUT4ERpVUfca8S2HGIVs883D8pUH1ZzQ==} + /caniuse-lite@1.0.30001561: + resolution: {integrity: sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==} /cardinal@2.1.1: resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} @@ -4693,10 +4747,9 @@ packages: ansi-styles: 4.3.0 supports-color: 7.2.0 - /chalk@5.2.0: - resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==} + /chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - dev: true /character-entities-html4@2.1.0: resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} @@ -4747,14 +4800,9 @@ packages: engines: {node: '>=10'} dev: true - /ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - dev: false - - /ci-info@3.8.0: - resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} + /ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} - dev: true /cipher-base@1.0.4: resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} @@ -4763,11 +4811,6 @@ packages: safe-buffer: 5.2.1 dev: true - /clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} - dev: true - /clean-stack@3.0.1: resolution: {integrity: sha512-lR9wNiMRcVQjSB3a7xXGLuz4cr4wJuuXlaAEbRutGowQTmlp7R72/DOgN21e8jdwblMWl9UOJMJXarX94pzKdg==} engines: {node: '>=10'} @@ -4775,9 +4818,9 @@ packages: escape-string-regexp: 4.0.0 dev: true - /cli-boxes@2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} + /cli-boxes@3.0.0: + resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} + engines: {node: '>=10'} dev: false /cli-cursor@3.1.0: @@ -4785,6 +4828,13 @@ packages: engines: {node: '>=8'} dependencies: restore-cursor: 3.1.0 + dev: true + + /cli-cursor@4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + restore-cursor: 4.0.0 /cli-progress@3.12.0: resolution: {integrity: sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==} @@ -4808,20 +4858,12 @@ packages: colors: 1.4.0 dev: true - /cli-truncate@2.1.0: - resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} - engines: {node: '>=8'} - dependencies: - slice-ansi: 3.0.0 - string-width: 4.2.3 - /cli-truncate@3.1.0: resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: slice-ansi: 5.0.0 string-width: 5.1.2 - dev: true /client-only@0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} @@ -4862,11 +4904,11 @@ packages: engines: {node: '>=6'} dev: false - /code-excerpt@3.0.0: - resolution: {integrity: sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==} - engines: {node: '>=10'} + /code-excerpt@4.0.0: + resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - convert-to-spaces: 1.0.2 + convert-to-spaces: 2.0.1 dev: false /color-convert@1.9.3: @@ -4906,9 +4948,9 @@ packages: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} dev: false - /commander@10.0.1: - resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} - engines: {node: '>=14'} + /commander@11.1.0: + resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} + engines: {node: '>=16'} dev: true /commander@2.20.3: @@ -4938,8 +4980,8 @@ packages: resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} dev: true - /compute-scroll-into-view@3.0.3: - resolution: {integrity: sha512-nadqwNxghAGTamwIqQSG433W6OADZx2vCo3UXHNrzTRHK/htu+7+L0zhjEoaeaQVNAi3YgqWDv8+tzf0hRfR+A==} + /compute-scroll-into-view@3.1.0: + resolution: {integrity: sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==} dev: false /concat-map@0.0.1: @@ -4955,8 +4997,8 @@ packages: typedarray: 0.0.6 dev: true - /concurrently@8.2.0: - resolution: {integrity: sha512-nnLMxO2LU492mTUj9qX/az/lESonSZu81UznYDoXtz1IQf996ixVqPAgHXwvHiHCAef/7S8HIK+fTFK7Ifk8YA==} + /concurrently@8.2.2: + resolution: {integrity: sha512-1dP4gpXFhei8IOtlXRE/T/4H88ElHgTiUzh71YUmtjTEHMSRS2Z/fgOxHSxxusGHogsRfxNq1vyAwxSC+EVyDg==} engines: {node: ^14.13.0 || >=16.0.0} hasBin: true dependencies: @@ -4993,19 +5035,17 @@ packages: safe-buffer: 5.2.1 dev: false - /content-type@1.0.4: - resolution: {integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==} + /content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} dev: false - /convert-source-map@1.8.0: - resolution: {integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==} - dependencies: - safe-buffer: 5.1.2 + /convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - /convert-to-spaces@1.0.2: - resolution: {integrity: sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==} - engines: {node: '>= 4'} + /convert-to-spaces@2.0.1: + resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /cookie-signature@1.0.6: @@ -5017,19 +5057,14 @@ packages: engines: {node: '>= 0.6'} dev: false - /cookiejar@2.1.3: - resolution: {integrity: sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==} + /cookiejar@2.1.4: + resolution: {integrity: sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==} dev: true - /core-js-compat@3.29.0: - resolution: {integrity: sha512-ScMn3uZNAFhK2DGoEfErguoiAHhV2Ju+oJo/jK08p7B3f3UhocUrCCkTvnZaiS+edl5nlIoiBXKcwMc6elv4KQ==} + /core-js-compat@3.33.2: + resolution: {integrity: sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw==} dependencies: - browserslist: 4.21.5 - dev: true - - /core-js-pure@3.26.1: - resolution: {integrity: sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==} - requiresBuild: true + browserslist: 4.22.1 dev: true /core-util-is@1.0.2: @@ -5071,15 +5106,20 @@ packages: yaml: 1.10.2 dev: true - /cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} + /cosmiconfig@8.3.6(typescript@5.2.2): + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true dependencies: - '@types/parse-json': 4.0.0 import-fresh: 3.3.0 + js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 - yaml: 1.10.2 + typescript: 5.2.2 dev: true /create-hash@1.2.0: @@ -5133,22 +5173,30 @@ packages: shebang-command: 2.0.0 which: 2.0.2 - /css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} + /css-select@5.1.0: + resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} dependencies: boolbase: 1.0.0 css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 + domhandler: 5.0.3 + domutils: 3.1.0 nth-check: 2.1.1 dev: true - /css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} + /css-tree@2.2.1: + resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 + mdn-data: 2.0.28 + source-map-js: 1.0.2 + dev: true + + /css-tree@2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.0.2 dev: true /css-what@6.1.0: @@ -5156,11 +5204,11 @@ packages: engines: {node: '>= 6'} dev: true - /csso@4.2.0: - resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} - engines: {node: '>=8.0.0'} + /csso@5.0.5: + resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} dependencies: - css-tree: 1.1.3 + css-tree: 2.2.1 dev: true /csstype@3.1.1: @@ -5188,32 +5236,38 @@ packages: stream-transform: 2.1.3 dev: true - /cytoscape-cose-bilkent@4.1.0(cytoscape@3.25.0): + /cytoscape-cose-bilkent@4.1.0(cytoscape@3.27.0): resolution: {integrity: sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==} peerDependencies: cytoscape: ^3.2.0 dependencies: cose-base: 1.0.3 - cytoscape: 3.25.0 + cytoscape: 3.27.0 dev: false - /cytoscape-fcose@2.2.0(cytoscape@3.25.0): + /cytoscape-fcose@2.2.0(cytoscape@3.27.0): resolution: {integrity: sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==} peerDependencies: cytoscape: ^3.2.0 dependencies: cose-base: 2.2.0 - cytoscape: 3.25.0 + cytoscape: 3.27.0 dev: false - /cytoscape@3.25.0: - resolution: {integrity: sha512-7MW3Iz57mCUo6JQCho6CmPBCbTlJr7LzyEtIkutG255HLVd4XuBg2I9BkTZLI/e4HoaOB/BiAzXuQybQ95+r9Q==} + /cytoscape@3.27.0: + resolution: {integrity: sha512-pPZJilfX9BxESwujODz5pydeGi+FBrXq1rcaB1mfhFXXFJ9GjE6CNndAk+8jPzoXGD+16LtSS4xlYEIUiW4Abg==} engines: {node: '>=0.10'} dependencies: heap: 0.2.7 lodash: 4.17.21 dev: false + /d3-array@2.12.1: + resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==} + dependencies: + internmap: 1.0.1 + dev: false + /d3-array@3.2.4: resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==} engines: {node: '>=12'} @@ -5331,6 +5385,10 @@ packages: d3-color: 3.1.0 dev: false + /d3-path@1.0.9: + resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==} + dev: false + /d3-path@3.1.0: resolution: {integrity: sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==} engines: {node: '>=12'} @@ -5351,6 +5409,13 @@ packages: engines: {node: '>=12'} dev: false + /d3-sankey@0.12.3: + resolution: {integrity: sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==} + dependencies: + d3-array: 2.12.1 + d3-shape: 1.3.7 + dev: false + /d3-scale-chromatic@3.0.0: resolution: {integrity: sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==} engines: {node: '>=12'} @@ -5375,6 +5440,12 @@ packages: engines: {node: '>=12'} dev: false + /d3-shape@1.3.7: + resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==} + dependencies: + d3-path: 1.0.9 + dev: false + /d3-shape@3.2.0: resolution: {integrity: sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==} engines: {node: '>=12'} @@ -5480,16 +5551,16 @@ packages: assert-plus: 1.0.0 dev: true - /data-uri-to-buffer@3.0.1: - resolution: {integrity: sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==} - engines: {node: '>= 6'} - dev: false - /data-uri-to-buffer@4.0.1: resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} engines: {node: '>= 12'} dev: true + /data-uri-to-buffer@6.0.1: + resolution: {integrity: sha512-MZd3VlchQkp8rdend6vrx7MmVDJzSNTBvghvKjirLkD+WTChA3KUf0jkE68Q4UyctNqI11zZO9/x2Yx+ub5Cvg==} + engines: {node: '>= 14'} + dev: false + /dataloader@1.4.0: resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} dev: true @@ -5498,11 +5569,11 @@ packages: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 dev: true - /dayjs@1.11.9: - resolution: {integrity: sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==} + /dayjs@1.11.10: + resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} dev: false /debounce-fn@5.1.2: @@ -5587,9 +5658,28 @@ packages: /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - /deepmerge@4.2.2: - resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} + /deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} + dev: true + + /default-browser-id@3.0.0: + resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} + engines: {node: '>=12'} + dependencies: + bplist-parser: 0.2.0 + untildify: 4.0.0 + dev: true + + /default-browser@4.0.0: + resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==} + engines: {node: '>=14.16'} + dependencies: + bundle-name: 3.0.0 + default-browser-id: 3.0.0 + execa: 7.2.0 + titleize: 3.0.0 + dev: true /defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} @@ -5597,17 +5687,27 @@ packages: clone: 1.0.4 dev: true - /define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} + /define-data-property@1.1.1: + resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.2 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 + + /define-lazy-prop@3.0.0: + resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} + engines: {node: '>=12'} dev: true - /define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} + /define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} dependencies: - has-property-descriptors: 1.0.0 + define-data-property: 1.1.1 + has-property-descriptors: 1.0.1 object-keys: 1.1.1 + dev: true /delaunator@5.0.0: resolution: {integrity: sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw==} @@ -5632,7 +5732,6 @@ packages: /dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} - dev: false /destroy@1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} @@ -5656,6 +5755,13 @@ packages: execa: 5.1.1 dev: false + /detect-package-manager@3.0.1: + resolution: {integrity: sha512-qoHDH6+lMcpJPAScE7+5CYj91W0mxZNXTwZPrCqi1KMk+x+AoQScQ2V1QyqTln1rHU5Haq5fikvOGHv+leKD8A==} + engines: {node: '>=12'} + dependencies: + execa: 5.1.1 + dev: false + /devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} dependencies: @@ -5744,35 +5850,42 @@ packages: dependencies: esutils: 2.0.3 - /dom-serializer@1.4.1: - resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} + /dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} dependencies: domelementtype: 2.3.0 - domhandler: 4.3.1 - entities: 2.2.0 + domhandler: 5.0.3 + entities: 4.5.0 dev: true /domelementtype@2.3.0: resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} dev: true - /domhandler@4.3.1: - resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} + /domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} engines: {node: '>= 4'} dependencies: domelementtype: 2.3.0 dev: true - /dompurify@3.0.3: - resolution: {integrity: sha512-axQ9zieHLnAnHh0sfAamKYiqXMJAVwu+LM/alQ7WDagoWessyWvMSFyW65CqF3owufNu8HBcE4cM2Vflu7YWcQ==} + /dompurify@3.0.6: + resolution: {integrity: sha512-ilkD8YEnnGh1zJ240uJsW7AzE+2qpbOUYjacomn3AvJ6J4JhKGSZ2nh4wUIXPZrEPppaCLx5jFe8T89Rk8tQ7w==} dev: false - /domutils@2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} + /domutils@3.1.0: + resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} dependencies: - dom-serializer: 1.4.1 + dom-serializer: 2.0.0 domelementtype: 2.3.0 - domhandler: 4.3.1 + domhandler: 5.0.3 + dev: true + + /dot-case@3.0.4: + resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} + dependencies: + no-case: 3.0.4 + tslib: 2.6.2 dev: true /dot-prop@8.0.2: @@ -5782,8 +5895,8 @@ packages: type-fest: 3.13.1 dev: false - /dotenv@16.0.1: - resolution: {integrity: sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ==} + /dotenv@16.3.1: + resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} engines: {node: '>=12'} /dotenv@8.6.0: @@ -5791,8 +5904,8 @@ packages: engines: {node: '>=10'} dev: true - /dset@3.1.2: - resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} + /dset@3.1.3: + resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==} engines: {node: '>=4'} dev: false @@ -5833,8 +5946,8 @@ packages: encoding: 0.1.13 dev: true - /electron-to-chromium@1.4.320: - resolution: {integrity: sha512-h70iRscrNluMZPVICXYl5SSB+rBKo22XfuIS1ER0OQxQZpKTnFpuS6coj7wY9M/3trv7OR88rRMOlKmRvDty7Q==} + /electron-to-chromium@1.4.580: + resolution: {integrity: sha512-T5q3pjQon853xxxHUq3ZP68ZpvJHuSMY2+BZaW3QzjS4HvNuvsMmZ/+lU+nCrftre1jFZ+OSlExynXWBihnXzw==} /elkjs@0.8.2: resolution: {integrity: sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ==} @@ -5852,9 +5965,9 @@ packages: minimalistic-crypto-utils: 1.0.1 dev: true - /emittery@0.13.1: - resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} - engines: {node: '>=12'} + /emittery@1.0.1: + resolution: {integrity: sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==} + engines: {node: '>=14.16'} dev: false /emoji-regex@8.0.0: @@ -5879,8 +5992,8 @@ packages: dependencies: once: 1.4.0 - /enhanced-resolve@5.12.0: - resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} + /enhanced-resolve@5.15.0: + resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==} engines: {node: '>=10.13.0'} dependencies: graceful-fs: 4.2.11 @@ -5894,8 +6007,12 @@ packages: ansi-colors: 4.1.3 dev: true - /entities@2.2.0: - resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} + /enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 dev: true /entities@4.5.0: @@ -5917,59 +6034,83 @@ packages: is-arrayish: 0.2.1 dev: true - /es-abstract@1.21.2: - resolution: {integrity: sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==} + /es-abstract@1.22.3: + resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} engines: {node: '>= 0.4'} dependencies: array-buffer-byte-length: 1.0.0 + arraybuffer.prototype.slice: 1.0.2 available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - es-set-tostringtag: 2.0.1 + call-bind: 1.0.5 + es-set-tostringtag: 2.0.2 es-to-primitive: 1.2.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.2.1 + function.prototype.name: 1.1.6 + get-intrinsic: 1.2.2 get-symbol-description: 1.0.0 globalthis: 1.0.3 gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 + has-property-descriptors: 1.0.1 has-proto: 1.0.1 has-symbols: 1.0.3 - internal-slot: 1.0.5 + hasown: 2.0.0 + internal-slot: 1.0.6 is-array-buffer: 3.0.2 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.10 + is-typed-array: 1.1.12 is-weakref: 1.0.2 - object-inspect: 1.12.3 + object-inspect: 1.13.1 object-keys: 1.1.1 object.assign: 4.1.4 - regexp.prototype.flags: 1.5.0 + regexp.prototype.flags: 1.5.1 + safe-array-concat: 1.0.1 safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.7 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 + 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-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.9 + which-typed-array: 1.1.13 + dev: true + + /es-iterator-helpers@1.0.15: + resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} + dependencies: + asynciterator.prototype: 1.0.0 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + es-set-tostringtag: 2.0.2 + function-bind: 1.1.2 + get-intrinsic: 1.2.2 + globalthis: 1.0.3 + has-property-descriptors: 1.0.1 + has-proto: 1.0.1 + has-symbols: 1.0.3 + internal-slot: 1.0.6 + iterator.prototype: 1.1.2 + safe-array-concat: 1.0.1 dev: true - /es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} + /es-set-tostringtag@2.0.2: + resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 + get-intrinsic: 1.2.2 has-tostringtag: 1.0.0 + hasown: 2.0.0 dev: true - /es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} + /es-shim-unscopables@1.0.2: + resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} dependencies: - has: 1.0.3 + hasown: 2.0.0 dev: true /es-to-primitive@1.2.1: @@ -6046,8 +6187,8 @@ packages: engines: {node: '>=12'} dev: false - /eslint-config-next@13.0.5(eslint@8.43.0)(typescript@4.9.5): - resolution: {integrity: sha512-lge94W7ME6kNCO96eCykq5GbKbllzmcDNDhh1/llMCRgNPl0+GIQ8dOoM0I7uRQVW56VmTXFybJFXgow11a5pg==} + /eslint-config-next@14.0.2(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-CasWThlsyIcg/a+clU6KVOMTieuDhTztsrqvniP6AsRki9v7FnojTa7vKQOYM8QSOsQdZ/aElLD1Y2Oc8/PsIg==} peerDependencies: eslint: ^7.23.0 || ^8.0.0 typescript: '>=3.3.1' @@ -6055,62 +6196,65 @@ packages: typescript: optional: true dependencies: - '@next/eslint-plugin-next': 13.0.5 - '@rushstack/eslint-patch': 1.2.0 - '@typescript-eslint/parser': 5.59.11(eslint@8.43.0)(typescript@4.9.5) - eslint: 8.43.0 - eslint-import-resolver-node: 0.3.7 - eslint-import-resolver-typescript: 3.5.2(eslint-plugin-import@2.27.5)(eslint@8.43.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@6.3.0)(eslint@8.43.0) - eslint-plugin-jsx-a11y: 6.6.1(eslint@8.43.0) - eslint-plugin-react: 7.31.11(eslint@8.43.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.43.0) - typescript: 4.9.5 + '@next/eslint-plugin-next': 14.0.2 + '@rushstack/eslint-patch': 1.5.1 + '@typescript-eslint/parser': 6.10.0(eslint@8.53.0)(typescript@5.2.2) + eslint: 8.53.0 + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.0)(eslint@8.53.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0) + eslint-plugin-jsx-a11y: 6.8.0(eslint@8.53.0) + eslint-plugin-react: 7.33.2(eslint@8.53.0) + eslint-plugin-react-hooks: 4.6.0(eslint@8.53.0) + typescript: 5.2.2 transitivePeerDependencies: - eslint-import-resolver-webpack - supports-color dev: true - /eslint-config-prettier@8.8.0(eslint@8.43.0): - resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==} + /eslint-config-prettier@9.0.0(eslint@8.53.0): + resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.43.0 + eslint: 8.53.0 dev: true - /eslint-import-resolver-node@0.3.7: - resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} + /eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: debug: 3.2.7 - is-core-module: 2.12.1 - resolve: 1.22.2 + is-core-module: 2.13.1 + resolve: 1.22.8 transitivePeerDependencies: - supports-color dev: true - /eslint-import-resolver-typescript@3.5.2(eslint-plugin-import@2.27.5)(eslint@8.43.0): - resolution: {integrity: sha512-zX4ebnnyXiykjhcBvKIf5TNvt8K7yX6bllTRZ14MiurKPjDpCAZujlszTdB8pcNXhZcOf+god4s9SjQa5GnytQ==} + /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.0)(eslint@8.53.0): + resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '*' eslint-plugin-import: '*' dependencies: debug: 4.3.4(supports-color@8.1.1) - enhanced-resolve: 5.12.0 - eslint: 8.43.0 - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@6.3.0)(eslint@8.43.0) - get-tsconfig: 4.2.0 - globby: 13.1.2 - is-core-module: 2.12.1 + enhanced-resolve: 5.15.0 + eslint: 8.53.0 + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0) + fast-glob: 3.3.2 + get-tsconfig: 4.7.2 + is-core-module: 2.13.1 is-glob: 4.0.3 - synckit: 0.8.4 transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-node + - eslint-import-resolver-webpack - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.3.0)(eslint-import-resolver-node@0.3.7)(eslint@8.43.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -6131,16 +6275,17 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.3.0(eslint@8.43.0)(typescript@5.2.2) + '@typescript-eslint/parser': 6.10.0(eslint@8.53.0)(typescript@5.2.2) debug: 3.2.7 - eslint: 8.43.0 - eslint-import-resolver-node: 0.3.7 + eslint: 8.53.0 + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.0)(eslint@8.53.0) transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.3.0)(eslint@8.43.0): - resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} + /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0): + resolution: {integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -6149,22 +6294,24 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.3.0(eslint@8.43.0)(typescript@5.2.2) - array-includes: 3.1.6 - array.prototype.flat: 1.3.1 - array.prototype.flatmap: 1.3.1 + '@typescript-eslint/parser': 6.10.0(eslint@8.53.0)(typescript@5.2.2) + array-includes: 3.1.7 + array.prototype.findlastindex: 1.2.3 + array.prototype.flat: 1.3.2 + array.prototype.flatmap: 1.3.2 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.43.0 - eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.3.0)(eslint-import-resolver-node@0.3.7)(eslint@8.43.0) - has: 1.0.3 - is-core-module: 2.12.1 + eslint: 8.53.0 + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0) + hasown: 2.0.0 + is-core-module: 2.13.1 is-glob: 4.0.3 minimatch: 3.1.2 - object.values: 1.1.6 - resolve: 1.22.2 - semver: 6.3.0 + object.fromentries: 2.0.7 + object.groupby: 1.0.1 + object.values: 1.1.7 + semver: 6.3.1 tsconfig-paths: 3.14.2 transitivePeerDependencies: - eslint-import-resolver-typescript @@ -6172,128 +6319,136 @@ packages: - supports-color dev: true - /eslint-plugin-jsx-a11y@6.6.1(eslint@8.43.0): - resolution: {integrity: sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==} + /eslint-plugin-jsx-a11y@6.8.0(eslint@8.53.0): + resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} engines: {node: '>=4.0'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - '@babel/runtime': 7.22.5 - aria-query: 4.2.2 - array-includes: 3.1.6 - ast-types-flow: 0.0.7 - axe-core: 4.5.2 - axobject-query: 2.2.0 + '@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 - eslint: 8.43.0 - has: 1.0.3 - jsx-ast-utils: 3.3.3 - language-tags: 1.0.6 + es-iterator-helpers: 1.0.15 + eslint: 8.53.0 + hasown: 2.0.0 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 minimatch: 3.1.2 - semver: 6.3.0 + object.entries: 1.1.7 + object.fromentries: 2.0.7 dev: true - /eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.8.0)(eslint@8.43.0)(prettier@2.8.8): - resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} - engines: {node: '>=12.0.0'} + /eslint-plugin-prettier@5.0.1(eslint-config-prettier@9.0.0)(eslint@8.53.0)(prettier@3.0.3): + resolution: {integrity: sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==} + engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - eslint: '>=7.28.0' + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' eslint-config-prettier: '*' - prettier: '>=2.0.0' + prettier: '>=3.0.0' peerDependenciesMeta: + '@types/eslint': + optional: true eslint-config-prettier: optional: true dependencies: - eslint: 8.43.0 - eslint-config-prettier: 8.8.0(eslint@8.43.0) - prettier: 2.8.8 + eslint: 8.53.0 + eslint-config-prettier: 9.0.0(eslint@8.53.0) + prettier: 3.0.3 prettier-linter-helpers: 1.0.0 + synckit: 0.8.5 dev: true - /eslint-plugin-react-hooks@4.6.0(eslint@8.43.0): + /eslint-plugin-react-hooks@4.6.0(eslint@8.53.0): resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: - eslint: 8.43.0 + eslint: 8.53.0 dev: true - /eslint-plugin-react@7.31.11(eslint@8.43.0): - resolution: {integrity: sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==} + /eslint-plugin-react@7.33.2(eslint@8.53.0): + resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 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.flatmap: 1.3.2 + array.prototype.tosorted: 1.1.2 doctrine: 2.1.0 - eslint: 8.43.0 + es-iterator-helpers: 1.0.15 + eslint: 8.53.0 estraverse: 5.3.0 - jsx-ast-utils: 3.3.3 + jsx-ast-utils: 3.3.5 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 - semver: 6.3.0 - string.prototype.matchall: 4.0.8 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.10 dev: true - /eslint-plugin-simple-import-sort@7.0.0(eslint@8.43.0): - resolution: {integrity: sha512-U3vEDB5zhYPNfxT5TYR7u01dboFZp+HNpnGhkDB2g/2E4wZ/g1Q9Ton8UwCLfRV9yAKyYqDh62oHOamvkFxsvw==} + /eslint-plugin-simple-import-sort@10.0.0(eslint@8.53.0): + resolution: {integrity: sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==} peerDependencies: eslint: '>=5.0.0' dependencies: - eslint: 8.43.0 + eslint: 8.53.0 dev: true - /eslint-scope@7.2.0: - resolution: {integrity: sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==} + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 - /eslint-visitor-keys@3.4.1: - resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==} + /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@8.43.0: - resolution: {integrity: sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q==} + /eslint@8.53.0: + resolution: {integrity: sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.43.0) - '@eslint-community/regexpp': 4.5.1 - '@eslint/eslintrc': 2.0.3 - '@eslint/js': 8.43.0 - '@humanwhocodes/config-array': 0.11.10 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.53.0) + '@eslint-community/regexpp': 4.10.0 + '@eslint/eslintrc': 2.1.3 + '@eslint/js': 8.53.0 + '@humanwhocodes/config-array': 0.11.13 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.2.0 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 debug: 4.3.4(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 - eslint-scope: 7.2.0 - eslint-visitor-keys: 3.4.1 - espree: 9.5.2 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.20.0 + globals: 13.23.0 graphemer: 1.4.0 ignore: 5.2.4 - import-fresh: 3.3.0 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -6303,20 +6458,19 @@ packages: lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 - optionator: 0.9.1 + optionator: 0.9.3 strip-ansi: 6.0.1 - strip-json-comments: 3.1.1 text-table: 0.2.0 transitivePeerDependencies: - supports-color - /espree@9.5.2: - resolution: {integrity: sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==} + /espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - acorn: 8.10.0 - acorn-jsx: 5.3.2(acorn@8.10.0) - eslint-visitor-keys: 3.4.1 + acorn: 8.11.2 + acorn-jsx: 5.3.2(acorn@8.11.2) + eslint-visitor-keys: 3.4.3 /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} @@ -6342,13 +6496,13 @@ packages: /estree-util-attach-comments@2.1.1: resolution: {integrity: sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 dev: false /estree-util-build-jsx@2.2.2: resolution: {integrity: sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==} dependencies: - '@types/estree-jsx': 1.0.0 + '@types/estree-jsx': 1.0.3 estree-util-is-identifier-name: 2.1.0 estree-walker: 3.0.3 dev: false @@ -6360,7 +6514,7 @@ packages: /estree-util-to-js@1.2.0: resolution: {integrity: sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==} dependencies: - '@types/estree-jsx': 1.0.0 + '@types/estree-jsx': 1.0.3 astring: 1.8.6 source-map: 0.7.4 dev: false @@ -6375,14 +6529,14 @@ packages: /estree-util-visit@1.2.1: resolution: {integrity: sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==} dependencies: - '@types/estree-jsx': 1.0.0 - '@types/unist': 2.0.7 + '@types/estree-jsx': 1.0.3 + '@types/unist': 2.0.10 dev: false /estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 dev: false /esutils@2.0.3: @@ -6448,7 +6602,6 @@ packages: /eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - dev: false /events@3.3.0: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} @@ -6489,8 +6642,8 @@ packages: signal-exit: 3.0.7 strip-final-newline: 2.0.0 - /execa@7.1.1: - resolution: {integrity: sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==} + /execa@7.2.0: + resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} dependencies: cross-spawn: 7.0.3 @@ -6504,20 +6657,35 @@ packages: strip-final-newline: 3.0.0 dev: true + /execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + 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 + dev: true + /expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} dev: false - /express@4.18.1: - resolution: {integrity: sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==} + /express@4.18.2: + resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} engines: {node: '>= 0.10.0'} dependencies: accepts: 1.3.8 array-flatten: 1.1.1 - body-parser: 1.20.0 + body-parser: 1.20.1 content-disposition: 0.5.4 - content-type: 1.0.4 + content-type: 1.0.5 cookie: 0.5.0 cookie-signature: 1.0.6 debug: 2.6.9 @@ -6534,7 +6702,7 @@ packages: parseurl: 1.3.3 path-to-regexp: 0.1.7 proxy-addr: 2.0.7 - qs: 6.10.3 + qs: 6.11.0 range-parser: 1.2.1 safe-buffer: 5.2.1 send: 0.18.0 @@ -6596,8 +6764,8 @@ packages: resolution: {integrity: sha512-NcvQXt7Cky1cNau15FWy64IjuO8X0JijhTBBrJj1YlxlDfRkJXNaK9RFUjwpfDPzMdv7wB38jr53l9tkNLxnWg==} dev: true - /fast-glob@3.2.12: - resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 @@ -6609,16 +6777,6 @@ packages: /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - /fast-json-stringify@2.7.13: - resolution: {integrity: sha512-ar+hQ4+OIurUGjSJD1anvYSDcUflywhKjfxnsW4TBTD7+u0tJufv6DKRWoQk3vI6YBOWMoz0TQtfbe7dxbQmvA==} - engines: {node: '>= 10.0.0'} - dependencies: - ajv: 6.12.6 - deepmerge: 4.2.2 - rfdc: 1.3.0 - string-similarity: 4.0.4 - dev: false - /fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} @@ -6635,8 +6793,8 @@ packages: fast-decode-uri-component: 1.0.1 dev: true - /fast-redact@3.2.0: - resolution: {integrity: sha512-zaTadChr+NekyzallAMXATXLOR8MNx3zqpZ0MUF2aGf4EathnG0f32VLODNlY8IuGY3HoRO2L6/6fSzNsLaHIw==} + /fast-redact@3.3.0: + resolution: {integrity: sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==} engines: {node: '>=6'} dev: false @@ -6667,7 +6825,7 @@ packages: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flat-cache: 3.0.4 + flat-cache: 3.1.1 /file-uri-to-path@1.0.0: resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} @@ -6722,15 +6880,16 @@ packages: pkg-dir: 4.2.0 dev: true - /flat-cache@3.0.4: - resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} - engines: {node: ^10.12.0 || >=12.0.0} + /flat-cache@3.1.1: + resolution: {integrity: sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==} + engines: {node: '>=12.0.0'} dependencies: - flatted: 3.2.7 + flatted: 3.2.9 + keyv: 4.5.4 rimraf: 3.0.2 - /flatted@3.2.7: - resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} + /flatted@3.2.9: + resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} /flexsearch@0.7.31: resolution: {integrity: sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==} @@ -6740,8 +6899,8 @@ packages: resolution: {integrity: sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==} dev: false - /follow-redirects@1.15.2(debug@4.3.4): - resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} + /follow-redirects@1.15.3(debug@4.3.4): + resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -6763,7 +6922,7 @@ packages: engines: {node: '>=14'} dependencies: cross-spawn: 7.0.3 - signal-exit: 4.0.2 + signal-exit: 4.1.0 /forever-agent@0.6.1: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} @@ -6803,8 +6962,8 @@ packages: fetch-blob: 3.2.0 dev: true - /formidable@2.1.1: - resolution: {integrity: sha512-0EcS9wCFEzLvfiks7omJ+SiYJAiD+TzK4Pcw1UlUoGnhUxDcMKjt0P7x8wEb0u6OHu8Nb98WG3nxtlF5C7bvUQ==} + /formidable@2.1.2: + resolution: {integrity: sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==} dependencies: dezalgo: 1.0.4 hexoid: 1.0.0 @@ -6877,16 +7036,16 @@ packages: requiresBuild: true optional: true - /function-bind@1.1.1: - resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - /function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} + /function.prototype.name@1.1.6: + resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 functions-have-names: 1.2.3 dev: true @@ -6907,13 +7066,13 @@ packages: resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} dev: true - /get-intrinsic@1.2.1: - resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==} + /get-intrinsic@1.2.2: + resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} dependencies: - function-bind: 1.1.1 - has: 1.0.3 + function-bind: 1.1.2 has-proto: 1.0.1 has-symbols: 1.0.3 + hasown: 2.0.0 /get-iterator@1.0.2: resolution: {integrity: sha512-v+dm9bNVfOYsY1OrhaCrmyOcYoSeVvbt+hHZ0Au+T+p1y+0Uyj9aMaGIeUTT6xdpRbWzDeYKvfOslPhggQMcsg==} @@ -6943,16 +7102,23 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} + /get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + dev: true + /get-symbol-description@1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 dev: true - /get-tsconfig@4.2.0: - resolution: {integrity: sha512-X8u8fREiYOE6S8hLbq99PeykTDoLVnxvF4DjWKJmz9xy2nNRdUcV8ZN9tniJFeKyTU3qnC9lL8n4Chd6LmVKHg==} + /get-tsconfig@4.7.2: + resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} + dependencies: + resolve-pkg-maps: 1.0.0 dev: true /getpass@0.1.7: @@ -6968,8 +7134,8 @@ packages: parse-url: 8.1.0 dev: false - /git-url-parse@13.1.0: - resolution: {integrity: sha512-5FvPJP/70WkIprlUZ33bm4UAaFdjcLkJLpWft1BeZKqwR0uhhNGoKwlUaPtVb4LxCSQ++erHapRak9kWGj+FCA==} + /git-url-parse@13.1.1: + resolution: {integrity: sha512-PCFJyeSSdtnbfhSNRw9Wk96dDCNx+sogTe4YNXeXSJxt7xz5hvXekuRn9JX7m+Mf4OscCu8h+mtAl3+h5Fo8lQ==} dependencies: git-up: 7.0.0 dev: false @@ -6998,16 +7164,16 @@ packages: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} dev: false - /glob@10.3.1: - resolution: {integrity: sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==} + /glob@10.3.10: + resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} engines: {node: '>=16 || 14 >=14.17'} hasBin: true dependencies: foreground-child: 3.1.1 - jackspeak: 2.2.1 - minimatch: 9.0.2 - minipass: 6.0.2 - path-scurry: 1.10.0 + jackspeak: 2.3.6 + minimatch: 9.0.3 + minipass: 7.0.4 + path-scurry: 1.10.1 /glob@7.1.6: resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} @@ -7041,17 +7207,6 @@ packages: once: 1.4.0 path-is-absolute: 1.0.1 - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - dev: false - /glob@9.3.5: resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} engines: {node: '>=16 || 14 >=14.17'} @@ -7059,15 +7214,15 @@ packages: fs.realpath: 1.0.0 minimatch: 8.0.4 minipass: 4.2.8 - path-scurry: 1.10.0 + path-scurry: 1.10.1 dev: true /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - /globals@13.20.0: - resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} + /globals@13.23.0: + resolution: {integrity: sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==} engines: {node: '>=8'} dependencies: type-fest: 0.20.2 @@ -7076,10 +7231,7 @@ packages: resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} engines: {node: '>= 0.4'} dependencies: - define-properties: 1.2.0 - - /globalyzer@0.1.0: - resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} + define-properties: 1.2.1 dev: true /globby@11.1.0: @@ -7088,26 +7240,11 @@ packages: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.2.12 + fast-glob: 3.3.2 ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 - /globby@13.1.2: - resolution: {integrity: sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dependencies: - dir-glob: 3.0.1 - fast-glob: 3.2.12 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 4.0.0 - dev: true - - /globrex@0.1.2: - resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} - dev: true - /gluegun@5.1.2(debug@4.3.4): resolution: {integrity: sha512-Cwx/8S8Z4YQg07a6AFsaGnnnmd8mN17414NcPS3OoDtZRwxgsvwRNJNg69niD6fDa8oNwslCG0xH7rEpRNNE/g==} hasBin: true @@ -7149,8 +7286,7 @@ packages: /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: - get-intrinsic: 1.2.1 - dev: true + get-intrinsic: 1.2.2 /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} @@ -7235,10 +7371,10 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - /has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} + /has-property-descriptors@1.0.1: + resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} dependencies: - get-intrinsic: 1.2.1 + get-intrinsic: 1.2.2 /has-proto@1.0.1: resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} @@ -7255,12 +7391,6 @@ packages: has-symbols: 1.0.3 dev: true - /has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} - dependencies: - function-bind: 1.1.1 - /hash-base@3.1.0: resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} engines: {node: '>=4'} @@ -7286,10 +7416,16 @@ packages: minimalistic-assert: 1.0.1 dev: true + /hasown@2.0.0: + resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + engines: {node: '>= 0.4'} + dependencies: + function-bind: 1.1.2 + /hast-util-from-dom@5.0.0: resolution: {integrity: sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 hastscript: 8.0.0 web-namespaces: 2.0.1 dev: false @@ -7297,7 +7433,7 @@ packages: /hast-util-from-html-isomorphic@2.0.0: resolution: {integrity: sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 hast-util-from-dom: 5.0.0 hast-util-from-html: 2.0.1 unist-util-remove-position: 5.0.0 @@ -7306,7 +7442,7 @@ packages: /hast-util-from-html@2.0.1: resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 devlop: 1.1.0 hast-util-from-parse5: 8.0.1 parse5: 7.1.2 @@ -7317,11 +7453,11 @@ packages: /hast-util-from-parse5@8.0.1: resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} dependencies: - '@types/hast': 3.0.2 - '@types/unist': 3.0.0 + '@types/hast': 3.0.3 + '@types/unist': 3.0.2 devlop: 1.1.0 hastscript: 8.0.0 - property-information: 6.2.0 + property-information: 6.4.0 vfile: 6.0.1 vfile-location: 5.0.2 web-namespaces: 2.0.1 @@ -7330,20 +7466,20 @@ packages: /hast-util-is-element@3.0.0: resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 dev: false /hast-util-parse-selector@4.0.0: resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 dev: false /hast-util-raw@9.0.1: resolution: {integrity: sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==} dependencies: - '@types/hast': 3.0.2 - '@types/unist': 3.0.0 + '@types/hast': 3.0.3 + '@types/unist': 3.0.2 '@ungap/structured-clone': 1.2.0 hast-util-from-parse5: 8.0.1 hast-util-to-parse5: 8.0.0 @@ -7360,19 +7496,19 @@ packages: /hast-util-to-estree@2.3.3: resolution: {integrity: sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==} dependencies: - '@types/estree': 1.0.1 - '@types/estree-jsx': 1.0.0 - '@types/hast': 2.3.5 - '@types/unist': 2.0.7 + '@types/estree': 1.0.5 + '@types/estree-jsx': 1.0.3 + '@types/hast': 2.3.8 + '@types/unist': 2.0.10 comma-separated-tokens: 2.0.3 estree-util-attach-comments: 2.1.1 estree-util-is-identifier-name: 2.1.0 hast-util-whitespace: 2.0.1 mdast-util-mdx-expression: 1.3.2 mdast-util-mdxjs-esm: 1.3.1 - property-information: 6.2.0 + property-information: 6.4.0 space-separated-tokens: 2.0.2 - style-to-object: 0.4.1 + style-to-object: 0.4.4 unist-util-position: 4.0.4 zwitch: 2.0.4 transitivePeerDependencies: @@ -7382,10 +7518,10 @@ packages: /hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 comma-separated-tokens: 2.0.3 devlop: 1.1.0 - property-information: 6.2.0 + property-information: 6.4.0 space-separated-tokens: 2.0.2 web-namespaces: 2.0.1 zwitch: 2.0.4 @@ -7394,8 +7530,8 @@ packages: /hast-util-to-text@4.0.0: resolution: {integrity: sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w==} dependencies: - '@types/hast': 3.0.2 - '@types/unist': 3.0.0 + '@types/hast': 3.0.3 + '@types/unist': 3.0.2 hast-util-is-element: 3.0.0 unist-util-find-after: 5.0.0 dev: false @@ -7407,10 +7543,10 @@ packages: /hastscript@8.0.0: resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 comma-separated-tokens: 2.0.3 hast-util-parse-selector: 4.0.0 - property-information: 6.2.0 + property-information: 6.4.0 space-separated-tokens: 2.0.2 dev: false @@ -7465,7 +7601,7 @@ packages: engines: {node: '>=8.0.0'} dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.2(debug@4.3.4) + follow-redirects: 1.15.3(debug@4.3.4) requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -7492,7 +7628,7 @@ packages: dependencies: delay: 5.0.0 p-wait-for: 3.2.0 - roarr: 7.15.0 + roarr: 7.18.3 type-fest: 2.19.0 dev: false @@ -7509,6 +7645,11 @@ packages: engines: {node: '>=14.18.0'} dev: true + /human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + dev: true + /hyperlinker@1.0.0: resolution: {integrity: sha512-Ty8UblRWFEcfSuIaajM34LdPXIhbs1ajEX/BBPv24J+enSVaEVY63xQ6lTO9VRYS5LAoghIG0IDJ+p+IPzKUQQ==} engines: {node: '>=4'} @@ -7551,6 +7692,12 @@ packages: /indent-string@4.0.0: resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} engines: {node: '>=8'} + dev: true + + /indent-string@5.0.0: + resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} + engines: {node: '>=12'} + dev: false /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} @@ -7565,41 +7712,46 @@ packages: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: false - /ink@3.2.0(@types/react@18.0.25)(react@17.0.2): - resolution: {integrity: sha512-firNp1q3xxTzoItj/eOOSZQnYSlyrWks5llCTVX37nJ59K3eXbQ8PtzCguqo8YI19EELo5QxaKnJd4VxzhU8tg==} - engines: {node: '>=10'} + /ink@4.4.1(@types/react@18.2.37)(react@18.2.0): + resolution: {integrity: sha512-rXckvqPBB0Krifk5rn/5LvQGmyXwCUpBfmTwbkQNBY9JY8RSl3b8OftBNEYxg4+SWUhEKcPifgope28uL9inlA==} + engines: {node: '>=14.16'} peerDependencies: - '@types/react': '>=16.8.0' - react: '>=16.8.0' + '@types/react': '>=18.0.0' + react: '>=18.0.0' + react-devtools-core: ^4.19.1 peerDependenciesMeta: '@types/react': optional: true + react-devtools-core: + optional: true dependencies: - '@types/react': 18.0.25 - ansi-escapes: 4.3.2 - auto-bind: 4.0.0 - chalk: 4.1.2 - cli-boxes: 2.2.1 - cli-cursor: 3.1.0 - cli-truncate: 2.1.0 - code-excerpt: 3.0.0 - indent-string: 4.0.0 - is-ci: 2.0.0 + '@alcalzone/ansi-tokenize': 0.1.3 + '@types/react': 18.2.37 + ansi-escapes: 6.2.0 + auto-bind: 5.0.1 + chalk: 5.3.0 + cli-boxes: 3.0.0 + cli-cursor: 4.0.0 + cli-truncate: 3.1.0 + code-excerpt: 4.0.0 + indent-string: 5.0.0 + is-ci: 3.0.1 + is-lower-case: 2.0.2 + is-upper-case: 2.0.2 lodash: 4.17.21 - patch-console: 1.0.0 - react: 17.0.2 - react-devtools-core: 4.26.1 - react-reconciler: 0.26.2(react@17.0.2) - scheduler: 0.20.2 + patch-console: 2.0.0 + react: 18.2.0 + react-reconciler: 0.29.0(react@18.2.0) + scheduler: 0.23.0 signal-exit: 3.0.7 - slice-ansi: 3.0.0 + slice-ansi: 6.0.0 stack-utils: 2.0.6 - string-width: 4.2.3 + string-width: 5.1.2 type-fest: 0.12.0 - widest-line: 3.1.0 - wrap-ansi: 6.2.0 - ws: 7.5.9 - yoga-layout-prebuilt: 1.10.0 + widest-line: 4.0.1 + wrap-ansi: 8.1.0 + ws: 8.14.2 + yoga-wasm-web: 0.3.3 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -7613,7 +7765,7 @@ packages: resolution: {integrity: sha512-AmCS+9CT34pp2u0QQVXjKztkuq3y5T+BIciuiHDDtDZucZD8VudosnSdUyXJV6IsRkN5jc4RFDhCk1O6Q3Gxjg==} dependencies: interface-store: 2.0.2 - nanoid: 3.3.6 + nanoid: 3.3.7 uint8arrays: 3.1.1 dev: true @@ -7621,15 +7773,19 @@ packages: resolution: {integrity: sha512-rScRlhDcz6k199EkHqT8NpM87ebN89ICOzILoBHgaG36/WX50N32BnU/kpZgCGPLhARRAWUUX5/cyaIjt7Kipg==} dev: true - /internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} + /internal-slot@1.0.6: + resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.1 - has: 1.0.3 + get-intrinsic: 1.2.2 + hasown: 2.0.0 side-channel: 1.0.4 dev: true + /internmap@1.0.1: + resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==} + dev: false + /internmap@2.0.3: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} @@ -7681,7 +7837,7 @@ packages: multiaddr: 10.0.1(node-fetch@3.3.2) multiaddr-to-uri: 8.0.0(node-fetch@3.3.2) multiformats: 9.9.0 - nanoid: 3.3.6 + nanoid: 3.3.7 parse-duration: 1.1.0 timeout-abort-controller: 2.0.0 uint8arrays: 3.1.1 @@ -7694,7 +7850,6 @@ packages: /ipfs-http-client@55.0.0(node-fetch@3.3.2): resolution: {integrity: sha512-GpvEs7C7WL9M6fN/kZbjeh4Y8YN7rY8b18tVWZnKxRsVwM25cIFrRI8CwNt3Ugin9yShieI3i9sPyzYGMrLNnQ==} engines: {node: '>=14.0.0', npm: '>=3.0.0'} - deprecated: js-IPFS has been deprecated in favour of Helia - please see https://github.com/ipfs/js-ipfs/issues/4336 for details dependencies: '@ipld/dag-cbor': 7.0.3 '@ipld/dag-json': 8.0.11 @@ -7744,9 +7899,9 @@ packages: it-glob: 1.0.2 it-to-stream: 1.0.0 merge-options: 3.0.4 - nanoid: 3.3.6 - native-fetch: 3.0.0(node-fetch@2.6.11) - node-fetch: 2.6.11 + nanoid: 3.3.7 + native-fetch: 3.0.0(node-fetch@2.7.0) + node-fetch: 2.7.0 react-native-fetch-api: 3.0.0 stream-to-it: 0.2.4 transitivePeerDependencies: @@ -7767,15 +7922,22 @@ packages: /is-array-buffer@3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - is-typed-array: 1.1.10 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 + is-typed-array: 1.1.12 dev: true /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} dev: true + /is-async-function@2.0.0: + resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 + dev: true + /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -7793,7 +7955,7 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: true @@ -7807,24 +7969,16 @@ packages: engines: {node: '>= 0.4'} dev: true - /is-ci@2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} - hasBin: true - dependencies: - ci-info: 2.0.0 - dev: false - /is-ci@3.0.1: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true dependencies: - ci-info: 3.8.0 - dev: true + ci-info: 3.9.0 - /is-core-module@2.12.1: - resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==} + /is-core-module@2.13.1: + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: - has: 1.0.3 + hasown: 2.0.0 dev: true /is-date-object@1.0.5: @@ -7844,6 +7998,12 @@ packages: hasBin: true dev: 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 + dev: true + /is-electron@2.2.2: resolution: {integrity: sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg==} dev: true @@ -7857,6 +8017,12 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + /is-finalizationregistry@1.0.2: + resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + dependencies: + call-bind: 1.0.5 + dev: true + /is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -7864,6 +8030,12 @@ packages: /is-fullwidth-code-point@4.0.0: resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} engines: {node: '>=12'} + + /is-generator-function@1.0.10: + resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 dev: true /is-glob@4.0.3: @@ -7881,6 +8053,14 @@ packages: resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} dev: false + /is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + dependencies: + is-docker: 3.0.0 + dev: true + /is-interactive@1.0.0: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} @@ -7893,6 +8073,16 @@ packages: ip-regex: 4.3.0 dev: true + /is-lower-case@2.0.2: + resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} + dependencies: + tslib: 2.6.2 + dev: false + + /is-map@2.0.2: + resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} + dev: true + /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} @@ -7938,24 +8128,28 @@ packages: engines: {node: '>=12'} dev: false - /is-reference@3.0.1: - resolution: {integrity: sha512-baJJdQLiYaJdvFbJqXrcGv3WU3QCzBlUcI5QhbesIm6/xPsvmO+2CDoi/GMOFBQEQm+PXkwOPrp9KK5ozZsp2w==} + /is-reference@3.0.2: + resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 dev: false /is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: true + /is-set@2.0.2: + resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} + dev: true + /is-shared-array-buffer@1.0.2: resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 dev: true /is-ssh@1.4.0: @@ -7999,25 +8193,38 @@ packages: has-symbols: 1.0.3 dev: true - /is-typed-array@1.1.10: - resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} + /is-typed-array@1.1.12: + resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} engines: {node: '>= 0.4'} dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 + which-typed-array: 1.1.13 dev: true /is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} dev: true + /is-upper-case@2.0.2: + resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} + dependencies: + tslib: 2.6.2 + dev: false + + /is-weakmap@2.0.1: + resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} + dev: true + /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 + dev: true + + /is-weakset@2.0.2: + resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} + dependencies: + call-bind: 1.0.5 + get-intrinsic: 1.2.2 dev: true /is-windows@1.0.2: @@ -8040,6 +8247,10 @@ packages: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} dev: true + /isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + dev: true + /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} @@ -8062,6 +8273,14 @@ packages: ws: '*' dependencies: ws: 8.12.0 + dev: true + + /isows@1.0.3(ws@8.13.0): + resolution: {integrity: sha512-2cKei4vlmg2cxEjm3wVSqn8pcoRF/LX/wpifuuNquFO4SQmPwarClT+SUCA2lt+l581tTeZIPIZuIDo2jWN1fg==} + peerDependencies: + ws: '*' + dependencies: + ws: 8.13.0 /isstream@0.1.2: resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} @@ -8105,8 +8324,18 @@ packages: readable-stream: 3.6.2 dev: true - /jackspeak@2.2.1: - resolution: {integrity: sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==} + /iterator.prototype@1.1.2: + resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} + dependencies: + define-properties: 1.2.1 + get-intrinsic: 1.2.2 + has-symbols: 1.0.3 + reflect.getprototypeof: 1.0.4 + set-function-name: 2.0.1 + dev: true + + /jackspeak@2.3.6: + resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} dependencies: '@isaacs/cliui': 8.0.2 @@ -8129,7 +8358,7 @@ packages: engines: {node: '>=8'} hasBin: true dependencies: - '@types/connect': 3.4.35 + '@types/connect': 3.4.38 '@types/node': 12.20.55 '@types/ws': 7.4.7 JSONStream: 1.3.5 @@ -8184,6 +8413,9 @@ packages: engines: {node: '>=4'} hasBin: true + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + /json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} dev: true @@ -8254,12 +8486,14 @@ packages: verror: 1.10.0 dev: true - /jsx-ast-utils@3.3.3: - resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} + /jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} engines: {node: '>=4.0'} dependencies: - array-includes: 3.1.6 + array-includes: 3.1.7 + array.prototype.flat: 1.3.2 object.assign: 4.1.4 + object.values: 1.1.7 dev: true /katex@0.16.9: @@ -8279,8 +8513,13 @@ packages: readable-stream: 3.6.2 dev: true - /khroma@2.0.0: - resolution: {integrity: sha512-2J8rDNlQWbtiNYThZRvmMv5yt44ZakX+Tz5ZIp/mN1pt4snn+m030Va5Z4v8xA0cQFDXBwO/8i42xL4QPsVk3g==} + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + dependencies: + json-buffer: 3.0.1 + + /khroma@2.1.0: + resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==} dev: false /kind-of@6.0.3: @@ -8295,8 +8534,8 @@ packages: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} - /kysely@0.24.2: - resolution: {integrity: sha512-+7eaTJNUYm2yRq1x+lEOZc+78TO35dTZ9b0dh49+Z9CTt2byMSbMiOKpwPlOyCAaHD4kILkAYWYZNywFlmBwRA==} + /kysely@0.26.3: + resolution: {integrity: sha512-yWSgGi9bY13b/W06DD2OCDDHQmq1kwTGYlQ4wpZkMOJqMGCstVCFIvxCCVG4KfY1/3G0MhDAcZsip/Lw8/vJWw==} engines: {node: '>=14.0.0'} dev: false @@ -8304,8 +8543,9 @@ packages: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} dev: true - /language-tags@1.0.6: - resolution: {integrity: sha512-HNkaCgM8wZgE/BZACeotAAgpL9FUjEnhgF0FVQMIgH//zqTPreLYMb3rWYkYAqPoF75Jwuycp1da7uz66cfFQg==} + /language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} dependencies: language-subtag-registry: 0.3.22 dev: true @@ -8334,46 +8574,35 @@ packages: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} dev: true - /lint-staged@13.2.3: - resolution: {integrity: sha512-zVVEXLuQIhr1Y7R7YAWx4TZLdvuzk7DnmrsTNL0fax6Z3jrpFcas+vKbzxhhvp6TA55m1SQuWkpzI1qbfDZbAg==} - engines: {node: ^14.13.1 || >=16.0.0} + /lint-staged@15.0.2: + resolution: {integrity: sha512-vnEy7pFTHyVuDmCAIFKR5QDO8XLVlPFQQyujQ/STOxe40ICWqJ6knS2wSJ/ffX/Lw0rz83luRDh+ET7toN+rOw==} + engines: {node: '>=18.12.0'} hasBin: true dependencies: - chalk: 5.2.0 - cli-truncate: 3.1.0 - commander: 10.0.1 + chalk: 5.3.0 + commander: 11.1.0 debug: 4.3.4(supports-color@8.1.1) - execa: 7.1.1 + execa: 8.0.1 lilconfig: 2.1.0 - listr2: 5.0.8 + listr2: 7.0.2 micromatch: 4.0.5 - normalize-path: 3.0.0 - object-inspect: 1.12.3 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.3.1 + yaml: 2.3.3 transitivePeerDependencies: - - enquirer - supports-color dev: true - /listr2@5.0.8: - resolution: {integrity: sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==} - engines: {node: ^14.13.1 || >=16.0.0} - peerDependencies: - enquirer: '>= 2.3.0 < 3' - peerDependenciesMeta: - enquirer: - optional: true + /listr2@7.0.2: + resolution: {integrity: sha512-rJysbR9GKIalhTbVL2tYbF2hVyDnrf7pFUZBwjPaMIdadYHmeT+EVi/Bu3qd7ETQPahTotg2WRCatXwRBW554g==} + engines: {node: '>=16.0.0'} dependencies: - cli-truncate: 2.1.0 + cli-truncate: 3.1.0 colorette: 2.0.20 - log-update: 4.0.0 - p-map: 4.0.0 + eventemitter3: 5.0.1 + log-update: 5.0.1 rfdc: 1.3.0 - rxjs: 7.8.1 - through: 2.3.8 - wrap-ansi: 7.0.0 + wrap-ansi: 8.1.0 dev: true /load-tsconfig@0.2.5: @@ -8498,14 +8727,15 @@ packages: chalk: 2.4.2 dev: true - /log-update@4.0.0: - resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} - engines: {node: '>=10'} + /log-update@5.0.1: + resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - ansi-escapes: 4.3.2 - cli-cursor: 3.1.0 - slice-ansi: 4.0.0 - wrap-ansi: 6.2.0 + ansi-escapes: 5.0.0 + cli-cursor: 4.0.0 + slice-ansi: 5.0.0 + strip-ansi: 7.1.0 + wrap-ansi: 8.1.0 dev: true /long@4.0.0: @@ -8532,6 +8762,18 @@ packages: get-func-name: 2.0.2 dev: true + /lower-case@2.0.2: + resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} + dependencies: + tslib: 2.6.2 + dev: true + + /lru-cache@10.0.2: + resolution: {integrity: sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==} + engines: {node: 14 || >=16.14} + dependencies: + semver: 7.5.4 + /lru-cache@4.1.5: resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} dependencies: @@ -8549,10 +8791,6 @@ packages: dependencies: yallist: 4.0.0 - /lru-cache@9.1.2: - resolution: {integrity: sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==} - engines: {node: 14 || >=16.14} - /magic-string@0.30.5: resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} engines: {node: '>=12'} @@ -8586,7 +8824,7 @@ packages: /match-sorter@6.3.1: resolution: {integrity: sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 remove-accents: 0.4.2 dev: false @@ -8601,14 +8839,15 @@ packages: /mdast-util-definitions@5.1.2: resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==} dependencies: - '@types/mdast': 3.0.12 - '@types/unist': 2.0.7 + '@types/mdast': 3.0.15 + '@types/unist': 2.0.10 unist-util-visit: 4.1.2 dev: false - /mdast-util-find-and-replace@2.2.1: - resolution: {integrity: sha512-SobxkQXFAdd4b5WmEakmkVoh18icjQRxGy5OWTCzgsLRm1Fu/KCtwD1HIQSsmq5ZRjVH0Ehwg6/Fn3xIUk+nKw==} + /mdast-util-find-and-replace@2.2.2: + resolution: {integrity: sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==} dependencies: + '@types/mdast': 3.0.15 escape-string-regexp: 5.0.0 unist-util-is: 5.2.1 unist-util-visit-parents: 5.1.3 @@ -8617,8 +8856,8 @@ packages: /mdast-util-from-markdown@1.3.1: resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==} dependencies: - '@types/mdast': 3.0.12 - '@types/unist': 2.0.7 + '@types/mdast': 3.0.15 + '@types/unist': 2.0.10 decode-named-character-reference: 1.0.2 mdast-util-to-string: 3.2.0 micromark: 3.2.0 @@ -8633,34 +8872,34 @@ packages: - supports-color dev: false - /mdast-util-gfm-autolink-literal@1.0.2: - resolution: {integrity: sha512-FzopkOd4xTTBeGXhXSBU0OCDDh5lUj2rd+HQqG92Ld+jL4lpUfgX2AT2OHAVP9aEeDKp7G92fuooSZcYJA3cRg==} + /mdast-util-gfm-autolink-literal@1.0.3: + resolution: {integrity: sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 ccount: 2.0.1 - mdast-util-find-and-replace: 2.2.1 + mdast-util-find-and-replace: 2.2.2 micromark-util-character: 1.2.0 dev: false - /mdast-util-gfm-footnote@1.0.1: - resolution: {integrity: sha512-p+PrYlkw9DeCRkTVw1duWqPRHX6Ywh2BNKJQcZbCwAuP/59B0Lk9kakuAd7KbQprVO4GzdW8eS5++A9PUSqIyw==} + /mdast-util-gfm-footnote@1.0.2: + resolution: {integrity: sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 mdast-util-to-markdown: 1.5.0 micromark-util-normalize-identifier: 1.1.0 dev: false - /mdast-util-gfm-strikethrough@1.0.2: - resolution: {integrity: sha512-T/4DVHXcujH6jx1yqpcAYYwd+z5lAYMw4Ls6yhTfbMMtCt0PHY4gEfhW9+lKsLBtyhUGKRIzcUA2FATVqnvPDA==} + /mdast-util-gfm-strikethrough@1.0.3: + resolution: {integrity: sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 mdast-util-to-markdown: 1.5.0 dev: false - /mdast-util-gfm-table@1.0.6: - resolution: {integrity: sha512-uHR+fqFq3IvB3Rd4+kzXW8dmpxUhvgCQZep6KdjsLK4O6meK5dYZEayLtIxNus1XO3gfjfcIFe8a7L0HZRGgag==} + /mdast-util-gfm-table@1.0.7: + resolution: {integrity: sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 markdown-table: 3.0.3 mdast-util-from-markdown: 1.3.1 mdast-util-to-markdown: 1.5.0 @@ -8668,22 +8907,22 @@ packages: - supports-color dev: false - /mdast-util-gfm-task-list-item@1.0.1: - resolution: {integrity: sha512-KZ4KLmPdABXOsfnM6JHUIjxEvcx2ulk656Z/4Balw071/5qgnhz+H1uGtf2zIGnrnvDC8xR4Fj9uKbjAFGNIeA==} + /mdast-util-gfm-task-list-item@1.0.2: + resolution: {integrity: sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 mdast-util-to-markdown: 1.5.0 dev: false - /mdast-util-gfm@2.0.1: - resolution: {integrity: sha512-42yHBbfWIFisaAfV1eixlabbsa6q7vHeSPY+cg+BBjX51M8xhgMacqH9g6TftB/9+YkcI0ooV4ncfrJslzm/RQ==} + /mdast-util-gfm@2.0.2: + resolution: {integrity: sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==} dependencies: mdast-util-from-markdown: 1.3.1 - mdast-util-gfm-autolink-literal: 1.0.2 - mdast-util-gfm-footnote: 1.0.1 - mdast-util-gfm-strikethrough: 1.0.2 - mdast-util-gfm-table: 1.0.6 - mdast-util-gfm-task-list-item: 1.0.1 + mdast-util-gfm-autolink-literal: 1.0.3 + mdast-util-gfm-footnote: 1.0.2 + mdast-util-gfm-strikethrough: 1.0.3 + mdast-util-gfm-table: 1.0.7 + mdast-util-gfm-task-list-item: 1.0.2 mdast-util-to-markdown: 1.5.0 transitivePeerDependencies: - supports-color @@ -8692,7 +8931,7 @@ packages: /mdast-util-math@2.0.2: resolution: {integrity: sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 longest-streak: 3.1.0 mdast-util-to-markdown: 1.5.0 dev: false @@ -8700,9 +8939,9 @@ packages: /mdast-util-mdx-expression@1.3.2: resolution: {integrity: sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==} dependencies: - '@types/estree-jsx': 1.0.0 - '@types/hast': 2.3.5 - '@types/mdast': 3.0.12 + '@types/estree-jsx': 1.0.3 + '@types/hast': 2.3.8 + '@types/mdast': 3.0.15 mdast-util-from-markdown: 1.3.1 mdast-util-to-markdown: 1.5.0 transitivePeerDependencies: @@ -8712,10 +8951,10 @@ packages: /mdast-util-mdx-jsx@2.1.4: resolution: {integrity: sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==} dependencies: - '@types/estree-jsx': 1.0.0 - '@types/hast': 2.3.5 - '@types/mdast': 3.0.12 - '@types/unist': 2.0.7 + '@types/estree-jsx': 1.0.3 + '@types/hast': 2.3.8 + '@types/mdast': 3.0.15 + '@types/unist': 2.0.10 ccount: 2.0.1 mdast-util-from-markdown: 1.3.1 mdast-util-to-markdown: 1.5.0 @@ -8743,9 +8982,9 @@ packages: /mdast-util-mdxjs-esm@1.3.1: resolution: {integrity: sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==} dependencies: - '@types/estree-jsx': 1.0.0 - '@types/hast': 2.3.5 - '@types/mdast': 3.0.12 + '@types/estree-jsx': 1.0.3 + '@types/hast': 2.3.8 + '@types/mdast': 3.0.15 mdast-util-from-markdown: 1.3.1 mdast-util-to-markdown: 1.5.0 transitivePeerDependencies: @@ -8755,15 +8994,15 @@ packages: /mdast-util-phrasing@3.0.1: resolution: {integrity: sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 unist-util-is: 5.2.1 dev: false /mdast-util-to-hast@12.3.0: resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==} dependencies: - '@types/hast': 2.3.5 - '@types/mdast': 3.0.12 + '@types/hast': 2.3.8 + '@types/mdast': 3.0.15 mdast-util-definitions: 5.1.2 micromark-util-sanitize-uri: 1.2.0 trim-lines: 3.0.1 @@ -8775,8 +9014,8 @@ packages: /mdast-util-to-hast@13.0.2: resolution: {integrity: sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==} dependencies: - '@types/hast': 3.0.2 - '@types/mdast': 4.0.2 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 '@ungap/structured-clone': 1.2.0 devlop: 1.1.0 micromark-util-sanitize-uri: 2.0.0 @@ -8788,8 +9027,8 @@ packages: /mdast-util-to-markdown@1.5.0: resolution: {integrity: sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==} dependencies: - '@types/mdast': 3.0.12 - '@types/unist': 2.0.7 + '@types/mdast': 3.0.15 + '@types/unist': 2.0.10 longest-streak: 3.1.0 mdast-util-phrasing: 3.0.1 mdast-util-to-string: 3.2.0 @@ -8801,11 +9040,15 @@ packages: /mdast-util-to-string@3.2.0: resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 dev: false - /mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + /mdn-data@2.0.28: + resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} + dev: true + + /mdn-data@2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} dev: true /media-typer@0.3.0: @@ -8817,7 +9060,7 @@ packages: resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} engines: {node: '>=8'} dependencies: - '@types/minimist': 1.2.2 + '@types/minimist': 1.2.5 camelcase-keys: 6.2.2 decamelize-keys: 1.1.1 hard-rejection: 2.1.0 @@ -8848,25 +9091,28 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - /mermaid@10.2.4: - resolution: {integrity: sha512-zHGjEI7lBvWZX+PQYmlhSA2p40OzW6QbGodTCSzDeVpqaTnyAC+2sRGqrpXO+uQk3CnoeClHQPraQUMStdqy2g==} + /mermaid@10.6.1: + resolution: {integrity: sha512-Hky0/RpOw/1il9X8AvzOEChfJtVvmXm+y7JML5C//ePYMy0/9jCEmW1E1g86x9oDfW9+iVEdTV/i+M6KWRNs4A==} dependencies: - '@braintree/sanitize-url': 6.0.2 - cytoscape: 3.25.0 - cytoscape-cose-bilkent: 4.1.0(cytoscape@3.25.0) - cytoscape-fcose: 2.2.0(cytoscape@3.25.0) + '@braintree/sanitize-url': 6.0.4 + '@types/d3-scale': 4.0.8 + '@types/d3-scale-chromatic': 3.0.2 + cytoscape: 3.27.0 + cytoscape-cose-bilkent: 4.1.0(cytoscape@3.27.0) + cytoscape-fcose: 2.2.0(cytoscape@3.27.0) d3: 7.8.5 + d3-sankey: 0.12.3 dagre-d3-es: 7.0.10 - dayjs: 1.11.9 - dompurify: 3.0.3 + dayjs: 1.11.10 + dompurify: 3.0.6 elkjs: 0.8.2 - khroma: 2.0.0 + khroma: 2.1.0 lodash-es: 4.17.21 mdast-util-from-markdown: 1.3.1 non-layered-tidy-tree-layout: 2.0.2 stylis: 4.3.0 ts-dedent: 2.2.0 - uuid: 9.0.0 + uuid: 9.0.1 web-worker: 1.2.0 transitivePeerDependencies: - supports-color @@ -8897,18 +9143,17 @@ packages: uvu: 0.5.6 dev: false - /micromark-extension-gfm-autolink-literal@1.0.3: - resolution: {integrity: sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==} + /micromark-extension-gfm-autolink-literal@1.0.5: + resolution: {integrity: sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==} dependencies: micromark-util-character: 1.2.0 micromark-util-sanitize-uri: 1.2.0 micromark-util-symbol: 1.1.0 micromark-util-types: 1.1.0 - uvu: 0.5.6 dev: false - /micromark-extension-gfm-footnote@1.0.4: - resolution: {integrity: sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==} + /micromark-extension-gfm-footnote@1.1.2: + resolution: {integrity: sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==} dependencies: micromark-core-commonmark: 1.1.0 micromark-factory-space: 1.1.0 @@ -8920,8 +9165,8 @@ packages: uvu: 0.5.6 dev: false - /micromark-extension-gfm-strikethrough@1.0.4: - resolution: {integrity: sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ==} + /micromark-extension-gfm-strikethrough@1.0.7: + resolution: {integrity: sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==} dependencies: micromark-util-chunked: 1.1.0 micromark-util-classify-character: 1.1.0 @@ -8931,8 +9176,8 @@ packages: uvu: 0.5.6 dev: false - /micromark-extension-gfm-table@1.0.5: - resolution: {integrity: sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg==} + /micromark-extension-gfm-table@1.0.7: + resolution: {integrity: sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==} dependencies: micromark-factory-space: 1.1.0 micromark-util-character: 1.2.0 @@ -8941,14 +9186,14 @@ packages: uvu: 0.5.6 dev: false - /micromark-extension-gfm-tagfilter@1.0.1: - resolution: {integrity: sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA==} + /micromark-extension-gfm-tagfilter@1.0.2: + resolution: {integrity: sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==} dependencies: micromark-util-types: 1.1.0 dev: false - /micromark-extension-gfm-task-list-item@1.0.3: - resolution: {integrity: sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q==} + /micromark-extension-gfm-task-list-item@1.0.5: + resolution: {integrity: sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==} dependencies: micromark-factory-space: 1.1.0 micromark-util-character: 1.2.0 @@ -8957,15 +9202,15 @@ packages: uvu: 0.5.6 dev: false - /micromark-extension-gfm@2.0.1: - resolution: {integrity: sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==} + /micromark-extension-gfm@2.0.3: + resolution: {integrity: sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==} dependencies: - micromark-extension-gfm-autolink-literal: 1.0.3 - micromark-extension-gfm-footnote: 1.0.4 - micromark-extension-gfm-strikethrough: 1.0.4 - micromark-extension-gfm-table: 1.0.5 - micromark-extension-gfm-tagfilter: 1.0.1 - micromark-extension-gfm-task-list-item: 1.0.3 + micromark-extension-gfm-autolink-literal: 1.0.5 + micromark-extension-gfm-footnote: 1.1.2 + micromark-extension-gfm-strikethrough: 1.0.7 + micromark-extension-gfm-table: 1.0.7 + micromark-extension-gfm-tagfilter: 1.0.2 + micromark-extension-gfm-task-list-item: 1.0.5 micromark-util-combine-extensions: 1.1.0 micromark-util-types: 1.1.0 dev: false @@ -8973,7 +9218,7 @@ packages: /micromark-extension-math@2.1.2: resolution: {integrity: sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==} dependencies: - '@types/katex': 0.16.1 + '@types/katex': 0.16.6 katex: 0.16.9 micromark-factory-space: 1.1.0 micromark-util-character: 1.2.0 @@ -8985,7 +9230,7 @@ packages: /micromark-extension-mdx-expression@1.0.8: resolution: {integrity: sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 micromark-factory-mdx-expression: 1.0.9 micromark-factory-space: 1.1.0 micromark-util-character: 1.2.0 @@ -8999,7 +9244,7 @@ packages: resolution: {integrity: sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 estree-util-is-identifier-name: 2.1.0 micromark-factory-mdx-expression: 1.0.9 micromark-factory-space: 1.1.0 @@ -9019,7 +9264,7 @@ packages: /micromark-extension-mdxjs-esm@1.0.5: resolution: {integrity: sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 micromark-core-commonmark: 1.1.0 micromark-util-character: 1.2.0 micromark-util-events-to-acorn: 1.2.3 @@ -9033,8 +9278,8 @@ packages: /micromark-extension-mdxjs@1.0.1: resolution: {integrity: sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==} dependencies: - acorn: 8.10.0 - acorn-jsx: 5.3.2(acorn@8.10.0) + acorn: 8.11.2 + acorn-jsx: 5.3.2(acorn@8.11.2) micromark-extension-mdx-expression: 1.0.8 micromark-extension-mdx-jsx: 1.0.5 micromark-extension-mdx-md: 1.0.1 @@ -9063,7 +9308,7 @@ packages: /micromark-factory-mdx-expression@1.0.9: resolution: {integrity: sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 micromark-util-character: 1.2.0 micromark-util-events-to-acorn: 1.2.3 micromark-util-symbol: 1.1.0 @@ -9160,8 +9405,8 @@ packages: resolution: {integrity: sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.1 - '@types/unist': 2.0.7 + '@types/estree': 1.0.5 + '@types/unist': 2.0.10 estree-util-visit: 1.2.1 micromark-util-symbol: 1.1.0 micromark-util-types: 1.1.0 @@ -9229,7 +9474,7 @@ packages: /micromark@3.2.0: resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} dependencies: - '@types/debug': 4.1.8 + '@types/debug': 4.1.12 debug: 4.3.4(supports-color@8.1.1) decode-named-character-reference: 1.0.2 micromark-core-commonmark: 1.1.0 @@ -9315,6 +9560,7 @@ packages: engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 + dev: true /minimatch@8.0.4: resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} @@ -9323,8 +9569,8 @@ packages: brace-expansion: 2.0.1 dev: true - /minimatch@9.0.2: - resolution: {integrity: sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==} + /minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 @@ -9358,8 +9604,8 @@ packages: engines: {node: '>=8'} dev: true - /minipass@6.0.2: - resolution: {integrity: sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==} + /minipass@7.0.4: + resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} /minizlib@2.1.2: @@ -9395,7 +9641,7 @@ packages: /mlly@1.4.2: resolution: {integrity: sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==} dependencies: - acorn: 8.10.0 + acorn: 8.11.2 pathe: 1.1.1 pkg-types: 1.0.3 ufo: 1.3.1 @@ -9457,8 +9703,8 @@ packages: thenify-all: 1.6.0 dev: true - /nanoid@3.3.6: - resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -9474,12 +9720,12 @@ packages: abort-controller: 3.0.0 dev: true - /native-fetch@3.0.0(node-fetch@2.6.11): + /native-fetch@3.0.0(node-fetch@2.7.0): resolution: {integrity: sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw==} peerDependencies: node-fetch: '*' dependencies: - node-fetch: 2.6.11 + node-fetch: 2.7.0 dev: true /native-fetch@3.0.0(node-fetch@3.3.2): @@ -9490,9 +9736,6 @@ packages: node-fetch: 3.3.2 dev: true - /natural-compare-lite@1.4.0: - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} - /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -9522,74 +9765,70 @@ packages: - supports-color dev: false - /next-seo@6.1.0(next@13.4.12)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-iMBpFoJsR5zWhguHJvsoBDxDSmdYTHtnVPB1ij+CD0NReQCP78ZxxbdL9qkKIf4oEuZEqZkrjAQLB0bkII7RYA==} + /next-seo@6.4.0(next@14.0.2)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-XQFxkOL2hw0YE+P100HbI3EAvcludlHPxuzMgaIjKb7kPK0CvjGvLFjd9hszZFEDc5oiQkGFA8+cuWcnip7eYA==} peerDependencies: next: ^8.1.1-canary.54 || >=9.0.0 react: '>=16.0.0' react-dom: '>=16.0.0' dependencies: - next: 13.4.12(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) + next: 14.0.2(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /next-themes@0.2.1(next@13.4.12)(react-dom@18.2.0)(react@18.2.0): + /next-themes@0.2.1(next@14.0.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==} peerDependencies: next: '*' react: '*' react-dom: '*' dependencies: - next: 13.4.12(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) + next: 14.0.2(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /next@13.4.12(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-eHfnru9x6NRmTMcjQp6Nz0J4XH9OubmzOa7CkWL+AUrUxpibub3vWwttjduu9No16dug1kq04hiUUpo7J3m3Xw==} - engines: {node: '>=16.8.0'} + /next@14.0.2(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-jsAU2CkYS40GaQYOiLl9m93RTv2DA/tTJ0NRlmZIBIL87YwQ/xR8k796z7IqgM3jydI8G25dXvyYMC9VDIevIg==} + engines: {node: '>=18.17.0'} hasBin: true peerDependencies: '@opentelemetry/api': ^1.1.0 - fibers: '>= 3.1.0' react: ^18.2.0 react-dom: ^18.2.0 sass: ^1.3.0 peerDependenciesMeta: '@opentelemetry/api': optional: true - fibers: - optional: true sass: optional: true dependencies: - '@next/env': 13.4.12 - '@swc/helpers': 0.5.1 + '@next/env': 14.0.2 + '@swc/helpers': 0.5.2 busboy: 1.6.0 - caniuse-lite: 1.0.30001460 - postcss: 8.4.14 + caniuse-lite: 1.0.30001561 + postcss: 8.4.31 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.21.0)(react@18.2.0) + styled-jsx: 5.1.1(@babel/core@7.23.3)(react@18.2.0) watchpack: 2.4.0 - zod: 3.21.4 optionalDependencies: - '@next/swc-darwin-arm64': 13.4.12 - '@next/swc-darwin-x64': 13.4.12 - '@next/swc-linux-arm64-gnu': 13.4.12 - '@next/swc-linux-arm64-musl': 13.4.12 - '@next/swc-linux-x64-gnu': 13.4.12 - '@next/swc-linux-x64-musl': 13.4.12 - '@next/swc-win32-arm64-msvc': 13.4.12 - '@next/swc-win32-ia32-msvc': 13.4.12 - '@next/swc-win32-x64-msvc': 13.4.12 + '@next/swc-darwin-arm64': 14.0.2 + '@next/swc-darwin-x64': 14.0.2 + '@next/swc-linux-arm64-gnu': 14.0.2 + '@next/swc-linux-arm64-musl': 14.0.2 + '@next/swc-linux-x64-gnu': 14.0.2 + '@next/swc-linux-x64-musl': 14.0.2 + '@next/swc-win32-arm64-msvc': 14.0.2 + '@next/swc-win32-ia32-msvc': 14.0.2 + '@next/swc-win32-x64-msvc': 14.0.2 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros dev: false - /nextra-theme-docs@2.13.2(next@13.4.12)(nextra@2.13.2)(react-dom@18.2.0)(react@18.2.0): + /nextra-theme-docs@2.13.2(next@14.0.2)(nextra@2.13.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-yE4umXaImp1/kf/sFciPj2+EFrNSwd9Db26hi98sIIiujzGf3+9eUgAz45vF9CwBw50FSXxm1QGRcY+slQ4xQQ==} peerDependencies: next: '>=9.5.3' @@ -9597,26 +9836,26 @@ packages: react: '>=16.13.1' react-dom: '>=16.13.1' dependencies: - '@headlessui/react': 1.7.15(react-dom@18.2.0)(react@18.2.0) - '@popperjs/core': 2.11.6 + '@headlessui/react': 1.7.17(react-dom@18.2.0)(react@18.2.0) + '@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 + git-url-parse: 13.1.1 intersection-observer: 0.12.2 match-sorter: 6.3.1 - next: 13.4.12(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) - next-seo: 6.1.0(next@13.4.12)(react-dom@18.2.0)(react@18.2.0) - next-themes: 0.2.1(next@13.4.12)(react-dom@18.2.0)(react@18.2.0) - nextra: 2.13.2(next@13.4.12)(react-dom@18.2.0)(react@18.2.0) + next: 14.0.2(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0) + next-seo: 6.4.0(next@14.0.2)(react-dom@18.2.0)(react@18.2.0) + next-themes: 0.2.1(next@14.0.2)(react-dom@18.2.0)(react@18.2.0) + nextra: 2.13.2(next@14.0.2)(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - scroll-into-view-if-needed: 3.0.10 + scroll-into-view-if-needed: 3.1.0 zod: 3.22.4 dev: false - /nextra@2.13.2(next@13.4.12)(react-dom@18.2.0)(react@18.2.0): + /nextra@2.13.2(next@14.0.2)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-pIgOSXNUqTz1laxV4ChFZOU7lzJAoDHHaBPj8L09PuxrLKqU1BU/iZtXAG6bQeKCx8EPdBsoXxEuENnL9QGnGA==} engines: {node: '>=16'} peerDependencies: @@ -9624,7 +9863,7 @@ packages: react: '>=16.13.1' react-dom: '>=16.13.1' dependencies: - '@headlessui/react': 1.7.15(react-dom@18.2.0)(react@18.2.0) + '@headlessui/react': 1.7.17(react-dom@18.2.0)(react@18.2.0) '@mdx-js/mdx': 2.3.0 '@mdx-js/react': 2.3.0(react@18.2.0) '@napi-rs/simple-git': 0.1.9 @@ -9636,18 +9875,18 @@ packages: gray-matter: 4.0.3 katex: 0.16.9 lodash.get: 4.4.2 - next: 13.4.12(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) + next: 14.0.2(@babel/core@7.23.3)(react-dom@18.2.0)(react@18.2.0) next-mdx-remote: 4.4.1(react-dom@18.2.0)(react@18.2.0) p-limit: 3.1.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) rehype-katex: 7.0.0 - rehype-pretty-code: 0.9.11(shiki@0.14.3) + rehype-pretty-code: 0.9.11(shiki@0.14.5) 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 + shiki: 0.14.5 slash: 3.0.0 title: 3.5.3 unist-util-remove: 4.0.0 @@ -9661,8 +9900,15 @@ packages: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} dev: true - /node-abi@3.47.0: - resolution: {integrity: sha512-2s6B2CWZM//kPgwnuI0KrYwNjfdByE25zvAaEpq9IH4zcNsarH8Ihu/UuX6XMPEogDAxkuUFeZn60pXNHAqn3A==} + /no-case@3.0.4: + resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} + dependencies: + lower-case: 2.0.2 + tslib: 2.6.2 + dev: true + + /node-abi@3.51.0: + resolution: {integrity: sha512-SQkEP4hmNWjlniS5zdnfIXTk1x7Ome85RDzHlTbBtzE97Gfwz/Ipw4v/Ryk20DWIy3yCNVLVlGKApCnmvYoJbA==} engines: {node: '>=10'} dependencies: semver: 7.5.4 @@ -9677,8 +9923,8 @@ packages: engines: {node: '>=10.5.0'} dev: true - /node-fetch@2.6.11: - resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==} + /node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} peerDependencies: encoding: ^0.1.0 @@ -9702,8 +9948,8 @@ packages: hasBin: true dev: true - /node-releases@2.0.10: - resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} + /node-releases@2.0.13: + resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} /non-layered-tidy-tree-layout@2.0.2: resolution: {integrity: sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==} @@ -9713,8 +9959,8 @@ packages: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} dependencies: hosted-git-info: 2.8.9 - resolve: 1.22.2 - semver: 5.7.1 + resolve: 1.22.8 + semver: 5.7.2 validate-npm-package-license: 3.0.4 dev: true @@ -9770,12 +10016,13 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - /object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} + /object-inspect@1.13.1: + resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} + dev: true /object-treeify@1.1.33: resolution: {integrity: sha512-EFVjAYfzWqWsBMRHPMAXLCDIJnpMhdWAqR7xG6M6a2cs6PMFpl/+Z20w9zDW4vkxOFfddegBKq9Rehd0bxWE7A==} @@ -9786,48 +10033,62 @@ packages: resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 + call-bind: 1.0.5 + define-properties: 1.2.1 has-symbols: 1.0.3 object-keys: 1.1.1 dev: true - /object.entries@1.1.6: - resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} + /object.entries@1.1.7: + resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /object.fromentries@2.0.6: - resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + /object.fromentries@2.0.7: + resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + dev: true + + /object.groupby@1.0.1: + resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} + dependencies: + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 dev: true - /object.hasown@1.1.2: - resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} + /object.hasown@1.1.3: + resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} dependencies: - define-properties: 1.2.0 - es-abstract: 1.21.2 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /object.values@1.1.6: - resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} + /object.values@1.1.7: + resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /on-exit-leak-free@2.1.0: - resolution: {integrity: sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w==} + /obuf@1.1.2: + resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} + dev: true + + /on-exit-leak-free@2.1.2: + resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==} + engines: {node: '>=14.0.0'} dev: false /on-finished@2.4.1: @@ -9855,25 +10116,26 @@ packages: mimic-fn: 4.0.0 dev: true - /open@8.4.0: - resolution: {integrity: sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==} - engines: {node: '>=12'} + /open@9.1.0: + resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==} + engines: {node: '>=14.16'} dependencies: - define-lazy-prop: 2.0.0 - is-docker: 2.2.1 + default-browser: 4.0.0 + define-lazy-prop: 3.0.0 + is-inside-container: 1.0.0 is-wsl: 2.2.0 dev: true - /optionator@0.9.1: - resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} + /optionator@0.9.3: + resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} engines: {node: '>= 0.8.0'} dependencies: + '@aashutoshrathi/word-wrap': 1.2.6 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.3 /ora@4.0.2: resolution: {integrity: sha512-YUOZbamht5mfLxPmk4M35CD/5DuOkAacxlEUbStVXpBAt4fyhBf+vZHI/HRkI++QUp3sNoeA2Gw4C+hi4eGSig==} @@ -9941,6 +10203,13 @@ packages: yocto-queue: 1.0.0 dev: true + /p-limit@5.0.0: + resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} + engines: {node: '>=18'} + dependencies: + yocto-queue: 1.0.0 + dev: false + /p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -9959,13 +10228,6 @@ packages: engines: {node: '>=6'} dev: true - /p-map@4.0.0: - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} - engines: {node: '>=10'} - dependencies: - aggregate-error: 3.1.0 - dev: true - /p-queue@7.4.1: resolution: {integrity: sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==} engines: {node: '>=12'} @@ -10019,7 +10281,7 @@ packages: /parse-entities@4.0.1: resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 character-entities: 2.0.2 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 @@ -10033,7 +10295,7 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.22.5 + '@babel/code-frame': 7.22.13 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -10079,9 +10341,9 @@ packages: cross-spawn: 6.0.5 dev: true - /patch-console@1.0.0: - resolution: {integrity: sha512-nxl9nrnLQmh64iTzMfyylSlRozL7kAXIaxw1fVcLYdyhNkJCRUzirRZTikXGJsg+hc4fqpneTK6iU2H1Q8THSA==} - engines: {node: '>=10'} + /patch-console@2.0.0: + resolution: {integrity: sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false /path-exists@4.0.0: @@ -10109,12 +10371,12 @@ packages: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /path-scurry@1.10.0: - resolution: {integrity: sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g==} + /path-scurry@1.10.1: + resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} engines: {node: '>=16 || 14 >=14.17'} dependencies: - lru-cache: 9.1.2 - minipass: 6.0.2 + lru-cache: 10.0.2 + minipass: 7.0.4 /path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} @@ -10149,9 +10411,9 @@ packages: /periscopic@3.1.0: resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} dependencies: - '@types/estree': 1.0.1 + '@types/estree': 1.0.5 estree-walker: 3.0.3 - is-reference: 3.0.1 + is-reference: 3.0.2 dev: false /pg-cloudflare@1.1.1: @@ -10168,6 +10430,11 @@ packages: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} + /pg-numeric@1.0.2: + resolution: {integrity: sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==} + engines: {node: '>=4'} + dev: true + /pg-pool@3.6.1(pg@8.11.3): resolution: {integrity: sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==} peerDependencies: @@ -10188,6 +10455,20 @@ packages: postgres-bytea: 1.0.0 postgres-date: 1.0.7 postgres-interval: 1.2.0 + dev: false + + /pg-types@4.0.1: + resolution: {integrity: sha512-hRCSDuLII9/LE3smys1hRHcu5QGcLs9ggT7I/TCs0IE+2Eesxi9+9RWAAwZ0yaGjxoWICF/YHLOEjydGujoJ+g==} + engines: {node: '>=10'} + dependencies: + pg-int8: 1.0.1 + pg-numeric: 1.0.2 + postgres-array: 3.0.2 + postgres-bytea: 3.0.0 + postgres-date: 2.0.1 + postgres-interval: 3.0.0 + postgres-range: 1.1.3 + dev: true /pg@8.11.3: resolution: {integrity: sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g==} @@ -10233,32 +10514,32 @@ packages: engines: {node: '>=6'} dev: true - /pino-abstract-transport@1.0.0: - resolution: {integrity: sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA==} + /pino-abstract-transport@1.1.0: + resolution: {integrity: sha512-lsleG3/2a/JIWUtf9Q5gUNErBqwIu1tUKTT3dUzaf5DySw9ra1wcqKjJjLX1VTY64Wk1eEOYsVGSaGfCK85ekA==} dependencies: - readable-stream: 4.4.0 - split2: 4.1.0 + readable-stream: 4.4.2 + split2: 4.2.0 dev: false - /pino-std-serializers@6.2.1: - resolution: {integrity: sha512-wHuWB+CvSVb2XqXM0W/WOYUkVSPbiJb9S5fNB7TBhd8s892Xq910bRxwHtC4l71hgztObTjXL6ZheZXFjhDrDQ==} + /pino-std-serializers@6.2.2: + resolution: {integrity: sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==} dev: false - /pino@8.14.1: - resolution: {integrity: sha512-8LYNv7BKWXSfS+k6oEc6occy5La+q2sPwU3q2ljTX5AZk7v+5kND2o5W794FyRaqha6DJajmkNRsWtPpFyMUdw==} + /pino@8.16.1: + resolution: {integrity: sha512-3bKsVhBmgPjGV9pyn4fO/8RtoVDR8ssW1ev819FsRXlRNgW8gR/9Kx+gCK4UPWd4JjrRDLWpzd/pb1AyWm3MGA==} hasBin: true dependencies: atomic-sleep: 1.0.0 - fast-redact: 3.2.0 - on-exit-leak-free: 2.1.0 - pino-abstract-transport: 1.0.0 - pino-std-serializers: 6.2.1 - process-warning: 2.2.0 + fast-redact: 3.3.0 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 1.1.0 + pino-std-serializers: 6.2.2 + process-warning: 2.3.0 quick-format-unescaped: 4.0.4 real-require: 0.2.0 safe-stable-stringify: 2.4.3 - sonic-boom: 3.3.0 - thread-stream: 2.3.0 + sonic-boom: 3.7.0 + thread-stream: 2.4.1 dev: false /pirates@4.0.5: @@ -10280,10 +10561,11 @@ packages: mlly: 1.4.2 pathe: 1.1.1 - /plimit-lit@1.5.0: - resolution: {integrity: sha512-Eb/MqCb1Iv/ok4m1FqIXqvUKPISufcjZ605hl3KM/n8GaX8zfhtgdLwZU3vKjuHGh2O9Rjog/bHTq8ofIShdng==} + /plimit-lit@1.6.1: + resolution: {integrity: sha512-B7+VDyb8Tl6oMJT9oSO2CW8XC/T4UcJGrwOVoNGwOQsQYhlpfajmrMj5xeejqaASq3V/EqThyOeATEOMuSEXiA==} + engines: {node: '>=12'} dependencies: - queue-lit: 1.5.0 + queue-lit: 1.5.2 dev: true /pluralize@8.0.0: @@ -10304,43 +10586,64 @@ packages: optional: true dependencies: lilconfig: 2.1.0 - yaml: 2.3.1 + yaml: 2.3.3 dev: true - /postcss@8.4.14: - resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.6 - picocolors: 1.0.0 - source-map-js: 1.0.2 - dev: false - /postcss@8.4.31: resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.3.6 + nanoid: 3.3.7 picocolors: 1.0.0 source-map-js: 1.0.2 /postgres-array@2.0.0: resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==} engines: {node: '>=4'} + dev: false + + /postgres-array@3.0.2: + resolution: {integrity: sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==} + engines: {node: '>=12'} + dev: true /postgres-bytea@1.0.0: resolution: {integrity: sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==} engines: {node: '>=0.10.0'} + dev: false + + /postgres-bytea@3.0.0: + resolution: {integrity: sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==} + engines: {node: '>= 6'} + dependencies: + obuf: 1.1.2 + dev: true /postgres-date@1.0.7: resolution: {integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==} engines: {node: '>=0.10.0'} + dev: false + + /postgres-date@2.0.1: + resolution: {integrity: sha512-YtMKdsDt5Ojv1wQRvUhnyDJNSr2dGIC96mQVKz7xufp07nfuFONzdaowrMHjlAzY6GDLd4f+LUHHAAM1h4MdUw==} + engines: {node: '>=12'} + dev: true /postgres-interval@1.2.0: resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==} engines: {node: '>=0.10.0'} dependencies: xtend: 4.0.2 + dev: false + + /postgres-interval@3.0.0: + resolution: {integrity: sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==} + engines: {node: '>=12'} + dev: true + + /postgres-range@1.1.3: + resolution: {integrity: sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==} + dev: true /prebuild-install@7.1.1: resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} @@ -10353,7 +10656,7 @@ packages: minimist: 1.2.8 mkdirp-classic: 0.5.3 napi-build-utils: 1.0.2 - node-abi: 3.47.0 + node-abi: 3.51.0 pump: 3.0.0 rc: 1.2.8 simple-get: 4.0.1 @@ -10361,8 +10664,8 @@ packages: tunnel-agent: 0.6.0 dev: false - /preferred-pm@3.0.3: - resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} + /preferred-pm@3.1.2: + resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} engines: {node: '>=10'} dependencies: find-up: 5.0.0 @@ -10393,6 +10696,12 @@ packages: engines: {node: '>=10.13.0'} hasBin: true + /prettier@3.0.3: + resolution: {integrity: sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==} + engines: {node: '>=14'} + hasBin: true + dev: true + /pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -10406,8 +10715,8 @@ packages: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} dev: true - /process-warning@2.2.0: - resolution: {integrity: sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg==} + /process-warning@2.3.0: + resolution: {integrity: sha512-N6mp1+2jpQr3oCFMz6SeHRGbv6Slb20bRhj4v3xR99HqNToAcOe1MFOp4tytyzOfJn+QtN8Rf7U/h2KAn4kC6g==} dev: false /process@0.11.10: @@ -10415,10 +10724,11 @@ packages: engines: {node: '>= 0.6.0'} dev: false - /prom-client@14.2.0: - resolution: {integrity: sha512-sF308EhTenb/pDRPakm+WgiN+VdM/T1RaHj1x+MvAuT8UiQP8JmOEbxVqtkbfR4LrvOg5n7ic01kRBDGXjYikA==} - engines: {node: '>=10'} + /prom-client@15.0.0: + resolution: {integrity: sha512-UocpgIrKyA2TKLVZDSfm8rGkL13C19YrQBAiG3xo3aDFWcHedxRxI3z+cIcucoxpSO0h5lff5iv/SXoxyeopeA==} + engines: {node: ^16 || ^18 || >=20} dependencies: + '@opentelemetry/api': 1.7.0 tdigest: 0.1.2 dev: false @@ -10444,8 +10754,8 @@ packages: react-is: 16.13.1 dev: true - /property-information@6.2.0: - resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} + /property-information@6.4.0: + resolution: {integrity: sha512-9t5qARVofg2xQqKtytzt+lZ4d1Qvj8t5B8fEwXK6qOfgRLgH/b13QlgEyDh033NOS31nXeFbYv7CLUDG1CeifQ==} dev: false /protobufjs@6.11.3: @@ -10505,14 +10815,14 @@ packages: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} dev: true - /punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} /pvtsutils@1.3.2: resolution: {integrity: sha512-+Ipe2iNUyrZz+8K/2IOo+kKikdtfhRKzNpQbruF2URmqPtoqAs8g3xS7TJvFF2GcPXjh7DkqMnpVveRFq4PgEQ==} dependencies: - tslib: 2.5.3 + tslib: 2.6.2 dev: true /pvutils@1.1.3: @@ -10520,8 +10830,8 @@ packages: engines: {node: '>=6.0.0'} dev: true - /qs@6.10.3: - resolution: {integrity: sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==} + /qs@6.11.0: + resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} dependencies: side-channel: 1.0.4 @@ -10539,8 +10849,9 @@ packages: engines: {node: '>=0.6'} dev: true - /queue-lit@1.5.0: - resolution: {integrity: sha512-IslToJ4eiCEE9xwMzq3viOO5nH8sUWUCwoElrhNMozzr9IIt2qqvB4I+uHu/zJTQVqc9R5DFwok4ijNK1pU3fA==} + /queue-lit@1.5.2: + resolution: {integrity: sha512-tLc36IOPeMAubu8BkW8YDBV+WyIgKlYU7zUNs0J5Vk9skSZ4JfGlPOqplP0aHdfv7HL0B2Pg6nwiq60Qc6M2Hw==} + engines: {node: '>=12'} dev: true /queue-microtask@1.2.3: @@ -10583,17 +10894,7 @@ packages: deep-extend: 0.6.0 ini: 1.3.8 minimist: 1.2.8 - strip-json-comments: 2.0.1 - dev: false - - /react-devtools-core@4.26.1: - resolution: {integrity: sha512-r1csa5n9nABVpSdAadwTG7K+SfgRJPc/Hdx89BkV5IlA1mEGgGi3ir630ST5D/xYlJQaY3VE75YGADgpNW7HIw==} - dependencies: - shell-quote: 1.8.1 - ws: 7.5.9 - transitivePeerDependencies: - - bufferutil - - utf-8-validate + strip-json-comments: 2.0.1 dev: false /react-dom@18.2.0(react@18.2.0): @@ -10620,24 +10921,15 @@ packages: p-defer: 3.0.0 dev: true - /react-reconciler@0.26.2(react@17.0.2): - resolution: {integrity: sha512-nK6kgY28HwrMNwDnMui3dvm3rCFjZrcGiuwLc5COUipBK5hWHLOxMJhSnSomirqWwjPBJKV1QcbkI0VJr7Gl1Q==} + /react-reconciler@0.29.0(react@18.2.0): + resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} engines: {node: '>=0.10.0'} peerDependencies: - react: ^17.0.2 - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react: 17.0.2 - scheduler: 0.20.2 - dev: false - - /react@17.0.2: - resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} - engines: {node: '>=0.10.0'} + react: ^18.2.0 dependencies: loose-envify: 1.4.0 - object-assign: 4.1.1 + react: 18.2.0 + scheduler: 0.23.0 dev: false /react@18.2.0: @@ -10659,7 +10951,7 @@ packages: resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} engines: {node: '>=8'} dependencies: - '@types/normalize-package-data': 2.4.1 + '@types/normalize-package-data': 2.4.4 normalize-package-data: 2.5.0 parse-json: 5.2.0 type-fest: 0.6.0 @@ -10704,14 +10996,15 @@ packages: string_decoder: 1.3.0 util-deprecate: 1.0.2 - /readable-stream@4.4.0: - resolution: {integrity: sha512-kDMOq0qLtxV9f/SQv522h8cxZBqNZXuXNyjyezmfAAuribMyVXziljpQ/uQhfE1XLg2/TLTW2DsnoE4VAi/krg==} + /readable-stream@4.4.2: + resolution: {integrity: sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: abort-controller: 3.0.0 buffer: 6.0.3 events: 3.3.0 process: 0.11.10 + string_decoder: 1.3.0 dev: false /readdirp@3.6.0: @@ -10750,8 +11043,20 @@ packages: esprima: 4.0.1 dev: true - /regenerate-unicode-properties@10.1.0: - resolution: {integrity: sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==} + /reflect.getprototypeof@1.0.4: + resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 + globalthis: 1.0.3 + which-builtin-type: 1.1.3 + dev: true + + /regenerate-unicode-properties@10.1.1: + resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} engines: {node: '>=4'} dependencies: regenerate: 1.4.2 @@ -10761,31 +11066,31 @@ packages: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: true - /regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + /regenerator-runtime@0.14.0: + resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - /regenerator-transform@0.15.1: - resolution: {integrity: sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==} + /regenerator-transform@0.15.2: + resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: - '@babel/runtime': 7.22.5 + '@babel/runtime': 7.23.2 dev: true - /regexp.prototype.flags@1.5.0: - resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} + /regexp.prototype.flags@1.5.1: + resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - functions-have-names: 1.2.3 + call-bind: 1.0.5 + define-properties: 1.2.1 + set-function-name: 2.0.1 dev: true - /regexpu-core@5.3.1: - resolution: {integrity: sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==} + /regexpu-core@5.3.2: + resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} engines: {node: '>=4'} dependencies: '@babel/regjsgen': 0.8.0 regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.0 + regenerate-unicode-properties: 10.1.1 regjsparser: 0.9.1 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.1.0 @@ -10801,8 +11106,8 @@ packages: /rehype-katex@7.0.0: resolution: {integrity: sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==} dependencies: - '@types/hast': 3.0.2 - '@types/katex': 0.16.1 + '@types/hast': 3.0.3 + '@types/katex': 0.16.6 hast-util-from-html-isomorphic: 2.0.0 hast-util-to-text: 4.0.0 katex: 0.16.9 @@ -10810,22 +11115,22 @@ packages: vfile: 6.0.1 dev: false - /rehype-pretty-code@0.9.11(shiki@0.14.3): + /rehype-pretty-code@0.9.11(shiki@0.14.5): resolution: {integrity: sha512-Eq90eCYXQJISktfRZ8PPtwc5SUyH6fJcxS8XOMnHPUQZBtC6RYo67gGlley9X2nR8vlniPj0/7oCDEYHKQa/oA==} engines: {node: '>=16'} peerDependencies: shiki: '*' dependencies: - '@types/hast': 2.3.5 + '@types/hast': 2.3.8 hash-obj: 4.0.0 parse-numeric-range: 1.3.0 - shiki: 0.14.3 + shiki: 0.14.5 dev: false /rehype-raw@7.0.0: resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} dependencies: - '@types/hast': 3.0.2 + '@types/hast': 3.0.3 hast-util-raw: 9.0.1 vfile: 6.0.1 dev: false @@ -10833,9 +11138,9 @@ packages: /remark-gfm@3.0.1: resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==} dependencies: - '@types/mdast': 3.0.12 - mdast-util-gfm: 2.0.1 - micromark-extension-gfm: 2.0.1 + '@types/mdast': 3.0.15 + mdast-util-gfm: 2.0.2 + micromark-extension-gfm: 2.0.3 unified: 10.1.2 transitivePeerDependencies: - supports-color @@ -10844,7 +11149,7 @@ packages: /remark-math@5.1.1: resolution: {integrity: sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 mdast-util-math: 2.0.2 micromark-extension-math: 2.1.2 unified: 10.1.2 @@ -10862,7 +11167,7 @@ packages: /remark-parse@10.0.2: resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==} dependencies: - '@types/mdast': 3.0.12 + '@types/mdast': 3.0.15 mdast-util-from-markdown: 1.3.1 unified: 10.1.2 transitivePeerDependencies: @@ -10881,8 +11186,8 @@ packages: /remark-rehype@10.1.0: resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} dependencies: - '@types/hast': 2.3.5 - '@types/mdast': 3.0.12 + '@types/hast': 2.3.8 + '@types/mdast': 3.0.15 mdast-util-to-hast: 12.3.0 unified: 10.1.2 dev: false @@ -10945,20 +11250,24 @@ packages: engines: {node: '>=8'} dev: true - /resolve@1.22.2: - resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} + /resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + dev: true + + /resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true dependencies: - is-core-module: 2.12.1 + is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true - /resolve@2.0.0-next.4: - resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} + /resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} hasBin: true dependencies: - is-core-module: 2.12.1 + is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true @@ -10969,6 +11278,14 @@ packages: dependencies: onetime: 5.1.2 signal-exit: 3.0.7 + dev: true + + /restore-cursor@4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 /retimer@3.0.0: resolution: {integrity: sha512-WKE0j11Pa0ZJI5YIk0nflGI7SQsfl2ljihVy7ogh7DeQSeYAUi0ubZ/yEueGtDfUPk6GH5LRw1hBdLq4IwUBWA==} @@ -10985,6 +11302,7 @@ packages: /rfdc@1.3.0: resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} + dev: true /rimraf@2.7.1: resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} @@ -10999,12 +11317,12 @@ packages: dependencies: glob: 7.2.3 - /rimraf@5.0.1: - resolution: {integrity: sha512-OfFZdwtd3lZ+XZzYP/6gTACubwFcHdLRqS9UX3UwpU2dnGQYkPFISRwvM3w9IiB2w7bW5qGo/uAwE4SmXXSKvg==} + /rimraf@5.0.5: + resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} engines: {node: '>=14'} hasBin: true dependencies: - glob: 10.3.1 + glob: 10.3.10 /ripemd160@2.0.2: resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} @@ -11020,14 +11338,11 @@ packages: bn.js: 5.2.1 dev: true - /roarr@7.15.0: - resolution: {integrity: sha512-CV9WefQfUXTX6wr8CrEMhfNef3sjIt9wNhE/5PNu4tNWsaoDNDXqq+OGn/RW9A1UPb0qc7FQlswXRaJJJsqn8A==} - engines: {node: '>=12.0'} + /roarr@7.18.3: + resolution: {integrity: sha512-1oGYrNJ7IE+vD7i6nC7cuMBq6poy7FmbcRUHDDiSMD7VH/KpQmvVy+WJLOE3HtpQv84Y8orsec+uJgtiiiyJMw==} + engines: {node: '>=18.0'} dependencies: - boolean: 3.2.0 - fast-json-stringify: 2.7.13 fast-printf: 1.6.9 - globalthis: 1.0.3 safe-stable-stringify: 2.4.3 semver-compare: 1.0.0 dev: false @@ -11043,6 +11358,13 @@ packages: optionalDependencies: fsevents: 2.3.3 + /run-applescript@5.0.0: + resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} + engines: {node: '>=12'} + dependencies: + execa: 5.1.1 + dev: true + /run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: @@ -11055,7 +11377,7 @@ packages: /rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} dependencies: - tslib: 2.5.3 + tslib: 2.6.2 dev: true /sade@1.8.1: @@ -11065,8 +11387,19 @@ packages: mri: 1.2.0 dev: false + /safe-array-concat@1.0.1: + resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} + engines: {node: '>=0.4'} + dependencies: + call-bind: 1.0.5 + get-intrinsic: 1.2.2 + has-symbols: 1.0.3 + isarray: 2.0.5 + dev: true + /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + dev: true /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} @@ -11074,8 +11407,8 @@ packages: /safe-regex-test@1.0.0: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 is-regex: 1.1.4 dev: true @@ -11087,23 +11420,16 @@ packages: /safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - /scheduler@0.20.2: - resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - dev: false - /scheduler@0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} dependencies: loose-envify: 1.4.0 dev: false - /scroll-into-view-if-needed@3.0.10: - resolution: {integrity: sha512-t44QCeDKAPf1mtQH3fYpWz8IM/DyvHLjs8wUvvwMYxk5moOqCzrMSxK6HQVD0QVmVjXFavoFIPRVrMuJPKAvtg==} + /scroll-into-view-if-needed@3.1.0: + resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==} dependencies: - compute-scroll-into-view: 3.0.3 + compute-scroll-into-view: 3.1.0 dev: false /scrypt-js@3.0.1: @@ -11132,18 +11458,13 @@ packages: resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==} dev: false - /semver@5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true - dev: true - /semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true dev: true - /semver@6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true /semver@7.3.5: @@ -11206,6 +11527,24 @@ packages: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} dev: true + /set-function-length@1.1.1: + resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.1 + get-intrinsic: 1.2.2 + gopd: 1.0.1 + has-property-descriptors: 1.0.1 + + /set-function-name@2.0.1: + resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} + engines: {node: '>= 0.4'} + dependencies: + define-data-property: 1.1.1 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.1 + dev: true + /setimmediate@1.0.5: resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} dev: true @@ -11248,11 +11587,12 @@ packages: /shell-quote@1.8.1: resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} + dev: true - /shiki@0.14.3: - resolution: {integrity: sha512-U3S/a+b0KS+UkTyMjoNojvTgrBHjgp7L6ovhFVZsXmBGnVdQ4K4U9oK0z63w538S91ATngv1vXigHCSWOwnr+g==} + /shiki@0.14.5: + resolution: {integrity: sha512-1gCAYOcmCFONmErGTrS1fjzJLA7MGZmKzrBNX7apqSwhyITJg2O102uFzXUeBxNnEkDA9vHIKLyeKq0V083vIw==} dependencies: - ansi-sequence-parser: 1.1.0 + ansi-sequence-parser: 1.1.1 jsonc-parser: 3.2.0 vscode-oniguruma: 1.7.0 vscode-textmate: 8.0.0 @@ -11261,9 +11601,9 @@ packages: /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.1 - object-inspect: 1.12.3 + call-bind: 1.0.5 + get-intrinsic: 1.2.2 + object-inspect: 1.13.1 /siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} @@ -11272,8 +11612,8 @@ packages: /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - /signal-exit@4.0.2: - resolution: {integrity: sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} /simple-concat@1.0.1: @@ -11302,42 +11642,27 @@ packages: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} - /slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - dev: true - - /slice-ansi@3.0.0: - resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} - engines: {node: '>=8'} - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - - /slice-ansi@4.0.0: - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - dev: true - /slice-ansi@5.0.0: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} dependencies: ansi-styles: 6.2.1 is-fullwidth-code-point: 4.0.0 - dev: true + + /slice-ansi@6.0.0: + resolution: {integrity: sha512-6bn4hRfkTvDfUoEQYkERg0BVF1D0vrX9HEkMl08uDiNWvVvjylLHvZFZWkDo6wjT8tUctbYl1nCOuE66ZTaUtA==} + engines: {node: '>=14.16'} + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 4.0.0 + dev: false /smartwrap@2.0.2: resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} engines: {node: '>=6'} hasBin: true dependencies: - array.prototype.flat: 1.3.1 + array.prototype.flat: 1.3.2 breakword: 1.0.6 grapheme-splitter: 1.0.4 strip-ansi: 6.0.1 @@ -11345,8 +11670,15 @@ packages: yargs: 15.4.1 dev: true - /sonic-boom@3.3.0: - resolution: {integrity: sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g==} + /snake-case@3.0.4: + resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} + dependencies: + dot-case: 3.0.4 + tslib: 2.6.2 + dev: true + + /sonic-boom@3.7.0: + resolution: {integrity: sha512-IudtNvSqA/ObjN97tfgNmOKyDOs4dNcg4cUUsHDebqsgb8wGBBwb31LIgShNO8fye0dFI52X1+tFoKKI6Rq1Gg==} dependencies: atomic-sleep: 1.0.0 dev: false @@ -11405,7 +11737,7 @@ packages: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} dependencies: spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.13 + spdx-license-ids: 3.0.16 dev: true /spdx-exceptions@2.3.0: @@ -11416,22 +11748,17 @@ packages: resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} dependencies: spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.13 + spdx-license-ids: 3.0.16 dev: true - /spdx-license-ids@3.0.13: - resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} + /spdx-license-ids@3.0.16: + resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} dev: true /split-ca@1.0.1: resolution: {integrity: sha512-Q5thBSxp5t8WPTTJQS59LrGqOZqOsrhDGDVm8azCqIBjSBd7nd9o2PM+mDulQQkh8h//4U6hFZnc/mul8t5pWQ==} dev: true - /split2@4.1.0: - resolution: {integrity: sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==} - engines: {node: '>= 10.x'} - dev: false - /split2@4.2.0: resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} engines: {node: '>= 10.x'} @@ -11456,11 +11783,6 @@ packages: tweetnacl: 0.14.5 dev: true - /stable@0.1.8: - resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} - deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - dev: true - /stack-utils@2.0.6: resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} engines: {node: '>=10'} @@ -11509,11 +11831,6 @@ packages: engines: {node: '>=0.6.19'} dev: true - /string-similarity@4.0.4: - resolution: {integrity: sha512-/q/8Q4Bl4ZKAPjj8WerIBJWALKkaPRfrvhfF8k/B23i4nzrlRj2/go1m90In7nG/3XDSbOo0+pu6RvCTM9RGMQ==} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. - dev: false - /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -11528,44 +11845,45 @@ packages: dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 - strip-ansi: 7.0.1 + strip-ansi: 7.1.0 - /string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} + /string.prototype.matchall@4.0.10: + resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 - get-intrinsic: 1.2.1 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 + get-intrinsic: 1.2.2 has-symbols: 1.0.3 - internal-slot: 1.0.5 - regexp.prototype.flags: 1.5.0 + internal-slot: 1.0.6 + regexp.prototype.flags: 1.5.1 + set-function-name: 2.0.1 side-channel: 1.0.4 dev: true - /string.prototype.trim@1.2.7: - resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} + /string.prototype.trim@1.2.8: + resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} + /string.prototype.trimend@1.0.7: + resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true - /string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} + /string.prototype.trimstart@1.0.7: + resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.2 + call-bind: 1.0.5 + define-properties: 1.2.1 + es-abstract: 1.22.3 dev: true /string_decoder@0.10.31: @@ -11603,8 +11921,8 @@ packages: dependencies: ansi-regex: 5.0.1 - /strip-ansi@7.0.1: - resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==} + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 @@ -11659,20 +11977,20 @@ packages: /strip-literal@1.0.1: resolution: {integrity: sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==} dependencies: - acorn: 8.10.0 + acorn: 8.11.2 dev: true /stubborn-fs@1.2.5: resolution: {integrity: sha512-H2N9c26eXjzL/S/K+i/RHHcFanE74dptvvjM8iwzwbVcWY/zjBbgRqF3K0DY4+OD+uTTASTBvDoxPDaPN02D7g==} dev: false - /style-to-object@0.4.1: - resolution: {integrity: sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==} + /style-to-object@0.4.4: + resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==} dependencies: inline-style-parser: 0.1.1 dev: false - /styled-jsx@5.1.1(@babel/core@7.21.0)(react@18.2.0): + /styled-jsx@5.1.1(@babel/core@7.23.3)(react@18.2.0): resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} engines: {node: '>= 12.0.0'} peerDependencies: @@ -11685,7 +12003,7 @@ packages: babel-plugin-macros: optional: true dependencies: - '@babel/core': 7.21.0 + '@babel/core': 7.23.3 client-only: 0.0.1 react: 18.2.0 dev: false @@ -11708,16 +12026,16 @@ packages: ts-interface-checker: 0.1.13 dev: true - /superagent@8.0.6: - resolution: {integrity: sha512-HqSe6DSIh3hEn6cJvCkaM1BLi466f1LHi4yubR0tpewlMpk4RUFFy35bKz8SsPBwYfIIJy5eclp+3tCYAuX0bw==} + /superagent@8.1.2: + resolution: {integrity: sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==} engines: {node: '>=6.4.0 <13 || >=14'} dependencies: component-emitter: 1.3.0 - cookiejar: 2.1.3 + cookiejar: 2.1.4 debug: 4.3.4(supports-color@8.1.1) fast-safe-stringify: 2.1.1 form-data: 4.0.0 - formidable: 2.1.1 + formidable: 2.1.2 methods: 1.1.2 mime: 2.6.0 qs: 6.11.2 @@ -11731,7 +12049,7 @@ packages: engines: {node: '>=6.4.0'} dependencies: methods: 1.1.2 - superagent: 8.0.6 + superagent: 8.1.2 transitivePeerDependencies: - supports-color dev: true @@ -11778,18 +12096,17 @@ packages: resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} dev: true - /svgo@2.8.0: - resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} - engines: {node: '>=10.13.0'} + /svgo@3.0.3: + resolution: {integrity: sha512-X4UZvLhOglD5Xrp834HzGHf8RKUW0Ahigg/08yRO1no9t2NxffOkMiQ0WmaMIbaGlVTlSst2zWANsdhz5ybXgA==} + engines: {node: '>=14.0.0'} hasBin: true dependencies: '@trysound/sax': 0.2.0 commander: 7.2.0 - css-select: 4.3.0 - css-tree: 1.1.3 - csso: 4.2.0 + css-select: 5.1.0 + css-tree: 2.3.1 + csso: 5.0.5 picocolors: 1.0.0 - stable: 0.1.8 dev: true /sync-request@6.1.0: @@ -11807,12 +12124,12 @@ packages: get-port: 3.2.0 dev: true - /synckit@0.8.4: - resolution: {integrity: sha512-Dn2ZkzMdSX827QbowGbU/4yjWuvNaCoScLLoMo/yKbu+P4GBR6cRGKZH27k6a9bRzdqcyd1DE96pQtQ6uNkmyw==} + /synckit@0.8.5: + resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} engines: {node: ^14.18.0 || >=16.0.0} dependencies: - '@pkgr/utils': 2.3.1 - tslib: 2.5.3 + '@pkgr/utils': 2.4.2 + tslib: 2.6.2 dev: true /tapable@2.2.1: @@ -11895,7 +12212,7 @@ packages: '@types/concat-stream': 1.6.1 '@types/form-data': 0.0.33 '@types/node': 8.10.66 - '@types/qs': 6.9.7 + '@types/qs': 6.9.10 caseless: 0.12.0 concat-stream: 1.6.2 form-data: 2.5.1 @@ -11918,8 +12235,8 @@ packages: any-promise: 1.3.0 dev: true - /thread-stream@2.3.0: - resolution: {integrity: sha512-kaDqm1DET9pp3NXwR8382WHbnpXnRkN9xGN9dQt3B2+dmXiW8X1SOwmFOxAErEQ47ObhZ96J6yhZNXuyCOL7KA==} + /thread-stream@2.4.1: + resolution: {integrity: sha512-d/Ex2iWd1whipbT681JmTINKw0ZwOUBZm7+Gjs64DHuX34mmw8vJL2bFAaNacaW72zYiTJxSHi5abUuOi5nsfg==} dependencies: real-require: 0.2.0 dev: false @@ -11936,13 +12253,6 @@ packages: retimer: 3.0.0 dev: true - /tiny-glob@0.2.9: - resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} - dependencies: - globalyzer: 0.1.0 - globrex: 0.1.2 - dev: true - /tinybench@2.5.1: resolution: {integrity: sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==} dev: true @@ -11972,6 +12282,11 @@ packages: engines: {node: '>=0.10.0'} dev: false + /titleize@3.0.0: + resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} + engines: {node: '>=12'} + dev: true + /tmp-promise@3.0.3: resolution: {integrity: sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==} dependencies: @@ -12016,7 +12331,7 @@ packages: engines: {node: '>=0.8'} dependencies: psl: 1.9.0 - punycode: 2.3.0 + punycode: 2.3.1 dev: true /tr46@0.0.3: @@ -12025,7 +12340,7 @@ packages: /tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} dependencies: - punycode: 2.3.0 + punycode: 2.3.1 dev: true /tree-kill@1.2.2: @@ -12046,8 +12361,8 @@ packages: resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} dev: false - /ts-api-utils@1.0.1(typescript@5.2.2): - resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} + /ts-api-utils@1.0.3(typescript@5.2.2): + resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} engines: {node: '>=16.13.0'} peerDependencies: typescript: '>=4.2.0' @@ -12063,7 +12378,7 @@ packages: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} dev: true - /ts-node@10.9.1(@types/node@18.16.18)(typescript@5.1.3): + /ts-node@10.9.1(@types/node@18.16.18)(typescript@5.2.2): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true peerDependencies: @@ -12083,19 +12398,19 @@ packages: '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 '@types/node': 18.16.18 - acorn: 8.10.0 - acorn-walk: 8.2.0 + acorn: 8.11.2 + acorn-walk: 8.3.0 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.1.3 + typescript: 5.2.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 dev: true - /tsc-alias@1.8.2: - resolution: {integrity: sha512-ukBkcNekOgwtnSWYLD5QsMX3yQWg7JviAs8zg3qJGgu4LGtY3tsV4G6vnqvOXIDkbC+XL9vbhObWSpRA5/6wbg==} + /tsc-alias@1.8.8: + resolution: {integrity: sha512-OYUOd2wl0H858NvABWr/BoSKNERw3N9GTi3rHPK8Iv4O1UyUXIrTTOAZNHsjlVpXFOhpJBVARI1s+rzwLivN3Q==} hasBin: true dependencies: chokidar: 3.5.3 @@ -12103,7 +12418,7 @@ packages: globby: 11.1.0 mylas: 2.1.13 normalize-path: 3.0.0 - plimit-lit: 1.5.0 + plimit-lit: 1.6.1 dev: true /tsconfig-paths@3.14.2: @@ -12115,14 +12430,10 @@ packages: strip-bom: 3.0.0 dev: true - /tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - dev: true - - /tslib@2.5.3: - resolution: {integrity: sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==} + /tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - /tsup@7.0.0(typescript@5.1.3): + /tsup@7.0.0(typescript@5.2.2): resolution: {integrity: sha512-yYARDRkPq07mO3YUXTvF12ISwWQG57Odve8aFEgLdHyeGungxuKxb19yf9G0W8y59SZFkLnRj1gkoVk1gd5fbQ==} engines: {node: '>=16.14'} hasBin: true @@ -12152,24 +12463,14 @@ packages: source-map: 0.8.0-beta.0 sucrase: 3.32.0 tree-kill: 1.2.2 - typescript: 5.1.3 + typescript: 5.2.2 transitivePeerDependencies: - supports-color - ts-node dev: true - /tsutils@3.21.0(typescript@4.9.5): - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - 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' - dependencies: - tslib: 1.14.1 - typescript: 4.9.5 - dev: true - - /tty-table@4.2.1: - resolution: {integrity: sha512-xz0uKo+KakCQ+Dxj1D/tKn2FSyreSYWzdkL/BYhgN6oMW808g8QRMuh1atAV9fjTPbWBjfbkKQpI/5rEcnAc7g==} + /tty-table@4.2.3: + resolution: {integrity: sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==} engines: {node: '>=8.0.0'} hasBin: true dependencies: @@ -12219,6 +12520,7 @@ packages: /type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} + dev: true /type-fest@0.6.0: resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} @@ -12238,7 +12540,6 @@ packages: /type-fest@1.4.0: resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} engines: {node: '>=10'} - dev: false /type-fest@2.19.0: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} @@ -12258,28 +12559,46 @@ packages: mime-types: 2.1.35 dev: false - /typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + /typed-array-buffer@1.0.0: + resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.5 + get-intrinsic: 1.2.2 + is-typed-array: 1.1.12 + dev: true + + /typed-array-byte-length@1.0.0: + resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 for-each: 0.3.3 - is-typed-array: 1.1.10 + has-proto: 1.0.1 + is-typed-array: 1.1.12 dev: true - /typedarray@0.0.6: - resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} + /typed-array-byte-offset@1.0.0: + resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} + engines: {node: '>= 0.4'} + dependencies: + available-typed-arrays: 1.0.5 + call-bind: 1.0.5 + for-each: 0.3.3 + has-proto: 1.0.1 + is-typed-array: 1.1.12 dev: true - /typescript@4.9.5: - resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} - engines: {node: '>=4.2.0'} - hasBin: true + /typed-array-length@1.0.4: + resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + dependencies: + call-bind: 1.0.5 + for-each: 0.3.3 + is-typed-array: 1.1.12 dev: true - /typescript@5.1.3: - resolution: {integrity: sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==} - engines: {node: '>=14.17'} - hasBin: true + /typedarray@0.0.6: + resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} dev: true /typescript@5.2.2: @@ -12304,7 +12623,7 @@ packages: /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-bigints: 1.0.2 has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 @@ -12339,7 +12658,7 @@ packages: /unified@10.1.2: resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 bail: 2.0.2 extend: 3.0.2 is-buffer: 2.0.5 @@ -12351,7 +12670,7 @@ packages: /unist-util-find-after@5.0.0: resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-is: 6.0.0 dev: false @@ -12362,51 +12681,51 @@ packages: /unist-util-is@5.2.1: resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 dev: false /unist-util-is@6.0.0: resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 dev: false /unist-util-position-from-estree@1.1.2: resolution: {integrity: sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 dev: false /unist-util-position@4.0.4: resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 dev: false /unist-util-position@5.0.0: resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 dev: false /unist-util-remove-position@4.0.2: resolution: {integrity: sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 unist-util-visit: 4.1.2 dev: false /unist-util-remove-position@5.0.0: resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-visit: 5.0.0 dev: false /unist-util-remove@4.0.0: resolution: {integrity: sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 dev: false @@ -12414,40 +12733,40 @@ packages: /unist-util-stringify-position@3.0.3: resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 dev: false /unist-util-stringify-position@4.0.0: resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 dev: false /unist-util-visit-parents@4.1.1: resolution: {integrity: sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 unist-util-is: 5.2.1 dev: false /unist-util-visit-parents@5.1.3: resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 unist-util-is: 5.2.1 dev: false /unist-util-visit-parents@6.0.1: resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-is: 6.0.0 dev: false /unist-util-visit@3.1.0: resolution: {integrity: sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 unist-util-is: 5.2.1 unist-util-visit-parents: 4.1.1 dev: false @@ -12455,7 +12774,7 @@ packages: /unist-util-visit@4.1.2: resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 unist-util-is: 5.2.1 unist-util-visit-parents: 5.1.3 dev: false @@ -12463,7 +12782,7 @@ packages: /unist-util-visit@5.0.0: resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 dev: false @@ -12483,20 +12802,25 @@ packages: engines: {node: '>= 0.8'} dev: false - /update-browserslist-db@1.0.10(browserslist@4.21.5): - resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} + /untildify@4.0.0: + resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} + engines: {node: '>=8'} + dev: true + + /update-browserslist-db@1.0.13(browserslist@4.22.1): + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.21.5 + browserslist: 4.22.1 escalade: 3.1.1 picocolors: 1.0.0 /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: - punycode: 2.3.0 + punycode: 2.3.1 /urlpattern-polyfill@8.0.2: resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==} @@ -12525,8 +12849,8 @@ packages: hasBin: true dev: true - /uuid@9.0.0: - resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==} + /uuid@9.0.1: + resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true dev: false @@ -12573,14 +12897,14 @@ packages: /vfile-location@5.0.2: resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 vfile: 6.0.1 dev: false /vfile-matter@3.0.1: resolution: {integrity: sha512-CAAIDwnh6ZdtrqAuxdElUqQRQDQgbbIrYtDYI8gCjXS1qQ+1XdLoK8FIZWxJwn0/I+BkSSZpar3SOgjemQz4fg==} dependencies: - '@types/js-yaml': 4.0.5 + '@types/js-yaml': 4.0.9 is-buffer: 2.0.5 js-yaml: 4.1.0 dev: false @@ -12588,21 +12912,21 @@ packages: /vfile-message@3.1.4: resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 unist-util-stringify-position: 3.0.3 dev: false /vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-stringify-position: 4.0.0 dev: false /vfile@5.3.7: resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} dependencies: - '@types/unist': 2.0.7 + '@types/unist': 2.0.10 is-buffer: 2.0.5 unist-util-stringify-position: 3.0.3 vfile-message: 3.1.4 @@ -12611,12 +12935,12 @@ packages: /vfile@6.0.1: resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} dependencies: - '@types/unist': 3.0.0 + '@types/unist': 3.0.2 unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 dev: false - /viem@0.3.50(typescript@5.1.3): + /viem@0.3.50(typescript@5.2.2): resolution: {integrity: sha512-s+LxCYZTR9F/qPk1/n1YDVAX9vSeVz7GraqBZWGrDuenCJxo9ArCoIceJ6ksI0WwSeNzcZ0VVbD/kWRzTxkipw==} dependencies: '@adraffy/ens-normalize': 1.9.0 @@ -12624,8 +12948,8 @@ packages: '@noble/hashes': 1.3.0 '@scure/bip32': 1.3.0 '@scure/bip39': 1.2.0 - '@wagmi/chains': 1.0.0(typescript@5.1.3) - abitype: 0.8.7(typescript@5.1.3) + '@wagmi/chains': 1.0.0(typescript@5.2.2) + abitype: 0.8.7(typescript@5.2.2) isomorphic-ws: 5.0.0(ws@8.12.0) ws: 8.12.0 transitivePeerDependencies: @@ -12635,47 +12959,49 @@ packages: - zod dev: true - /viem@1.2.6(typescript@5.1.3): - resolution: {integrity: sha512-3tWiUb0D8dbFj66rUGLg6TKJjH98ZziomkyCyI0evqJFYdNfiEG0K2Ns07MlOXZZF4sGe+a5Mj15DaDOwm7sgw==} + /viem@1.18.9(typescript@5.2.2): + resolution: {integrity: sha512-eAXtoTwAFA3YEgjTYMb5ZTQrDC0UPx5qyZ4sv90TirVKepcM9mBPksTkC1SSWya0UdxhBmhEBL/CiYMjmGCTWg==} peerDependencies: typescript: '>=5.0.4' + peerDependenciesMeta: + typescript: + optional: true dependencies: - '@adraffy/ens-normalize': 1.9.0 - '@noble/curves': 1.0.0 - '@noble/hashes': 1.3.0 - '@scure/bip32': 1.3.0 - '@scure/bip39': 1.2.0 - '@wagmi/chains': 1.2.0(typescript@5.1.3) - abitype: 0.8.11(typescript@5.1.3) - isomorphic-ws: 5.0.0(ws@8.12.0) - typescript: 5.1.3 - ws: 8.12.0 + '@adraffy/ens-normalize': 1.9.4 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@scure/bip32': 1.3.2 + '@scure/bip39': 1.2.1 + abitype: 0.9.8(typescript@5.2.2) + isows: 1.0.3(ws@8.13.0) + typescript: 5.2.2 + ws: 8.13.0 transitivePeerDependencies: - bufferutil - utf-8-validate - zod - dev: true - /viem@1.2.6(typescript@5.2.2): - resolution: {integrity: sha512-3tWiUb0D8dbFj66rUGLg6TKJjH98ZziomkyCyI0evqJFYdNfiEG0K2Ns07MlOXZZF4sGe+a5Mj15DaDOwm7sgw==} - peerDependencies: - typescript: '>=5.0.4' + /vite-node@0.34.6(@types/node@18.16.18): + resolution: {integrity: sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==} + engines: {node: '>=v14.18.0'} + hasBin: true dependencies: - '@adraffy/ens-normalize': 1.9.0 - '@noble/curves': 1.0.0 - '@noble/hashes': 1.3.0 - '@scure/bip32': 1.3.0 - '@scure/bip39': 1.2.0 - '@wagmi/chains': 1.2.0(typescript@5.2.2) - abitype: 0.8.11(typescript@5.2.2) - isomorphic-ws: 5.0.0(ws@8.12.0) - typescript: 5.2.2 - ws: 8.12.0 + cac: 6.7.14 + debug: 4.3.4(supports-color@8.1.1) + mlly: 1.4.2 + pathe: 1.1.1 + picocolors: 1.0.0 + vite: 4.5.0(@types/node@18.16.18) transitivePeerDependencies: - - bufferutil - - utf-8-validate - - zod - dev: false + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + dev: true /vite-node@0.34.6(@types/node@20.9.0): resolution: {integrity: sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA==} @@ -12697,6 +13023,43 @@ packages: - sugarss - supports-color - terser + dev: false + + /vite@4.5.0(@types/node@18.16.18): + resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + '@types/node': '>= 14' + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + '@types/node': 18.16.18 + esbuild: 0.18.20 + postcss: 8.4.31 + rollup: 3.29.4 + optionalDependencies: + fsevents: 2.3.3 + dev: true /vite@4.5.0(@types/node@20.9.0): resolution: {integrity: sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==} @@ -12732,6 +13095,7 @@ packages: rollup: 3.29.4 optionalDependencies: fsevents: 2.3.3 + dev: false /vitest@0.34.6: resolution: {integrity: sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q==} @@ -12766,14 +13130,14 @@ packages: dependencies: '@types/chai': 4.3.9 '@types/chai-subset': 1.3.3 - '@types/node': 20.9.0 + '@types/node': 18.16.18 '@vitest/expect': 0.34.6 '@vitest/runner': 0.34.6 '@vitest/snapshot': 0.34.6 '@vitest/spy': 0.34.6 '@vitest/utils': 0.34.6 - acorn: 8.10.0 - acorn-walk: 8.2.0 + acorn: 8.11.2 + acorn-walk: 8.3.0 cac: 6.7.14 chai: 4.3.10 debug: 4.3.4(supports-color@8.1.1) @@ -12785,8 +13149,8 @@ packages: strip-literal: 1.0.1 tinybench: 2.5.1 tinypool: 0.7.0 - vite: 4.5.0(@types/node@20.9.0) - vite-node: 0.34.6(@types/node@20.9.0) + vite: 4.5.0(@types/node@18.16.18) + vite-node: 0.34.6(@types/node@18.16.18) why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -12861,7 +13225,7 @@ packages: '@peculiar/json-schema': 1.1.12 asn1js: 3.0.5 pvtsutils: 1.3.2 - tslib: 2.5.3 + tslib: 2.6.2 dev: true /webidl-conversions@3.0.1: @@ -12899,6 +13263,33 @@ packages: is-symbol: 1.0.4 dev: true + /which-builtin-type@1.1.3: + resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} + engines: {node: '>= 0.4'} + dependencies: + function.prototype.name: 1.1.6 + has-tostringtag: 1.0.0 + 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.1 + which-typed-array: 1.1.13 + dev: true + + /which-collection@1.0.1: + resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} + dependencies: + is-map: 2.0.2 + is-set: 2.0.2 + is-weakmap: 2.0.1 + is-weakset: 2.0.2 + dev: true + /which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} dev: true @@ -12911,16 +13302,15 @@ packages: path-exists: 4.0.0 dev: true - /which-typed-array@1.1.9: - resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} + /which-typed-array@1.1.13: + resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} engines: {node: '>= 0.4'} dependencies: available-typed-arrays: 1.0.5 - call-bind: 1.0.2 + call-bind: 1.0.5 for-each: 0.3.3 gopd: 1.0.1 has-tostringtag: 1.0.0 - is-typed-array: 1.1.10 dev: true /which@1.3.1: @@ -12950,10 +13340,14 @@ packages: engines: {node: '>=8'} dependencies: string-width: 4.2.3 + dev: true - /word-wrap@1.2.3: - resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} - engines: {node: '>=0.10.0'} + /widest-line@4.0.1: + resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} + engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + dev: false /wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} @@ -12966,6 +13360,7 @@ packages: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 + dev: true /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} @@ -12981,7 +13376,7 @@ packages: dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 - strip-ansi: 7.0.1 + strip-ansi: 7.1.0 /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -12997,6 +13392,7 @@ packages: optional: true utf-8-validate: optional: true + dev: true /ws@8.12.0: resolution: {integrity: sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==} @@ -13009,6 +13405,7 @@ packages: optional: true utf-8-validate: optional: true + dev: true /ws@8.13.0: resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} @@ -13021,7 +13418,18 @@ packages: optional: true utf-8-validate: optional: true - dev: true + + /ws@8.14.2: + resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true /xtend@4.0.2: resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} @@ -13050,8 +13458,8 @@ packages: engines: {node: '>= 6'} dev: true - /yaml@2.3.1: - resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} + /yaml@2.3.3: + resolution: {integrity: sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==} engines: {node: '>= 14'} /yargs-parser@18.1.3: @@ -13109,17 +13517,9 @@ packages: /yocto-queue@1.0.0: resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} engines: {node: '>=12.20'} - dev: true - - /yoga-layout-prebuilt@1.10.0: - resolution: {integrity: sha512-YnOmtSbv4MTf7RGJMK0FvZ+KD8OEe/J5BNnR0GHhD8J/XcG/Qvxgszm0Un6FTHWW4uHlTgP0IztiXQnGyIR45g==} - engines: {node: '>=8'} - dependencies: - '@types/yoga-layout': 1.9.2 - dev: false - /zod@3.21.4: - resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==} + /yoga-wasm-web@0.3.3: + resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} dev: false /zod@3.22.4: