From e3463deb6fd142ff28e754ac589d120b92796421 Mon Sep 17 00:00:00 2001 From: Hebilicious Date: Wed, 9 Aug 2023 18:41:11 +0700 Subject: [PATCH 1/5] feat: add edge support to aws-lambda preset --- src/presets/aws-lambda.ts | 27 +- src/runtime/entries/aws-lambda-default.ts | 2 + src/runtime/entries/aws-lambda-edge.ts | 44 +++ .../{aws-lambda.ts => aws-lambda-single.ts} | 0 src/runtime/utils.lambda.ts | 43 ++- src/types/presets.ts | 15 + src/utils/cdk.ts | 266 ++++++++++++++++++ test/presets/aws-lambda-edge.test.ts | 81 ++++++ test/tests.ts | 21 +- 9 files changed, 482 insertions(+), 17 deletions(-) create mode 100644 src/runtime/entries/aws-lambda-default.ts create mode 100644 src/runtime/entries/aws-lambda-edge.ts rename src/runtime/entries/{aws-lambda.ts => aws-lambda-single.ts} (100%) create mode 100644 src/utils/cdk.ts create mode 100644 test/presets/aws-lambda-edge.test.ts diff --git a/src/presets/aws-lambda.ts b/src/presets/aws-lambda.ts index 0ced0f8b10..de8bbe1db9 100644 --- a/src/presets/aws-lambda.ts +++ b/src/presets/aws-lambda.ts @@ -1,5 +1,30 @@ import { defineNitroPreset } from "../preset"; +import { generateCdkApp } from "../utils/cdk"; export const awsLambda = defineNitroPreset({ - entry: "#internal/nitro/entries/aws-lambda", + entry: `#internal/nitro/entries/aws-lambda-{{ awsLambda.target }}`, + awsLambda: { + // we need this defined here so it's picked up by the template in lambda entry + target: (process.env.NITRO_AWSLAMBDA_TARGET || "default") as any, + }, + hooks: { + "rollup:before": (nitro) => { + const target = nitro.options.awsLambda?.target as unknown; + if (!target || target === "default") { + nitro.logger.warn( + "Nether `awsLambda.target` or `NITRO_AWSLAMBDA_GEN` is set. Set the target to remove this warning. See https://nitro.unjs.io/deploy/providers/aws-lambda for more information." + ); + // Using the target single makes this preset backwards compatible for people already using it + nitro.options.awsLambda = { target: "single" }; + } + }, + async compiled(nitro) { + if ( + nitro.options.awsLambda.target === "edge" && + nitro.options.awsLambda.cdk === true + ) { + await generateCdkApp(nitro); + } + }, + }, }); diff --git a/src/runtime/entries/aws-lambda-default.ts b/src/runtime/entries/aws-lambda-default.ts new file mode 100644 index 0000000000..bcfe4ac3d3 --- /dev/null +++ b/src/runtime/entries/aws-lambda-default.ts @@ -0,0 +1,2 @@ +// we need this file to detect if the user is passing a `target` property +export { handler } from "./aws-lambda-single"; diff --git a/src/runtime/entries/aws-lambda-edge.ts b/src/runtime/entries/aws-lambda-edge.ts new file mode 100644 index 0000000000..be9dd14de7 --- /dev/null +++ b/src/runtime/entries/aws-lambda-edge.ts @@ -0,0 +1,44 @@ +import type { + CloudFrontRequestEvent, + CloudFrontResultResponse, + Context, +} from "aws-lambda"; +import "#internal/nitro/virtual/polyfill"; +import { nitroApp } from "../app"; +import { + normalizeCloudfrontBody, + normalizeCloudfrontIncomingHeaders, + normalizeCloudfrontOutgoingHeaders, + normalizeLambdaOutgoingBody, +} from "../utils.lambda"; + +export const handler = async function handler( + event: CloudFrontRequestEvent, + context: Context +): Promise { + const request = event.Records[0].cf.request; + + console.log("Cloudfront Request", request); + const url = getFullUrl(request.uri, request.querystring); + const headers = normalizeCloudfrontIncomingHeaders(request.headers); + const body = normalizeCloudfrontBody(request.body); + console.log(url, headers, body); + const r = await nitroApp.localCall({ + event, + url, + context, + headers, + method: request.method, + body, + }); + console.log("Nitro response", r); + return { + status: r.status.toString(), + headers: normalizeCloudfrontOutgoingHeaders(r.headers), + body: normalizeLambdaOutgoingBody(r.body, r.headers), + }; +}; + +function getFullUrl(uri: string, queryString?: string) { + return queryString ? `${uri}?${queryString}` : uri; +} diff --git a/src/runtime/entries/aws-lambda.ts b/src/runtime/entries/aws-lambda-single.ts similarity index 100% rename from src/runtime/entries/aws-lambda.ts rename to src/runtime/entries/aws-lambda-single.ts diff --git a/src/runtime/utils.lambda.ts b/src/runtime/utils.lambda.ts index 74e2ac4083..ee685c7652 100644 --- a/src/runtime/utils.lambda.ts +++ b/src/runtime/utils.lambda.ts @@ -1,5 +1,9 @@ import type { Readable } from "node:stream"; -import type { APIGatewayProxyEventHeaders } from "aws-lambda"; +import type { + APIGatewayProxyEventHeaders, + CloudFrontHeaders, + CloudFrontRequest, +} from "aws-lambda"; export function normalizeLambdaIncomingHeaders( headers?: APIGatewayProxyEventHeaders @@ -89,3 +93,40 @@ const TEXT_TYPE_RE = /^text\/|\/(json|xml)|utf-?8/; function isTextType(contentType = "") { return TEXT_TYPE_RE.test(contentType); } + +export function normalizeCloudfrontOutgoingHeaders( + headers: Record +): CloudFrontHeaders { + return Object.fromEntries( + Object.entries(headers) + .filter(([key]) => !["content-length"].includes(key)) + .map(([key, v]) => [ + key, + Array.isArray(v) + ? v.map((value) => ({ key, value })) + : [{ key, value: v.toString() }], + ]) + ); +} + +export function normalizeCloudfrontIncomingHeaders(headers: CloudFrontHeaders) { + return Object.fromEntries( + Object.entries(headers).map(([key, keyValues]) => [ + key, + keyValues.map((kv) => kv.value), + ]) + ); +} + +export function normalizeCloudfrontBody(body?: CloudFrontRequest["body"]) { + if (body === undefined) { + return undefined; + } + + const bodyString = body; + if (body.encoding !== undefined && body.encoding === "base64") { + bodyString.data = Buffer.from(body.data, "base64").toString("utf8"); + bodyString.data = decodeURIComponent(bodyString.data); + } + return bodyString.data; +} diff --git a/src/types/presets.ts b/src/types/presets.ts index fafccee23c..cebc5a6ca4 100644 --- a/src/types/presets.ts +++ b/src/types/presets.ts @@ -95,6 +95,20 @@ interface FirebaseOptionsGen2 extends FirebaseOptionsBase { type FirebaseOptions = FirebaseOptionsGen1 | FirebaseOptionsGen2; +interface AWSLambdaOptionsBase { + target: "single" | "edge"; +} + +interface AwsLambdaOptionsSingleRegion extends AWSLambdaOptionsBase { + target: "single"; +} + +interface AwsLambdaOptionsEdge extends AWSLambdaOptionsBase { + target: "edge"; + cdk?: boolean; +} + +type AWSLambdaOptions = AwsLambdaOptionsSingleRegion | AwsLambdaOptionsEdge; /** * https://vercel.com/docs/build-output-api/v3/primitives#serverless-function-configuration */ @@ -149,6 +163,7 @@ export interface PresetOptions { functions?: VercelServerlessFunctionConfig; }; firebase: FirebaseOptions; + awsLambda: AWSLambdaOptions; cloudflare: { pages: { /** diff --git a/src/utils/cdk.ts b/src/utils/cdk.ts new file mode 100644 index 0000000000..ad13d4d716 --- /dev/null +++ b/src/utils/cdk.ts @@ -0,0 +1,266 @@ +import { resolve } from "pathe"; +import { Nitro } from "../types"; +import { writeFile } from "../utils"; + +export async function generateCdkApp(nitro: Nitro) { + if (nitro.options.awsLambda.target !== "edge") { + // @todo implement regular construct + return; + } + const cdkDir = resolve(nitro.options.output.dir, "cdk"); + await writeFile(resolve(cdkDir, "bin/nitro-lambda.ts"), entryEdgeTemplate()); + await writeFile( + resolve(cdkDir, "lib/nitro-lambda-stack.ts"), + nitroLambdaEdgeStackTemplate() + ); + await writeFile( + resolve(cdkDir, "package.json"), + JSON.stringify({ + private: true, + scripts: { + cdk: "cdk", + deploy: "npm install && cdk deploy", + }, + devDependencies: { + "@types/node": "18", + "aws-cdk": "^2", + jiti: "latest", + typescript: "latest", + }, + dependencies: { + "aws-cdk-lib": "^2", + constructs: "^10.0.0", + "source-map-support": "^0.5.21", + }, + }) + ); + await writeFile( + resolve(cdkDir, "cdk.json"), + JSON.stringify({ + app: "npx jiti bin/nitro-lambda.ts", + }) + ); + await writeFile( + resolve(cdkDir, "tsconfig.json"), + JSON.stringify({ + compilerOptions: { + target: "ES2018", + module: "commonjs", + lib: ["es2018"], + declaration: true, + strict: true, + noImplicitAny: true, + strictNullChecks: true, + noImplicitThis: true, + alwaysStrict: true, + noUnusedLocals: false, + noUnusedParameters: false, + noImplicitReturns: true, + noFallthroughCasesInSwitch: false, + inlineSourceMap: true, + inlineSources: true, + experimentalDecorators: true, + strictPropertyInitialization: false, + typeRoots: ["./node_modules/@types"], + }, + exclude: ["node_modules", "cdk.out"], + }) + ); + nitro.logger.info("Generated CDK app !"); + nitro.logger.info( + "Deploy: cd ./cdk && APP_ID= npm run deploy --all" + ); +} + +/** Templates */ + +function entryEdgeTemplate() { + return /* ts */ ` + #!/usr/bin/env node + import "source-map-support/register"; + import * as cdk from "aws-cdk-lib"; + import { NitroLambdaEdgeStack } from "../lib/nitro-lambda-stack"; + + if (!process.env.APP_ID) { + throw new Error("$APP_ID is not set. Please rerun after set it."); + } + + const app = new cdk.App(); + new NitroLambdaEdgeStack(app, process.env.APP_ID, { + env: { + account: process.env.CDK_DEFAULT_ACCOUNT, + region: process.env.CDK_DEFAULT_REGION, + }, + }); + `.trim(); +} + +function nitroLambdaEdgeStackTemplate() { + return /* ts */ ` + import { readdirSync, readFileSync, statSync, writeFileSync } from "node:fs"; + import { join } from "node:path"; + import { Construct } from "constructs"; + import { CfnOutput, RemovalPolicy, Stage, Stack, StackProps } from "aws-cdk-lib"; + import * as cloudfront from "aws-cdk-lib/aws-cloudfront"; + import * as origins from "aws-cdk-lib/aws-cloudfront-origins"; + import * as lambda from "aws-cdk-lib/aws-lambda"; + import * as s3 from "aws-cdk-lib/aws-s3"; + import * as s3deployment from "aws-cdk-lib/aws-s3-deployment"; + import { Asset, AssetProps } from "aws-cdk-lib/aws-s3-assets"; + + + interface NitroJSON { + date: string; + preset: string; + commands: { + preview?: string; + deploy?: string; + }; + output: { + serverDir: string; + publicDir: string; + }; + } + + interface ICloudFrontBehaviorResolver { + resolve(key: string): cloudfront.BehaviorOptions; + } + + /** + * Static asset of nitro. + * This Construct provides to resolve + * additionalBehaviors of CloudFront Distribution easy. + */ + class NitroStaticAsset implements s3deployment.ISource { + /** + * Directories under publicDir. + */ + public readonly directories: string[]; + /** + * files under publicDir. + */ + public readonly files: string[]; + private readonly source: s3deployment.ISource; + constructor(public readonly path: string) { + const objects = readdirSync(path); + this.directories = objects.filter((obj) => + statSync(join(path, obj)).isDirectory() + ); + this.files = objects.filter((obj) => statSync(join(path, obj)).isFile()); + if (objects.length === 0) { + writeFileSync(join(path, "dotfile"), ""); + } + this.source = s3deployment.Source.asset(path); + } + + bind(scope: Construct, context?: s3deployment.DeploymentSourceContext): s3deployment.SourceConfig { + return this.source.bind(scope, context); + } + + /** + * helper function for aggregate behaviors every files and directories. + */ + resolveCloudFrontBehaviors( + resolver: ICloudFrontBehaviorResolver + ): Record { + return { + ...this.directories.reduce>( + (acc, obj) => ({ + ...acc, + [obj + "/*"]: resolver.resolve(obj), + }), + {} + ), + ...this.files.reduce>( + (acc, obj) => ({ + ...acc, + [obj]: resolver.resolve(obj), + }), + {} + ), + }; + } + } + + /** + * Asset of nitro. This Construct can resolve nitro output path. + */ + class NitroAsset extends Construct { + readonly serverHandler: lambda.AssetCode; + readonly staticAsset: NitroStaticAsset; + + constructor(scope: Construct, id: string, props: AssetProps) { + super(scope, id); + const project = new Asset(this, "NitroProject", props); + const output = join( + Stage.of(this)?.assetOutdir ?? "", + project.assetPath, + ".output" + ); + const nitroJSON = JSON.parse( + readFileSync(join(output, "nitro.json")).toString() + ) as NitroJSON; + + this.serverHandler = lambda.Code.fromAsset( + join(output, nitroJSON.output.serverDir) + ); + this.staticAsset = new NitroStaticAsset( + join(output, nitroJSON.output.publicDir) + ); + } + } + + export class NitroLambdaEdgeStack extends Stack { + constructor(scope: Construct, id: string, props?: StackProps) { + super(scope, id, props); + + const nitro = new NitroAsset(this, "NitroAsset", { + path: "../../", + exclude: ["cdk"], + }); + const edgeFunction = new cloudfront.experimental.EdgeFunction( + this, + "EdgeFunction", + { + runtime: lambda.Runtime.NODEJS_16_X, + handler: "index.handler", + code: nitro.serverHandler, + } + ); + const bucket = new s3.Bucket(this, "Bucket", { + blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL, + encryption: s3.BucketEncryption.S3_MANAGED, + removalPolicy: RemovalPolicy.DESTROY, + autoDeleteObjects: true, + }); + const s3Origin = new origins.S3Origin(bucket); + const distribution = new cloudfront.Distribution(this, "Distribution", { + defaultBehavior: { + origin: s3Origin, + edgeLambdas: [ + { + functionVersion: edgeFunction.currentVersion, + eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST, + }, + ], + }, + additionalBehaviors: nitro.staticAsset.resolveCloudFrontBehaviors({ + resolve: () => ({ + origin: s3Origin, + }), + }), + priceClass: cloudfront.PriceClass.PRICE_CLASS_ALL, + httpVersion: cloudfront.HttpVersion.HTTP3, + }); + new s3deployment.BucketDeployment(this, "Deployment", { + sources: [nitro.staticAsset], + destinationBucket: bucket, + distribution, + }); + + new CfnOutput(this, "URL", { + value: "https://" + distribution.distributionDomainName, + }); + } + } `.trim(); +} diff --git a/test/presets/aws-lambda-edge.test.ts b/test/presets/aws-lambda-edge.test.ts new file mode 100644 index 0000000000..b77037ecdf --- /dev/null +++ b/test/presets/aws-lambda-edge.test.ts @@ -0,0 +1,81 @@ +import { resolve } from "pathe"; +import { describe } from "vitest"; +import destr from "destr"; +import type { + CloudFrontHeaders, + CloudFrontRequestEvent, + CloudFrontResultResponse, +} from "aws-lambda"; +import { setupTest, testNitro } from "../tests"; + +describe("nitro:preset:aws-lambda-edge", async () => { + const ctx = await setupTest("aws-lambda", { + config: { awsLambda: { target: "edge" } }, + }); + testNitro(ctx, async () => { + const { handler } = await import(resolve(ctx.outDir, "server/index.mjs")); + return async ({ url: rawRelativeUrl, headers, method, body }) => { + // creating new URL object to parse query easier + const url = new URL(`https://example.com${rawRelativeUrl}`); + // modify headers to CloudFrontHeaders. + const reqHeaders: CloudFrontHeaders = Object.fromEntries( + Object.entries(headers || {}).map(([k, v]) => [ + k, + Array.isArray(v) ? v.map((value) => ({ value })) : [{ value: v }], + ]) + ); + + const cloudfrontRequest = { + method: method || "GET", + uri: url.pathname, + querystring: decodeURIComponent(url.searchParams.toString()).replace( + /=$|=(?=&)/g, + "" + ), + headers: reqHeaders, + body: { + action: "read-only" as const, + encoding: "text" as const, + data: body, + inputTruncated: false, + }, + }; + + console.log(cloudfrontRequest); + + const event: CloudFrontRequestEvent = { + Records: [ + { + cf: { + config: { + distributionDomainName: "nitro.cloudfront.net", + distributionId: "EDFDVBD6EXAMPLE", + eventType: "origin-request", + requestId: + "4TyzHTaYWb1GX1qTfsHhEqV6HUDd_BzoBZnwfnvQc_1oF26ClkoUSEQ==", + }, + request: { + clientIp: "203.0.113.178", + ...cloudfrontRequest, + }, + }, + }, + ], + }; + const res: CloudFrontResultResponse = await handler(event); + // responsed CloudFrontHeaders are special, so modify them for testing. + const resHeaders = Object.fromEntries( + Object.entries(res.headers).map(([key, keyValues]) => [ + key, + keyValues.map((kv) => kv.value).join(","), + ]) + ); + console.log(res); + return { + data: destr(res.body), + status: Number.parseInt(res.status), + headers: resHeaders, + }; + }; + }); +}); diff --git a/test/tests.ts b/test/tests.ts index 0bc225afcb..c49eb67625 100644 --- a/test/tests.ts +++ b/test/tests.ts @@ -1,11 +1,9 @@ -import { tmpdir } from "node:os"; import { promises as fsp } from "node:fs"; -import { join, resolve } from "pathe"; +import { resolve } from "pathe"; import { listen, Listener } from "listhen"; import destr from "destr"; import { fetch, FetchOptions } from "ofetch"; import { expect, it, afterAll, beforeAll, describe } from "vitest"; -import { fileURLToPath } from "mlly"; import { joinURL } from "ufo"; import { defu } from "defu"; import * as _nitro from "../src"; @@ -37,16 +35,6 @@ export const describeIf = (condition, title, factory) => it.skip("skipped", () => {}); }); -export const fixtureDir = fileURLToPath( - new URL("fixture", import.meta.url).href -); - -export const getPresetTmpDir = (preset: string) => - resolve( - process.env.NITRO_TEST_TMP_DIR || join(tmpdir(), "nitro-tests"), - preset - ); - export async function setupTest( preset: string, opts: { config?: _nitro.NitroConfig } = {} @@ -556,8 +544,11 @@ export function testNitro( "foo=bar, bar=baz, test=value; Path=/, test2=value; Path=/"; } - // Aws lambda v1 - if (ctx.preset === "aws-lambda" && ctx.lambdaV1) { + // Aws lambda v1 && edge + if ( + ctx.preset === "aws-lambda" && + (ctx.lambdaV1 || ctx.nitro.options.awsLambda.target === "edge") + ) { expectedCookies = "foo=bar, bar=baz,test=value; Path=/,test2=value; Path=/"; } From f38a07b3a9071350c580cdb0c8e3ccaa78bfd7b0 Mon Sep 17 00:00:00 2001 From: Hebilicious Date: Wed, 9 Aug 2023 19:28:49 +0700 Subject: [PATCH 2/5] chore: remove logs and comments --- src/presets/aws-lambda.ts | 6 ++-- src/runtime/entries/aws-lambda-edge.ts | 5 ++- src/runtime/utils.lambda.ts | 4 +-- test/presets/aws-lambda-edge.test.ts | 50 +++++++++++++------------- 4 files changed, 32 insertions(+), 33 deletions(-) diff --git a/src/presets/aws-lambda.ts b/src/presets/aws-lambda.ts index de8bbe1db9..2b2ca1b876 100644 --- a/src/presets/aws-lambda.ts +++ b/src/presets/aws-lambda.ts @@ -4,7 +4,7 @@ import { generateCdkApp } from "../utils/cdk"; export const awsLambda = defineNitroPreset({ entry: `#internal/nitro/entries/aws-lambda-{{ awsLambda.target }}`, awsLambda: { - // we need this defined here so it's picked up by the template in lambda entry + // we need this defined here so it's picked up by the template in lambda entries target: (process.env.NITRO_AWSLAMBDA_TARGET || "default") as any, }, hooks: { @@ -12,9 +12,9 @@ export const awsLambda = defineNitroPreset({ const target = nitro.options.awsLambda?.target as unknown; if (!target || target === "default") { nitro.logger.warn( - "Nether `awsLambda.target` or `NITRO_AWSLAMBDA_GEN` is set. Set the target to remove this warning. See https://nitro.unjs.io/deploy/providers/aws-lambda for more information." + "Neither `awsLambda.target` or `NITRO_AWSLAMBDA_GEN` is set. Set the target to remove this warning. See https://nitro.unjs.io/deploy/providers/aws-lambda for more information." ); - // Using the target single makes this preset backwards compatible for people already using it + // Default to single lambda nitro.options.awsLambda = { target: "single" }; } }, diff --git a/src/runtime/entries/aws-lambda-edge.ts b/src/runtime/entries/aws-lambda-edge.ts index be9dd14de7..2f8a059c2a 100644 --- a/src/runtime/entries/aws-lambda-edge.ts +++ b/src/runtime/entries/aws-lambda-edge.ts @@ -18,11 +18,10 @@ export const handler = async function handler( ): Promise { const request = event.Records[0].cf.request; - console.log("Cloudfront Request", request); const url = getFullUrl(request.uri, request.querystring); const headers = normalizeCloudfrontIncomingHeaders(request.headers); const body = normalizeCloudfrontBody(request.body); - console.log(url, headers, body); + const r = await nitroApp.localCall({ event, url, @@ -31,7 +30,7 @@ export const handler = async function handler( method: request.method, body, }); - console.log("Nitro response", r); + return { status: r.status.toString(), headers: normalizeCloudfrontOutgoingHeaders(r.headers), diff --git a/src/runtime/utils.lambda.ts b/src/runtime/utils.lambda.ts index ee685c7652..4884fdb9ae 100644 --- a/src/runtime/utils.lambda.ts +++ b/src/runtime/utils.lambda.ts @@ -113,7 +113,7 @@ export function normalizeCloudfrontIncomingHeaders(headers: CloudFrontHeaders) { return Object.fromEntries( Object.entries(headers).map(([key, keyValues]) => [ key, - keyValues.map((kv) => kv.value), + keyValues.map(({ value }) => value), ]) ); } @@ -124,7 +124,7 @@ export function normalizeCloudfrontBody(body?: CloudFrontRequest["body"]) { } const bodyString = body; - if (body.encoding !== undefined && body.encoding === "base64") { + if (body.encoding === "base64") { bodyString.data = Buffer.from(body.data, "base64").toString("utf8"); bodyString.data = decodeURIComponent(bodyString.data); } diff --git a/test/presets/aws-lambda-edge.test.ts b/test/presets/aws-lambda-edge.test.ts index b77037ecdf..4b70dc9527 100644 --- a/test/presets/aws-lambda-edge.test.ts +++ b/test/presets/aws-lambda-edge.test.ts @@ -3,6 +3,7 @@ import { describe } from "vitest"; import destr from "destr"; import type { CloudFrontHeaders, + CloudFrontRequest, CloudFrontRequestEvent, CloudFrontResultResponse, } from "aws-lambda"; @@ -14,25 +15,32 @@ describe("nitro:preset:aws-lambda-edge", async () => { }); testNitro(ctx, async () => { const { handler } = await import(resolve(ctx.outDir, "server/index.mjs")); - return async ({ url: rawRelativeUrl, headers, method, body }) => { - // creating new URL object to parse query easier - const url = new URL(`https://example.com${rawRelativeUrl}`); - // modify headers to CloudFrontHeaders. - const reqHeaders: CloudFrontHeaders = Object.fromEntries( - Object.entries(headers || {}).map(([k, v]) => [ - k, - Array.isArray(v) ? v.map((value) => ({ value })) : [{ value: v }], + return async ({ + url: incomingUrl, + headers: incomingHeaders, + method, + body, + }) => { + const url = new URL(`https://example.com${incomingUrl}`); + + const headers: CloudFrontHeaders = Object.fromEntries( + Object.entries(incomingHeaders || {}).map(([key, v]) => [ + key, + Array.isArray(v) + ? v.map((value) => ({ key, value })) + : [{ key, value: v }], ]) ); - const cloudfrontRequest = { + const request: CloudFrontRequest = { + clientIp: "203.0.113.178", method: method || "GET", uri: url.pathname, querystring: decodeURIComponent(url.searchParams.toString()).replace( /=$|=(?=&)/g, "" ), - headers: reqHeaders, + headers, body: { action: "read-only" as const, encoding: "text" as const, @@ -40,9 +48,6 @@ describe("nitro:preset:aws-lambda-edge", async () => { inputTruncated: false, }, }; - - console.log(cloudfrontRequest); - const event: CloudFrontRequestEvent = { Records: [ { @@ -54,27 +59,22 @@ describe("nitro:preset:aws-lambda-edge", async () => { requestId: "4TyzHTaYWb1GX1qTfsHhEqV6HUDd_BzoBZnwfnvQc_1oF26ClkoUSEQ==", }, - request: { - clientIp: "203.0.113.178", - ...cloudfrontRequest, - }, + request, }, }, ], }; - const res: CloudFrontResultResponse = await handler(event); - // responsed CloudFrontHeaders are special, so modify them for testing. - const resHeaders = Object.fromEntries( - Object.entries(res.headers).map(([key, keyValues]) => [ + const response: CloudFrontResultResponse = await handler(event); + const responseHeaders = Object.fromEntries( + Object.entries(response.headers).map(([key, keyValues]) => [ key, keyValues.map((kv) => kv.value).join(","), ]) ); - console.log(res); return { - data: destr(res.body), - status: Number.parseInt(res.status), - headers: resHeaders, + data: destr(response.body), + status: Number.parseInt(response.status), + headers: responseHeaders, }; }; }); From 7779b9c293bc766cee1d30fec1a9ef52551a11de Mon Sep 17 00:00:00 2001 From: Hebilicious Date: Wed, 9 Aug 2023 21:03:12 +0700 Subject: [PATCH 3/5] feat: add sst --- package.json | 3 +- pnpm-lock.yaml | 5854 +++++++++++++++++++++++++++++-------- src/build.ts | 1 + src/presets/aws-lambda.ts | 4 + src/types/presets.ts | 4 +- src/utils/sst.ts | 188 ++ test/tests.ts | 6 +- 7 files changed, 4918 insertions(+), 1142 deletions(-) create mode 100644 src/utils/sst.ts diff --git a/package.json b/package.json index 54faa8b439..834d73ed31 100644 --- a/package.json +++ b/package.json @@ -144,6 +144,7 @@ "get-port-please": "^3.0.1", "miniflare": "^2.14.1", "prettier": "^3.0.2", + "sst": "^2.24.16", "typescript": "^5.2.2", "unbuild": "^2.0.0", "undici": "^5.23.0", @@ -163,4 +164,4 @@ ] } } -} \ No newline at end of file +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5a21d6e1e5..c8bd47f64c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -262,6 +262,9 @@ importers: prettier: specifier: ^3.0.2 version: 3.0.2 + sst: + specifier: ^2.24.16 + version: 2.24.16 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -339,6 +342,14 @@ packages: engines: {node: '>=0.10.0'} dev: true + /@alcalzone/ansi-tokenize@0.1.2: + resolution: {integrity: sha512-/9Wcb0XV6jhvbn0UsL0CPBYKRWjSN0Er2vrrhFDNy0IMIvZ7pWBLwOZbFKTlyYCr1Q+UBXb1hWM4czT2FOfT+A==} + engines: {node: '>=14.13.1'} + dependencies: + ansi-styles: 6.2.1 + is-fullwidth-code-point: 4.0.0 + dev: true + /@ampproject/remapping@2.2.1: resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} engines: {node: '>=6.0.0'} @@ -347,1438 +358,3582 @@ packages: '@jridgewell/trace-mapping': 0.3.19 dev: true - /@azure/functions@3.5.1: - resolution: {integrity: sha512-6UltvJiuVpvHSwLcK/Zc6NfUwlkDLOFFx97BHCJzlWNsfiWwzwmTsxJXg4kE/LemKTHxPpfoPE+kOJ8hAdiKFQ==} + /@aws-cdk/asset-awscli-v1@2.2.200: + resolution: {integrity: sha512-Kf5J8DfJK4wZFWT2Myca0lhwke7LwHcHBo+4TvWOGJrFVVKVuuiLCkzPPRBQQVDj0Vtn2NBokZAz8pfMpAqAKg==} + dev: true + + /@aws-cdk/asset-kubectl-v20@2.1.2: + resolution: {integrity: sha512-3M2tELJOxQv0apCIiuKQ4pAbncz9GuLwnKFqxifWfe77wuMxyTRPmxssYHs42ePqzap1LT6GDcPygGs+hHstLg==} + dev: true + + /@aws-cdk/asset-node-proxy-agent-v5@2.0.166: + resolution: {integrity: sha512-j0xnccpUQHXJKPgCwQcGGNu4lRiC1PptYfdxBIH1L4dRK91iBxtSQHESRQX+yB47oGLaF/WfNN/aF3WXwlhikg==} + dev: true + + /@aws-cdk/aws-apigatewayv2-alpha@2.91.0-alpha.0(aws-cdk-lib@2.91.0)(constructs@10.2.69): + resolution: {integrity: sha512-i5kqy/M4xL5+Q8/SoeM6A6hO9Ho18Rif/TWMaEwUFdWbpUTLWL67FhMs8aKtKPmQJJXHEj98HVAO+sgW23ixaw==} + engines: {node: '>= 14.15.0'} + peerDependencies: + aws-cdk-lib: 2.91.0 + constructs: ^10.0.0 dependencies: - iconv-lite: 0.6.3 - long: 4.0.0 - uuid: 8.3.2 + aws-cdk-lib: 2.91.0(constructs@10.2.69) + constructs: 10.2.69 dev: true - /@babel/code-frame@7.22.10: - resolution: {integrity: sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==} - engines: {node: '>=6.9.0'} + /@aws-cdk/aws-apigatewayv2-authorizers-alpha@2.91.0-alpha.0(@aws-cdk/aws-apigatewayv2-alpha@2.91.0-alpha.0)(aws-cdk-lib@2.91.0)(constructs@10.2.69): + resolution: {integrity: sha512-/1vVXS2JDUQjhGuceOUoIRgTxKdZwBTf4ZnH9nrGHa2nAhLF9lL8fLWpBJb1n2Xoh3qyvoG6/lsWBGffXuUnkA==} + engines: {node: '>= 14.15.0'} + peerDependencies: + '@aws-cdk/aws-apigatewayv2-alpha': 2.91.0-alpha.0 + aws-cdk-lib: 2.91.0 + constructs: ^10.0.0 dependencies: - '@babel/highlight': 7.22.10 - chalk: 2.4.2 + '@aws-cdk/aws-apigatewayv2-alpha': 2.91.0-alpha.0(aws-cdk-lib@2.91.0)(constructs@10.2.69) + aws-cdk-lib: 2.91.0(constructs@10.2.69) + constructs: 10.2.69 dev: true - /@babel/compat-data@7.22.9: - resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} - engines: {node: '>=6.9.0'} + /@aws-cdk/aws-apigatewayv2-integrations-alpha@2.91.0-alpha.0(@aws-cdk/aws-apigatewayv2-alpha@2.91.0-alpha.0)(aws-cdk-lib@2.91.0)(constructs@10.2.69): + resolution: {integrity: sha512-3BW0nmof3CX9T0CauamJJT2KCFTE74yf0cB9wOGqJWK4d6pzd3uRPgAdRAt5HnwB8qISVgqSK1xX9Z0POI8iHg==} + engines: {node: '>= 14.15.0'} + peerDependencies: + '@aws-cdk/aws-apigatewayv2-alpha': 2.91.0-alpha.0 + aws-cdk-lib: 2.91.0 + constructs: ^10.0.0 + dependencies: + '@aws-cdk/aws-apigatewayv2-alpha': 2.91.0-alpha.0(aws-cdk-lib@2.91.0)(constructs@10.2.69) + aws-cdk-lib: 2.91.0(constructs@10.2.69) + constructs: 10.2.69 dev: true - /@babel/core@7.22.11: - resolution: {integrity: sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==} - engines: {node: '>=6.9.0'} + /@aws-cdk/cfnspec@2.91.0-alpha.0: + resolution: {integrity: sha512-3Or0ZphyFR1dd53XwVqE2IbXIVvQiU/CgrVY9lWKR2jvEFtdwh3CXd5jsQwrc1MOgkGbrhOTjcXt8UeZZ+pKeg==} dependencies: - '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.22.10 - '@babel/generator': 7.22.10 - '@babel/helper-compilation-targets': 7.22.10 - '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.11) - '@babel/helpers': 7.22.11 - '@babel/parser': 7.22.11 - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.11 - '@babel/types': 7.22.11 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color + fs-extra: 9.1.0 + md5: 2.3.0 dev: true - /@babel/generator@7.22.10: - resolution: {integrity: sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==} - engines: {node: '>=6.9.0'} + /@aws-cdk/cloud-assembly-schema@2.91.0: + resolution: {integrity: sha512-H7pbe7VMnX2siipaT6rVDWjp0p9clrKc+8C+FG+6woqQIuQBuBZxZGVVSNtR0hdtAj7UWFX/CHGS4ihFtJnmIQ==} + engines: {node: '>= 14.15.0'} + dev: true + bundledDependencies: + - jsonschema + - semver + + /@aws-cdk/cloudformation-diff@2.91.0: + resolution: {integrity: sha512-gjZ5wKN2tPRRsYuKolNYeYqWoqwyq4V8taALXTxre3INkY/mZUaRfj/DXeSuH24E1WFxmudKqnD8LexHeounzw==} + engines: {node: '>= 14.15.0'} dependencies: - '@babel/types': 7.22.11 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.19 - jsesc: 2.5.2 + '@aws-cdk/cfnspec': 2.91.0-alpha.0 + chalk: 4.1.2 + diff: 5.1.0 + fast-deep-equal: 3.1.3 + string-width: 4.2.3 + table: 6.8.1 dev: true - /@babel/helper-compilation-targets@7.22.10: - resolution: {integrity: sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==} - engines: {node: '>=6.9.0'} + /@aws-cdk/cx-api@2.91.0(@aws-cdk/cloud-assembly-schema@2.91.0): + resolution: {integrity: sha512-s/Fv7NmPvRwNpN5rssPcKRqucAc/GASEO1xtPxgHmGd+Ckj1gWvlKwPkQuR6QgZchorlm2Ch6Dzt/Vj5gQrMww==} + engines: {node: '>= 14.15.0'} + peerDependencies: + '@aws-cdk/cloud-assembly-schema': 2.91.0 dependencies: - '@babel/compat-data': 7.22.9 - '@babel/helper-validator-option': 7.22.5 - browserslist: 4.21.10 - lru-cache: 5.1.1 - semver: 6.3.1 + '@aws-cdk/cloud-assembly-schema': 2.91.0 dev: true + bundledDependencies: + - semver - /@babel/helper-environment-visitor@7.22.5: - resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} - engines: {node: '>=6.9.0'} + /@aws-crypto/crc32@3.0.0: + resolution: {integrity: sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==} + dependencies: + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.387.0 + tslib: 1.14.1 dev: true - /@babel/helper-function-name@7.22.5: - resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} - engines: {node: '>=6.9.0'} + /@aws-crypto/crc32c@3.0.0: + resolution: {integrity: sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==} dependencies: - '@babel/template': 7.22.5 - '@babel/types': 7.22.11 + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.387.0 + tslib: 1.14.1 dev: true - /@babel/helper-hoist-variables@7.22.5: - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} + /@aws-crypto/ie11-detection@3.0.0: + resolution: {integrity: sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==} dependencies: - '@babel/types': 7.22.11 + tslib: 1.14.1 dev: true - /@babel/helper-module-imports@7.22.5: - resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} - engines: {node: '>=6.9.0'} + /@aws-crypto/sha1-browser@3.0.0: + resolution: {integrity: sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==} dependencies: - '@babel/types': 7.22.11 + '@aws-crypto/ie11-detection': 3.0.0 + '@aws-crypto/supports-web-crypto': 3.0.0 + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-locate-window': 3.310.0 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 dev: true - /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.11): - resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 + /@aws-crypto/sha256-browser@3.0.0: + resolution: {integrity: sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==} dependencies: - '@babel/core': 7.22.11 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-module-imports': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.5 + '@aws-crypto/ie11-detection': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-crypto/supports-web-crypto': 3.0.0 + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-locate-window': 3.310.0 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 dev: true - /@babel/helper-simple-access@7.22.5: - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} + /@aws-crypto/sha256-js@3.0.0: + resolution: {integrity: sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==} dependencies: - '@babel/types': 7.22.11 + '@aws-crypto/util': 3.0.0 + '@aws-sdk/types': 3.387.0 + tslib: 1.14.1 dev: true - /@babel/helper-split-export-declaration@7.22.6: - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} + /@aws-crypto/sha256-js@5.0.0: + resolution: {integrity: sha512-g+u9iKkaQVp9Mjoxq1IJSHj9NHGZF441+R/GIH0dn7u4mix5QQ4VqgpppHrNm1LzjUzb0BpcFGsBXP6cOVf+ZQ==} + engines: {node: '>=16.0.0'} dependencies: - '@babel/types': 7.22.11 + '@aws-crypto/util': 5.0.0 + '@aws-sdk/types': 3.387.0 + tslib: 1.14.1 dev: true - /@babel/helper-string-parser@7.22.5: - resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} - engines: {node: '>=6.9.0'} + /@aws-crypto/supports-web-crypto@3.0.0: + resolution: {integrity: sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==} + dependencies: + tslib: 1.14.1 dev: true - /@babel/helper-validator-identifier@7.22.5: - resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} - engines: {node: '>=6.9.0'} + /@aws-crypto/util@3.0.0: + resolution: {integrity: sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==} + dependencies: + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 dev: true - /@babel/helper-validator-option@7.22.5: - resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} - engines: {node: '>=6.9.0'} + /@aws-crypto/util@5.0.0: + resolution: {integrity: sha512-1GYqLdYRe96idcCltlqxdJ68OWE6ADT8qGLmVi7PVHKl8AxD2EWSbJSSevPq2eTx6vaPZpkr1RoZ3lcw/uGoEA==} + dependencies: + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 dev: true - /@babel/helpers@7.22.11: - resolution: {integrity: sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==} - engines: {node: '>=6.9.0'} + /@aws-sdk/client-cloudformation@3.387.0: + resolution: {integrity: sha512-0C2Yq2AJKc0jTPm6IlW8jJ2IopUwV0LAPgbKfIxfaCyBWVAqkXiVDDov8qnVI4/mwx4wGa5FpmVGq3MdlVuvmg==} + engines: {node: '>=14.0.0'} dependencies: - '@babel/template': 7.22.5 - '@babel/traverse': 7.22.11 - '@babel/types': 7.22.11 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + '@smithy/util-waiter': 2.0.2 + fast-xml-parser: 4.2.5 + tslib: 2.6.2 + uuid: 8.3.2 transitivePeerDependencies: - - supports-color + - aws-crt dev: true - /@babel/highlight@7.22.10: - resolution: {integrity: sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==} - engines: {node: '>=6.9.0'} - requiresBuild: true + /@aws-sdk/client-cognito-identity@3.387.0: + resolution: {integrity: sha512-ujbfXmI+0vu8+aD+e6C8kWStAZrmKyootoGbRDcYmE/gUIEOY/rZ1Pj0RTf7Cat8aeycSsKR3sN6c+SYz5YluQ==} + engines: {node: '>=14.0.0'} dependencies: - '@babel/helper-validator-identifier': 7.22.5 - chalk: 2.4.2 - js-tokens: 4.0.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - /@babel/parser@7.22.11: - resolution: {integrity: sha512-R5zb8eJIBPJriQtbH/htEQy4k7E2dHWlD2Y2VT07JCzwYZHBxV5ZYtM0UhXSNMT74LyxuM+b1jdL7pSesXbC/g==} - engines: {node: '>=6.0.0'} - hasBin: true + /@aws-sdk/client-ecs@3.387.0: + resolution: {integrity: sha512-exwakPBp7DLiipwQFtwNTWCwnJ6FOf2eEXZOgbsVIISgAnWLZRCRD6eyu1Y6dSsl5OjcjQjwG/f2RpmqgDDyCw==} + engines: {node: '>=14.0.0'} dependencies: - '@babel/types': 7.22.11 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + '@smithy/util-waiter': 2.0.2 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - /@babel/standalone@7.22.12: - resolution: {integrity: sha512-Od5EnOR/gvwwvLCaJCypkVW6C9PitK2tu/aHb+ZpPnwkVidmlJ+7jUf8YLm9BrNILfT9P8etZq/t6r1IrFauQw==} - engines: {node: '>=6.9.0'} + /@aws-sdk/client-eventbridge@3.387.0(@aws-sdk/signature-v4-crt@3.387.0): + resolution: {integrity: sha512-dhNbHxZoyAKXrULWw1nnbarw+lriZhX2dil4bcv/P5jKdb9icLZEZ/C8byq5u7r5lF1DSw3+BOdejaDDYnRgfA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/signature-v4-multi-region': 3.387.0(@aws-sdk/signature-v4-crt@3.387.0) + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/signature-v4-crt' + - aws-crt dev: true - /@babel/template@7.22.5: - resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} - engines: {node: '>=6.9.0'} + /@aws-sdk/client-iam@3.387.0: + resolution: {integrity: sha512-MnEKOvoHjBM+jcCq+xlZfeGYD9ykuMAZb3xuI3aqfcJ6/x2xAnk/DtUqcQoPE3lCUomJgw+JibtWyI/QCqgXXA==} + engines: {node: '>=14.0.0'} dependencies: - '@babel/code-frame': 7.22.10 - '@babel/parser': 7.22.11 - '@babel/types': 7.22.11 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + '@smithy/util-waiter': 2.0.2 + fast-xml-parser: 4.2.5 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - /@babel/traverse@7.22.11: - resolution: {integrity: sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==} - engines: {node: '>=6.9.0'} + /@aws-sdk/client-iot-data-plane@3.387.0: + resolution: {integrity: sha512-AFuZ8yt8dGiVUNMoWXJqyZYOVrfnoJklVHRebb/cwFePX0gzZ1VyWKnbSNkT70+wgVoDE+MRD66V/9Ra7YXIrA==} + engines: {node: '>=14.0.0'} dependencies: - '@babel/code-frame': 7.22.10 - '@babel/generator': 7.22.10 - '@babel/helper-environment-visitor': 7.22.5 - '@babel/helper-function-name': 7.22.5 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.22.11 - '@babel/types': 7.22.11 - debug: 4.3.4 - globals: 11.12.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-stream': 2.0.2 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 transitivePeerDependencies: - - supports-color + - aws-crt dev: true - /@babel/types@7.22.11: - resolution: {integrity: sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==} - engines: {node: '>=6.9.0'} + /@aws-sdk/client-iot@3.387.0: + resolution: {integrity: sha512-5SDWELYrgV0Bhl5BLWEboU6vkRDrJrl+9xaZOC9NQoClQ+o5sOJg77OE2zrYJHhbbsF7iT3yHjz7cs7pA+eE5g==} + engines: {node: '>=14.0.0'} dependencies: - '@babel/helper-string-parser': 7.22.5 - '@babel/helper-validator-identifier': 7.22.5 - to-fast-properties: 2.0.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + uuid: 8.3.2 + transitivePeerDependencies: + - aws-crt dev: true - /@bcoe/v8-coverage@0.2.3: - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + /@aws-sdk/client-lambda@3.387.0: + resolution: {integrity: sha512-fUB0qQ1hmRhPAIHR9AFA5Ndvu8oyCGNri/LJUQCj06rsNrjv4mVn4ACAffh0aw364M1CY3WprcFc5kcPYMdKAA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/eventstream-serde-browser': 2.0.2 + '@smithy/eventstream-serde-config-resolver': 2.0.2 + '@smithy/eventstream-serde-node': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-stream': 2.0.2 + '@smithy/util-utf8': 2.0.0 + '@smithy/util-waiter': 2.0.2 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - /@cloudflare/kv-asset-handler@0.3.0: - resolution: {integrity: sha512-9CB/MKf/wdvbfkUdfrj+OkEwZ5b7rws0eogJ4293h+7b6KX5toPwym+VQKmILafNB9YiehqY0DlNrDcDhdWHSQ==} + /@aws-sdk/client-rds-data@3.387.0: + resolution: {integrity: sha512-hMV05fv1jxP40V7cYpdPFKk8Q6gx2uX2T42lro7hpoFrsh2oK1ZhXUcyBKrnjSwvp9gVGxcWMtI/JIO+SU4s5Q==} + engines: {node: '>=14.0.0'} dependencies: - mime: 3.0.0 - dev: false + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + dev: true - /@cloudflare/workers-types@4.20230821.0: - resolution: {integrity: sha512-lVQSyr5E4CEkQw7WIdsrMTj+kHjsm28mJ0B5AhNFByKR+16KTFsU/RW/nGLKHHW2jxT5lvYI+HjNQMzC9QR8Ng==} + /@aws-sdk/client-s3@3.387.0(@aws-sdk/signature-v4-crt@3.387.0): + resolution: {integrity: sha512-TX42MDfXnIy/U6f8XjCTR1Ezg1125Sv5k9kdKZJ0kkKcb/81N0+RfTqsR+Kpn/AbLjtvSUWrFIdc1o//GsfZAQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha1-browser': 3.0.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-bucket-endpoint': 3.387.0 + '@aws-sdk/middleware-expect-continue': 3.387.0 + '@aws-sdk/middleware-flexible-checksums': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-location-constraint': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-sdk-s3': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-ssec': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/signature-v4-multi-region': 3.387.0(@aws-sdk/signature-v4-crt@3.387.0) + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@aws-sdk/xml-builder': 3.310.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/eventstream-serde-browser': 2.0.2 + '@smithy/eventstream-serde-config-resolver': 2.0.2 + '@smithy/eventstream-serde-node': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-blob-browser': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/hash-stream-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/md5-js': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-stream': 2.0.2 + '@smithy/util-utf8': 2.0.0 + '@smithy/util-waiter': 2.0.2 + fast-xml-parser: 4.2.5 + tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/signature-v4-crt' + - aws-crt dev: true - /@edge-runtime/format@2.2.0: - resolution: {integrity: sha512-gPrS6AVw/qJJL0vcxMXv4kFXCU3ZTCD1uuJpwX15YxHV8BgU9OG5v9LrkkXcr96PBT/9epypfNJMhlWADuEziw==} - engines: {node: '>=16'} + /@aws-sdk/client-ssm@3.387.0: + resolution: {integrity: sha512-eVNRyFoecuQSNizWC1cu4IsV+2iraYU3HYFkxeiAjAOmVXsfQeR1Yly/QvFnUS4ePaBRMOZtCdrVobsUuWbBmg==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + '@smithy/util-waiter': 2.0.2 + tslib: 2.6.2 + uuid: 8.3.2 + transitivePeerDependencies: + - aws-crt dev: true - /@edge-runtime/primitives@3.1.0: - resolution: {integrity: sha512-yxr1QM/lC8nrU38zxePeDqVeIjwsJ83gKGTH8YJ4CoHTv3q+6xEeqRIT+/9IPX/FApWYtnxHauhNqr6CHRj5YA==} - engines: {node: '>=16'} + /@aws-sdk/client-sso@3.387.0: + resolution: {integrity: sha512-E7uKSvbA0XMKSN5KLInf52hmMpe9/OKo6N9OPffGXdn3fNEQlvyQq3meUkqG7Is0ldgsQMz5EUBNtNybXzr3tQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - /@edge-runtime/vm@3.1.0: - resolution: {integrity: sha512-Y2JZgJP+4byI17SiDeEZhvBUvJ+om7E5ll/jrS7aGRpet5qKnJSsGep6xxhMjqT/j8ulFvTMN/kdlMMy5pEKBQ==} - engines: {node: '>=16'} + /@aws-sdk/client-sts@3.387.0: + resolution: {integrity: sha512-RPOME0gpAViheH6xHyMg/XkE1G/fs6dgKK/NqlBZDjwMsSTPc8CmItEC6FOsCaLJktif0tD/u9m2uaQ4Lb1nVw==} + engines: {node: '>=14.0.0'} dependencies: - '@edge-runtime/primitives': 3.1.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/middleware-host-header': 3.387.0 + '@aws-sdk/middleware-logger': 3.387.0 + '@aws-sdk/middleware-recursion-detection': 3.387.0 + '@aws-sdk/middleware-sdk-sts': 3.387.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/middleware-user-agent': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@aws-sdk/util-user-agent-browser': 3.387.0 + '@aws-sdk/util-user-agent-node': 3.387.0 + '@smithy/config-resolver': 2.0.2 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/hash-node': 2.0.2 + '@smithy/invalid-dependency': 2.0.2 + '@smithy/middleware-content-length': 2.0.2 + '@smithy/middleware-endpoint': 2.0.2 + '@smithy/middleware-retry': 2.0.2 + '@smithy/middleware-serde': 2.0.2 + '@smithy/middleware-stack': 2.0.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/smithy-client': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-base64': 2.0.0 + '@smithy/util-body-length-browser': 2.0.0 + '@smithy/util-body-length-node': 2.0.0 + '@smithy/util-defaults-mode-browser': 2.0.2 + '@smithy/util-defaults-mode-node': 2.0.2 + '@smithy/util-retry': 2.0.0 + '@smithy/util-utf8': 2.0.0 + fast-xml-parser: 4.2.5 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - /@esbuild/android-arm64@0.18.20: - resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - requiresBuild: true + /@aws-sdk/config-resolver@3.374.0: + resolution: {integrity: sha512-eTSbmpcgZ97o7PuFls8pH1344OS03nfqq1NO9HxxvoYoZ6DFfUO7kqKeNUhP9LxOF7slyHXajDT7eoPclGnTuw==} + engines: {node: '>=14.0.0'} + deprecated: This package has moved to @smithy/config-resolver + dependencies: + '@smithy/config-resolver': 1.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/android-arm64@0.19.2: - resolution: {integrity: sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - requiresBuild: true - optional: true - - /@esbuild/android-arm@0.18.20: - resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true + /@aws-sdk/credential-provider-cognito-identity@3.387.0: + resolution: {integrity: sha512-UjgpSl/NqndEQK4KjmQNK2+SsKDENNnn1/ult8W8QnwC40tLTBjcQLrtXndj+0N25tSaM6YogtAv7e0QnRJJWA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/client-cognito-identity': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - optional: true - /@esbuild/android-arm@0.19.2: - resolution: {integrity: sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - requiresBuild: true - optional: true + /@aws-sdk/credential-provider-env@3.387.0: + resolution: {integrity: sha512-PVqNk7XPIYe5CMYNvELkcALtkl/pIM8/uPtqEtTg+mgnZBeL4fAmgXZiZMahQo1DxP5t/JaK384f6JG+A0qDjA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@esbuild/android-x64@0.18.20: - resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true + /@aws-sdk/credential-provider-ini@3.387.0: + resolution: {integrity: sha512-DS2Jg5E4Hd9fhJqTVNBG3SEwLwcyguPDcXSVCDz5pEHlYFM1U4x9b7aAbutzZujTH99MZ6Gua8kAotB/qjEjtw==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/credential-provider-env': 3.387.0 + '@aws-sdk/credential-provider-process': 3.387.0 + '@aws-sdk/credential-provider-sso': 3.387.0 + '@aws-sdk/credential-provider-web-identity': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/credential-provider-imds': 2.0.2 + '@smithy/property-provider': 2.0.2 + '@smithy/shared-ini-file-loader': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: true - optional: true - /@esbuild/android-x64@0.19.2: - resolution: {integrity: sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - requiresBuild: true - optional: true + /@aws-sdk/credential-provider-node@3.387.0: + resolution: {integrity: sha512-NviQ0EqigPWwX4avKheRzE2R4YPzO6qzdyxKZUookr+uTWYroQ4ePZbHK1/BD8LlqKKBlttX/d3ENXjynU4clA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/credential-provider-env': 3.387.0 + '@aws-sdk/credential-provider-ini': 3.387.0 + '@aws-sdk/credential-provider-process': 3.387.0 + '@aws-sdk/credential-provider-sso': 3.387.0 + '@aws-sdk/credential-provider-web-identity': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/credential-provider-imds': 2.0.2 + '@smithy/property-provider': 2.0.2 + '@smithy/shared-ini-file-loader': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + dev: true - /@esbuild/darwin-arm64@0.18.20: - resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true + /@aws-sdk/credential-provider-process@3.387.0: + resolution: {integrity: sha512-tQScLHmDlqkQN+mqw4s3cxepEUeHYDhFl5eH+J8puvPqWjXMYpCEdY79SAtWs6SZd4CWiZ0VLeYU6xQBZengbQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/shared-ini-file-loader': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/darwin-arm64@0.19.2: - resolution: {integrity: sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - optional: true + /@aws-sdk/credential-provider-sso@3.387.0: + resolution: {integrity: sha512-sQgrEyTSrwLe8zgjP9VEUDz3dtGXSCc4k00bCwODbzdOWCA1nz9oF2tFmgjFsb1Q80pae01Pe50Esix5z2eHsQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/client-sso': 3.387.0 + '@aws-sdk/token-providers': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/shared-ini-file-loader': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + dev: true - /@esbuild/darwin-x64@0.18.20: - resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true + /@aws-sdk/credential-provider-web-identity@3.387.0: + resolution: {integrity: sha512-6ueMPl+J3KWv6ZaAWF4Z138QCuBVFZRVAgwbtP3BNqWrrs4Q6TPksOQJ79lRDMpv0EUoyVl04B6lldNlhN8RdA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/darwin-x64@0.19.2: - resolution: {integrity: sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - requiresBuild: true - optional: true + /@aws-sdk/credential-providers@3.387.0: + resolution: {integrity: sha512-0wA60gIYn3KqriSwD6cq+o4Il6ftk8dRM5RQTmpncmoZD7BfgbYJhmiOPS8IR2F9eg7qdbZiHgzInyiRddJHKQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/client-cognito-identity': 3.387.0 + '@aws-sdk/client-sso': 3.387.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/credential-provider-cognito-identity': 3.387.0 + '@aws-sdk/credential-provider-env': 3.387.0 + '@aws-sdk/credential-provider-ini': 3.387.0 + '@aws-sdk/credential-provider-node': 3.387.0 + '@aws-sdk/credential-provider-process': 3.387.0 + '@aws-sdk/credential-provider-sso': 3.387.0 + '@aws-sdk/credential-provider-web-identity': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/credential-provider-imds': 2.0.2 + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + dev: true - /@esbuild/freebsd-arm64@0.18.20: - resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true + /@aws-sdk/middleware-bucket-endpoint@3.387.0: + resolution: {integrity: sha512-o7Dsq0YTUHFcKXD6+30/fXv/Wzdxqz9WonhCu3ZFPwTDLZgOM4QDDKW8EcC1SplKP1IUyaEli8Affodag9T1cQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-arn-parser': 3.310.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/util-config-provider': 2.0.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/freebsd-arm64@0.19.2: - resolution: {integrity: sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - requiresBuild: true - optional: true + /@aws-sdk/middleware-expect-continue@3.387.0: + resolution: {integrity: sha512-w415a4tjQc6a7isq0AEDWFBC0HWUCHXEDjDl94UACxfMmS9bVabuf04t9CQ+nBBVs6HdiNdfdc/pBR2pRwx2Yg==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@esbuild/freebsd-x64@0.18.20: - resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true + /@aws-sdk/middleware-flexible-checksums@3.387.0: + resolution: {integrity: sha512-QlH97rrKlcMyLG+2ps7+DtBHfPyRIpi7sD3y0iko2u3PGXk+PoLPK8wWyGql9sFopOYTl6/Jh2Rb1b6z6NbjEA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/crc32': 3.0.0 + '@aws-crypto/crc32c': 3.0.0 + '@aws-sdk/types': 3.387.0 + '@smithy/is-array-buffer': 2.0.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/freebsd-x64@0.19.2: - resolution: {integrity: sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - optional: true + /@aws-sdk/middleware-host-header@3.387.0: + resolution: {integrity: sha512-EWm9PXSr8dSp7hnRth1U7OfelXQp9dLf1yS1kUL+UhppYDJpjhdP7ql3NI4xJKw8e76sP2FuJYEuzWnJHuWoyQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@esbuild/linux-arm64@0.18.20: - resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true + /@aws-sdk/middleware-location-constraint@3.387.0: + resolution: {integrity: sha512-Ipdry2V58CpDcWD0ZTz6yFtpTASEBxbuWdqUUYW7pOkZ/5GPGH8NhBky7M38iGqAO6FNysvWEVCUpIqNGkI1lw==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/linux-arm64@0.19.2: - resolution: {integrity: sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - requiresBuild: true - optional: true + /@aws-sdk/middleware-logger@3.387.0: + resolution: {integrity: sha512-FjAvJr1XyaInT81RxUwgifnbXoFJrRBFc64XeFJgFanGIQCWLYxRrK2HV9eBpao/AycbmuoHgLd/f0sa4hZFoQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@esbuild/linux-arm@0.18.20: - resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true + /@aws-sdk/middleware-recursion-detection@3.387.0: + resolution: {integrity: sha512-ZF45T785ru8OwvYZw6awD9Z76OwSMM1eZzj2eY+FDz1cHfkpLjxEiti2iIH1FxbyK7n9ZqDUx29lVlCv238YyQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/linux-arm@0.19.2: - resolution: {integrity: sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - requiresBuild: true - optional: true + /@aws-sdk/middleware-retry@3.374.0: + resolution: {integrity: sha512-ZnT84qnT+Zmelv7y6hAqgAEaZgpGlrvf/+rchNWT0oG4duxI5bLWcRi9U88Jz7G8JgNQcGKJqPfC6oogCd7p8w==} + engines: {node: '>=14.0.0'} + deprecated: This package has moved to @smithy/middleware-retry + dependencies: + '@smithy/middleware-retry': 1.1.0 + tslib: 2.6.2 + uuid: 8.3.2 + dev: true - /@esbuild/linux-ia32@0.18.20: - resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true + /@aws-sdk/middleware-sdk-s3@3.387.0: + resolution: {integrity: sha512-OIUBDzGhglI6KjXVwPLh7hRbrfCpSTwWRkbXbLrPgZZuzWMoJJ3q59RVkpLnAV9Mdkg6+YA6JTw4k4hcmJblVw==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-arn-parser': 3.310.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/linux-ia32@0.19.2: - resolution: {integrity: sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - requiresBuild: true - optional: true + /@aws-sdk/middleware-sdk-sts@3.387.0: + resolution: {integrity: sha512-7ZzRKOJ4V/JDQmKz9z+FjZqw59mrMATEMLR6ff0H0JHMX0Uk5IX8TQB058ss+ar14qeJ4UcteYzCqHNI0O1BHw==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@esbuild/linux-loong64@0.18.20: - resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true + /@aws-sdk/middleware-signing@3.387.0: + resolution: {integrity: sha512-oJXlE0MES8gxNLo137PPNNiOICQGOaETTvq3kBSJgb/gtEAxQajMIlaNT7s1wsjOAruFHt4975nCXuY4lpx7GQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/signature-v4': 2.0.5 + '@smithy/types': 2.1.0 + '@smithy/util-middleware': 2.0.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/linux-loong64@0.19.2: - resolution: {integrity: sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - requiresBuild: true - optional: true + /@aws-sdk/middleware-ssec@3.387.0: + resolution: {integrity: sha512-Jtie1gqqcs7ZuYDlz/kuI3CKCXoCL5Ov/Gj5X8/XmwrQJEpuB6z0KY5H1qY0xo+jtAhC8nDPv0GnuLoOfn85hw==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@esbuild/linux-mips64el@0.18.20: - resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true + /@aws-sdk/middleware-user-agent@3.387.0: + resolution: {integrity: sha512-hTfFTwDtp86xS98BKa+RFuLfcvGftxwzrbZeisZV8hdb4ZhvNXjSxnvM3vetW0GUEnY9xHPSGyp2ERRTinPKFQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@aws-sdk/util-endpoints': 3.387.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/linux-mips64el@0.19.2: - resolution: {integrity: sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - requiresBuild: true - optional: true + /@aws-sdk/signature-v4-crt@3.387.0: + resolution: {integrity: sha512-oYIslOckR50F8x41ARl1BWMo3+vO+8M/dQVycupSCRqQP+BFPOpUGMrRKXVjTdhow1CrQ3ef9BpvHLznl7UrFg==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/querystring-parser': 2.0.2 + '@smithy/signature-v4': 2.0.5 + '@smithy/util-middleware': 2.0.0 + aws-crt: 1.17.1 + tslib: 2.6.2 + transitivePeerDependencies: + - bufferutil + - debug + - supports-color + - utf-8-validate + dev: true - /@esbuild/linux-ppc64@0.18.20: - resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true + /@aws-sdk/signature-v4-multi-region@3.387.0(@aws-sdk/signature-v4-crt@3.387.0): + resolution: {integrity: sha512-SGuUbEFi8BXYVv4M7Hc0488I7uZbTVBW19j/B7bnyfbKFrndBXM366s/mChx4iELtESQ61AAstyafx5nGj5tIg==} + engines: {node: '>=14.0.0'} + peerDependencies: + '@aws-sdk/signature-v4-crt': ^3.118.0 + peerDependenciesMeta: + '@aws-sdk/signature-v4-crt': + optional: true + dependencies: + '@aws-sdk/signature-v4-crt': 3.387.0 + '@aws-sdk/types': 3.387.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/signature-v4': 2.0.5 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/linux-ppc64@0.19.2: - resolution: {integrity: sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - requiresBuild: true - optional: true - - /@esbuild/linux-riscv64@0.18.20: - resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true + /@aws-sdk/smithy-client@3.374.0: + resolution: {integrity: sha512-YQBdO/Nv5EXBg/qfMF4GgYYLNN3Y/06MyuVBYILC1TKAnMoLy2FV0VOYyediagepAcWPdJqyUq4MCNNBy0CPRg==} + engines: {node: '>=14.0.0'} + deprecated: This package has moved to @smithy/smithy-client + dependencies: + '@smithy/smithy-client': 1.1.0 + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/linux-riscv64@0.19.2: - resolution: {integrity: sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - requiresBuild: true - optional: true - /@esbuild/linux-s390x@0.18.20: - resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true + /@aws-sdk/token-providers@3.387.0: + resolution: {integrity: sha512-W9lPW6zR8yrfvDDLJnKCvHs2KwmydSo+1bG5i6WzFnY3aeOgPBJO2eDIJajZG8Q/L++ZwDaNDLL+ROnIMcg6GA==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/property-provider': 2.0.2 + '@smithy/shared-ini-file-loader': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/linux-s390x@0.19.2: - resolution: {integrity: sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - requiresBuild: true - optional: true - /@esbuild/linux-x64@0.18.20: - resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true + /@aws-sdk/types@3.387.0: + resolution: {integrity: sha512-YTjFabNwjTF+6yl88f0/tWff018qmmgMmjlw45s6sdVKueWxdxV68U7gepNLF2nhaQPZa6FDOBoA51NaviVs0Q==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/linux-x64@0.19.2: - resolution: {integrity: sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - requiresBuild: true - optional: true - /@esbuild/netbsd-x64@0.18.20: - resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true + /@aws-sdk/util-arn-parser@3.310.0: + resolution: {integrity: sha512-jL8509owp/xB9+Or0pvn3Fe+b94qfklc2yPowZZIFAkFcCSIdkIglz18cPDWnYAcy9JGewpMS1COXKIUhZkJsA==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/netbsd-x64@0.19.2: - resolution: {integrity: sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - requiresBuild: true - optional: true - /@esbuild/openbsd-x64@0.18.20: - resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true + /@aws-sdk/util-endpoints@3.387.0: + resolution: {integrity: sha512-g7kvuCXehGXHHBw9PkSQdwVyDFmNUZLmfrRmqMyrMDG9QLQrxr4pyWcSaYgTE16yUzhQQOR+QSey+BL6W9/N6g==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-sdk/types': 3.387.0 + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/openbsd-x64@0.19.2: - resolution: {integrity: sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - requiresBuild: true - optional: true - /@esbuild/sunos-x64@0.18.20: - resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true + /@aws-sdk/util-locate-window@3.310.0: + resolution: {integrity: sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/sunos-x64@0.19.2: - resolution: {integrity: sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - requiresBuild: true - optional: true - /@esbuild/win32-arm64@0.18.20: - resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true + /@aws-sdk/util-user-agent-browser@3.387.0: + resolution: {integrity: sha512-lpgSVvDqx+JjHZCTYs/yQSS7J71dPlJeAlvxc7bmx5m+vfwKe07HAnIs+929DngS0QbAp/VaXbTiMFsInLkO4Q==} + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/types': 2.1.0 + bowser: 2.11.0 + tslib: 2.6.2 dev: true - optional: true - - /@esbuild/win32-arm64@0.19.2: - resolution: {integrity: sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - requiresBuild: true - optional: true - /@esbuild/win32-ia32@0.18.20: - resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true + /@aws-sdk/util-user-agent-node@3.387.0: + resolution: {integrity: sha512-r9OVkcWpRYatjLhJacuHFgvO2T5s/Nu5DDbScMrkUD8b4aGIIqsrdZji0vZy9FCjsUFQMM92t9nt4SejrGjChA==} + engines: {node: '>=14.0.0'} + peerDependencies: + aws-crt: '>=1.0.0' + peerDependenciesMeta: + aws-crt: + optional: true + dependencies: + '@aws-sdk/types': 3.387.0 + '@smithy/node-config-provider': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@esbuild/win32-ia32@0.19.2: - resolution: {integrity: sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - requiresBuild: true - optional: true + /@aws-sdk/util-utf8-browser@3.259.0: + resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} + dependencies: + tslib: 2.6.2 + dev: true - /@esbuild/win32-x64@0.18.20: - resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true + /@aws-sdk/xml-builder@3.310.0: + resolution: {integrity: sha512-TqELu4mOuSIKQCqj63fGVs86Yh+vBx5nHRpWKNUNhB2nPTpfbziTs5c1X358be3peVWA4wPxW7Nt53KIg1tnNw==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 dev: true - optional: true - /@esbuild/win32-x64@0.19.2: - resolution: {integrity: sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - requiresBuild: true - optional: true + /@azure/functions@3.5.1: + resolution: {integrity: sha512-6UltvJiuVpvHSwLcK/Zc6NfUwlkDLOFFx97BHCJzlWNsfiWwzwmTsxJXg4kE/LemKTHxPpfoPE+kOJ8hAdiKFQ==} + dependencies: + iconv-lite: 0.6.3 + long: 4.0.0 + uuid: 8.3.2 + dev: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.48.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 + /@babel/code-frame@7.22.10: + resolution: {integrity: sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==} + engines: {node: '>=6.9.0'} dependencies: - eslint: 8.48.0 - eslint-visitor-keys: 3.4.3 + '@babel/highlight': 7.22.10 + chalk: 2.4.2 dev: true - /@eslint-community/regexpp@4.8.0: - resolution: {integrity: sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + /@babel/compat-data@7.22.9: + resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} + engines: {node: '>=6.9.0'} dev: true - /@eslint/eslintrc@2.1.2: - resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@babel/core@7.22.11: + resolution: {integrity: sha512-lh7RJrtPdhibbxndr6/xx0w8+CVlY5FJZiaSz908Fpy+G0xkBFTvwLcKJFF4PJxVfGhVWNebikpWGnOoC71juQ==} + engines: {node: '>=6.9.0'} dependencies: - ajv: 6.12.6 + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.22.10 + '@babel/generator': 7.22.10 + '@babel/helper-compilation-targets': 7.22.10 + '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.11) + '@babel/helpers': 7.22.11 + '@babel/parser': 7.22.11 + '@babel/template': 7.22.5 + '@babel/traverse': 7.22.11 + '@babel/types': 7.22.11 + convert-source-map: 1.9.0 debug: 4.3.4 - espree: 9.6.1 - globals: 13.21.0 - ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /@eslint/js@8.48.0: - resolution: {integrity: sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@babel/generator@7.22.10: + resolution: {integrity: sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.22.11 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.19 + jsesc: 2.5.2 dev: true - /@fastify/busboy@1.2.1: - resolution: {integrity: sha512-7PQA7EH43S0CxcOa9OeAnaeA0oQ+e/DHNPZwSQM9CQHW76jle5+OvLdibRp/Aafs9KXbLhxyjOTkRjWUbQEd3Q==} - engines: {node: '>=14'} + /@babel/helper-compilation-targets@7.22.10: + resolution: {integrity: sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==} + engines: {node: '>=6.9.0'} dependencies: - text-decoding: 1.0.0 + '@babel/compat-data': 7.22.9 + '@babel/helper-validator-option': 7.22.5 + browserslist: 4.21.10 + lru-cache: 5.1.1 + semver: 6.3.1 dev: true - /@firebase/app-types@0.9.0: - resolution: {integrity: sha512-AeweANOIo0Mb8GiYm3xhTEBVCmPwTYAu9Hcd2qSkLuga/6+j9b1Jskl5bpiSQWy9eJ/j5pavxj6eYogmnuzm+Q==} + /@babel/helper-environment-visitor@7.22.5: + resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} + engines: {node: '>=6.9.0'} dev: true - /@firebase/auth-interop-types@0.2.1: - resolution: {integrity: sha512-VOaGzKp65MY6P5FI84TfYKBXEPi6LmOCSMMzys6o2BN2LOsqy7pCuZCup7NYnfbk5OkkQKzvIfHOzTm0UDpkyg==} + /@babel/helper-function-name@7.22.5: + resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.22.5 + '@babel/types': 7.22.11 + dev: true + + /@babel/helper-hoist-variables@7.22.5: + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.22.11 + dev: true + + /@babel/helper-module-imports@7.22.5: + resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.22.11 + dev: true + + /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.11): + resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.22.11 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-module-imports': 7.22.5 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.5 + dev: true + + /@babel/helper-plugin-utils@7.22.5: + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} + engines: {node: '>=6.9.0'} + dev: true + + /@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.22.11 + dev: true + + /@babel/helper-split-export-declaration@7.22.6: + resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.22.11 + dev: true + + /@babel/helper-string-parser@7.22.5: + resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-validator-identifier@7.22.5: + resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helper-validator-option@7.22.5: + resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/helpers@7.22.11: + resolution: {integrity: sha512-vyOXC8PBWaGc5h7GMsNx68OH33cypkEDJCHvYVVgVbbxJDROYVtexSk0gK5iCF1xNjRIN2s8ai7hwkWDq5szWg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.22.5 + '@babel/traverse': 7.22.11 + '@babel/types': 7.22.11 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/highlight@7.22.10: + resolution: {integrity: sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==} + engines: {node: '>=6.9.0'} + requiresBuild: true + dependencies: + '@babel/helper-validator-identifier': 7.22.5 + chalk: 2.4.2 + js-tokens: 4.0.0 + dev: true + + /@babel/parser@7.22.11: + resolution: {integrity: sha512-R5zb8eJIBPJriQtbH/htEQy4k7E2dHWlD2Y2VT07JCzwYZHBxV5ZYtM0UhXSNMT74LyxuM+b1jdL7pSesXbC/g==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.22.11 + dev: true + + /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.22.11): + resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.22.11 + '@babel/helper-plugin-utils': 7.22.5 + dev: true + + /@babel/standalone@7.22.12: + resolution: {integrity: sha512-Od5EnOR/gvwwvLCaJCypkVW6C9PitK2tu/aHb+ZpPnwkVidmlJ+7jUf8YLm9BrNILfT9P8etZq/t6r1IrFauQw==} + engines: {node: '>=6.9.0'} + dev: true + + /@babel/template@7.22.5: + resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.22.10 + '@babel/parser': 7.22.11 + '@babel/types': 7.22.11 + dev: true + + /@babel/traverse@7.22.11: + resolution: {integrity: sha512-mzAenteTfomcB7mfPtyi+4oe5BZ6MXxWcn4CX+h4IRJ+OOGXBrWU6jDQavkQI9Vuc5P+donFabBfFCcmWka9lQ==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.22.10 + '@babel/generator': 7.22.10 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-function-name': 7.22.5 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.22.11 + '@babel/types': 7.22.11 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/types@7.22.11: + resolution: {integrity: sha512-siazHiGuZRz9aB9NpHy9GOs9xiQPKnMzgdr493iI1M67vRXpnEq8ZOOKzezC5q7zwuQ6sDhdSp4SD9ixKSqKZg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-string-parser': 7.22.5 + '@babel/helper-validator-identifier': 7.22.5 + to-fast-properties: 2.0.0 + dev: true + + /@bcoe/v8-coverage@0.2.3: + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + dev: true + + /@cloudflare/kv-asset-handler@0.3.0: + resolution: {integrity: sha512-9CB/MKf/wdvbfkUdfrj+OkEwZ5b7rws0eogJ4293h+7b6KX5toPwym+VQKmILafNB9YiehqY0DlNrDcDhdWHSQ==} + dependencies: + mime: 3.0.0 + dev: false + + /@cloudflare/workers-types@4.20230821.0: + resolution: {integrity: sha512-lVQSyr5E4CEkQw7WIdsrMTj+kHjsm28mJ0B5AhNFByKR+16KTFsU/RW/nGLKHHW2jxT5lvYI+HjNQMzC9QR8Ng==} + dev: true + + /@edge-runtime/format@2.2.0: + resolution: {integrity: sha512-gPrS6AVw/qJJL0vcxMXv4kFXCU3ZTCD1uuJpwX15YxHV8BgU9OG5v9LrkkXcr96PBT/9epypfNJMhlWADuEziw==} + engines: {node: '>=16'} + dev: true + + /@edge-runtime/primitives@3.1.0: + resolution: {integrity: sha512-yxr1QM/lC8nrU38zxePeDqVeIjwsJ83gKGTH8YJ4CoHTv3q+6xEeqRIT+/9IPX/FApWYtnxHauhNqr6CHRj5YA==} + engines: {node: '>=16'} + dev: true + + /@edge-runtime/vm@3.1.0: + resolution: {integrity: sha512-Y2JZgJP+4byI17SiDeEZhvBUvJ+om7E5ll/jrS7aGRpet5qKnJSsGep6xxhMjqT/j8ulFvTMN/kdlMMy5pEKBQ==} + engines: {node: '>=16'} + dependencies: + '@edge-runtime/primitives': 3.1.0 + dev: true + + /@envelop/core@3.0.6: + resolution: {integrity: sha512-06t1xCPXq6QFN7W1JUEf68aCwYN0OUDNAIoJe7bAqhaoa2vn7NCcuX1VHkJ/OWpmElUgCsRO6RiBbIru1in0Ig==} + dependencies: + '@envelop/types': 3.0.2 + tslib: 2.6.2 + dev: true + + /@envelop/types@3.0.2: + resolution: {integrity: sha512-pOFea9ha0EkURWxJ/35axoH9fDGP5S2cUu/5Mmo9pb8zUf+TaEot8vB670XXihFEn/92759BMjLJNWBKmNhyng==} + dependencies: + tslib: 2.6.2 + dev: true + + /@envelop/validation-cache@5.1.3(@envelop/core@3.0.6)(graphql@16.7.1): + resolution: {integrity: sha512-MkzcScQHJJQ/9YCAPdWShEi3xZv4F4neTs+NszzSrZOdlU8z/THuRt7gZ0sO0y2be+sx+SKjHQP8Gq3VXXcTTg==} + peerDependencies: + '@envelop/core': ^3.0.6 + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 + dependencies: + '@envelop/core': 3.0.6 + graphql: 16.7.1 + hash-it: 6.0.0 + lru-cache: 6.0.0 + tslib: 2.6.2 + dev: true + + /@esbuild/android-arm64@0.18.13: + resolution: {integrity: sha512-j7NhycJUoUAG5kAzGf4fPWfd17N6SM3o1X6MlXVqfHvs2buFraCJzos9vbeWjLxOyBKHyPOnuCuipbhvbYtTAg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm64@0.18.20: + resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm64@0.19.2: + resolution: {integrity: sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-arm@0.18.13: + resolution: {integrity: sha512-KwqFhxRFMKZINHzCqf8eKxE0XqWlAVPRxwy6rc7CbVFxzUWB2sA/s3hbMZeemPdhN3fKBkqOaFhTbS8xJXYIWQ==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.18.20: + resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.19.2: + resolution: {integrity: sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/android-x64@0.18.13: + resolution: {integrity: sha512-M2eZkRxR6WnWfVELHmv6MUoHbOqnzoTVSIxgtsyhm/NsgmL+uTmag/VVzdXvmahak1I6sOb1K/2movco5ikDJg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.18.20: + resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.19.2: + resolution: {integrity: sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + optional: true + + /@esbuild/darwin-arm64@0.18.13: + resolution: {integrity: sha512-f5goG30YgR1GU+fxtaBRdSW3SBG9pZW834Mmhxa6terzcboz7P2R0k4lDxlkP7NYRIIdBbWp+VgwQbmMH4yV7w==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.18.20: + resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.19.2: + resolution: {integrity: sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + optional: true + + /@esbuild/darwin-x64@0.18.13: + resolution: {integrity: sha512-RIrxoKH5Eo+yE5BtaAIMZaiKutPhZjw+j0OCh8WdvKEKJQteacq0myZvBDLU+hOzQOZWJeDnuQ2xgSScKf1Ovw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.18.20: + resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.19.2: + resolution: {integrity: sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + optional: true + + /@esbuild/freebsd-arm64@0.18.13: + resolution: {integrity: sha512-AfRPhHWmj9jGyLgW/2FkYERKmYR+IjYxf2rtSLmhOrPGFh0KCETFzSjx/JX/HJnvIqHt/DRQD/KAaVsUKoI3Xg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.18.20: + resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.19.2: + resolution: {integrity: sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + optional: true + + /@esbuild/freebsd-x64@0.18.13: + resolution: {integrity: sha512-pGzWWZJBInhIgdEwzn8VHUBang8UvFKsvjDkeJ2oyY5gZtAM6BaxK0QLCuZY+qoj/nx/lIaItH425rm/hloETA==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.18.20: + resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.19.2: + resolution: {integrity: sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + optional: true + + /@esbuild/linux-arm64@0.18.13: + resolution: {integrity: sha512-hCzZbVJEHV7QM77fHPv2qgBcWxgglGFGCxk6KfQx6PsVIdi1u09X7IvgE9QKqm38OpkzaAkPnnPqwRsltvLkIQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.18.20: + resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.19.2: + resolution: {integrity: sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-arm@0.18.13: + resolution: {integrity: sha512-4iMxLRMCxGyk7lEvkkvrxw4aJeC93YIIrfbBlUJ062kilUUnAiMb81eEkVvCVoh3ON283ans7+OQkuy1uHW+Hw==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.18.20: + resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.19.2: + resolution: {integrity: sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-ia32@0.18.13: + resolution: {integrity: sha512-I3OKGbynl3AAIO6onXNrup/ttToE6Rv2XYfFgLK/wnr2J+1g+7k4asLrE+n7VMhaqX+BUnyWkCu27rl+62Adug==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.18.20: + resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.19.2: + resolution: {integrity: sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-loong64@0.18.13: + resolution: {integrity: sha512-8pcKDApAsKc6WW51ZEVidSGwGbebYw2qKnO1VyD8xd6JN0RN6EUXfhXmDk9Vc4/U3Y4AoFTexQewQDJGsBXBpg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.18.20: + resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.19.2: + resolution: {integrity: sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-mips64el@0.18.13: + resolution: {integrity: sha512-6GU+J1PLiVqWx8yoCK4Z0GnfKyCGIH5L2KQipxOtbNPBs+qNDcMJr9euxnyJ6FkRPyMwaSkjejzPSISD9hb+gg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.18.20: + resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.19.2: + resolution: {integrity: sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-ppc64@0.18.13: + resolution: {integrity: sha512-pfn/OGZ8tyR8YCV7MlLl5hAit2cmS+j/ZZg9DdH0uxdCoJpV7+5DbuXrR+es4ayRVKIcfS9TTMCs60vqQDmh+w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.18.20: + resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.19.2: + resolution: {integrity: sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-riscv64@0.18.13: + resolution: {integrity: sha512-aIbhU3LPg0lOSCfVeGHbmGYIqOtW6+yzO+Nfv57YblEK01oj0mFMtvDJlOaeAZ6z0FZ9D13oahi5aIl9JFphGg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.18.20: + resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.19.2: + resolution: {integrity: sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-s390x@0.18.13: + resolution: {integrity: sha512-Pct1QwF2sp+5LVi4Iu5Y+6JsGaV2Z2vm4O9Dd7XZ5tKYxEHjFtb140fiMcl5HM1iuv6xXO8O1Vrb1iJxHlv8UA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.18.20: + resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.19.2: + resolution: {integrity: sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/linux-x64@0.18.13: + resolution: {integrity: sha512-zTrIP0KzYP7O0+3ZnmzvUKgGtUvf4+piY8PIO3V8/GfmVd3ZyHJGz7Ht0np3P1wz+I8qJ4rjwJKqqEAbIEPngA==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.18.20: + resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.19.2: + resolution: {integrity: sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + optional: true + + /@esbuild/netbsd-x64@0.18.13: + resolution: {integrity: sha512-I6zs10TZeaHDYoGxENuksxE1sxqZpCp+agYeW039yqFwh3MgVvdmXL5NMveImOC6AtpLvE4xG5ujVic4NWFIDQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.18.20: + resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.19.2: + resolution: {integrity: sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + optional: true + + /@esbuild/openbsd-x64@0.18.13: + resolution: {integrity: sha512-W5C5nczhrt1y1xPG5bV+0M12p2vetOGlvs43LH8SopQ3z2AseIROu09VgRqydx5qFN7y9qCbpgHLx0kb0TcW7g==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.18.20: + resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.19.2: + resolution: {integrity: sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + optional: true + + /@esbuild/sunos-x64@0.18.13: + resolution: {integrity: sha512-X/xzuw4Hzpo/yq3YsfBbIsipNgmsm8mE/QeWbdGdTTeZ77fjxI2K0KP3AlhZ6gU3zKTw1bKoZTuKLnqcJ537qw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.18.20: + resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.19.2: + resolution: {integrity: sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + optional: true + + /@esbuild/win32-arm64@0.18.13: + resolution: {integrity: sha512-4CGYdRQT/ILd+yLLE5i4VApMPfGE0RPc/wFQhlluDQCK09+b4JDbxzzjpgQqTPrdnP7r5KUtGVGZYclYiPuHrw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.18.20: + resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.19.2: + resolution: {integrity: sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-ia32@0.18.13: + resolution: {integrity: sha512-D+wKZaRhQI+MUGMH+DbEr4owC2D7XnF+uyGiZk38QbgzLcofFqIOwFs7ELmIeU45CQgfHNy9Q+LKW3cE8g37Kg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.18.20: + resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.19.2: + resolution: {integrity: sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + optional: true + + /@esbuild/win32-x64@0.18.13: + resolution: {integrity: sha512-iVl6lehAfJS+VmpF3exKpNQ8b0eucf5VWfzR8S7xFve64NBNz2jPUgx1X93/kfnkfgP737O+i1k54SVQS7uVZA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.18.20: + resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.19.2: + resolution: {integrity: sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + optional: true + + /@eslint-community/eslint-utils@4.4.0(eslint@8.48.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.48.0 + eslint-visitor-keys: 3.4.3 + dev: true + + /@eslint-community/regexpp@4.8.0: + resolution: {integrity: sha512-JylOEEzDiOryeUnFbQz+oViCXS0KsvR1mvHkoMiu5+UiBvy+RYX7tzlIIIEstF/gVa2tj9AQXk3dgnxv6KxhFg==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + + /@eslint/eslintrc@2.1.2: + resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.4 + espree: 9.6.1 + globals: 13.21.0 + ignore: 5.2.4 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@eslint/js@8.48.0: + resolution: {integrity: sha512-ZSjtmelB7IJfWD2Fvb7+Z+ChTIKWq6kjda95fLcQKNS5aheVHn4IkfgRQE3sIIzTcSLwLcLZUD9UBt+V7+h+Pw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /@fastify/busboy@1.2.1: + resolution: {integrity: sha512-7PQA7EH43S0CxcOa9OeAnaeA0oQ+e/DHNPZwSQM9CQHW76jle5+OvLdibRp/Aafs9KXbLhxyjOTkRjWUbQEd3Q==} + engines: {node: '>=14'} + dependencies: + text-decoding: 1.0.0 + dev: true + + /@firebase/app-types@0.9.0: + resolution: {integrity: sha512-AeweANOIo0Mb8GiYm3xhTEBVCmPwTYAu9Hcd2qSkLuga/6+j9b1Jskl5bpiSQWy9eJ/j5pavxj6eYogmnuzm+Q==} + dev: true + + /@firebase/auth-interop-types@0.2.1: + resolution: {integrity: sha512-VOaGzKp65MY6P5FI84TfYKBXEPi6LmOCSMMzys6o2BN2LOsqy7pCuZCup7NYnfbk5OkkQKzvIfHOzTm0UDpkyg==} + dev: true + + /@firebase/component@0.6.4: + resolution: {integrity: sha512-rLMyrXuO9jcAUCaQXCMjCMUsWrba5fzHlNK24xz5j2W6A/SRmK8mZJ/hn7V0fViLbxC0lPMtrK1eYzk6Fg03jA==} + dependencies: + '@firebase/util': 1.9.3 + tslib: 2.6.2 + dev: true + + /@firebase/database-compat@0.3.4: + resolution: {integrity: sha512-kuAW+l+sLMUKBThnvxvUZ+Q1ZrF/vFJ58iUY9kAcbX48U03nVzIF6Tmkf0p3WVQwMqiXguSgtOPIB6ZCeF+5Gg==} + dependencies: + '@firebase/component': 0.6.4 + '@firebase/database': 0.14.4 + '@firebase/database-types': 0.10.4 + '@firebase/logger': 0.4.0 + '@firebase/util': 1.9.3 + tslib: 2.6.2 + dev: true + + /@firebase/database-types@0.10.4: + resolution: {integrity: sha512-dPySn0vJ/89ZeBac70T+2tWWPiJXWbmRygYv0smT5TfE3hDrQ09eKMF3Y+vMlTdrMWq7mUdYW5REWPSGH4kAZQ==} + dependencies: + '@firebase/app-types': 0.9.0 + '@firebase/util': 1.9.3 + dev: true + + /@firebase/database@0.14.4: + resolution: {integrity: sha512-+Ea/IKGwh42jwdjCyzTmeZeLM3oy1h0mFPsTy6OqCWzcu/KFqRAr5Tt1HRCOBlNOdbh84JPZC47WLU18n2VbxQ==} + dependencies: + '@firebase/auth-interop-types': 0.2.1 + '@firebase/component': 0.6.4 + '@firebase/logger': 0.4.0 + '@firebase/util': 1.9.3 + faye-websocket: 0.11.4 + tslib: 2.6.2 + dev: true + + /@firebase/logger@0.4.0: + resolution: {integrity: sha512-eRKSeykumZ5+cJPdxxJRgAC3G5NknY2GwEbKfymdnXtnT0Ucm4pspfR6GT4MUQEDuJwRVbVcSx85kgJulMoFFA==} + dependencies: + tslib: 2.6.2 + dev: true + + /@firebase/util@1.9.3: + resolution: {integrity: sha512-DY02CRhOZwpzO36fHpuVysz6JZrscPiBXD0fXp6qSrL9oNOx5KWICKdR95C0lSITzxp0TZosVyHqzatE8JbcjA==} + dependencies: + tslib: 2.6.2 + dev: true + + /@google-cloud/firestore@6.7.0: + resolution: {integrity: sha512-bkH2jb5KkQSUa+NAvpip9HQ+rpYhi77IaqHovWuN07adVmvNXX08gPpvPWEzoXYa/wDjEVI7LiAtCWkJJEYTNg==} + engines: {node: '>=12.0.0'} + requiresBuild: true + dependencies: + fast-deep-equal: 3.1.3 + functional-red-black-tree: 1.0.1 + google-gax: 3.6.1 + protobufjs: 7.2.5 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + optional: true + + /@google-cloud/paginator@3.0.7: + resolution: {integrity: sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==} + engines: {node: '>=10'} + requiresBuild: true + dependencies: + arrify: 2.0.1 + extend: 3.0.2 + dev: true + optional: true + + /@google-cloud/projectify@3.0.0: + resolution: {integrity: sha512-HRkZsNmjScY6Li8/kb70wjGlDDyLkVk3KvoEo9uIoxSjYLJasGiCch9+PqRVDOCGUFvEIqyogl+BeqILL4OJHA==} + engines: {node: '>=12.0.0'} + requiresBuild: true + dev: true + optional: true + + /@google-cloud/promisify@3.0.1: + resolution: {integrity: sha512-z1CjRjtQyBOYL+5Qr9DdYIfrdLBe746jRTYfaYU6MeXkqp7UfYs/jX16lFFVzZ7PGEJvqZNqYUEtb1mvDww4pA==} + engines: {node: '>=12'} + requiresBuild: true + dev: true + optional: true + + /@google-cloud/storage@6.12.0: + resolution: {integrity: sha512-78nNAY7iiZ4O/BouWMWTD/oSF2YtYgYB3GZirn0To6eBOugjXVoK+GXgUXOl+HlqbAOyHxAVXOlsj3snfbQ1dw==} + engines: {node: '>=12'} + requiresBuild: true + dependencies: + '@google-cloud/paginator': 3.0.7 + '@google-cloud/projectify': 3.0.0 + '@google-cloud/promisify': 3.0.1 + abort-controller: 3.0.0 + async-retry: 1.3.3 + compressible: 2.0.18 + duplexify: 4.1.2 + ent: 2.2.0 + extend: 3.0.2 + fast-xml-parser: 4.2.7 + gaxios: 5.1.3 + google-auth-library: 8.9.0 + mime: 3.0.0 + mime-types: 2.1.35 + p-limit: 3.1.0 + retry-request: 5.0.2 + teeny-request: 8.0.3 + uuid: 8.3.2 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + optional: true + + /@graphql-tools/executor@0.0.18(graphql@16.7.1): + resolution: {integrity: sha512-xZC0C+/npXoSHBB5bsJdwxDLgtl1Gu4fL9J2TPQmXoZC3L2N506KJoppf9LgWdHU/xK04luJrhP6WjhfkIN0pQ==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-tools/utils': 9.2.1(graphql@16.7.1) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.7.1) + '@repeaterjs/repeater': 3.0.4 + graphql: 16.7.1 + tslib: 2.6.2 + value-or-promise: 1.0.12 + dev: true + + /@graphql-tools/merge@8.4.2(graphql@16.7.1): + resolution: {integrity: sha512-XbrHAaj8yDuINph+sAfuq3QCZ/tKblrTLOpirK0+CAgNlZUCHs0Fa+xtMUURgwCVThLle1AF7svJCxFizygLsw==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-tools/utils': 9.2.1(graphql@16.7.1) + graphql: 16.7.1 + tslib: 2.6.2 + dev: true + + /@graphql-tools/schema@9.0.19(graphql@16.7.1): + resolution: {integrity: sha512-oBRPoNBtCkk0zbUsyP4GaIzCt8C0aCI4ycIRUL67KK5pOHljKLBBtGT+Jr6hkzA74C8Gco8bpZPe7aWFjiaK2w==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-tools/merge': 8.4.2(graphql@16.7.1) + '@graphql-tools/utils': 9.2.1(graphql@16.7.1) + graphql: 16.7.1 + tslib: 2.6.2 + value-or-promise: 1.0.12 + dev: true + + /@graphql-tools/utils@9.2.1(graphql@16.7.1): + resolution: {integrity: sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.7.1) + graphql: 16.7.1 + tslib: 2.6.2 + dev: true + + /@graphql-typed-document-node/core@3.2.0(graphql@16.7.1): + resolution: {integrity: sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + graphql: 16.7.1 + dev: true + + /@graphql-yoga/logger@0.0.1: + resolution: {integrity: sha512-6npFz7eZz33mXgSm1waBLMjUNG0D5hTc/p5Hcs1mojkT3KsLpCOFokzTEKboNsBhKevYcaVa/xeA7WBj4UYMLg==} + dependencies: + tslib: 2.6.2 + dev: true + + /@graphql-yoga/subscription@3.1.0: + resolution: {integrity: sha512-Vc9lh8KzIHyS3n4jBlCbz7zCjcbtQnOBpsymcRvHhFr2cuH+knmRn0EmzimMQ58jQ8kxoRXXC3KJS3RIxSdPIg==} + dependencies: + '@graphql-yoga/typed-event-target': 1.0.0 + '@repeaterjs/repeater': 3.0.4 + '@whatwg-node/events': 0.0.2 + tslib: 2.6.2 + dev: true + + /@graphql-yoga/typed-event-target@1.0.0: + resolution: {integrity: sha512-Mqni6AEvl3VbpMtKw+TIjc9qS9a8hKhiAjFtqX488yq5oJtj9TkNlFTIacAVS3vnPiswNsmDiQqvwUOcJgi1DA==} + dependencies: + '@repeaterjs/repeater': 3.0.4 + tslib: 2.6.2 + dev: true + + /@grpc/grpc-js@1.8.21: + resolution: {integrity: sha512-KeyQeZpxeEBSqFVTi3q2K7PiPXmgBfECc4updA1ejCLjYmoAlvvM3ZMp5ztTDUCUQmoY3CpDxvchjO1+rFkoHg==} + engines: {node: ^8.13.0 || >=10.10.0} + requiresBuild: true + dependencies: + '@grpc/proto-loader': 0.7.9 + '@types/node': 20.5.6 + dev: true + optional: true + + /@grpc/proto-loader@0.7.9: + resolution: {integrity: sha512-YJsOehVXzgurc+lLAxYnlSMc1p/Gu6VAvnfx0ATi2nzvr0YZcjhmZDeY8SeAKv1M7zE3aEJH0Xo9mK1iZ8GYoQ==} + engines: {node: '>=6'} + hasBin: true + requiresBuild: true + dependencies: + lodash.camelcase: 4.3.0 + long: 5.2.3 + protobufjs: 7.2.5 + yargs: 17.7.2 + dev: true + optional: true + + /@httptoolkit/websocket-stream@6.0.1: + resolution: {integrity: sha512-A0NOZI+Glp3Xgcz6Na7i7o09+/+xm2m0UCU8gdtM2nIv6/cjLmhMZMqehSpTlgbx9omtLmV8LVqOskPEyWnmZQ==} + dependencies: + '@types/ws': 8.5.5 + duplexify: 3.7.1 + inherits: 2.0.4 + isomorphic-ws: 4.0.1(ws@8.13.0) + readable-stream: 2.3.8 + safe-buffer: 5.2.1 + ws: 8.13.0 + xtend: 4.0.2 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: true + + /@humanwhocodes/config-array@0.11.10: + resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==} + engines: {node: '>=10.10.0'} + dependencies: + '@humanwhocodes/object-schema': 1.2.1 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@humanwhocodes/module-importer@1.0.1: + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + dev: true + + /@humanwhocodes/object-schema@1.2.1: + resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + dev: true + + /@iarna/toml@2.2.5: + resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} + dev: true + + /@ioredis/commands@1.2.0: + resolution: {integrity: sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==} + dev: false + + /@istanbuljs/schema@0.1.3: + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + dev: true + + /@jest/schemas@29.6.3: + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dependencies: + '@sinclair/typebox': 0.27.8 + dev: true + + /@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.19 + + /@jridgewell/resolve-uri@3.1.1: + resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} + engines: {node: '>=6.0.0'} + + /@jridgewell/set-array@1.1.2: + resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} + engines: {node: '>=6.0.0'} + + /@jridgewell/source-map@0.3.5: + resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + dependencies: + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.19 + dev: false + + /@jridgewell/sourcemap-codec@1.4.15: + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + + /@jridgewell/trace-mapping@0.3.19: + resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} + dependencies: + '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/sourcemap-codec': 1.4.15 + + /@jsdoc/salty@0.2.5: + resolution: {integrity: sha512-TfRP53RqunNe2HBobVBJ0VLhK1HbfvBYeTC1ahnN64PWvyYyGebmMiPkuwvD9fpw2ZbkoPb8Q7mwy0aR8Z9rvw==} + engines: {node: '>=v12.0.0'} + requiresBuild: true + dependencies: + lodash: 4.17.21 + dev: true + optional: true + + /@lukeed/ms@2.0.1: + resolution: {integrity: sha512-Xs/4RZltsAL7pkvaNStUQt7netTkyxrS0K+RILcVr3TRMS/ToOg4I6uNfhB9SlGsnWBym4U+EaXq0f0cEMNkHA==} + engines: {node: '>=8'} + dev: true + + /@mapbox/node-pre-gyp@1.0.11: + resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} + hasBin: true + dependencies: + detect-libc: 2.0.2 + https-proxy-agent: 5.0.1 + make-dir: 3.1.0 + node-fetch: 2.7.0 + nopt: 5.0.0 + npmlog: 5.0.1 + rimraf: 3.0.2 + semver: 7.5.4 + tar: 6.1.15 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + + /@miniflare/cache@2.14.1: + resolution: {integrity: sha512-f/o6UBV6UX+MlhjcEch73/wjQvvNo37dgYmP6Pn2ax1/mEHhJ7allNAqenmonT4djNeyB3eEYV3zUl54wCEwrg==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + http-cache-semantics: 4.1.1 + undici: 5.23.0 + dev: true + + /@miniflare/cli-parser@2.14.1: + resolution: {integrity: sha512-MLvMuvxQPL/uw94Dg6CR3CM62uGoxxCkgF7aDtBYF9zb6YCfjOQn0q5d7zWxydpYAb5Dn1N1hZMnjAy7mlpNdQ==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/shared': 2.14.1 + kleur: 4.1.5 + dev: true + + /@miniflare/core@2.14.1: + resolution: {integrity: sha512-d+SGAda/VoXq+SKz04oq8ATUwQw5755L87fgPR8pTdR2YbWkxdbmEm1z2olOpDiUjcR86aN6NtCjY6tUC7fqaw==} + engines: {node: '>=16.13'} + dependencies: + '@iarna/toml': 2.2.5 + '@miniflare/queues': 2.14.1 + '@miniflare/shared': 2.14.1 + '@miniflare/watcher': 2.14.1 + busboy: 1.6.0 + dotenv: 10.0.0 + kleur: 4.1.5 + set-cookie-parser: 2.6.0 + undici: 5.23.0 + urlpattern-polyfill: 4.0.3 + dev: true + + /@miniflare/d1@2.14.1: + resolution: {integrity: sha512-MulDDBsDD8o5DwiqdMeJZy2vLoMji+NWnLcuibSag2mayA0LJcp0eHezseZNkW+knciWR1gMP8Xpa4Q1KwkbKA==} + engines: {node: '>=16.7'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + dev: true + + /@miniflare/durable-objects@2.14.1: + resolution: {integrity: sha512-T+oHGw5GcEIilkzrf0xDES7jzLVqcXJzSGsEIWqnBFLtdlKmrZF679ulRLBbyMVgvpQz6FRONh9jTH1XIiuObQ==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + '@miniflare/storage-memory': 2.14.1 + undici: 5.23.0 + dev: true + + /@miniflare/html-rewriter@2.14.1: + resolution: {integrity: sha512-vp4uZXuEKhtIaxoXa7jgDAPItlzjbfoUqYWp+fwDKv4J4mfQnzzs/5hwjbE7+Ihm/KNI0zNi8P0sSWjIRFl6ng==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + html-rewriter-wasm: 0.4.1 + undici: 5.23.0 + dev: true + + /@miniflare/http-server@2.14.1: + resolution: {integrity: sha512-ICT9KuecAF5+AHs9dTnk7DRxCPYLfI3QCtfHOcGQWFuOoe4MCtQk4joo0pxMaSgAJ4TiOOxz3KRWO0G2FwgiPQ==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + '@miniflare/web-sockets': 2.14.1 + kleur: 4.1.5 + selfsigned: 2.1.1 + undici: 5.23.0 + ws: 8.13.0 + youch: 2.2.2 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: true + + /@miniflare/kv@2.14.1: + resolution: {integrity: sha512-Gp07Wcszle7ptsoO8mCtKQRs0AbQnYo1rgnxUcsTL3xJJaHXEA/B9EKSADS2XzJMeY4PgUOHU6Rf08OOF2yWag==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/shared': 2.14.1 + dev: true + + /@miniflare/queues@2.14.1: + resolution: {integrity: sha512-uBzrbBkIgtNoztDpmMMISg/brYtxLHRE7oTaN8OVnq3bG+3nF9kQC42HUz+Vg+sf65UlvhSaqkjllgx+fNtOxQ==} + engines: {node: '>=16.7'} + dependencies: + '@miniflare/shared': 2.14.1 + dev: true + + /@miniflare/r2@2.14.1: + resolution: {integrity: sha512-grOMnGf2XSicbgxMYMBfWE37k/e7l5NnwXZIViQ+N06uksp+MLA8E6yKQNtvrWQS66TM8gBvMnWo96OFmYjb6Q==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + undici: 5.23.0 + dev: true + + /@miniflare/runner-vm@2.14.1: + resolution: {integrity: sha512-UobsGM0ICVPDlJD54VPDSx0EXrIY3nJMXBy2zIFuuUOz4hQKXvMQ6jtAlJ8UNKer+XXI3Mb/9R/gfU8r6kxIMA==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/shared': 2.14.1 + dev: true + + /@miniflare/scheduler@2.14.1: + resolution: {integrity: sha512-mCFUkGpPcV74tbDAuDLSrLPDiRei7hIIPQL53C4rtCDyLfxYgwLQFDecllQs5IvDzAx4qFpu835Ppc6tbHR5Mw==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + cron-schedule: 3.0.6 + dev: true + + /@miniflare/shared@2.14.1: + resolution: {integrity: sha512-73GnLtWn5iP936ctE6ZJrMqGu134KOoIIveq5Yd/B+NnbFfzpuzjCpkLrnqjkDdsxDbruXSb5eTR/SmAdpJxZQ==} + engines: {node: '>=16.13'} + dependencies: + '@types/better-sqlite3': 7.6.4 + kleur: 4.1.5 + npx-import: 1.1.4 + picomatch: 2.3.1 + dev: true + + /@miniflare/sites@2.14.1: + resolution: {integrity: sha512-AbbIcU6VBeaNqVgMiLMWN2a09eX3jZmjaEi0uKqufVDqW/QIz47/30aC0O9qTe+XYpi3jjph/Ux7uEY8Z+enMw==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/kv': 2.14.1 + '@miniflare/shared': 2.14.1 + '@miniflare/storage-file': 2.14.1 + dev: true + + /@miniflare/storage-file@2.14.1: + resolution: {integrity: sha512-faZu9tRSW6c/looVFI/ZhkdGsIc9NfNCbSl3jJRmm7xgyZ+/S+dQ5JtGVbVsUIX8YGWDyE2j3oWCGCjxGLEpkg==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/shared': 2.14.1 + '@miniflare/storage-memory': 2.14.1 + dev: true + + /@miniflare/storage-memory@2.14.1: + resolution: {integrity: sha512-lfQbQwopVWd4W5XzrYdp0rhk3dJpvSmv1Wwn9RhNO20WrcuoxpdSzbmpBahsgYVg+OheVaEbS6RpFqdmwwLTog==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/shared': 2.14.1 + dev: true + + /@miniflare/watcher@2.14.1: + resolution: {integrity: sha512-dkFvetm5wk6pwunlYb/UkI0yFNb3otLpRm5RDywMUzqObEf+rCiNNAbJe3HUspr2ncZVAaRWcEaDh82vYK5cmw==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/shared': 2.14.1 + dev: true + + /@miniflare/web-sockets@2.14.1: + resolution: {integrity: sha512-3N//L5EjF7+xXd7qCLR2ylUwm8t2MKyGPGWEtRBrQ2xqYYWhewKTjlquHCOPU5Irnnd/4BhTmFA55MNrq7m4Nw==} + engines: {node: '>=16.13'} + dependencies: + '@miniflare/core': 2.14.1 + '@miniflare/shared': 2.14.1 + undici: 5.23.0 + ws: 8.13.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: true + + /@netlify/functions@2.0.2: + resolution: {integrity: sha512-goWRtaIPUK/q47qLYtfGGj7HgJIRaT0snw7zZ0yeoNTfQfCRwQwvRrMAsXkCsCtq2N2Oo81L26SpkMxEQMk9hg==} + engines: {node: '>=14.0.0'} + dependencies: + '@netlify/serverless-functions-api': 1.7.3 + is-promise: 4.0.0 + dev: false + + /@netlify/node-cookies@0.1.0: + resolution: {integrity: sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==} + engines: {node: ^14.16.0 || >=16.0.0} + dev: false + + /@netlify/serverless-functions-api@1.7.3: + resolution: {integrity: sha512-n6/7cJlSWvvbBlUOEAbkGyEld80S6KbG/ldQI9OhLfe1lTatgKmrTNIgqVNpaWpUdTgP2OHWFjmFBzkxxBWs5w==} + engines: {node: ^14.18.0 || >=16.0.0} + dependencies: + '@netlify/node-cookies': 0.1.0 + urlpattern-polyfill: 8.0.2 + dev: false + + /@nodelib/fs.scandir@2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + /@nodelib/fs.stat@2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + /@nodelib/fs.walk@1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.15.0 + + /@parcel/watcher-android-arm64@2.3.0: + resolution: {integrity: sha512-f4o9eA3dgk0XRT3XhB0UWpWpLnKgrh1IwNJKJ7UJek7eTYccQ8LR7XUWFKqw6aEq5KUNlCcGvSzKqSX/vtWVVA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-darwin-arm64@2.3.0: + resolution: {integrity: sha512-mKY+oijI4ahBMc/GygVGvEdOq0L4DxhYgwQqYAz/7yPzuGi79oXrZG52WdpGA1wLBPrYb0T8uBaGFo7I6rvSKw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-darwin-x64@2.3.0: + resolution: {integrity: sha512-20oBj8LcEOnLE3mgpy6zuOq8AplPu9NcSSSfyVKgfOhNAc4eF4ob3ldj0xWjGGbOF7Dcy1Tvm6ytvgdjlfUeow==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-freebsd-x64@2.3.0: + resolution: {integrity: sha512-7LftKlaHunueAEiojhCn+Ef2CTXWsLgTl4hq0pkhkTBFI3ssj2bJXmH2L67mKpiAD5dz66JYk4zS66qzdnIOgw==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-arm-glibc@2.3.0: + resolution: {integrity: sha512-1apPw5cD2xBv1XIHPUlq0cO6iAaEUQ3BcY0ysSyD9Kuyw4MoWm1DV+W9mneWI+1g6OeP6dhikiFE6BlU+AToTQ==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-arm64-glibc@2.3.0: + resolution: {integrity: sha512-mQ0gBSQEiq1k/MMkgcSB0Ic47UORZBmWoAWlMrTW6nbAGoLZP+h7AtUM7H3oDu34TBFFvjy4JCGP43JlylkTQA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-arm64-musl@2.3.0: + resolution: {integrity: sha512-LXZAExpepJew0Gp8ZkJ+xDZaTQjLHv48h0p0Vw2VMFQ8A+RKrAvpFuPVCVwKJCr5SE+zvaG+Etg56qXvTDIedw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-x64-glibc@2.3.0: + resolution: {integrity: sha512-P7Wo91lKSeSgMTtG7CnBS6WrA5otr1K7shhSjKHNePVmfBHDoAOHYRXgUmhiNfbcGk0uMCHVcdbfxtuiZCHVow==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-x64-musl@2.3.0: + resolution: {integrity: sha512-+kiRE1JIq8QdxzwoYY+wzBs9YbJ34guBweTK8nlzLKimn5EQ2b2FSC+tAOpq302BuIMjyuUGvBiUhEcLIGMQ5g==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-wasm@2.3.0: + resolution: {integrity: sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA==} + engines: {node: '>= 10.0.0'} + dependencies: + is-glob: 4.0.3 + micromatch: 4.0.5 + napi-wasm: 1.1.0 + dev: false + bundledDependencies: + - napi-wasm + + /@parcel/watcher-win32-arm64@2.3.0: + resolution: {integrity: sha512-35gXCnaz1AqIXpG42evcoP2+sNL62gZTMZne3IackM+6QlfMcJLy3DrjuL6Iks7Czpd3j4xRBzez3ADCj1l7Aw==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-win32-ia32@2.3.0: + resolution: {integrity: sha512-FJS/IBQHhRpZ6PiCjFt1UAcPr0YmCLHRbTc00IBTrelEjlmmgIVLeOx4MSXzx2HFEy5Jo5YdhGpxCuqCyDJ5ow==} + engines: {node: '>= 10.0.0'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-win32-x64@2.3.0: + resolution: {integrity: sha512-dLx+0XRdMnVI62kU3wbXvbIRhLck4aE28bIGKbRGS7BJNt54IIj9+c/Dkqb+7DJEbHUZAX1bwaoM8PqVlHJmCA==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher@2.3.0: + resolution: {integrity: sha512-pW7QaFiL11O0BphO+bq3MgqeX/INAk9jgBldVDYjlQPO4VddoZnF22TcF9onMhnLVHuNqBJeRf+Fj7eezi/+rQ==} + engines: {node: '>= 10.0.0'} + dependencies: + detect-libc: 1.0.3 + is-glob: 4.0.3 + micromatch: 4.0.5 + node-addon-api: 7.0.0 + optionalDependencies: + '@parcel/watcher-android-arm64': 2.3.0 + '@parcel/watcher-darwin-arm64': 2.3.0 + '@parcel/watcher-darwin-x64': 2.3.0 + '@parcel/watcher-freebsd-x64': 2.3.0 + '@parcel/watcher-linux-arm-glibc': 2.3.0 + '@parcel/watcher-linux-arm64-glibc': 2.3.0 + '@parcel/watcher-linux-arm64-musl': 2.3.0 + '@parcel/watcher-linux-x64-glibc': 2.3.0 + '@parcel/watcher-linux-x64-musl': 2.3.0 + '@parcel/watcher-win32-arm64': 2.3.0 + '@parcel/watcher-win32-ia32': 2.3.0 + '@parcel/watcher-win32-x64': 2.3.0 + dev: false + + /@peculiar/asn1-schema@2.3.6: + resolution: {integrity: sha512-izNRxPoaeJeg/AyH8hER6s+H7p4itk+03QCa4sbxI3lNdseQYCuxzgsuNK8bTXChtLTjpJz6NmXKA73qLa3rCA==} + dependencies: + asn1js: 3.0.5 + pvtsutils: 1.3.3 + tslib: 2.6.2 dev: true - /@firebase/component@0.6.4: - resolution: {integrity: sha512-rLMyrXuO9jcAUCaQXCMjCMUsWrba5fzHlNK24xz5j2W6A/SRmK8mZJ/hn7V0fViLbxC0lPMtrK1eYzk6Fg03jA==} + /@peculiar/json-schema@1.1.12: + resolution: {integrity: sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==} + engines: {node: '>=8.0.0'} dependencies: - '@firebase/util': 1.9.3 tslib: 2.6.2 dev: true - /@firebase/database-compat@0.3.4: - resolution: {integrity: sha512-kuAW+l+sLMUKBThnvxvUZ+Q1ZrF/vFJ58iUY9kAcbX48U03nVzIF6Tmkf0p3WVQwMqiXguSgtOPIB6ZCeF+5Gg==} + /@peculiar/webcrypto@1.4.3: + resolution: {integrity: sha512-VtaY4spKTdN5LjJ04im/d/joXuvLbQdgy5Z4DXF4MFZhQ+MTrejbNMkfZBp1Bs3O5+bFqnJgyGdPuZQflvIa5A==} + engines: {node: '>=10.12.0'} dependencies: - '@firebase/component': 0.6.4 - '@firebase/database': 0.14.4 - '@firebase/database-types': 0.10.4 - '@firebase/logger': 0.4.0 - '@firebase/util': 1.9.3 + '@peculiar/asn1-schema': 2.3.6 + '@peculiar/json-schema': 1.1.12 + pvtsutils: 1.3.3 tslib: 2.6.2 + webcrypto-core: 1.7.7 dev: true - /@firebase/database-types@0.10.4: - resolution: {integrity: sha512-dPySn0vJ/89ZeBac70T+2tWWPiJXWbmRygYv0smT5TfE3hDrQ09eKMF3Y+vMlTdrMWq7mUdYW5REWPSGH4kAZQ==} + /@protobufjs/aspromise@1.1.2: + resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} + dev: true + + /@protobufjs/base64@1.1.2: + resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} + dev: true + + /@protobufjs/codegen@2.0.4: + resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + dev: true + + /@protobufjs/eventemitter@1.1.0: + resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + dev: true + + /@protobufjs/fetch@1.1.0: + resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} dependencies: - '@firebase/app-types': 0.9.0 - '@firebase/util': 1.9.3 + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/inquire': 1.1.0 dev: true - /@firebase/database@0.14.4: - resolution: {integrity: sha512-+Ea/IKGwh42jwdjCyzTmeZeLM3oy1h0mFPsTy6OqCWzcu/KFqRAr5Tt1HRCOBlNOdbh84JPZC47WLU18n2VbxQ==} + /@protobufjs/float@1.0.2: + resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + dev: true + + /@protobufjs/inquire@1.1.0: + resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + dev: true + + /@protobufjs/path@1.1.2: + resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + dev: true + + /@protobufjs/pool@1.1.0: + resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + dev: true + + /@protobufjs/utf8@1.1.0: + resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + dev: true + + /@repeaterjs/repeater@3.0.4: + resolution: {integrity: sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA==} + dev: true + + /@rollup/plugin-alias@5.0.0(rollup@3.28.1): + resolution: {integrity: sha512-l9hY5chSCjuFRPsnRm16twWBiSApl2uYFLsepQYwtBuAxNMQ/1dJqADld40P0Jkqm65GRTLy/AC6hnpVebtLsA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true dependencies: - '@firebase/auth-interop-types': 0.2.1 - '@firebase/component': 0.6.4 - '@firebase/logger': 0.4.0 - '@firebase/util': 1.9.3 - faye-websocket: 0.11.4 - tslib: 2.6.2 + rollup: 3.28.1 + slash: 4.0.0 + + /@rollup/plugin-commonjs@25.0.4(rollup@3.28.1): + resolution: {integrity: sha512-L92Vz9WUZXDnlQQl3EwbypJR4+DM2EbsO+/KOcEkP4Mc6Ct453EeDB2uH9lgRwj4w5yflgNpq9pHOiY8aoUXBQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^2.68.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.4(rollup@3.28.1) + commondir: 1.0.1 + estree-walker: 2.0.2 + glob: 8.1.0 + is-reference: 1.2.1 + magic-string: 0.27.0 + rollup: 3.28.1 + + /@rollup/plugin-inject@5.0.3(rollup@3.28.1): + resolution: {integrity: sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.4(rollup@3.28.1) + estree-walker: 2.0.2 + magic-string: 0.27.0 + rollup: 3.28.1 + dev: false + + /@rollup/plugin-json@6.0.0(rollup@3.28.1): + resolution: {integrity: sha512-i/4C5Jrdr1XUarRhVu27EEwjt4GObltD7c+MkCIpO2QIbojw8MUs+CCTqOphQi3Qtg1FLmYt+l+6YeoIf51J7w==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.4(rollup@3.28.1) + rollup: 3.28.1 + + /@rollup/plugin-node-resolve@15.2.1(rollup@3.28.1): + resolution: {integrity: sha512-nsbUg588+GDSu8/NS8T4UAshO6xeaOfINNuXeVHcKV02LJtoRaM1SiOacClw4kws1SFiNhdLGxlbMY9ga/zs/w==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^2.78.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.4(rollup@3.28.1) + '@types/resolve': 1.20.2 + deepmerge: 4.3.1 + is-builtin-module: 3.2.1 + is-module: 1.0.0 + resolve: 1.22.4 + rollup: 3.28.1 + + /@rollup/plugin-replace@5.0.2(rollup@3.28.1): + resolution: {integrity: sha512-M9YXNekv/C/iHHK+cvORzfRYfPbq0RDD8r0G+bMiTXjNGKulPnCT9O3Ss46WfhI6ZOCgApOP7xAdmCQJ+U2LAA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.4(rollup@3.28.1) + magic-string: 0.27.0 + rollup: 3.28.1 + + /@rollup/plugin-terser@0.4.3(rollup@3.28.1): + resolution: {integrity: sha512-EF0oejTMtkyhrkwCdg0HJ0IpkcaVg1MMSf2olHb2Jp+1mnLM04OhjpJWGma4HobiDTF0WCyViWuvadyE9ch2XA==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^2.x || ^3.x + peerDependenciesMeta: + rollup: + optional: true + dependencies: + rollup: 3.28.1 + serialize-javascript: 6.0.1 + smob: 1.4.0 + terser: 5.19.2 + dev: false + + /@rollup/plugin-wasm@6.1.3(rollup@3.28.1): + resolution: {integrity: sha512-7ItTTeyauE6lwdDtQWceEHZ9+txbi4RRy0mYPFn9BW7rD7YdgBDu7HTHsLtHrRzJc313RM/1m6GKgV3np/aEaw==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + rollup: 3.28.1 + dev: false + + /@rollup/pluginutils@4.2.1: + resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} + engines: {node: '>= 8.0.0'} + dependencies: + estree-walker: 2.0.2 + picomatch: 2.3.1 + dev: false + + /@rollup/pluginutils@5.0.4(rollup@3.28.1): + resolution: {integrity: sha512-0KJnIoRI8A+a1dqOYLxH8vBf8bphDmty5QvIm2hqm7oFCFYKCAZWWd2hXgMibaPsNDhI0AtpYfQZJG47pt/k4g==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@types/estree': 1.0.1 + estree-walker: 2.0.2 + picomatch: 2.3.1 + rollup: 3.28.1 + + /@sinclair/typebox@0.27.8: + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true - /@firebase/logger@0.4.0: - resolution: {integrity: sha512-eRKSeykumZ5+cJPdxxJRgAC3G5NknY2GwEbKfymdnXtnT0Ucm4pspfR6GT4MUQEDuJwRVbVcSx85kgJulMoFFA==} + /@smithy/abort-controller@1.1.0: + resolution: {integrity: sha512-5imgGUlZL4dW4YWdMYAKLmal9ny/tlenM81QZY7xYyb76z9Z/QOg7oM5Ak9HQl8QfFTlGVWwcMXl+54jroRgEQ==} + engines: {node: '>=14.0.0'} dependencies: + '@smithy/types': 1.2.0 tslib: 2.6.2 dev: true - /@firebase/util@1.9.3: - resolution: {integrity: sha512-DY02CRhOZwpzO36fHpuVysz6JZrscPiBXD0fXp6qSrL9oNOx5KWICKdR95C0lSITzxp0TZosVyHqzatE8JbcjA==} + /@smithy/abort-controller@2.0.2: + resolution: {integrity: sha512-ln5Cob0mksym62sLr7NiPOSqJ0jKao4qjfcNLDdgINM1lQI12hXrZBlKdPHbXJqpKhKiECDgonMoqCM8bigq4g==} + engines: {node: '>=14.0.0'} dependencies: + '@smithy/types': 2.1.0 tslib: 2.6.2 dev: true - /@google-cloud/firestore@6.7.0: - resolution: {integrity: sha512-bkH2jb5KkQSUa+NAvpip9HQ+rpYhi77IaqHovWuN07adVmvNXX08gPpvPWEzoXYa/wDjEVI7LiAtCWkJJEYTNg==} - engines: {node: '>=12.0.0'} - requiresBuild: true + /@smithy/chunked-blob-reader-native@2.0.0: + resolution: {integrity: sha512-HM8V2Rp1y8+1343tkZUKZllFhEQPNmpNdgFAncbTsxkZ18/gqjk23XXv3qGyXWp412f3o43ZZ1UZHVcHrpRnCQ==} dependencies: - fast-deep-equal: 3.1.3 - functional-red-black-tree: 1.0.1 - google-gax: 3.6.1 - protobufjs: 7.2.5 - transitivePeerDependencies: - - encoding - - supports-color + '@smithy/util-base64': 2.0.0 + tslib: 2.6.2 dev: true - optional: true - /@google-cloud/paginator@3.0.7: - resolution: {integrity: sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==} - engines: {node: '>=10'} - requiresBuild: true + /@smithy/chunked-blob-reader@2.0.0: + resolution: {integrity: sha512-k+J4GHJsMSAIQPChGBrjEmGS+WbPonCXesoqP9fynIqjn7rdOThdH8FAeCmokP9mxTYKQAKoHCLPzNlm6gh7Wg==} dependencies: - arrify: 2.0.1 - extend: 3.0.2 - dev: true - optional: true - - /@google-cloud/projectify@3.0.0: - resolution: {integrity: sha512-HRkZsNmjScY6Li8/kb70wjGlDDyLkVk3KvoEo9uIoxSjYLJasGiCch9+PqRVDOCGUFvEIqyogl+BeqILL4OJHA==} - engines: {node: '>=12.0.0'} - requiresBuild: true - dev: true - optional: true - - /@google-cloud/promisify@3.0.1: - resolution: {integrity: sha512-z1CjRjtQyBOYL+5Qr9DdYIfrdLBe746jRTYfaYU6MeXkqp7UfYs/jX16lFFVzZ7PGEJvqZNqYUEtb1mvDww4pA==} - engines: {node: '>=12'} - requiresBuild: true + tslib: 2.6.2 dev: true - optional: true - /@google-cloud/storage@6.12.0: - resolution: {integrity: sha512-78nNAY7iiZ4O/BouWMWTD/oSF2YtYgYB3GZirn0To6eBOugjXVoK+GXgUXOl+HlqbAOyHxAVXOlsj3snfbQ1dw==} - engines: {node: '>=12'} - requiresBuild: true + /@smithy/config-resolver@1.1.0: + resolution: {integrity: sha512-7WD9eZHp46BxAjNGHJLmxhhyeiNWkBdVStd7SUJPUZqQGeIO/REtIrcIfKUfdiHTQ9jyu2SYoqvzqqaFc6987w==} + engines: {node: '>=14.0.0'} dependencies: - '@google-cloud/paginator': 3.0.7 - '@google-cloud/projectify': 3.0.0 - '@google-cloud/promisify': 3.0.1 - abort-controller: 3.0.0 - async-retry: 1.3.3 - compressible: 2.0.18 - duplexify: 4.1.2 - ent: 2.2.0 - extend: 3.0.2 - fast-xml-parser: 4.2.7 - gaxios: 5.1.3 - google-auth-library: 8.9.0 - mime: 3.0.0 - mime-types: 2.1.35 - p-limit: 3.1.0 - retry-request: 5.0.2 - teeny-request: 8.0.3 - uuid: 8.3.2 - transitivePeerDependencies: - - encoding - - supports-color + '@smithy/types': 1.2.0 + '@smithy/util-config-provider': 1.1.0 + '@smithy/util-middleware': 1.1.0 + tslib: 2.6.2 dev: true - optional: true - /@grpc/grpc-js@1.8.21: - resolution: {integrity: sha512-KeyQeZpxeEBSqFVTi3q2K7PiPXmgBfECc4updA1ejCLjYmoAlvvM3ZMp5ztTDUCUQmoY3CpDxvchjO1+rFkoHg==} - engines: {node: ^8.13.0 || >=10.10.0} - requiresBuild: true + /@smithy/config-resolver@2.0.2: + resolution: {integrity: sha512-0kdsqBL6BdmSbdU6YaDkodVBMua5MuQQluC3nocJ7OJ6PnOuM7i2FEQHE46LBadLqT+CimlDSM+6j91uHNL1ng==} + engines: {node: '>=14.0.0'} dependencies: - '@grpc/proto-loader': 0.7.9 - '@types/node': 20.5.6 + '@smithy/types': 2.1.0 + '@smithy/util-config-provider': 2.0.0 + '@smithy/util-middleware': 2.0.0 + tslib: 2.6.2 dev: true - optional: true - /@grpc/proto-loader@0.7.9: - resolution: {integrity: sha512-YJsOehVXzgurc+lLAxYnlSMc1p/Gu6VAvnfx0ATi2nzvr0YZcjhmZDeY8SeAKv1M7zE3aEJH0Xo9mK1iZ8GYoQ==} - engines: {node: '>=6'} - hasBin: true - requiresBuild: true + /@smithy/credential-provider-imds@2.0.2: + resolution: {integrity: sha512-mbWFYEZ00LBRDk3WvcXViwpdpkJQcfrM3seuKzFxZnF6wIBLMwrcWcsj+OUC/1L+86m8aQY9imXMAaQsAoGxow==} + engines: {node: '>=14.0.0'} dependencies: - lodash.camelcase: 4.3.0 - long: 5.2.3 - protobufjs: 7.2.5 - yargs: 17.7.2 + '@smithy/node-config-provider': 2.0.2 + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + tslib: 2.6.2 dev: true - optional: true - /@humanwhocodes/config-array@0.11.10: - resolution: {integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==} - engines: {node: '>=10.10.0'} + /@smithy/eventstream-codec@2.0.2: + resolution: {integrity: sha512-PQZiKx7fMnNwx4zxcUCm82VjnqK6wV4MEHSmMy3taj5dKfXV782IjRGyaDT+8TsmNqVdZIkve5zLRAzh+7kOhA==} dependencies: - '@humanwhocodes/object-schema': 1.2.1 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true - - /@humanwhocodes/module-importer@1.0.1: - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - dev: true - - /@humanwhocodes/object-schema@1.2.1: - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} - dev: true - - /@iarna/toml@2.2.5: - resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} - dev: true - - /@ioredis/commands@1.2.0: - resolution: {integrity: sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==} - dev: false - - /@istanbuljs/schema@0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} + '@aws-crypto/crc32': 3.0.0 + '@smithy/types': 2.1.0 + '@smithy/util-hex-encoding': 2.0.0 + tslib: 2.6.2 dev: true - /@jest/schemas@29.6.3: - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + /@smithy/eventstream-codec@2.0.5: + resolution: {integrity: sha512-iqR6OuOV3zbQK8uVs9o+9AxhVk8kW9NAxA71nugwUB+kTY9C35pUd0A5/m4PRT0Y0oIW7W4kgnSR3fdYXQjECw==} dependencies: - '@sinclair/typebox': 0.27.8 + '@aws-crypto/crc32': 3.0.0 + '@smithy/types': 2.2.2 + '@smithy/util-hex-encoding': 2.0.0 + tslib: 2.6.2 dev: true - /@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.19 - - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} - - /@jridgewell/set-array@1.1.2: - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - /@jridgewell/source-map@0.3.5: - resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} + /@smithy/eventstream-serde-browser@2.0.2: + resolution: {integrity: sha512-qaHlcFI+ILE+gZV2B/aZMVXc9LG4v1Owa20dHlP0dLOiJ9WByOjtD2qZmYA/HO4qkkDZHEL/0baWc63aqLCHKQ==} + engines: {node: '>=14.0.0'} dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.19 - dev: false - - /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + '@smithy/eventstream-serde-universal': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@jridgewell/trace-mapping@0.3.19: - resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==} + /@smithy/eventstream-serde-config-resolver@2.0.2: + resolution: {integrity: sha512-iVC7/NFNWfSXllAxFNUuC4QlREdZjMmAOdISb6fwny/4mUDt1EtYLCrXq7gN1mIzhRPwMpL9YvQ8jpgvfA0Jdw==} + engines: {node: '>=14.0.0'} dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.4.15 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@jsdoc/salty@0.2.5: - resolution: {integrity: sha512-TfRP53RqunNe2HBobVBJ0VLhK1HbfvBYeTC1ahnN64PWvyYyGebmMiPkuwvD9fpw2ZbkoPb8Q7mwy0aR8Z9rvw==} - engines: {node: '>=v12.0.0'} - requiresBuild: true + /@smithy/eventstream-serde-node@2.0.2: + resolution: {integrity: sha512-p7py8jDpIS1bRewskwgEgJx1OkFvockA2bJnXtOAPJib42DtyRpp8oV14s2ZpjMq57r9KMCQy2j02g554DNavg==} + engines: {node: '>=14.0.0'} dependencies: - lodash: 4.17.21 + '@smithy/eventstream-serde-universal': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - optional: true - /@mapbox/node-pre-gyp@1.0.11: - resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} - hasBin: true + /@smithy/eventstream-serde-universal@2.0.2: + resolution: {integrity: sha512-zf/hm5VIDsvl+XpI1rop4xwXLKiBUe5pxgjRFdHi7AC1p6Zc8uJfyCExLiMUP/QspoIrVV1xGwFFxRCeddDH3g==} + engines: {node: '>=14.0.0'} dependencies: - detect-libc: 2.0.2 - https-proxy-agent: 5.0.1 - make-dir: 3.1.0 - node-fetch: 2.7.0 - nopt: 5.0.0 - npmlog: 5.0.1 - rimraf: 3.0.2 - semver: 7.5.4 - tar: 6.1.15 - transitivePeerDependencies: - - encoding - - supports-color - dev: false + '@smithy/eventstream-codec': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@miniflare/cache@2.14.1: - resolution: {integrity: sha512-f/o6UBV6UX+MlhjcEch73/wjQvvNo37dgYmP6Pn2ax1/mEHhJ7allNAqenmonT4djNeyB3eEYV3zUl54wCEwrg==} - engines: {node: '>=16.13'} + /@smithy/fetch-http-handler@1.1.0: + resolution: {integrity: sha512-N22C9R44u5WGlcY+Wuv8EXmCAq62wWwriRAuoczMEwAIjPbvHSthyPSLqI4S7kAST1j6niWg8kwpeJ3ReAv3xg==} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - http-cache-semantics: 4.1.1 - undici: 5.23.0 + '@smithy/protocol-http': 1.2.0 + '@smithy/querystring-builder': 1.1.0 + '@smithy/types': 1.2.0 + '@smithy/util-base64': 1.1.0 + tslib: 2.6.2 dev: true - /@miniflare/cli-parser@2.14.1: - resolution: {integrity: sha512-MLvMuvxQPL/uw94Dg6CR3CM62uGoxxCkgF7aDtBYF9zb6YCfjOQn0q5d7zWxydpYAb5Dn1N1hZMnjAy7mlpNdQ==} - engines: {node: '>=16.13'} + /@smithy/fetch-http-handler@2.0.2: + resolution: {integrity: sha512-Wo2m1RaiXNSLF4J3D62LpdSoj/YYb+6tn0H8is1tSrzr7eXAdiYVBc0wIa23N0wT4zmN0iG/yNY6gTCDQ6799A==} dependencies: - '@miniflare/shared': 2.14.1 - kleur: 4.1.5 + '@smithy/protocol-http': 2.0.2 + '@smithy/querystring-builder': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/util-base64': 2.0.0 + tslib: 2.6.2 dev: true - /@miniflare/core@2.14.1: - resolution: {integrity: sha512-d+SGAda/VoXq+SKz04oq8ATUwQw5755L87fgPR8pTdR2YbWkxdbmEm1z2olOpDiUjcR86aN6NtCjY6tUC7fqaw==} - engines: {node: '>=16.13'} + /@smithy/hash-blob-browser@2.0.2: + resolution: {integrity: sha512-CmVGWbiyiEySGDRg3o2C3DLZYW+mH8fMoIEZrmwnBM8bQsepZGOME40tbpvv12BIhZIInJV8srMMHpQ6aKObLA==} dependencies: - '@iarna/toml': 2.2.5 - '@miniflare/queues': 2.14.1 - '@miniflare/shared': 2.14.1 - '@miniflare/watcher': 2.14.1 - busboy: 1.6.0 - dotenv: 10.0.0 - kleur: 4.1.5 - set-cookie-parser: 2.6.0 - undici: 5.23.0 - urlpattern-polyfill: 4.0.3 + '@smithy/chunked-blob-reader': 2.0.0 + '@smithy/chunked-blob-reader-native': 2.0.0 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - /@miniflare/d1@2.14.1: - resolution: {integrity: sha512-MulDDBsDD8o5DwiqdMeJZy2vLoMji+NWnLcuibSag2mayA0LJcp0eHezseZNkW+knciWR1gMP8Xpa4Q1KwkbKA==} - engines: {node: '>=16.7'} + /@smithy/hash-node@2.0.2: + resolution: {integrity: sha512-JKDzZ1YVR7JzOBaJoWy3ToJCE86OQE6D4kOBvvVsu93a3lcF9kv6KYTKBYEWAjwOn/CpK4NH7mKB01OQ8H+aiA==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 + '@smithy/types': 2.1.0 + '@smithy/util-buffer-from': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 dev: true - /@miniflare/durable-objects@2.14.1: - resolution: {integrity: sha512-T+oHGw5GcEIilkzrf0xDES7jzLVqcXJzSGsEIWqnBFLtdlKmrZF679ulRLBbyMVgvpQz6FRONh9jTH1XIiuObQ==} - engines: {node: '>=16.13'} + /@smithy/hash-stream-node@2.0.2: + resolution: {integrity: sha512-cDfGE81BbykXKZ50+eLU5Yat8WGiDFQpNa+5S3AfDIzz5h4D73DpxWwcwV4qYB7GoAw2chFqTCAGWgU/MgRS9g==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - '@miniflare/storage-memory': 2.14.1 - undici: 5.23.0 + '@smithy/types': 2.1.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 dev: true - /@miniflare/html-rewriter@2.14.1: - resolution: {integrity: sha512-vp4uZXuEKhtIaxoXa7jgDAPItlzjbfoUqYWp+fwDKv4J4mfQnzzs/5hwjbE7+Ihm/KNI0zNi8P0sSWjIRFl6ng==} - engines: {node: '>=16.13'} + /@smithy/invalid-dependency@2.0.2: + resolution: {integrity: sha512-inQZQ5gCO3WRWuXpsc1YJ4KBjsvj2qsoU32yTIKznBWTCQe/D5Dp+sSaysqBqxe0VTZ+8nFEHdUMWUX2BxQThw==} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - html-rewriter-wasm: 0.4.1 - undici: 5.23.0 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - /@miniflare/http-server@2.14.1: - resolution: {integrity: sha512-ICT9KuecAF5+AHs9dTnk7DRxCPYLfI3QCtfHOcGQWFuOoe4MCtQk4joo0pxMaSgAJ4TiOOxz3KRWO0G2FwgiPQ==} - engines: {node: '>=16.13'} + /@smithy/is-array-buffer@1.1.0: + resolution: {integrity: sha512-twpQ/n+3OWZJ7Z+xu43MJErmhB/WO/mMTnqR6PwWQShvSJ/emx5d1N59LQZk6ZpTAeuRWrc+eHhkzTp9NFjNRQ==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - '@miniflare/web-sockets': 2.14.1 - kleur: 4.1.5 - selfsigned: 2.1.1 - undici: 5.23.0 - ws: 8.13.0 - youch: 2.2.2 - transitivePeerDependencies: - - bufferutil - - utf-8-validate + tslib: 2.6.2 dev: true - /@miniflare/kv@2.14.1: - resolution: {integrity: sha512-Gp07Wcszle7ptsoO8mCtKQRs0AbQnYo1rgnxUcsTL3xJJaHXEA/B9EKSADS2XzJMeY4PgUOHU6Rf08OOF2yWag==} - engines: {node: '>=16.13'} + /@smithy/is-array-buffer@2.0.0: + resolution: {integrity: sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/shared': 2.14.1 + tslib: 2.6.2 dev: true - /@miniflare/queues@2.14.1: - resolution: {integrity: sha512-uBzrbBkIgtNoztDpmMMISg/brYtxLHRE7oTaN8OVnq3bG+3nF9kQC42HUz+Vg+sf65UlvhSaqkjllgx+fNtOxQ==} - engines: {node: '>=16.7'} + /@smithy/md5-js@2.0.2: + resolution: {integrity: sha512-qm9845tzkYOm3HM/nFiZVMsA9nE7klO69T1qrrbrQKpUJpEFV87XDInbnRpYzBAFUH4DRodbZ9spEnjF7ffoww==} dependencies: - '@miniflare/shared': 2.14.1 + '@smithy/types': 2.1.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 dev: true - /@miniflare/r2@2.14.1: - resolution: {integrity: sha512-grOMnGf2XSicbgxMYMBfWE37k/e7l5NnwXZIViQ+N06uksp+MLA8E6yKQNtvrWQS66TM8gBvMnWo96OFmYjb6Q==} - engines: {node: '>=16.13'} + /@smithy/middleware-content-length@2.0.2: + resolution: {integrity: sha512-FmHlNfuvYgDZE3fIx0G3rD/wLXfAmBYE4mVc/w6d7RllA7TygPzq2pfHL1iCMzWkWTdoAVnt3h4aavAZnhaxEQ==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - undici: 5.23.0 + '@smithy/protocol-http': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - /@miniflare/runner-vm@2.14.1: - resolution: {integrity: sha512-UobsGM0ICVPDlJD54VPDSx0EXrIY3nJMXBy2zIFuuUOz4hQKXvMQ6jtAlJ8UNKer+XXI3Mb/9R/gfU8r6kxIMA==} - engines: {node: '>=16.13'} + /@smithy/middleware-endpoint@2.0.2: + resolution: {integrity: sha512-ropE7/c+g22QeluZ+By/B/WvVep0UFreX+IeRMGIO7EbOUPgqtJRXpbJFdG6JKB1uC+CdaJLn4MnZnVBpcyjuA==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/shared': 2.14.1 + '@smithy/middleware-serde': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/url-parser': 2.0.2 + '@smithy/util-middleware': 2.0.0 + tslib: 2.6.2 dev: true - /@miniflare/scheduler@2.14.1: - resolution: {integrity: sha512-mCFUkGpPcV74tbDAuDLSrLPDiRei7hIIPQL53C4rtCDyLfxYgwLQFDecllQs5IvDzAx4qFpu835Ppc6tbHR5Mw==} - engines: {node: '>=16.13'} + /@smithy/middleware-retry@1.1.0: + resolution: {integrity: sha512-lINKYxIvT+W20YFOtHBKeGm7npuJg0/YCoShttU7fVpsmU+a2rdb9zrJn1MHqWfUL6DhTAWGa0tH2O7l4XrDcw==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - cron-schedule: 3.0.6 + '@smithy/protocol-http': 1.2.0 + '@smithy/service-error-classification': 1.1.0 + '@smithy/types': 1.2.0 + '@smithy/util-middleware': 1.1.0 + '@smithy/util-retry': 1.1.0 + tslib: 2.6.2 + uuid: 8.3.2 dev: true - /@miniflare/shared@2.14.1: - resolution: {integrity: sha512-73GnLtWn5iP936ctE6ZJrMqGu134KOoIIveq5Yd/B+NnbFfzpuzjCpkLrnqjkDdsxDbruXSb5eTR/SmAdpJxZQ==} - engines: {node: '>=16.13'} + /@smithy/middleware-retry@2.0.2: + resolution: {integrity: sha512-wtBUXqtZVriiXppYaFkUrybAPhFVX7vebnW/yVPliLMWMcguOMS58qhOYPZe3t9Wki2+mASfyu+kO3An8lAg2A==} + engines: {node: '>=14.0.0'} dependencies: - '@types/better-sqlite3': 7.6.4 - kleur: 4.1.5 - npx-import: 1.1.4 - picomatch: 2.3.1 + '@smithy/protocol-http': 2.0.2 + '@smithy/service-error-classification': 2.0.0 + '@smithy/types': 2.1.0 + '@smithy/util-middleware': 2.0.0 + '@smithy/util-retry': 2.0.0 + tslib: 2.6.2 + uuid: 8.3.2 dev: true - /@miniflare/sites@2.14.1: - resolution: {integrity: sha512-AbbIcU6VBeaNqVgMiLMWN2a09eX3jZmjaEi0uKqufVDqW/QIz47/30aC0O9qTe+XYpi3jjph/Ux7uEY8Z+enMw==} - engines: {node: '>=16.13'} + /@smithy/middleware-serde@2.0.2: + resolution: {integrity: sha512-Kw9xLdlueIaivUWslKB67WZ/cCUg3QnzYVIA3t5KfgsseEEuU4UxXw8NSTvIt71gqQloY+Um8ugS+idgxrWWnw==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/kv': 2.14.1 - '@miniflare/shared': 2.14.1 - '@miniflare/storage-file': 2.14.1 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - /@miniflare/storage-file@2.14.1: - resolution: {integrity: sha512-faZu9tRSW6c/looVFI/ZhkdGsIc9NfNCbSl3jJRmm7xgyZ+/S+dQ5JtGVbVsUIX8YGWDyE2j3oWCGCjxGLEpkg==} - engines: {node: '>=16.13'} + /@smithy/middleware-stack@1.1.0: + resolution: {integrity: sha512-XynYiIvXNea2BbLcppvpNK0zu8o2woJqgnmxqYTn4FWagH/Hr2QIk8LOsUz7BIJ4tooFhmx8urHKCdlPbbPDCA==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/shared': 2.14.1 - '@miniflare/storage-memory': 2.14.1 + tslib: 2.6.2 dev: true - /@miniflare/storage-memory@2.14.1: - resolution: {integrity: sha512-lfQbQwopVWd4W5XzrYdp0rhk3dJpvSmv1Wwn9RhNO20WrcuoxpdSzbmpBahsgYVg+OheVaEbS6RpFqdmwwLTog==} - engines: {node: '>=16.13'} + /@smithy/middleware-stack@2.0.0: + resolution: {integrity: sha512-31XC1xNF65nlbc16yuh3wwTudmqs6qy4EseQUGF8A/p2m/5wdd/cnXJqpniy/XvXVwkHPz/GwV36HqzHtIKATQ==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/shared': 2.14.1 + tslib: 2.6.2 dev: true - /@miniflare/watcher@2.14.1: - resolution: {integrity: sha512-dkFvetm5wk6pwunlYb/UkI0yFNb3otLpRm5RDywMUzqObEf+rCiNNAbJe3HUspr2ncZVAaRWcEaDh82vYK5cmw==} - engines: {node: '>=16.13'} + /@smithy/node-config-provider@2.0.2: + resolution: {integrity: sha512-9wVJccASfuCctNWrzR0zrDkf0ox3HCHGEhFlWL2LBoghUYuK28pVRBbG69wvnkhlHnB8dDZHagxH+Nq9dm7eWw==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/shared': 2.14.1 + '@smithy/property-provider': 2.0.2 + '@smithy/shared-ini-file-loader': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - /@miniflare/web-sockets@2.14.1: - resolution: {integrity: sha512-3N//L5EjF7+xXd7qCLR2ylUwm8t2MKyGPGWEtRBrQ2xqYYWhewKTjlquHCOPU5Irnnd/4BhTmFA55MNrq7m4Nw==} - engines: {node: '>=16.13'} + /@smithy/node-http-handler@1.1.0: + resolution: {integrity: sha512-d3kRriEgaIiGXLziAM8bjnaLn1fthCJeTLZIwEIpzQqe6yPX0a+yQoLCTyjb2fvdLwkMoG4p7THIIB5cj5lkbg==} + engines: {node: '>=14.0.0'} dependencies: - '@miniflare/core': 2.14.1 - '@miniflare/shared': 2.14.1 - undici: 5.23.0 - ws: 8.13.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate + '@smithy/abort-controller': 1.1.0 + '@smithy/protocol-http': 1.2.0 + '@smithy/querystring-builder': 1.1.0 + '@smithy/types': 1.2.0 + tslib: 2.6.2 dev: true - /@netlify/functions@2.0.2: - resolution: {integrity: sha512-goWRtaIPUK/q47qLYtfGGj7HgJIRaT0snw7zZ0yeoNTfQfCRwQwvRrMAsXkCsCtq2N2Oo81L26SpkMxEQMk9hg==} + /@smithy/node-http-handler@2.0.2: + resolution: {integrity: sha512-lpZjmtmyZqSAtMPsbrLhb7XoAQ2kAHeuLY/csW6I2k+QyFvOk7cZeQsqEngWmZ9SJaeYiDCBINxAIM61i5WGLw==} engines: {node: '>=14.0.0'} dependencies: - '@netlify/serverless-functions-api': 1.7.3 - is-promise: 4.0.0 - dev: false - - /@netlify/node-cookies@0.1.0: - resolution: {integrity: sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==} - engines: {node: ^14.16.0 || >=16.0.0} - dev: false + '@smithy/abort-controller': 2.0.2 + '@smithy/protocol-http': 2.0.2 + '@smithy/querystring-builder': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@netlify/serverless-functions-api@1.7.3: - resolution: {integrity: sha512-n6/7cJlSWvvbBlUOEAbkGyEld80S6KbG/ldQI9OhLfe1lTatgKmrTNIgqVNpaWpUdTgP2OHWFjmFBzkxxBWs5w==} - engines: {node: ^14.18.0 || >=16.0.0} + /@smithy/property-provider@2.0.2: + resolution: {integrity: sha512-DfaZ8cO+d/mgnMzIllcXcU4OYP+omiOl2LYdn/fTGpw/EAQSVzscYV2muV3sDDnuPYQ/r014hUqIxnF+pzh+SQ==} + engines: {node: '>=14.0.0'} dependencies: - '@netlify/node-cookies': 0.1.0 - urlpattern-polyfill: 8.0.2 - dev: false + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} + /@smithy/protocol-http@1.2.0: + resolution: {integrity: sha512-GfGfruksi3nXdFok5RhgtOnWe5f6BndzYfmEXISD+5gAGdayFGpjWu5pIqIweTudMtse20bGbc+7MFZXT1Tb8Q==} + engines: {node: '>=14.0.0'} dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} + '@smithy/types': 1.2.0 + tslib: 2.6.2 + dev: true - /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + /@smithy/protocol-http@2.0.2: + resolution: {integrity: sha512-qWu8g1FUy+m36KpO1sREJSF7BaLmjw9AqOuwxLVVSdYz+nUQjc9tFAZ9LB6jJXKdsZFSjfkjHJBbhD78QdE7Rw==} + engines: {node: '>=14.0.0'} dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - - /@parcel/watcher-android-arm64@2.3.0: - resolution: {integrity: sha512-f4o9eA3dgk0XRT3XhB0UWpWpLnKgrh1IwNJKJ7UJek7eTYccQ8LR7XUWFKqw6aEq5KUNlCcGvSzKqSX/vtWVVA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [android] - requiresBuild: true - dev: false - optional: true + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-darwin-arm64@2.3.0: - resolution: {integrity: sha512-mKY+oijI4ahBMc/GygVGvEdOq0L4DxhYgwQqYAz/7yPzuGi79oXrZG52WdpGA1wLBPrYb0T8uBaGFo7I6rvSKw==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [darwin] - requiresBuild: true - dev: false - optional: true + /@smithy/querystring-builder@1.1.0: + resolution: {integrity: sha512-gDEi4LxIGLbdfjrjiY45QNbuDmpkwh9DX4xzrR2AzjjXpxwGyfSpbJaYhXARw9p17VH0h9UewnNQXNwaQyYMDA==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/types': 1.2.0 + '@smithy/util-uri-escape': 1.1.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-darwin-x64@2.3.0: - resolution: {integrity: sha512-20oBj8LcEOnLE3mgpy6zuOq8AplPu9NcSSSfyVKgfOhNAc4eF4ob3ldj0xWjGGbOF7Dcy1Tvm6ytvgdjlfUeow==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [darwin] - requiresBuild: true - dev: false - optional: true + /@smithy/querystring-builder@2.0.2: + resolution: {integrity: sha512-H99LOMWEssfwqkOoTs4Y12UiZ7CTGQSX5Nrx5UkYgRbUEpC1GnnaprHiYrqclC58/xr4K76aNchdPyioxewMzA==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/types': 2.1.0 + '@smithy/util-uri-escape': 2.0.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-freebsd-x64@2.3.0: - resolution: {integrity: sha512-7LftKlaHunueAEiojhCn+Ef2CTXWsLgTl4hq0pkhkTBFI3ssj2bJXmH2L67mKpiAD5dz66JYk4zS66qzdnIOgw==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [freebsd] - requiresBuild: true - dev: false - optional: true + /@smithy/querystring-parser@2.0.2: + resolution: {integrity: sha512-L4VtKQ8O4/aWPQJbiFymbhAmxdfLnEaROh/Vs0OstJ7jtOZeBl2QJmuWY2V7hjt64W7V+tEn2sv6vVvnxkm/xQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-linux-arm-glibc@2.3.0: - resolution: {integrity: sha512-1apPw5cD2xBv1XIHPUlq0cO6iAaEUQ3BcY0ysSyD9Kuyw4MoWm1DV+W9mneWI+1g6OeP6dhikiFE6BlU+AToTQ==} - engines: {node: '>= 10.0.0'} - cpu: [arm] - os: [linux] - requiresBuild: true - dev: false - optional: true + /@smithy/service-error-classification@1.1.0: + resolution: {integrity: sha512-OCTEeJ1igatd5kFrS2VDlYbainNNpf7Lj1siFOxnRWqYOP9oNvC5HOJBd3t+Z8MbrmehBtuDJ2QqeBsfeiNkww==} + engines: {node: '>=14.0.0'} + dev: true - /@parcel/watcher-linux-arm64-glibc@2.3.0: - resolution: {integrity: sha512-mQ0gBSQEiq1k/MMkgcSB0Ic47UORZBmWoAWlMrTW6nbAGoLZP+h7AtUM7H3oDu34TBFFvjy4JCGP43JlylkTQA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: false - optional: true + /@smithy/service-error-classification@2.0.0: + resolution: {integrity: sha512-2z5Nafy1O0cTf69wKyNjGW/sNVMiqDnb4jgwfMG8ye8KnFJ5qmJpDccwIbJNhXIfbsxTg9SEec2oe1cexhMJvw==} + engines: {node: '>=14.0.0'} + dev: true - /@parcel/watcher-linux-arm64-musl@2.3.0: - resolution: {integrity: sha512-LXZAExpepJew0Gp8ZkJ+xDZaTQjLHv48h0p0Vw2VMFQ8A+RKrAvpFuPVCVwKJCr5SE+zvaG+Etg56qXvTDIedw==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [linux] - requiresBuild: true - dev: false - optional: true + /@smithy/shared-ini-file-loader@2.0.2: + resolution: {integrity: sha512-2VkNOM/82u4vatVdK5nfusgGIlvR48Fkq6me17Oc+V1iyxfR/1x0pG6LzW0br1qlGtzBYFZKmDyviBRcPVFTVw==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-linux-x64-glibc@2.3.0: - resolution: {integrity: sha512-P7Wo91lKSeSgMTtG7CnBS6WrA5otr1K7shhSjKHNePVmfBHDoAOHYRXgUmhiNfbcGk0uMCHVcdbfxtuiZCHVow==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: false - optional: true + /@smithy/signature-v4@2.0.5: + resolution: {integrity: sha512-ABIzXmUDXK4n2c9cXjQLELgH2RdtABpYKT+U131e2I6RbCypFZmxIHmIBufJzU2kdMCQ3+thBGDWorAITFW04A==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/eventstream-codec': 2.0.5 + '@smithy/is-array-buffer': 2.0.0 + '@smithy/types': 2.2.2 + '@smithy/util-hex-encoding': 2.0.0 + '@smithy/util-middleware': 2.0.0 + '@smithy/util-uri-escape': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-linux-x64-musl@2.3.0: - resolution: {integrity: sha512-+kiRE1JIq8QdxzwoYY+wzBs9YbJ34guBweTK8nlzLKimn5EQ2b2FSC+tAOpq302BuIMjyuUGvBiUhEcLIGMQ5g==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [linux] - requiresBuild: true - dev: false - optional: true + /@smithy/smithy-client@1.1.0: + resolution: {integrity: sha512-j32SGgVhv2G9nBTmel9u3OXux8KG20ssxuFakJrEeDug3kqbl1qrGzVLCe+Eib402UDtA0Sp1a4NZ2SEXDBxag==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/middleware-stack': 1.1.0 + '@smithy/types': 1.2.0 + '@smithy/util-stream': 1.1.0 + tslib: 2.6.2 + dev: true - /@parcel/watcher-wasm@2.3.0: - resolution: {integrity: sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA==} - engines: {node: '>= 10.0.0'} + /@smithy/smithy-client@2.0.2: + resolution: {integrity: sha512-mDfokI8WwLU5C0gcQ4ww/zJI/WLGSh2+vdIA42JRnjfYUjJNH/rKfX9YOnn2eBOxl3loATERVUqkHmKe+P8s2Q==} + engines: {node: '>=14.0.0'} dependencies: - is-glob: 4.0.3 - micromatch: 4.0.5 - dev: false - bundledDependencies: - - napi-wasm + '@smithy/middleware-stack': 2.0.0 + '@smithy/types': 2.1.0 + '@smithy/util-stream': 2.0.2 + tslib: 2.6.2 + dev: true - /@parcel/watcher-win32-arm64@2.3.0: - resolution: {integrity: sha512-35gXCnaz1AqIXpG42evcoP2+sNL62gZTMZne3IackM+6QlfMcJLy3DrjuL6Iks7Czpd3j4xRBzez3ADCj1l7Aw==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [win32] - requiresBuild: true - dev: false - optional: true + /@smithy/types@1.2.0: + resolution: {integrity: sha512-z1r00TvBqF3dh4aHhya7nz1HhvCg4TRmw51fjMrh5do3h+ngSstt/yKlNbHeb9QxJmFbmN8KEVSWgb1bRvfEoA==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 + dev: true - /@parcel/watcher-win32-ia32@2.3.0: - resolution: {integrity: sha512-FJS/IBQHhRpZ6PiCjFt1UAcPr0YmCLHRbTc00IBTrelEjlmmgIVLeOx4MSXzx2HFEy5Jo5YdhGpxCuqCyDJ5ow==} - engines: {node: '>= 10.0.0'} - cpu: [ia32] - os: [win32] - requiresBuild: true - dev: false - optional: true + /@smithy/types@2.1.0: + resolution: {integrity: sha512-KLsCsqxX0j2l99iP8s0f7LBlcsp7a7ceXGn0LPYPyVOsqmIKvSaPQajq0YevlL4T9Bm+DtcyXfBTbtBcLX1I7A==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 + dev: true - /@parcel/watcher-win32-x64@2.3.0: - resolution: {integrity: sha512-dLx+0XRdMnVI62kU3wbXvbIRhLck4aE28bIGKbRGS7BJNt54IIj9+c/Dkqb+7DJEbHUZAX1bwaoM8PqVlHJmCA==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [win32] - requiresBuild: true - dev: false - optional: true + /@smithy/types@2.2.2: + resolution: {integrity: sha512-4PS0y1VxDnELGHGgBWlDksB2LJK8TG8lcvlWxIsgR+8vROI7Ms8h1P4FQUx+ftAX2QZv5g1CJCdhdRmQKyonyw==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 + dev: true - /@parcel/watcher@2.3.0: - resolution: {integrity: sha512-pW7QaFiL11O0BphO+bq3MgqeX/INAk9jgBldVDYjlQPO4VddoZnF22TcF9onMhnLVHuNqBJeRf+Fj7eezi/+rQ==} - engines: {node: '>= 10.0.0'} + /@smithy/url-parser@2.0.2: + resolution: {integrity: sha512-X1mHCzrSVDlhVy7d3S7Vq+dTfYzwh4n7xGHhyJumu77nJqIss0lazVug85Pwo0DKIoO314wAOvMnBxNYDa+7wA==} dependencies: - detect-libc: 1.0.3 - is-glob: 4.0.3 - micromatch: 4.0.5 - node-addon-api: 7.0.0 - optionalDependencies: - '@parcel/watcher-android-arm64': 2.3.0 - '@parcel/watcher-darwin-arm64': 2.3.0 - '@parcel/watcher-darwin-x64': 2.3.0 - '@parcel/watcher-freebsd-x64': 2.3.0 - '@parcel/watcher-linux-arm-glibc': 2.3.0 - '@parcel/watcher-linux-arm64-glibc': 2.3.0 - '@parcel/watcher-linux-arm64-musl': 2.3.0 - '@parcel/watcher-linux-x64-glibc': 2.3.0 - '@parcel/watcher-linux-x64-musl': 2.3.0 - '@parcel/watcher-win32-arm64': 2.3.0 - '@parcel/watcher-win32-ia32': 2.3.0 - '@parcel/watcher-win32-x64': 2.3.0 - dev: false + '@smithy/querystring-parser': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 + dev: true - /@protobufjs/aspromise@1.1.2: - resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} + /@smithy/util-base64@1.1.0: + resolution: {integrity: sha512-FpYmDmVbOXAxqvoVCwqehUN0zXS+lN8V7VS9O7I8MKeVHdSTsZzlwiMEvGoyTNOXWn8luF4CTDYgNHnZViR30g==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/util-buffer-from': 1.1.0 + tslib: 2.6.2 dev: true - /@protobufjs/base64@1.1.2: - resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} + /@smithy/util-base64@2.0.0: + resolution: {integrity: sha512-Zb1E4xx+m5Lud8bbeYi5FkcMJMnn+1WUnJF3qD7rAdXpaL7UjkFQLdmW5fHadoKbdHpwH9vSR8EyTJFHJs++tA==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/util-buffer-from': 2.0.0 + tslib: 2.6.2 dev: true - /@protobufjs/codegen@2.0.4: - resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + /@smithy/util-body-length-browser@2.0.0: + resolution: {integrity: sha512-JdDuS4ircJt+FDnaQj88TzZY3+njZ6O+D3uakS32f2VNnDo3vyEuNdBOh/oFd8Df1zSZOuH1HEChk2AOYDezZg==} + dependencies: + tslib: 2.6.2 dev: true - /@protobufjs/eventemitter@1.1.0: - resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + /@smithy/util-body-length-node@2.0.0: + resolution: {integrity: sha512-ZV7Z/WHTMxHJe/xL/56qZwSUcl63/5aaPAGjkfynJm4poILjdD4GmFI+V+YWabh2WJIjwTKZ5PNsuvPQKt93Mg==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 dev: true - /@protobufjs/fetch@1.1.0: - resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + /@smithy/util-buffer-from@1.1.0: + resolution: {integrity: sha512-9m6NXE0ww+ra5HKHCHig20T+FAwxBAm7DIdwc/767uGWbRcY720ybgPacQNB96JMOI7xVr/CDa3oMzKmW4a+kw==} + engines: {node: '>=14.0.0'} dependencies: - '@protobufjs/aspromise': 1.1.2 - '@protobufjs/inquire': 1.1.0 + '@smithy/is-array-buffer': 1.1.0 + tslib: 2.6.2 dev: true - /@protobufjs/float@1.0.2: - resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + /@smithy/util-buffer-from@2.0.0: + resolution: {integrity: sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/is-array-buffer': 2.0.0 + tslib: 2.6.2 dev: true - /@protobufjs/inquire@1.1.0: - resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + /@smithy/util-config-provider@1.1.0: + resolution: {integrity: sha512-rQ47YpNmF6Is4I9GiE3T3+0xQ+r7RKRKbmHYyGSbyep/0cSf9kteKcI0ssJTvveJ1K4QvwrxXj1tEFp/G2UqxQ==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 dev: true - /@protobufjs/path@1.1.2: - resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + /@smithy/util-config-provider@2.0.0: + resolution: {integrity: sha512-xCQ6UapcIWKxXHEU4Mcs2s7LcFQRiU3XEluM2WcCjjBtQkUN71Tb+ydGmJFPxMUrW/GWMgQEEGipLym4XG0jZg==} + engines: {node: '>=14.0.0'} + dependencies: + tslib: 2.6.2 dev: true - /@protobufjs/pool@1.1.0: - resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + /@smithy/util-defaults-mode-browser@2.0.2: + resolution: {integrity: sha512-c2tMMjb624XLuzmlRoZpnFOkejVxcgw3WQKdmgdGZYZapcLzXyC0H9JhnXMjQCt30GqLTlsILRNVBYwFRbw/4Q==} + engines: {node: '>= 10.0.0'} + dependencies: + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + bowser: 2.11.0 + tslib: 2.6.2 dev: true - /@protobufjs/utf8@1.1.0: - resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + /@smithy/util-defaults-mode-node@2.0.2: + resolution: {integrity: sha512-gt7m5LLqUtEKldJLyc14DE4kb85vxwomvt9AfEMEvWM4VwfWS1kGJqiStZFb5KNqnQPXw8vvpgLTi8NrWAOXqg==} + engines: {node: '>= 10.0.0'} + dependencies: + '@smithy/config-resolver': 2.0.2 + '@smithy/credential-provider-imds': 2.0.2 + '@smithy/node-config-provider': 2.0.2 + '@smithy/property-provider': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true - /@rollup/plugin-alias@5.0.0(rollup@3.28.1): - resolution: {integrity: sha512-l9hY5chSCjuFRPsnRm16twWBiSApl2uYFLsepQYwtBuAxNMQ/1dJqADld40P0Jkqm65GRTLy/AC6hnpVebtLsA==} + /@smithy/util-hex-encoding@1.1.0: + resolution: {integrity: sha512-7UtIE9eH0u41zpB60Jzr0oNCQ3hMJUabMcKRUVjmyHTXiWDE4vjSqN6qlih7rCNeKGbioS7f/y2Jgym4QZcKFg==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - rollup: 3.28.1 - slash: 4.0.0 + tslib: 2.6.2 + dev: true - /@rollup/plugin-commonjs@25.0.4(rollup@3.28.1): - resolution: {integrity: sha512-L92Vz9WUZXDnlQQl3EwbypJR4+DM2EbsO+/KOcEkP4Mc6Ct453EeDB2uH9lgRwj4w5yflgNpq9pHOiY8aoUXBQ==} + /@smithy/util-hex-encoding@2.0.0: + resolution: {integrity: sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.68.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - '@rollup/pluginutils': 5.0.4(rollup@3.28.1) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 8.1.0 - is-reference: 1.2.1 - magic-string: 0.27.0 - rollup: 3.28.1 + tslib: 2.6.2 + dev: true - /@rollup/plugin-inject@5.0.3(rollup@3.28.1): - resolution: {integrity: sha512-411QlbL+z2yXpRWFXSmw/teQRMkXcAAC8aYTemc15gwJRpvEVDQwoe+N/HTFD8RFG8+88Bme9DK2V9CVm7hJdA==} + /@smithy/util-middleware@1.1.0: + resolution: {integrity: sha512-6hhckcBqVgjWAqLy2vqlPZ3rfxLDhFWEmM7oLh2POGvsi7j0tHkbN7w4DFhuBExVJAbJ/qqxqZdRY6Fu7/OezQ==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - '@rollup/pluginutils': 5.0.4(rollup@3.28.1) - estree-walker: 2.0.2 - magic-string: 0.27.0 - rollup: 3.28.1 - dev: false + tslib: 2.6.2 + dev: true - /@rollup/plugin-json@6.0.0(rollup@3.28.1): - resolution: {integrity: sha512-i/4C5Jrdr1XUarRhVu27EEwjt4GObltD7c+MkCIpO2QIbojw8MUs+CCTqOphQi3Qtg1FLmYt+l+6YeoIf51J7w==} + /@smithy/util-middleware@2.0.0: + resolution: {integrity: sha512-eCWX4ECuDHn1wuyyDdGdUWnT4OGyIzV0LN1xRttBFMPI9Ff/4heSHVxneyiMtOB//zpXWCha1/SWHJOZstG7kA==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - '@rollup/pluginutils': 5.0.4(rollup@3.28.1) - rollup: 3.28.1 + tslib: 2.6.2 + dev: true - /@rollup/plugin-node-resolve@15.2.1(rollup@3.28.1): - resolution: {integrity: sha512-nsbUg588+GDSu8/NS8T4UAshO6xeaOfINNuXeVHcKV02LJtoRaM1SiOacClw4kws1SFiNhdLGxlbMY9ga/zs/w==} + /@smithy/util-retry@1.1.0: + resolution: {integrity: sha512-ygQW5HBqYXpR3ua09UciS0sL7UGJzGiktrKkOuEJwARoUuzz40yaEGU6xd9Gs7KBmAaFC8gMfnghHtwZ2nyBCQ==} + engines: {node: '>= 14.0.0'} + dependencies: + '@smithy/service-error-classification': 1.1.0 + tslib: 2.6.2 + dev: true + + /@smithy/util-retry@2.0.0: + resolution: {integrity: sha512-/dvJ8afrElasuiiIttRJeoS2sy8YXpksQwiM/TcepqdRVp7u4ejd9C4IQURHNjlfPUT7Y6lCDSa2zQJbdHhVTg==} + engines: {node: '>= 14.0.0'} + dependencies: + '@smithy/service-error-classification': 2.0.0 + tslib: 2.6.2 + dev: true + + /@smithy/util-stream@1.1.0: + resolution: {integrity: sha512-w3lsdGsntaLQIrwDWJkIFKrFscgZXwU/oxsse09aSTNv5TckPhDeYea3LhsDrU5MGAG3vprhVZAKr33S45coVA==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.78.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - '@rollup/pluginutils': 5.0.4(rollup@3.28.1) - '@types/resolve': 1.20.2 - deepmerge: 4.3.1 - is-builtin-module: 3.2.1 - is-module: 1.0.0 - resolve: 1.22.4 - rollup: 3.28.1 + '@smithy/fetch-http-handler': 1.1.0 + '@smithy/node-http-handler': 1.1.0 + '@smithy/types': 1.2.0 + '@smithy/util-base64': 1.1.0 + '@smithy/util-buffer-from': 1.1.0 + '@smithy/util-hex-encoding': 1.1.0 + '@smithy/util-utf8': 1.1.0 + tslib: 2.6.2 + dev: true - /@rollup/plugin-replace@5.0.2(rollup@3.28.1): - resolution: {integrity: sha512-M9YXNekv/C/iHHK+cvORzfRYfPbq0RDD8r0G+bMiTXjNGKulPnCT9O3Ss46WfhI6ZOCgApOP7xAdmCQJ+U2LAA==} + /@smithy/util-stream@2.0.2: + resolution: {integrity: sha512-Mg9IJcKIu4YKlbzvpp1KLvh4JZLdcPgpxk+LICuDwzZCfxe47R9enVK8dNEiuyiIGK2ExbfvzCVT8IBru62vZw==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - '@rollup/pluginutils': 5.0.4(rollup@3.28.1) - magic-string: 0.27.0 - rollup: 3.28.1 + '@smithy/fetch-http-handler': 2.0.2 + '@smithy/node-http-handler': 2.0.2 + '@smithy/types': 2.1.0 + '@smithy/util-base64': 2.0.0 + '@smithy/util-buffer-from': 2.0.0 + '@smithy/util-hex-encoding': 2.0.0 + '@smithy/util-utf8': 2.0.0 + tslib: 2.6.2 + dev: true - /@rollup/plugin-terser@0.4.3(rollup@3.28.1): - resolution: {integrity: sha512-EF0oejTMtkyhrkwCdg0HJ0IpkcaVg1MMSf2olHb2Jp+1mnLM04OhjpJWGma4HobiDTF0WCyViWuvadyE9ch2XA==} + /@smithy/util-uri-escape@1.1.0: + resolution: {integrity: sha512-/jL/V1xdVRt5XppwiaEU8Etp5WHZj609n0xMTuehmCqdoOFbId1M+aEeDWZsQ+8JbEB/BJ6ynY2SlYmOaKtt8w==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.x || ^3.x - peerDependenciesMeta: - rollup: - optional: true dependencies: - rollup: 3.28.1 - serialize-javascript: 6.0.1 - smob: 1.4.0 - terser: 5.19.2 - dev: false + tslib: 2.6.2 + dev: true - /@rollup/plugin-wasm@6.1.3(rollup@3.28.1): - resolution: {integrity: sha512-7ItTTeyauE6lwdDtQWceEHZ9+txbi4RRy0mYPFn9BW7rD7YdgBDu7HTHsLtHrRzJc313RM/1m6GKgV3np/aEaw==} + /@smithy/util-uri-escape@2.0.0: + resolution: {integrity: sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - rollup: 3.28.1 - dev: false + tslib: 2.6.2 + dev: true - /@rollup/pluginutils@4.2.1: - resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} - engines: {node: '>= 8.0.0'} + /@smithy/util-utf8@1.1.0: + resolution: {integrity: sha512-p/MYV+JmqmPyjdgyN2UxAeYDj9cBqCjp0C/NsTWnnjoZUVqoeZ6IrW915L9CAKWVECgv9lVQGc4u/yz26/bI1A==} + engines: {node: '>=14.0.0'} dependencies: - estree-walker: 2.0.2 - picomatch: 2.3.1 - dev: false + '@smithy/util-buffer-from': 1.1.0 + tslib: 2.6.2 + dev: true - /@rollup/pluginutils@5.0.4(rollup@3.28.1): - resolution: {integrity: sha512-0KJnIoRI8A+a1dqOYLxH8vBf8bphDmty5QvIm2hqm7oFCFYKCAZWWd2hXgMibaPsNDhI0AtpYfQZJG47pt/k4g==} + /@smithy/util-utf8@2.0.0: + resolution: {integrity: sha512-rctU1VkziY84n5OXe3bPNpKR001ZCME2JCaBBFgtiM2hfKbHFudc/BkMuPab8hRbLd0j3vbnBTTZ1igBf0wgiQ==} engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0 - peerDependenciesMeta: - rollup: - optional: true dependencies: - '@types/estree': 1.0.1 - estree-walker: 2.0.2 - picomatch: 2.3.1 - rollup: 3.28.1 + '@smithy/util-buffer-from': 2.0.0 + tslib: 2.6.2 + dev: true - /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + /@smithy/util-waiter@2.0.2: + resolution: {integrity: sha512-7XCEVXDLguf3Og0NIF/KYEAHtrzNXmCdtEwMfOXr4iBKOUWYzNj91YB9O7tLrct8VGvysGA0x2xYzbxMbvF0QQ==} + engines: {node: '>=14.0.0'} + dependencies: + '@smithy/abort-controller': 2.0.2 + '@smithy/types': 2.1.0 + tslib: 2.6.2 dev: true /@tootallnate/once@2.0.0: @@ -1788,6 +3943,12 @@ packages: dev: true optional: true + /@trpc/server@9.16.0: + resolution: {integrity: sha512-IENsJs41ZR4oeFUJhsNNTSgEOtuRN0m9u7ec4u3eG/qOc7bIoo1nDoYtx4bl6OJJSQYEytG9tlcVz9G8OAaHbg==} + dependencies: + tslib: 2.6.2 + dev: true + /@types/aws-lambda@8.10.119: resolution: {integrity: sha512-Vqm22aZrCvCd6I5g1SvpW151jfqwTzEZ7XJ3yZ6xaZG31nUEOEyzzVImjRcsN8Wi/QyPxId/x8GTtgIbsy8kEw==} dev: true @@ -2010,6 +4171,12 @@ packages: resolution: {integrity: sha512-TgfOX+mGY/NyNxJLIbDWrO9DjGoVSW9+aB8H2yy1fy32jsvxijhmyJI9fDFgvz3YP4lvJaq9DzdR/M1bOgVc9g==} dev: true + /@types/ws@8.5.5: + resolution: {integrity: sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==} + dependencies: + '@types/node': 20.5.6 + dev: true + /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.48.0)(typescript@5.2.2): resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2201,23 +4368,58 @@ packages: /@vitest/snapshot@0.34.3: resolution: {integrity: sha512-QyPaE15DQwbnIBp/yNJ8lbvXTZxS00kRly0kfFgAD5EYmCbYcA+1EEyRalc93M0gosL/xHeg3lKAClIXYpmUiQ==} dependencies: - magic-string: 0.30.3 - pathe: 1.1.1 - pretty-format: 29.6.3 + magic-string: 0.30.3 + pathe: 1.1.1 + pretty-format: 29.6.3 + dev: true + + /@vitest/spy@0.34.3: + resolution: {integrity: sha512-N1V0RFQ6AI7CPgzBq9kzjRdPIgThC340DGjdKdPSE8r86aUSmeliTUgkTqLSgtEwWWsGfBQ+UetZWhK0BgJmkQ==} + dependencies: + tinyspy: 2.1.1 + dev: true + + /@vitest/utils@0.34.3: + resolution: {integrity: sha512-kiSnzLG6m/tiT0XEl4U2H8JDBjFtwVlaE8I3QfGiMFR0QvnRDfYfdP3YvTBWM/6iJDAyaPY6yVQiCTUc7ZzTHA==} + dependencies: + diff-sequences: 29.6.3 + loupe: 2.3.6 + pretty-format: 29.6.3 + dev: true + + /@whatwg-node/events@0.0.2: + resolution: {integrity: sha512-WKj/lI4QjnLuPrim0cfO7i+HsDSXHxNv1y0CrJhdntuO3hxWZmnXCwNDnwOvry11OjRin6cgWNF+j/9Pn8TN4w==} + dev: true + + /@whatwg-node/events@0.0.3: + resolution: {integrity: sha512-IqnKIDWfXBJkvy/k6tzskWTc2NK3LcqHlb+KHGCrjOCH4jfQckRX0NAiIcC/vIqQkzLYw2r2CTSwAxcrtcD6lA==} + dev: true + + /@whatwg-node/fetch@0.8.8: + resolution: {integrity: sha512-CdcjGC2vdKhc13KKxgsc6/616BQ7ooDIgPeTuAiE8qfCnS0mGzcfCOoZXypQSz73nxI+GWc7ZReIAVhxoE1KCg==} + dependencies: + '@peculiar/webcrypto': 1.4.3 + '@whatwg-node/node-fetch': 0.3.6 + busboy: 1.6.0 + urlpattern-polyfill: 8.0.2 + web-streams-polyfill: 3.2.1 dev: true - /@vitest/spy@0.34.3: - resolution: {integrity: sha512-N1V0RFQ6AI7CPgzBq9kzjRdPIgThC340DGjdKdPSE8r86aUSmeliTUgkTqLSgtEwWWsGfBQ+UetZWhK0BgJmkQ==} + /@whatwg-node/node-fetch@0.3.6: + resolution: {integrity: sha512-w9wKgDO4C95qnXZRwZTfCmLWqyRnooGjcIwG0wADWjw9/HN0p7dtvtgSvItZtUyNteEvgTrd8QojNEqV6DAGTA==} dependencies: - tinyspy: 2.1.1 + '@whatwg-node/events': 0.0.3 + busboy: 1.6.0 + fast-querystring: 1.1.2 + fast-url-parser: 1.1.3 + tslib: 2.6.2 dev: true - /@vitest/utils@0.34.3: - resolution: {integrity: sha512-kiSnzLG6m/tiT0XEl4U2H8JDBjFtwVlaE8I3QfGiMFR0QvnRDfYfdP3YvTBWM/6iJDAyaPY6yVQiCTUc7ZzTHA==} + /@whatwg-node/server@0.7.7: + resolution: {integrity: sha512-aHURgNDFm/48WVV3vhTMfnEKCYwYgdaRdRhZsQZx4UVFjGGkGay7Ys0+AYu9QT/jpoImv2oONkstoTMUprDofg==} dependencies: - diff-sequences: 29.6.3 - loupe: 2.3.6 - pretty-format: 29.6.3 + '@whatwg-node/fetch': 0.8.8 + tslib: 2.6.2 dev: true /abbrev@1.1.1: @@ -2259,6 +4461,11 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + /adm-zip@0.5.10: + resolution: {integrity: sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==} + engines: {node: '>=6.0'} + dev: true + /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -2267,6 +4474,17 @@ packages: transitivePeerDependencies: - supports-color + /ajv-formats@2.1.1(ajv@8.12.0): + resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + dependencies: + ajv: 8.12.0 + dev: true + /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -2276,15 +4494,36 @@ packages: uri-js: 4.4.1 dev: true + /ajv@8.12.0: + resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + dev: true + /ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} dev: false + /ansi-escapes@6.2.0: + resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} + engines: {node: '>=14.16'} + dependencies: + type-fest: 3.13.1 + dev: true + /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + /ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + dev: true + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -2304,6 +4543,11 @@ packages: engines: {node: '>=10'} dev: true + /ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + dev: true + /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -2333,7 +4577,6 @@ packages: lodash.union: 4.6.0 normalize-path: 3.0.0 readable-stream: 2.3.8 - dev: false /archiver-utils@3.0.3: resolution: {integrity: sha512-fXzpEZTKgBJMWy0eUT0/332CAQnJ27OJd7sGcvNZzxS2Yzg7iITivMhXOm+zUTO4vT8ZqlPCqiaLPmB8qWhWRA==} @@ -2351,6 +4594,19 @@ packages: readable-stream: 3.6.2 dev: false + /archiver@5.3.2: + resolution: {integrity: sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==} + engines: {node: '>= 10'} + dependencies: + archiver-utils: 2.1.0 + async: 3.2.4 + buffer-crc32: 0.2.13 + readable-stream: 3.6.2 + readdir-glob: 1.1.3 + tar-stream: 2.2.0 + zip-stream: 4.1.0 + dev: true + /archiver@6.0.0: resolution: {integrity: sha512-EPGa+bYaxaMiCT8DCbEDqFz8IjeBSExrJzyUOJx2FBkFJ/OZzJuso3lMSk901M50gMqXxTQcumlGajOFlXhVhw==} engines: {node: '>= 12.0.0'} @@ -2452,10 +4708,37 @@ packages: dev: true optional: true + /asn1.js@5.4.1: + resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} + dependencies: + bn.js: 4.12.0 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + safer-buffer: 2.1.2 + dev: true + + /asn1js@3.0.5: + resolution: {integrity: sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ==} + engines: {node: '>=12.0.0'} + dependencies: + pvtsutils: 1.3.3 + pvutils: 1.1.3 + tslib: 2.6.2 + dev: true + /assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true + /astral-regex@2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} + dev: true + + /async-limiter@1.0.1: + resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + dev: true + /async-listen@3.0.1: resolution: {integrity: sha512-cWMaNwUJnf37C/S5TfCkk/15MwbPRwVYALA2jtjkbHjCmAPiDXyNJy2q3p1KAZzDLHAWyarUWSujUoHR4pEgrA==} engines: {node: '>= 14'} @@ -2475,17 +4758,110 @@ packages: /async@3.2.4: resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - dev: false /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: true + /at-least-node@1.0.0: + resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} + engines: {node: '>= 4.0.0'} + dev: true + + /atomically@1.7.0: + resolution: {integrity: sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==} + engines: {node: '>=10.12.0'} + dev: true + + /auto-bind@5.0.1: + resolution: {integrity: sha512-ooviqdwwgfIfNmDwo94wlshcdzfO64XV0Cg6oDsDYBJfITDz1EngD2z7DkbvCWn+XIMsIqW27sEVF6qcpJrRcg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /available-typed-arrays@1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} dev: true + /aws-cdk-lib@2.91.0(constructs@10.2.69): + resolution: {integrity: sha512-sxXVUlb9OOjwakEssppty7QMTcMX9F6/cNA980JMmQpKeVALXvT60jWdCeAeKeZcGz1Y4whLoXLdU2/bJzh07w==} + engines: {node: '>= 14.15.0'} + peerDependencies: + constructs: ^10.0.0 + dependencies: + '@aws-cdk/asset-awscli-v1': 2.2.200 + '@aws-cdk/asset-kubectl-v20': 2.1.2 + '@aws-cdk/asset-node-proxy-agent-v5': 2.0.166 + constructs: 10.2.69 + dev: true + bundledDependencies: + - '@balena/dockerignore' + - case + - fs-extra + - ignore + - jsonschema + - minimatch + - punycode + - semver + - table + - yaml + + /aws-crt@1.17.1: + resolution: {integrity: sha512-co9Y8jUKSrfHcr5+wK6kGzaTMlNy0nNdOhAvyl5FlZttYqIvKRzsQFNa08qPIgFGIhYZRV9KJbx+geYXkWL3AQ==} + requiresBuild: true + dependencies: + '@aws-sdk/util-utf8-browser': 3.259.0 + '@httptoolkit/websocket-stream': 6.0.1 + axios: 0.24.0 + buffer: 6.0.3 + crypto-js: 4.1.1 + mqtt: 4.3.7 + process: 0.11.10 + transitivePeerDependencies: + - bufferutil + - debug + - supports-color + - utf-8-validate + dev: true + + /aws-iot-device-sdk@2.2.12: + resolution: {integrity: sha512-OcUI6Hq1N3PhAMgceWV3nFhDNkOFmSYPuv1CCqZhQAcWQ7UOhPmA5QSE4aiQcVN3wSIzTEO0UU4sh6ubjMOjPA==} + engines: {node: '>=4.0.0'} + dependencies: + crypto-js: 4.0.0 + minimist: 1.2.6 + mqtt: 4.2.8 + websocket-stream: 5.5.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + + /aws-sdk@2.1432.0: + resolution: {integrity: sha512-bnPilJ0YkFOHGL2yYSnpd/oMnsDicGQKmE479vDn/AVcKhRswcg893DTqxrkkuuylEIcIIPPHBqX+IlwNv1zqw==} + engines: {node: '>= 10.0.0'} + dependencies: + buffer: 4.9.2 + events: 1.1.1 + ieee754: 1.1.13 + jmespath: 0.16.0 + querystring: 0.2.0 + sax: 1.2.1 + url: 0.10.3 + util: 0.12.5 + uuid: 8.0.0 + xml2js: 0.5.0 + dev: true + + /axios@0.24.0: + resolution: {integrity: sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==} + dependencies: + follow-redirects: 1.15.2 + transitivePeerDependencies: + - debug + dev: true + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -2519,7 +4895,14 @@ packages: buffer: 5.7.1 inherits: 2.0.4 readable-stream: 3.6.2 - dev: false + + /bl@5.1.0: + resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==} + dependencies: + buffer: 6.0.3 + inherits: 2.0.4 + readable-stream: 3.6.2 + dev: true /bluebird@3.7.2: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} @@ -2527,6 +4910,10 @@ packages: dev: true optional: true + /bn.js@4.12.0: + resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} + dev: true + /body-parser@1.20.1: resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} @@ -2547,6 +4934,10 @@ packages: - supports-color dev: true + /bowser@2.11.0: + resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} + dev: true + /bplist-parser@0.2.0: resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} engines: {node: '>= 5.10.0'} @@ -2584,7 +4975,6 @@ packages: /buffer-crc32@0.2.13: resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} - dev: false /buffer-equal-constant-time@1.0.1: resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} @@ -2593,12 +4983,31 @@ packages: /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + /buffer@4.9.2: + resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + isarray: 1.0.0 + dev: true + /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} dependencies: base64-js: 1.5.1 ieee754: 1.2.1 - dev: false + + /buffer@6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + dev: true + + /builtin-modules@3.2.0: + resolution: {integrity: sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==} + engines: {node: '>=6'} + dev: true /builtin-modules@3.3.0: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} @@ -2675,6 +5084,20 @@ packages: dev: true optional: true + /cdk-assets@2.91.0: + resolution: {integrity: sha512-/dc6K/a2Gfl+3SX8SU6FyoLY3jGcCuwu/Gs1SCsbom4v22ZbAXIL8enhffSNiVKry/yfHbS/VRHRwiPpbYqVMQ==} + engines: {node: '>= 14.15.0'} + hasBin: true + dependencies: + '@aws-cdk/cloud-assembly-schema': 2.91.0 + '@aws-cdk/cx-api': 2.91.0(@aws-cdk/cloud-assembly-schema@2.91.0) + archiver: 5.3.2 + aws-sdk: 2.1432.0 + glob: 7.2.3 + mime: 2.6.0 + yargs: 16.2.0 + dev: true + /chai@4.3.8: resolution: {integrity: sha512-vX4YvVVtxlfSZ2VecZgFUTU5qPCYsobVI2O9FmwEXBhDigYGQA6jRXCycIs1yJnnWbZ6/+a2zNIF5DfVCcJBFQ==} engines: {node: '>=4'} @@ -2733,6 +5156,10 @@ packages: - supports-color dev: true + /charenc@0.0.2: + resolution: {integrity: sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=} + dev: true + /check-error@1.0.2: resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==} dev: true @@ -2772,6 +5199,31 @@ packages: escape-string-regexp: 1.0.5 dev: true + /cli-boxes@3.0.0: + resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} + engines: {node: '>=10'} + 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 + dev: true + + /cli-spinners@2.9.0: + resolution: {integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==} + engines: {node: '>=6'} + dev: true + + /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 + /clipboardy@3.0.0: resolution: {integrity: sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -2781,6 +5233,14 @@ packages: is-wsl: 2.2.0 dev: false + /cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + dev: true + /cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -2789,11 +5249,23 @@ packages: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 + /clone@1.0.4: + resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} + engines: {node: '>=0.8'} + dev: true + /cluster-key-slot@1.1.2: resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} engines: {node: '>=0.10.0'} dev: false + /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: 2.0.1 + dev: true + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} requiresBuild: true @@ -2834,6 +5306,13 @@ packages: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: false + /commist@1.1.0: + resolution: {integrity: sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==} + dependencies: + leven: 2.1.0 + minimist: 1.2.8 + dev: true + /commondir@1.0.1: resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} @@ -2845,7 +5324,6 @@ packages: crc32-stream: 4.0.2 normalize-path: 3.0.0 readable-stream: 3.6.2 - dev: false /compressible@2.0.18: resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} @@ -2859,6 +5337,32 @@ packages: /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + /concat-stream@2.0.0: + resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==} + engines: {'0': node >= 6.0} + dependencies: + buffer-from: 1.1.2 + inherits: 2.0.4 + readable-stream: 3.6.2 + typedarray: 0.0.6 + dev: true + + /conf@10.2.0: + resolution: {integrity: sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==} + engines: {node: '>=12'} + dependencies: + ajv: 8.12.0 + ajv-formats: 2.1.1(ajv@8.12.0) + atomically: 1.7.0 + debounce-fn: 4.0.0 + dot-prop: 6.0.1 + env-paths: 2.2.1 + json-schema-typed: 7.0.3 + onetime: 5.1.2 + pkg-up: 3.1.0 + semver: 7.5.4 + dev: true + /consola@3.2.3: resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} engines: {node: ^14.18.0 || >=16.10.0} @@ -2867,6 +5371,11 @@ packages: resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} dev: false + /constructs@10.2.69: + resolution: {integrity: sha512-0AiM/uQe5Uk6JVe/62oolmSN2MjbFQkOlYrM3fFGZLKuT+g7xlAI10EebFhyCcZwI2JAcWuWCmmCAyCothxjuw==} + engines: {node: '>= 16.14.0'} + dev: true + /content-disposition@0.5.4: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} engines: {node: '>= 0.6'} @@ -2892,6 +5401,11 @@ packages: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: true + /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: true + /cookie-es@1.0.0: resolution: {integrity: sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ==} dev: false @@ -2912,7 +5426,6 @@ packages: /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - dev: false /cors@2.8.5: resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} @@ -2926,7 +5439,6 @@ packages: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} engines: {node: '>=0.8'} hasBin: true - dev: false /crc32-stream@4.0.2: resolution: {integrity: sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==} @@ -2934,7 +5446,6 @@ packages: dependencies: crc-32: 1.2.2 readable-stream: 3.6.2 - dev: false /cron-schedule@3.0.6: resolution: {integrity: sha512-izfGgKyzzIyLaeb1EtZ3KbglkS6AKp9cv7LxmiyoOu+fXfol1tQDC0Cof0enVZGNtudTHW+3lfuW9ZkLQss4Wg==} @@ -2948,6 +5459,25 @@ packages: shebang-command: 2.0.0 which: 2.0.2 + /crypt@0.0.2: + resolution: {integrity: sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=} + dev: true + + /crypto-js@4.0.0: + resolution: {integrity: sha512-bzHZN8Pn+gS7DQA6n+iUmBfl0hO5DJq++QP3U6uTucDtk/0iGpXd/Gg7CGR0p8tJhofJyaKoWBuJI4eAO00BBg==} + dev: true + + /crypto-js@4.1.1: + resolution: {integrity: sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==} + dev: true + + /debounce-fn@4.0.0: + resolution: {integrity: sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==} + engines: {node: '>=10'} + dependencies: + mimic-fn: 3.1.0 + dev: true + /debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} peerDependencies: @@ -3013,6 +5543,12 @@ packages: titleize: 3.0.0 dev: true + /defaults@1.0.4: + resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + dependencies: + clone: 1.0.4 + dev: true + /define-lazy-prop@2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} engines: {node: '>=8'} @@ -3043,6 +5579,15 @@ packages: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} dev: false + /dendriform-immer-patch-optimiser@2.1.3(immer@9.0.21): + resolution: {integrity: sha512-QG2IegUCdlhycVwsBOJ7SNd18PgzyWPxBivTzuF0E1KFxaU47fHy/frud74A9E66a4WXyFFp9FLLC2XQDkVj7g==} + engines: {node: '>=10'} + peerDependencies: + immer: '9' + dependencies: + immer: 9.0.21 + dev: true + /denque@2.1.0: resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} engines: {node: '>=0.10'} @@ -3075,6 +5620,11 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dev: true + /diff@5.1.0: + resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} + engines: {node: '>=0.3.1'} + dev: true + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -3095,6 +5645,13 @@ packages: esutils: 2.0.3 dev: true + /dot-prop@6.0.1: + resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} + engines: {node: '>=10'} + dependencies: + is-obj: 2.0.0 + dev: true + /dot-prop@8.0.2: resolution: {integrity: sha512-xaBe6ZT4DHPkg0k4Ytbvn5xoxgpG0jOS1dYxSOwAHPuNLjP3/OzN0gH55SrLqpx8cBfSaVt91lXYkApjb+nYdQ==} engines: {node: '>=16'} @@ -3111,10 +5668,24 @@ packages: resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} engines: {node: '>=12'} + /dset@3.1.2: + resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} + engines: {node: '>=4'} + dev: true + /duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} dev: false + /duplexify@3.7.1: + resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} + dependencies: + end-of-stream: 1.4.4 + inherits: 2.0.4 + readable-stream: 2.3.8 + stream-shift: 1.0.1 + dev: true + /duplexify@4.1.2: resolution: {integrity: sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==} requiresBuild: true @@ -3124,7 +5695,10 @@ packages: readable-stream: 3.6.2 stream-shift: 1.0.1 dev: true - optional: true + + /eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + dev: true /ecdsa-sig-formatter@1.0.11: resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} @@ -3158,6 +5732,10 @@ packages: /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + /emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: true + /encodeurl@1.0.2: resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} engines: {node: '>= 0.8'} @@ -3187,6 +5765,11 @@ packages: dev: true optional: true + /env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + dev: true + /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: @@ -3262,6 +5845,36 @@ packages: is-symbol: 1.0.4 dev: true + /esbuild@0.18.13: + resolution: {integrity: sha512-vhg/WR/Oiu4oUIkVhmfcc23G6/zWuEQKFS+yiosSHe4aN6+DQRXIfeloYGibIfVhkr4wyfuVsGNLr+sQU1rWWw==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.18.13 + '@esbuild/android-arm64': 0.18.13 + '@esbuild/android-x64': 0.18.13 + '@esbuild/darwin-arm64': 0.18.13 + '@esbuild/darwin-x64': 0.18.13 + '@esbuild/freebsd-arm64': 0.18.13 + '@esbuild/freebsd-x64': 0.18.13 + '@esbuild/linux-arm': 0.18.13 + '@esbuild/linux-arm64': 0.18.13 + '@esbuild/linux-ia32': 0.18.13 + '@esbuild/linux-loong64': 0.18.13 + '@esbuild/linux-mips64el': 0.18.13 + '@esbuild/linux-ppc64': 0.18.13 + '@esbuild/linux-riscv64': 0.18.13 + '@esbuild/linux-s390x': 0.18.13 + '@esbuild/linux-x64': 0.18.13 + '@esbuild/netbsd-x64': 0.18.13 + '@esbuild/openbsd-x64': 0.18.13 + '@esbuild/sunos-x64': 0.18.13 + '@esbuild/win32-arm64': 0.18.13 + '@esbuild/win32-ia32': 0.18.13 + '@esbuild/win32-x64': 0.18.13 + dev: true + /esbuild@0.18.20: resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} engines: {node: '>=12'} @@ -3338,7 +5951,6 @@ packages: engines: {node: '>=8'} requiresBuild: true dev: true - optional: true /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} @@ -3744,6 +6356,11 @@ packages: dev: true optional: true + /events@1.1.1: + resolution: {integrity: sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw==} + engines: {node: '>=0.4.x'} + dev: true + /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -3853,6 +6470,10 @@ packages: dev: true optional: true + /fast-decode-uri-component@1.0.1: + resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} + dev: true + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true @@ -3871,16 +6492,45 @@ packages: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} dev: true + /fast-jwt@3.2.0: + resolution: {integrity: sha512-RELkgZpWwu5BsUgylCjuu9RBwg3mofXd1bVzqD3V3aH4uew2bF2A+nYp1sZbmvPGf/k7sLBnKuzpQA00CM+gnA==} + engines: {node: '>=14 <22'} + dependencies: + '@lukeed/ms': 2.0.1 + asn1.js: 5.4.1 + ecdsa-sig-formatter: 1.0.11 + mnemonist: 0.39.5 + dev: true + /fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} dev: true + /fast-querystring@1.1.2: + resolution: {integrity: sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==} + dependencies: + fast-decode-uri-component: 1.0.1 + dev: true + /fast-text-encoding@1.0.6: resolution: {integrity: sha512-VhXlQgj9ioXCqGstD37E/HBeqEGV/qOD/kmbVG8h5xKBYvM1L3lR1Zn4555cQ8GkYbJa8aJSipLPndE1k6zK2w==} requiresBuild: true dev: true optional: true + /fast-url-parser@1.1.3: + resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} + dependencies: + punycode: 1.4.1 + dev: true + + /fast-xml-parser@4.2.5: + resolution: {integrity: sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==} + hasBin: true + dependencies: + strnum: 1.0.5 + dev: true + /fast-xml-parser@4.2.7: resolution: {integrity: sha512-J8r6BriSLO1uj2miOk1NW0YVm8AGOOu3Si2HQp/cSmo6EA4m3fcwu2WKjJ4RK9wMLBtg69y1kS8baDiQBR41Ig==} hasBin: true @@ -3934,6 +6584,13 @@ packages: - supports-color dev: true + /find-up@3.0.0: + resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} + engines: {node: '>=6'} + dependencies: + locate-path: 3.0.0 + dev: true + /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -4006,6 +6663,16 @@ packages: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} dev: true + /follow-redirects@1.15.2: + resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + dev: true + /for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: @@ -4032,7 +6699,6 @@ packages: /fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - dev: false /fs-extra@11.1.1: resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} @@ -4042,6 +6708,16 @@ packages: jsonfile: 6.1.0 universalify: 2.0.0 + /fs-extra@9.1.0: + resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} + engines: {node: '>=10'} + dependencies: + at-least-node: 1.0.0 + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.0 + dev: true + /fs-minipass@2.1.0: resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} engines: {node: '>= 8'} @@ -4051,6 +6727,14 @@ packages: /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + /fsevents@2.3.2: + resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + /fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -4149,6 +6833,11 @@ packages: /get-port-please@3.0.1: resolution: {integrity: sha512-R5pcVO8Z1+pVDu8Ml3xaJCEkBiiy1VQN9za0YqH8GIi1nIqD4IzQhzY6dDzMRtdS1lyiGlucRzm8IN8wtLIXng==} + /get-port@6.1.2: + resolution: {integrity: sha512-BrGGraKm2uPqurfGVj/z97/zv8dPleC6x9JBNRTrDNtCkkRF4rPwrQXFgL7+I+q8QSdU4ntLQX2D7KIxSy8nGw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} @@ -4330,6 +7019,31 @@ packages: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} dev: true + /graphql-yoga@3.9.1(graphql@16.7.1): + resolution: {integrity: sha512-BB6EkN64VBTXWmf9Kym2OsVZFzBC0mAsQNo9eNB5xIr3t+x7qepQ34xW5A353NWol3Js3xpzxwIKFVF6l9VsPg==} + peerDependencies: + graphql: ^15.2.0 || ^16.0.0 + dependencies: + '@envelop/core': 3.0.6 + '@envelop/validation-cache': 5.1.3(@envelop/core@3.0.6)(graphql@16.7.1) + '@graphql-tools/executor': 0.0.18(graphql@16.7.1) + '@graphql-tools/schema': 9.0.19(graphql@16.7.1) + '@graphql-tools/utils': 9.2.1(graphql@16.7.1) + '@graphql-yoga/logger': 0.0.1 + '@graphql-yoga/subscription': 3.1.0 + '@whatwg-node/fetch': 0.8.8 + '@whatwg-node/server': 0.7.7 + dset: 3.1.2 + graphql: 16.7.1 + lru-cache: 7.18.3 + tslib: 2.6.2 + dev: true + + /graphql@16.7.1: + resolution: {integrity: sha512-DRYR9tf+UGU0KOsMcKAlXeFfX89UiiIZ0dRU3mR0yJfu6OjZqUcp68NnFLnqQU5RexygFoDy1EW+ccOYcPfmHg==} + engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + dev: true + /gtoken@6.1.2: resolution: {integrity: sha512-4ccGpzz7YAr7lxrT2neugmXQ3hP9ho2gcaityLVkiUecAiwiy60Ii8gRbZeOsXV19fYaRjgBSshs8kXw+NKCPQ==} engines: {node: '>=12.0.0'} @@ -4412,6 +7126,17 @@ packages: dependencies: function-bind: 1.1.1 + /hash-it@6.0.0: + resolution: {integrity: sha512-KHzmSFx1KwyMPw0kXeeUD752q/Kfbzhy6dAZrjXV9kAIXGqzGvv8vhkUqj+2MGZldTo0IBpw6v7iWE7uxsvH0w==} + dev: true + + /help-me@3.0.0: + resolution: {integrity: sha512-hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ==} + dependencies: + glob: 7.2.3 + readable-stream: 3.6.2 + dev: true + /hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} @@ -4509,14 +7234,21 @@ packages: safer-buffer: 2.1.2 dev: true + /ieee754@1.1.13: + resolution: {integrity: sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==} + dev: true + /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - dev: false /ignore@5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} + /immer@9.0.21: + resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} + dev: true + /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -4535,6 +7267,11 @@ packages: engines: {node: '>=8'} dev: true + /indent-string@5.0.0: + resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} + engines: {node: '>=12'} + dev: true + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: @@ -4544,6 +7281,67 @@ packages: /inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + /ink-spinner@5.0.0(ink@4.3.1)(react@18.2.0): + resolution: {integrity: sha512-EYEasbEjkqLGyPOUc8hBJZNuC5GvXGMLu0w5gdTNskPc7Izc5vO3tdQEYnzvshucyGCBXc86ig0ujXPMWaQCdA==} + engines: {node: '>=14.16'} + peerDependencies: + ink: '>=4.0.0' + react: '>=18.0.0' + peerDependenciesMeta: + react: + optional: true + dependencies: + cli-spinners: 2.9.0 + ink: 4.3.1(react@18.2.0) + react: 18.2.0 + dev: true + + /ink@4.3.1(react@18.2.0): + resolution: {integrity: sha512-XlH5AiZRLIC4cF+eMgZLsB/feHCDT7lUtHXK4pe8ULGrC6mNosrYidzJr8CRY0P+hK7UmZ1rLO+ufdox53+NQg==} + engines: {node: '>=14.16'} + peerDependencies: + '@types/react': '>=18.0.0' + react: '>=18.0.0' + react-devtools-core: ^4.19.1 + peerDependenciesMeta: + '@types/react': + optional: true + react: + optional: true + react-devtools-core: + optional: true + dependencies: + '@alcalzone/ansi-tokenize': 0.1.2 + 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: 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: 6.0.0 + stack-utils: 2.0.6 + string-width: 5.1.2 + type-fest: 0.12.0 + widest-line: 4.0.1 + wrap-ansi: 8.1.0 + ws: 8.13.0 + yoga-wasm-web: 0.3.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: true + /internal-slot@1.0.5: resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} engines: {node: '>= 0.4'} @@ -4579,6 +7377,14 @@ packages: resolution: {integrity: sha512-gScdcWHjTGclCU15CIv2r069NoQrys1UeUFFfaO1hL++ytLHkVw7N5nXJmFf3J2LEDMz1PkrvC0m62JEeu1axQ==} dev: false + /is-arguments@1.1.1: + resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + has-tostringtag: 1.0.0 + dev: true + /is-array-buffer@3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: @@ -4611,6 +7417,10 @@ packages: has-tostringtag: 1.0.0 dev: true + /is-buffer@1.1.6: + resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} + dev: true + /is-builtin-module@3.2.1: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} @@ -4622,6 +7432,13 @@ packages: engines: {node: '>= 0.4'} dev: true + /is-ci@3.0.1: + resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} + hasBin: true + dependencies: + ci-info: 3.8.0 + dev: true + /is-core-module@2.13.0: resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==} dependencies: @@ -4653,6 +7470,18 @@ packages: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + /is-fullwidth-code-point@4.0.0: + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} + engines: {node: '>=12'} + dev: true + + /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: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -4667,6 +7496,17 @@ packages: is-docker: 3.0.0 dev: true + /is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + dev: true + + /is-lower-case@2.0.2: + resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} + dependencies: + tslib: 2.6.2 + dev: true + /is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} @@ -4686,6 +7526,11 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + /is-obj@2.0.0: + resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} + engines: {node: '>=8'} + dev: true + /is-path-inside@3.0.3: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} engines: {node: '>=8'} @@ -4755,6 +7600,17 @@ packages: which-typed-array: 1.1.11 dev: true + /is-unicode-supported@1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + dev: true + + /is-upper-case@2.0.2: + resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} + dependencies: + tslib: 2.6.2 + dev: true + /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: @@ -4769,7 +7625,6 @@ packages: /isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - dev: false /isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} @@ -4778,6 +7633,14 @@ packages: /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + /isomorphic-ws@4.0.1(ws@8.13.0): + resolution: {integrity: sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==} + peerDependencies: + ws: '*' + dependencies: + ws: 8.13.0 + dev: true + /istanbul-lib-coverage@3.2.0: resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} engines: {node: '>=8'} @@ -4815,10 +7678,19 @@ packages: resolution: {integrity: sha512-5eEbBDQT/jF1xg6l36P+mWGGoH9Spuy0PCdSr2dtWRDGC6ph/w9ZCL4lmESW8f8F7MwT3XKescfP0wnZWAKL9w==} hasBin: true + /jmespath@0.16.0: + resolution: {integrity: sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==} + engines: {node: '>= 0.6.0'} + dev: true + /jose@4.14.4: resolution: {integrity: sha512-j8GhLiKmUAh+dsFXlX1aJCbt5KMibuKb+d7j1JaOJG6s2UjX1PQlW+OKB/sD4a/5ZYF4RcmYmLSndOoU3Lt/3g==} dev: true + /js-sdsl@4.3.0: + resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==} + dev: true + /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} requiresBuild: true @@ -4899,6 +7771,14 @@ packages: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} dev: true + /json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + dev: true + + /json-schema-typed@7.0.3: + resolution: {integrity: sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==} + dev: true + /json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true @@ -5012,12 +7892,54 @@ packages: resolution: {integrity: sha512-dWl0Dbjm6Xm+kDxhPQJsCBTxrJzuGl0aP9rhr+TG8D3l+GL90N8O8lYUi7dTSAN2uuDqCtNgb6aEuQH5wsiV8Q==} dev: false + /kysely-codegen@0.10.1(kysely@0.25.0): + resolution: {integrity: sha512-8Bslh952gN5gtucRv4jTZDFD18RBioS6M50zHfe5kwb5iSyEAunU4ZYMdHzkHraa4zxjg5/183XlOryBCXLRIw==} + hasBin: true + peerDependencies: + better-sqlite3: '>=7.6.2' + kysely: '>=0.19.12' + mysql2: ^2.3.3 || ^3.0.0 + pg: ^8.8.0 + peerDependenciesMeta: + better-sqlite3: + optional: true + mysql2: + optional: true + pg: + optional: true + dependencies: + chalk: 4.1.2 + dotenv: 16.3.1 + kysely: 0.25.0 + micromatch: 4.0.5 + minimist: 1.2.8 + dev: true + + /kysely-data-api@0.2.1(@aws-sdk/client-rds-data@3.387.0)(kysely@0.25.0): + resolution: {integrity: sha512-KmASvF1gmjVqyU9WOUXhCQlv29ofR+xc2DhjaIomz1+Bjd/VtR2/3g4ZuXwG1L4lWGKxMuo5iOvK3XyPbB4LdQ==} + peerDependencies: + '@aws-sdk/client-rds-data': 3.x + kysely: 0.x + dependencies: + '@aws-sdk/client-rds-data': 3.387.0 + kysely: 0.25.0 + dev: true + + /kysely@0.25.0: + resolution: {integrity: sha512-srn0efIMu5IoEBk0tBmtGnoUss4uwvxtbFQWG/U2MosfqIace1l43IFP1PmEpHRDp+Z79xIcKEqmHH3dAvQdQA==} + engines: {node: '>=14.0.0'} + dev: true + /lazystream@1.0.1: resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==} engines: {node: '>= 0.6.3'} dependencies: readable-stream: 2.3.8 - dev: false + + /leven@2.1.0: + resolution: {integrity: sha512-nvVPLpIHUxCUoRLrFqTgSxXJ614d8AgQoWl7zPe/2VadE8+1dpU3LBhowRuBAcuwruWtOdD8oYC9jDNJjXDPyA==} + engines: {node: '>=0.10.0'} + dev: true /levn@0.3.0: resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==} @@ -5079,6 +8001,14 @@ packages: resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} engines: {node: '>=14'} + /locate-path@3.0.0: + resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} + engines: {node: '>=6'} + dependencies: + p-locate: 3.0.0 + path-exists: 3.0.0 + dev: true + /locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -5105,15 +8035,12 @@ packages: /lodash.defaults@4.2.0: resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} - dev: false /lodash.difference@4.5.0: resolution: {integrity: sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==} - dev: false /lodash.flatten@4.4.0: resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==} - dev: false /lodash.isarguments@3.1.0: resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} @@ -5121,20 +8048,30 @@ packages: /lodash.isplainobject@4.0.6: resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} - dev: false /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true + /lodash.truncate@4.4.2: + resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} + dev: true + /lodash.union@4.6.0: resolution: {integrity: sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==} - dev: false /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: true + /log-symbols@5.1.0: + resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==} + engines: {node: '>=12'} + dependencies: + chalk: 5.3.0 + is-unicode-supported: 1.3.0 + dev: true + /long@4.0.0: resolution: {integrity: sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==} dev: true @@ -5143,6 +8080,13 @@ packages: resolution: {integrity: sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==} dev: true + /loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + dependencies: + js-tokens: 4.0.0 + dev: true + /loupe@2.3.6: resolution: {integrity: sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==} dependencies: @@ -5173,6 +8117,11 @@ packages: dependencies: yallist: 4.0.0 + /lru-cache@7.18.3: + resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} + engines: {node: '>=12'} + dev: true + /lru-memoizer@2.2.0: resolution: {integrity: sha512-QfOZ6jNkxCcM/BkIPnFsqDhtrazLRsghi9mBwFAzol5GCvj4EkFT899Za3+QwikCg5sRX8JstioBDwOxEyzaNw==} dependencies: @@ -5239,6 +8188,14 @@ packages: dev: true optional: true + /md5@2.3.0: + resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + is-buffer: 1.1.6 + dev: true + /mdurl@1.0.1: resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} requiresBuild: true @@ -5290,6 +8247,12 @@ packages: engines: {node: '>=4'} hasBin: true + /mime@2.6.0: + resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} + engines: {node: '>=4.0.0'} + hasBin: true + dev: true + /mime@3.0.0: resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} engines: {node: '>=10.0.0'} @@ -5299,6 +8262,11 @@ packages: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} + /mimic-fn@3.1.0: + resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==} + engines: {node: '>=8'} + dev: true + /mimic-fn@4.0.0: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} @@ -5351,6 +8319,10 @@ packages: - utf-8-validate dev: true + /minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -5362,6 +8334,17 @@ packages: dependencies: brace-expansion: 2.0.1 + /minimatch@6.2.0: + resolution: {integrity: sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==} + engines: {node: '>=10'} + dependencies: + brace-expansion: 2.0.1 + dev: true + + /minimist@1.2.6: + resolution: {integrity: sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==} + dev: true + /minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} dev: true @@ -5420,6 +8403,75 @@ packages: pkg-types: 1.0.3 ufo: 1.3.0 + /mnemonist@0.39.5: + resolution: {integrity: sha512-FPUtkhtJ0efmEFGpU14x7jGbTB+s18LrzRL2KgoWz9YvcY3cPomz8tih01GbHwnGk/OmkOKfqd/RAQoc8Lm7DQ==} + dependencies: + obliterator: 2.0.4 + dev: true + + /mqtt-packet@6.10.0: + resolution: {integrity: sha512-ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA==} + dependencies: + bl: 4.1.0 + debug: 4.3.4 + process-nextick-args: 2.0.1 + transitivePeerDependencies: + - supports-color + dev: true + + /mqtt@4.2.8: + resolution: {integrity: sha512-DJYjlXODVXtSDecN8jnNzi6ItX3+ufGsEs9OB3YV24HtkRrh7kpx8L5M1LuyF0KzaiGtWr2PzDcMGAY60KGOSA==} + engines: {node: '>=10.0.0'} + hasBin: true + dependencies: + commist: 1.1.0 + concat-stream: 2.0.0 + debug: 4.3.4 + duplexify: 4.1.2 + help-me: 3.0.0 + inherits: 2.0.4 + minimist: 1.2.8 + mqtt-packet: 6.10.0 + pump: 3.0.0 + readable-stream: 3.6.2 + reinterval: 1.1.0 + split2: 3.2.2 + ws: 7.5.9 + xtend: 4.0.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + + /mqtt@4.3.7: + resolution: {integrity: sha512-ew3qwG/TJRorTz47eW46vZ5oBw5MEYbQZVaEji44j5lAUSQSqIEoul7Kua/BatBW0H0kKQcC9kwUHa1qzaWHSw==} + engines: {node: '>=10.0.0'} + hasBin: true + dependencies: + commist: 1.1.0 + concat-stream: 2.0.0 + debug: 4.3.4 + duplexify: 4.1.2 + help-me: 3.0.0 + inherits: 2.0.4 + lru-cache: 6.0.0 + minimist: 1.2.8 + mqtt-packet: 6.10.0 + number-allocator: 1.0.14 + pump: 3.0.0 + readable-stream: 3.6.2 + reinterval: 1.1.0 + rfdc: 1.3.0 + split2: 3.2.2 + ws: 7.5.9 + xtend: 4.0.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + dev: true + /mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} @@ -5438,6 +8490,10 @@ packages: hasBin: true dev: true + /mute-stream@0.0.8: + resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + dev: true + /nano-jsx@0.0.37: resolution: {integrity: sha512-0gVuDCLqKR3t0C4m2vvx8EW5MLxlAB9XAyLfJRhXIX9QfAMBFUn/wwEYT8+t6XgL5cMiuG+a8eZAXA/+wB026w==} engines: {node: '>=12'} @@ -5449,6 +8505,10 @@ packages: hasBin: true dev: true + /napi-wasm@1.1.0: + resolution: {integrity: sha512-lHwIAJbmLSjF9VDRm9GoVOy9AGp3aIvkjv+Kvz9h16QR3uSVYH78PNQUnT2U4X53mhlnV2M7wrhibQ3GHicDmg==} + dev: false + /natural-compare-lite@1.4.0: resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} dev: true @@ -5545,10 +8605,24 @@ packages: validate-npm-package-name: 4.0.0 dev: true + /number-allocator@1.0.14: + resolution: {integrity: sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==} + dependencies: + debug: 4.3.4 + js-sdsl: 4.3.0 + transitivePeerDependencies: + - supports-color + dev: true + /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} + /object-hash@2.2.0: + resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==} + engines: {node: '>= 6'} + dev: true + /object-hash@3.0.0: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} @@ -5602,6 +8676,10 @@ packages: es-abstract: 1.22.1 dev: true + /obliterator@2.0.4: + resolution: {integrity: sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==} + dev: true + /ofetch@1.3.3: resolution: {integrity: sha512-s1ZCMmQWXy4b5K/TW9i/DtiN8Ku+xCiHcjQ6/J/nDdssirrQNOoB165Zu8EqLMA2lln1JUth9a0aW9Ap2ctrUg==} dependencies: @@ -5612,6 +8690,11 @@ packages: /ohash@1.1.3: resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==} + /oidc-token-hash@5.0.3: + resolution: {integrity: sha512-IF4PcGgzAr6XXSff26Sk/+P4KZFJVuHAJZj3wgO3vX2bMdNVp/QXTP3P7CEm9V1IdG8lDLY3HhiqpsE/nOwpPw==} + engines: {node: ^10.13.0 || >=12.0.0} + dev: true + /on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} @@ -5667,6 +8750,15 @@ packages: yargs-parser: 21.1.1 dev: false + /openid-client@5.4.3: + resolution: {integrity: sha512-sVQOvjsT/sbSfYsQI/9liWQGVZH/Pp3rrtlGEwgk/bbHfrUDZ24DN57lAagIwFtuEu+FM9Ev7r85s8S/yPjimQ==} + dependencies: + jose: 4.14.4 + lru-cache: 6.0.0 + object-hash: 2.2.0 + oidc-token-hash: 5.0.3 + dev: true + /optionator@0.8.3: resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==} engines: {node: '>= 0.8.0'} @@ -5693,6 +8785,21 @@ packages: type-check: 0.4.0 dev: true + /ora@6.3.1: + resolution: {integrity: sha512-ERAyNnZOfqM+Ao3RAvIXkYh5joP220yf59gVe2X/cI6SiCxIdi4c9HZKZD8R6q/RDXEje1THBju6iExiSsgJaQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + chalk: 5.3.0 + cli-cursor: 4.0.0 + cli-spinners: 2.9.0 + is-interactive: 2.0.0 + is-unicode-supported: 1.3.0 + log-symbols: 5.1.0 + stdin-discarder: 0.1.0 + strip-ansi: 7.1.0 + wcwidth: 1.0.1 + dev: true + /p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} @@ -5714,6 +8821,13 @@ packages: yocto-queue: 1.0.0 dev: true + /p-locate@3.0.0: + resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} + engines: {node: '>=6'} + dependencies: + p-limit: 2.3.0 + dev: true + /p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -5763,6 +8877,16 @@ packages: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} + /patch-console@2.0.0: + resolution: {integrity: sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + + /path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + dev: true + /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -5817,6 +8941,13 @@ packages: mlly: 1.4.1 pathe: 1.1.1 + /pkg-up@3.1.0: + resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} + engines: {node: '>=8'} + dependencies: + find-up: 3.0.0 + dev: true + /pluralize@8.0.0: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} @@ -5876,7 +9007,17 @@ packages: /process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - dev: false + + /process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + dev: true + + /promptly@3.2.0: + resolution: {integrity: sha512-WnR9obtgW+rG4oUV3hSnNGl1pHm3V1H/qD9iJBumGSmVsSC5HpZOLuu8qdMb6yCItGfT7dcRszejr/5P3i9Pug==} + dependencies: + read: 1.0.7 + dev: true /proto3-json-serializer@1.1.1: resolution: {integrity: sha512-AwAuY4g9nxx0u52DnSMkqqgyLHaW/XaPLtaAo3y/ZCfeaQB/g4YDH4kb8Wc/mWzWvu0YjOznVnfn373MVZZrgw==} @@ -5960,11 +9101,37 @@ packages: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} dev: true + /pump@3.0.0: + resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + dependencies: + end-of-stream: 1.4.4 + once: 1.4.0 + dev: true + + /punycode@1.3.2: + resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==} + dev: true + + /punycode@1.4.1: + resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} + dev: true + /punycode@2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} dev: true + /pvtsutils@1.3.3: + resolution: {integrity: sha512-6sAOMlXyrJ+8tRN5IAaYfuYZRp1C2uJ0SyDynEFxL+VY8kCRib9Lpj/+KPaNFpaQWr/iRik5nrzz6iaNlxgEGA==} + dependencies: + tslib: 2.6.2 + dev: true + + /pvutils@1.1.3: + resolution: {integrity: sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==} + engines: {node: '>=6.0.0'} + dev: true + /qs@6.11.0: resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} @@ -5972,6 +9139,12 @@ packages: side-channel: 1.0.4 dev: true + /querystring@0.2.0: + resolution: {integrity: sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=} + engines: {node: '>=0.4.x'} + deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. + dev: true + /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -6010,6 +9183,27 @@ packages: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} dev: true + /react-reconciler@0.29.0(react@18.2.0): + resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} + engines: {node: '>=0.10.0'} + peerDependencies: + react: ^18.2.0 + peerDependenciesMeta: + react: + optional: true + dependencies: + loose-envify: 1.4.0 + react: 18.2.0 + scheduler: 0.23.0 + dev: true + + /react@18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} + dependencies: + loose-envify: 1.4.0 + dev: true + /read-pkg-up@7.0.1: resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} engines: {node: '>=8'} @@ -6029,6 +9223,13 @@ packages: type-fest: 0.6.0 dev: true + /read@1.0.7: + resolution: {integrity: sha512-rSOKNYUmaxy0om1BNjMN4ezNT6VKK+2xF4GBhc81mkH7L60i6dp8qPYrkndNLT3QPphoII3maL9PVC9XmhHwVQ==} + engines: {node: '>=0.8'} + dependencies: + mute-stream: 0.0.8 + dev: true + /readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} dependencies: @@ -6039,7 +9240,6 @@ packages: safe-buffer: 5.1.2 string_decoder: 1.1.1 util-deprecate: 1.0.2 - dev: false /readable-stream@3.6.2: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} @@ -6053,7 +9253,6 @@ packages: resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} dependencies: minimatch: 5.1.6 - dev: false /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} @@ -6099,10 +9298,23 @@ packages: jsesc: 0.5.0 dev: true + /reinterval@1.1.0: + resolution: {integrity: sha512-QIRet3SYrGp0HUHO88jVskiG6seqUGC5iAG7AwI/BV4ypGcuqk9Du6YQBUOUqm9c8pw1eyLoIaONifRua1lsEQ==} + dev: true + + /remeda@1.24.0: + resolution: {integrity: sha512-tjLxwU4yLtvX8yHlePnE7CdQXRe2pKatlVY+AunqAQV5t9FNw1yuiIAqKpu6zevd+No5LQHEJ/HK3r3ZFK7KXg==} + dev: true + /require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} + /require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + dev: true + /requizzle@0.2.4: resolution: {integrity: sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==} requiresBuild: true @@ -6133,6 +9345,14 @@ packages: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + /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 + dev: true + /retry-request@5.0.2: resolution: {integrity: sha512-wfI3pk7EE80lCIXprqh7ym48IHYdwmAAzESdbU8Q9l7pnRCk9LEhpbOTNKjz6FARLm/Bl5m+4F0ABxOkYUujSQ==} engines: {node: '>=12'} @@ -6156,6 +9376,10 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + /rfdc@1.3.0: + resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} + dev: true + /rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true @@ -6224,7 +9448,6 @@ packages: /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - dev: false /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} @@ -6247,6 +9470,16 @@ packages: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: true + /sax@1.2.1: + resolution: {integrity: sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==} + dev: true + + /scheduler@0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + dependencies: + loose-envify: 1.4.0 + dev: true + /scule@1.0.0: resolution: {integrity: sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==} @@ -6376,6 +9609,31 @@ packages: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} + /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: true + /smob@1.4.0: resolution: {integrity: sha512-MqR3fVulhjWuRNSMydnTlweu38UhQ0HXM4buStD/S3mc/BzX3CuM9OmhyQpmtYCvoYdl5ris6TI0ZqH355Ymqg==} dev: false @@ -6422,10 +9680,127 @@ packages: resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} dev: true + /split2@3.2.2: + resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==} + dependencies: + readable-stream: 3.6.2 + dev: true + + /sst-aws-cdk@2.91.0: + resolution: {integrity: sha512-vQFs52ANjfEmVqwqcmfCwZVjWsFwQVwbdfLD8stJm/Cl7sZE+DngXX5LfGgF8M1o0F/qbj6d0N00vpVk1q6tSQ==} + engines: {node: '>= 14.15.0'} + hasBin: true + dependencies: + archiver: 5.3.2 + chalk: 4.1.2 + promptly: 3.2.0 + yaml: 1.10.2 + optionalDependencies: + fsevents: 2.3.2 + dev: true + + /sst@2.24.16: + resolution: {integrity: sha512-E4FV4Hlh8XEH0HaDLOCSR/GL4NRIeLRiLRA4wGRWm1EJ0pQJ9DYdeBoxuVDzYGC3nqyHK9Uh7iKDfXQHVfDv2A==} + hasBin: true + peerDependencies: + '@sls-next/lambda-at-edge': ^3.7.0 + peerDependenciesMeta: + '@sls-next/lambda-at-edge': + optional: true + dependencies: + '@aws-cdk/aws-apigatewayv2-alpha': 2.91.0-alpha.0(aws-cdk-lib@2.91.0)(constructs@10.2.69) + '@aws-cdk/aws-apigatewayv2-authorizers-alpha': 2.91.0-alpha.0(@aws-cdk/aws-apigatewayv2-alpha@2.91.0-alpha.0)(aws-cdk-lib@2.91.0)(constructs@10.2.69) + '@aws-cdk/aws-apigatewayv2-integrations-alpha': 2.91.0-alpha.0(@aws-cdk/aws-apigatewayv2-alpha@2.91.0-alpha.0)(aws-cdk-lib@2.91.0)(constructs@10.2.69) + '@aws-cdk/cloud-assembly-schema': 2.91.0 + '@aws-cdk/cloudformation-diff': 2.91.0 + '@aws-cdk/cx-api': 2.91.0(@aws-cdk/cloud-assembly-schema@2.91.0) + '@aws-crypto/sha256-js': 5.0.0 + '@aws-sdk/client-cloudformation': 3.387.0 + '@aws-sdk/client-ecs': 3.387.0 + '@aws-sdk/client-eventbridge': 3.387.0(@aws-sdk/signature-v4-crt@3.387.0) + '@aws-sdk/client-iam': 3.387.0 + '@aws-sdk/client-iot': 3.387.0 + '@aws-sdk/client-iot-data-plane': 3.387.0 + '@aws-sdk/client-lambda': 3.387.0 + '@aws-sdk/client-rds-data': 3.387.0 + '@aws-sdk/client-s3': 3.387.0(@aws-sdk/signature-v4-crt@3.387.0) + '@aws-sdk/client-ssm': 3.387.0 + '@aws-sdk/client-sts': 3.387.0 + '@aws-sdk/config-resolver': 3.374.0 + '@aws-sdk/credential-providers': 3.387.0 + '@aws-sdk/middleware-retry': 3.374.0 + '@aws-sdk/middleware-signing': 3.387.0 + '@aws-sdk/signature-v4-crt': 3.387.0 + '@aws-sdk/smithy-client': 3.374.0 + '@babel/core': 7.22.11 + '@babel/generator': 7.22.10 + '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.22.11) + '@smithy/signature-v4': 2.0.5 + '@trpc/server': 9.16.0 + adm-zip: 0.5.10 + aws-cdk-lib: 2.91.0(constructs@10.2.69) + aws-iot-device-sdk: 2.2.12 + aws-sdk: 2.1432.0 + builtin-modules: 3.2.0 + cdk-assets: 2.91.0 + chalk: 5.3.0 + chokidar: 3.5.3 + ci-info: 3.8.0 + colorette: 2.0.20 + conf: 10.2.0 + constructs: 10.2.69 + cross-spawn: 7.0.3 + dendriform-immer-patch-optimiser: 2.1.3(immer@9.0.21) + dotenv: 16.3.1 + esbuild: 0.18.13 + express: 4.18.2 + fast-jwt: 3.2.0 + get-port: 6.1.2 + glob: 8.1.0 + graphql: 16.7.1 + graphql-yoga: 3.9.1(graphql@16.7.1) + immer: 9.0.21 + ink: 4.3.1(react@18.2.0) + ink-spinner: 5.0.0(ink@4.3.1)(react@18.2.0) + kysely: 0.25.0 + kysely-codegen: 0.10.1(kysely@0.25.0) + kysely-data-api: 0.2.1(@aws-sdk/client-rds-data@3.387.0)(kysely@0.25.0) + minimatch: 6.2.0 + openid-client: 5.4.3 + ora: 6.3.1 + react: 18.2.0 + remeda: 1.24.0 + sst-aws-cdk: 2.91.0 + tree-kill: 1.2.2 + undici: 5.23.0 + uuid: 9.0.0 + ws: 8.13.0 + yargs: 17.7.2 + zod: 3.21.4 + transitivePeerDependencies: + - '@types/react' + - aws-crt + - better-sqlite3 + - bufferutil + - debug + - mysql2 + - pg + - react-devtools-core + - supports-color + - utf-8-validate + dev: true + /stack-trace@0.0.10: resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} dev: true + /stack-utils@2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} + engines: {node: '>=10'} + dependencies: + escape-string-regexp: 2.0.0 + dev: true + /stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true @@ -6441,6 +9816,13 @@ packages: /std-env@3.4.3: resolution: {integrity: sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==} + /stdin-discarder@0.1.0: + resolution: {integrity: sha512-xhV7w8S+bUwlPTb4bAOUQhv8/cSS5offJuX8GQGq32ONF0ZtDWKfkdomM3HMRA+LhX6um/FZ0COqlwsjD53LeQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + bl: 5.1.0 + dev: true + /stream-events@1.0.5: resolution: {integrity: sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==} requiresBuild: true @@ -6453,7 +9835,6 @@ packages: resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==} requiresBuild: true dev: true - optional: true /streamsearch@1.1.0: resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} @@ -6467,6 +9848,15 @@ packages: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + /string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + dev: true + /string.prototype.trim@1.2.7: resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} engines: {node: '>= 0.4'} @@ -6496,7 +9886,6 @@ packages: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} dependencies: safe-buffer: 5.1.2 - dev: false /string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} @@ -6509,6 +9898,13 @@ packages: dependencies: ansi-regex: 5.0.1 + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + dependencies: + ansi-regex: 6.0.1 + dev: true + /strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} @@ -6544,7 +9940,6 @@ packages: resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} requiresBuild: true dev: true - optional: true /stubs@3.0.0: resolution: {integrity: sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==} @@ -6576,6 +9971,17 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + /table@6.8.1: + resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==} + engines: {node: '>=10.0.0'} + dependencies: + ajv: 8.12.0 + lodash.truncate: 4.4.2 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} @@ -6590,7 +9996,6 @@ packages: fs-constants: 1.0.0 inherits: 2.0.4 readable-stream: 3.6.2 - dev: false /tar@6.1.15: resolution: {integrity: sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==} @@ -6700,6 +10105,11 @@ packages: /tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + /tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + dev: true + /tsconfig-paths@3.14.2: resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} dependencies: @@ -6748,6 +10158,11 @@ packages: engines: {node: '>=4'} dev: true + /type-fest@0.12.0: + resolution: {integrity: sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==} + engines: {node: '>=10'} + dev: true + /type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} @@ -6766,7 +10181,6 @@ packages: /type-fest@3.13.1: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} - dev: false /type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} @@ -6814,6 +10228,10 @@ packages: is-typed-array: 1.1.12 dev: true + /typedarray@0.0.6: + resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} + dev: true + /typescript@5.2.2: resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} engines: {node: '>=14.17'} @@ -6837,6 +10255,10 @@ packages: dev: true optional: true + /ultron@1.1.1: + resolution: {integrity: sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==} + dev: true + /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: @@ -7059,22 +10481,43 @@ packages: punycode: 2.3.0 dev: true + /url@0.10.3: + resolution: {integrity: sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ=} + dependencies: + punycode: 1.3.2 + querystring: 0.2.0 + dev: true + /urlpattern-polyfill@4.0.3: resolution: {integrity: sha512-DOE84vZT2fEcl9gqCUTcnAw5ZY5Id55ikUcziSUntuEFL3pRvavg5kwDmTEUJkeCHInTlV/HexFomgYnzO5kdQ==} dev: true /urlpattern-polyfill@8.0.2: resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==} - dev: false /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + /util@0.12.5: + resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} + dependencies: + inherits: 2.0.4 + is-arguments: 1.1.1 + is-generator-function: 1.0.10 + is-typed-array: 1.1.12 + which-typed-array: 1.1.11 + dev: true + /utils-merge@1.0.1: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} dev: true + /uuid@8.0.0: + resolution: {integrity: sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==} + hasBin: true + dev: true + /uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -7108,6 +10551,11 @@ packages: builtins: 5.0.1 dev: true + /value-or-promise@1.0.12: + resolution: {integrity: sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==} + engines: {node: '>=12'} + dev: true + /vary@1.1.2: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} @@ -7236,6 +10684,27 @@ packages: - terser dev: true + /wcwidth@1.0.1: + resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + dependencies: + defaults: 1.0.4 + dev: true + + /web-streams-polyfill@3.2.1: + resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==} + engines: {node: '>= 8'} + dev: true + + /webcrypto-core@1.7.7: + resolution: {integrity: sha512-7FjigXNsBfopEj+5DV2nhNpfic2vumtjjgPmeDKk45z+MJwXKKfhPB7118Pfzrmh4jqOMST6Ch37iPAHoImg5g==} + dependencies: + '@peculiar/asn1-schema': 2.3.6 + '@peculiar/json-schema': 1.1.12 + asn1js: 3.0.5 + pvtsutils: 1.3.3 + tslib: 2.6.2 + dev: true + /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -7262,6 +10731,20 @@ packages: engines: {node: '>=0.8.0'} dev: true + /websocket-stream@5.5.2: + resolution: {integrity: sha512-8z49MKIHbGk3C4HtuHWDtYX8mYej1wWabjthC/RupM9ngeukU4IWoM46dgth1UOS/T4/IqgEdCDJuMe2039OQQ==} + dependencies: + duplexify: 3.7.1 + inherits: 2.0.4 + readable-stream: 2.3.8 + safe-buffer: 5.2.1 + ws: 3.3.3 + xtend: 4.0.2 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: true + /whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} dependencies: @@ -7311,6 +10794,13 @@ packages: string-width: 4.2.3 dev: false + /widest-line@4.0.1: + resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} + engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + dev: true + /word-wrap@1.2.5: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} @@ -7326,9 +10816,47 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + dev: true + /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + /ws@3.3.3: + resolution: {integrity: sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dependencies: + async-limiter: 1.0.1 + safe-buffer: 5.1.2 + ultron: 1.1.1 + dev: true + + /ws@7.5.9: + resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} + engines: {node: '>=8.3.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dev: true + /ws@8.13.0: resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} engines: {node: '>=10.0.0'} @@ -7342,12 +10870,30 @@ packages: optional: true dev: true + /xml2js@0.5.0: + resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==} + engines: {node: '>=4.0.0'} + dependencies: + sax: 1.2.1 + xmlbuilder: 11.0.1 + dev: true + + /xmlbuilder@11.0.1: + resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==} + engines: {node: '>=4.0'} + dev: true + /xmlcreate@2.0.4: resolution: {integrity: sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==} requiresBuild: true dev: true optional: true + /xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + dev: true + /y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -7363,15 +10909,38 @@ packages: /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + /yaml@1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + dev: true + /yaml@2.3.1: resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} engines: {node: '>= 14'} dev: true + /yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + dev: true + /yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} + /yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + dependencies: + cliui: 7.0.4 + escalade: 3.1.1 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + dev: true + /yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} @@ -7395,6 +10964,10 @@ packages: engines: {node: '>=12.20'} dev: true + /yoga-wasm-web@0.3.3: + resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} + dev: true + /youch@2.2.2: resolution: {integrity: sha512-/FaCeG3GkuJwaMR34GHVg0l8jCbafZLHiFowSjqLlqhC6OMyf2tPJBu8UirF7/NI9X/R5ai4QfEKUCOxMAGxZQ==} dependencies: @@ -7411,4 +10984,7 @@ packages: archiver-utils: 2.1.0 compress-commons: 4.1.1 readable-stream: 3.6.2 - dev: false + + /zod@3.21.4: + resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==} + dev: true diff --git a/src/build.ts b/src/build.ts index f99176cc16..6b14574f5a 100644 --- a/src/build.ts +++ b/src/build.ts @@ -405,6 +405,7 @@ async function _build(nitro: Nitro, rollupConfig: RollupConfig) { const buildInfo = { date: new Date(), preset: nitro.options.preset, + entry: nitro.options.entry.split("/").pop(), commands: { preview: nitro.options.commands.preview, deploy: nitro.options.commands.deploy, diff --git a/src/presets/aws-lambda.ts b/src/presets/aws-lambda.ts index 2b2ca1b876..2df7006167 100644 --- a/src/presets/aws-lambda.ts +++ b/src/presets/aws-lambda.ts @@ -1,5 +1,6 @@ import { defineNitroPreset } from "../preset"; import { generateCdkApp } from "../utils/cdk"; +import { generateSST } from "../utils/sst"; export const awsLambda = defineNitroPreset({ entry: `#internal/nitro/entries/aws-lambda-{{ awsLambda.target }}`, @@ -19,6 +20,9 @@ export const awsLambda = defineNitroPreset({ } }, async compiled(nitro) { + if (nitro.options.awsLambda.sst) { + await generateSST(nitro); + } if ( nitro.options.awsLambda.target === "edge" && nitro.options.awsLambda.cdk === true diff --git a/src/types/presets.ts b/src/types/presets.ts index cebc5a6ca4..5d2a2edd1e 100644 --- a/src/types/presets.ts +++ b/src/types/presets.ts @@ -1,7 +1,7 @@ +import type { SSTConfig } from "sst"; import type { HttpsOptions } from "firebase-functions/v2/https"; import type { RuntimeOptions, region } from "firebase-functions"; import type { CloudflarePagesRoutes } from "../presets/cloudflare-pages"; - /** * Vercel Build Output Configuration * @see https://vercel.com/docs/build-output-api/v3 @@ -97,6 +97,8 @@ type FirebaseOptions = FirebaseOptionsGen1 | FirebaseOptionsGen2; interface AWSLambdaOptionsBase { target: "single" | "edge"; + sst?: boolean; + sstOptions?: Awaited>; } interface AwsLambdaOptionsSingleRegion extends AWSLambdaOptionsBase { diff --git a/src/utils/sst.ts b/src/utils/sst.ts new file mode 100644 index 0000000000..545959bb28 --- /dev/null +++ b/src/utils/sst.ts @@ -0,0 +1,188 @@ +import { existsSync } from "node:fs"; +import { resolve, join } from "pathe"; +import { Nitro } from "../types"; +import { writeFile } from "../utils"; +import { PresetOptions } from "../types/presets"; + +export async function generateSST(nitro: Nitro) { + const sstDir = resolve(nitro.options.output.dir, "sst-stacks"); + // Write SST stack + await writeFile(resolve(sstDir, "index.ts"), nitroAppTemplate()); + + // Write SST config + if (existsSync(join(nitro.options.rootDir, "sst.config.ts"))) { + nitro.logger.warn( + "`sst.config.ts` already exists, nitro.awsLambda.sstOptions will be ignored." + ); + } else { + await writeFile( + resolve(nitro.options.rootDir, "sst.config.ts"), + sstConfigTemplate({ + edge: nitro.options.awsLambda?.target === "edge", + sstOptions: nitro.options.awsLambda?.sstOptions, + sstDir, + }) + ); + } + + nitro.logger.info( + ` + Generated SST app ! + Install SST dependencies: "npm i -D sst aws-cdk-lib constructs" + + - Dev: "npx sst dev" + - Build: "npx sst build" + - Deploy: "npx sst deploy" + - Remove: "npx sst remove" + - Console: "npx sst console + ` + ); +} + +const sstConfigTemplate = ({ + edge = false, + sstOptions, + sstDir, +}: { + edge: boolean; + sstOptions: PresetOptions["awsLambda"]["sstOptions"]; + sstDir: string; +}) => + /* ts */ ` +import { SSTConfig } from "sst"; +import { NitroApp } from "${sstDir}"; + +export default { + config(_input) { + return { + ${optionsToString({ name: "nitro", region: "us-east-1", ...sstOptions })} + }; + }, + stacks(app) { + app.stack(function Site({ stack }) { + const app = new NitroApp(stack, "app", { + path: "./", + edge: ${edge ? "true" : "false"}, + }); + + stack.addOutputs({ + url: app.url, + }); + }); + } +} satisfies SSTConfig;`.trim(); + +function optionsToString( + obj?: PresetOptions["awsLambda"]["sstOptions"], + indent = " " +): string { + if (!obj) { + return ""; + } + return Object.entries(obj) + .map(([key, value]) => { + return typeof value === "object" && value !== null + ? `${key}: {\n${optionsToString(value, indent + " ")}\n${indent}}` + : `${key}: ${JSON.stringify(value)}`; + }) + .join(",\n" + indent); +} + +const nitroAppTemplate = () => + /* ts */ ` +import fs from "node:fs" +import path from "node:path"; +import type { Function as CdkFunction } from "aws-cdk-lib/aws-lambda"; + +import { SsrSite } from "sst/constructs/SsrSite.js"; +import { SsrFunction } from "sst/constructs/SsrFunction.js"; +import { EdgeFunction } from "sst/constructs/EdgeFunction.js"; + +export class NitroApp extends SsrSite { + public getConstructMetadata() { + return { + type: "NitroApp" as const, + ...this.getConstructMetadataBase(), + }; + } + + protected initBuildConfig() { + return { + typesPath: "./", + serverBuildOutputFile: ".output/server/index.mjs", + clientBuildOutputDir: ".output/public", + clientBuildVersionedSubDir: ".output", + }; + } + + protected validateBuildOutput() { + const serverDir = path.join(this.props.path, ".output/server"); + const clientDir = path.join(this.props.path, ".output/public"); + if (!fs.existsSync(serverDir) || !fs.existsSync(clientDir)) { + throw new Error( + 'Build output inside ".output/" does not contain the "server" and "public" folders.' + ); + } + + super.validateBuildOutput(); + } + + protected createFunctionForRegional(): CdkFunction { + const { + runtime, + timeout, + memorySize, + permissions, + environment, + nodejs, + bind, + cdk, + } = this.props; + + const ssrFn = new SsrFunction(this, "ServerFunction", { + description: "Server handler for Nuxt", + handler: path.join(this.props.path, ".output", "server", "index.handler"), + runtime, + memorySize, + timeout, + nodejs: { + format: "esm", + ...nodejs, + }, + bind, + environment, + permissions, + ...cdk?.server, + }); + + return ssrFn.function; + } + + protected createFunctionForEdge(): EdgeFunction { + const { + runtime, + timeout, + memorySize, + bind, + permissions, + environment, + nodejs, + } = this.props; + + return new EdgeFunction(this, "EdgeFunction", { + scopeOverride: this, + handler: path.join(this.props.path, ".output", "server", "index.handler"), + runtime, + timeout, + memorySize, + bind, + environment, + permissions, + nodejs: { + format: "esm", + ...nodejs, + }, + }); + } +} +`.trim(); diff --git a/test/tests.ts b/test/tests.ts index c49eb67625..e0b24a5510 100644 --- a/test/tests.ts +++ b/test/tests.ts @@ -39,7 +39,11 @@ export async function setupTest( preset: string, opts: { config?: _nitro.NitroConfig } = {} ) { - const presetTmpDir = getPresetTmpDir(preset); + const fixtureDir = fileURLToPath(new URL("fixture", import.meta.url).href); + const presetTempDir = resolve( + process.env.NITRO_TEST_TMP_DIR || join(tmpdir(), "nitro-tests"), + preset + "-" + Date.now() + ); await fsp.rm(presetTmpDir, { recursive: true }).catch(() => {}); await fsp.mkdir(presetTmpDir, { recursive: true }); From 44f8e6710118820c518136ab55ce2efacddc8354 Mon Sep 17 00:00:00 2001 From: Hebilicious Date: Thu, 10 Aug 2023 23:07:31 +0700 Subject: [PATCH 4/5] refactor: simplify and typos --- src/presets/aws-lambda.ts | 6 +++--- src/runtime/utils.lambda.ts | 9 +++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/presets/aws-lambda.ts b/src/presets/aws-lambda.ts index 2df7006167..c1192d6d63 100644 --- a/src/presets/aws-lambda.ts +++ b/src/presets/aws-lambda.ts @@ -6,16 +6,16 @@ export const awsLambda = defineNitroPreset({ entry: `#internal/nitro/entries/aws-lambda-{{ awsLambda.target }}`, awsLambda: { // we need this defined here so it's picked up by the template in lambda entries - target: (process.env.NITRO_AWSLAMBDA_TARGET || "default") as any, + target: (process.env.NITRO_AWS_LAMBDA_TARGET || "default") as any, }, hooks: { "rollup:before": (nitro) => { const target = nitro.options.awsLambda?.target as unknown; if (!target || target === "default") { nitro.logger.warn( - "Neither `awsLambda.target` or `NITRO_AWSLAMBDA_GEN` is set. Set the target to remove this warning. See https://nitro.unjs.io/deploy/providers/aws-lambda for more information." + "Neither `awsLambda.target` or `NITRO_AWS_LAMBDA_TARGET` is set. Set the target to remove this warning. See https://nitro.unjs.io/deploy/providers/aws-lambda for more information." ); - // Default to single lambda + // Default to single region lambda nitro.options.awsLambda = { target: "single" }; } }, diff --git a/src/runtime/utils.lambda.ts b/src/runtime/utils.lambda.ts index 4884fdb9ae..f2a5cccf8c 100644 --- a/src/runtime/utils.lambda.ts +++ b/src/runtime/utils.lambda.ts @@ -123,10 +123,7 @@ export function normalizeCloudfrontBody(body?: CloudFrontRequest["body"]) { return undefined; } - const bodyString = body; - if (body.encoding === "base64") { - bodyString.data = Buffer.from(body.data, "base64").toString("utf8"); - bodyString.data = decodeURIComponent(bodyString.data); - } - return bodyString.data; + return body.encoding === "base64" + ? decodeURIComponent(Buffer.from(body.data, "base64").toString("utf8")) + : body.data; } From 8c4bf2ce7e4d068f18205d0a682c26b4b74f5910 Mon Sep 17 00:00:00 2001 From: Hebilicious Date: Sun, 27 Aug 2023 12:55:28 +0700 Subject: [PATCH 5/5] chore: rebase error --- test/tests.ts | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/test/tests.ts b/test/tests.ts index e0b24a5510..dda345b079 100644 --- a/test/tests.ts +++ b/test/tests.ts @@ -1,9 +1,11 @@ +import { tmpdir } from "node:os"; import { promises as fsp } from "node:fs"; -import { resolve } from "pathe"; +import { join, resolve } from "pathe"; import { listen, Listener } from "listhen"; import destr from "destr"; import { fetch, FetchOptions } from "ofetch"; import { expect, it, afterAll, beforeAll, describe } from "vitest"; +import { fileURLToPath } from "mlly"; import { joinURL } from "ufo"; import { defu } from "defu"; import * as _nitro from "../src"; @@ -35,15 +37,21 @@ export const describeIf = (condition, title, factory) => it.skip("skipped", () => {}); }); +export const fixtureDir = fileURLToPath( + new URL("fixture", import.meta.url).href +); + +export const getPresetTmpDir = (preset: string) => + resolve( + process.env.NITRO_TEST_TMP_DIR || join(tmpdir(), "nitro-tests"), + preset + "-" + Date.now() + ); + export async function setupTest( preset: string, opts: { config?: _nitro.NitroConfig } = {} ) { - const fixtureDir = fileURLToPath(new URL("fixture", import.meta.url).href); - const presetTempDir = resolve( - process.env.NITRO_TEST_TMP_DIR || join(tmpdir(), "nitro-tests"), - preset + "-" + Date.now() - ); + const presetTmpDir = getPresetTmpDir(preset); await fsp.rm(presetTmpDir, { recursive: true }).catch(() => {}); await fsp.mkdir(presetTmpDir, { recursive: true });