From 9cc8c63d1ae30a8a6454b170f90b3e2cbccde2d2 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 12:53:47 -0700 Subject: [PATCH 01/23] Initial --- eng/common/config/ci-triggers.ts | 18 +++++++++++ eng/common/scripts/analyze-change.ts | 24 +++++++++++++++ eng/common/scripts/common.ts | 1 + eng/common/scripts/utils/exec-async.ts | 42 ++++++++++++++++++++++++++ eng/common/scripts/utils/git.ts | 36 ++++++++++++++++++++++ package.json | 2 ++ pnpm-lock.yaml | 6 ++++ 7 files changed, 129 insertions(+) create mode 100644 eng/common/config/ci-triggers.ts create mode 100644 eng/common/scripts/analyze-change.ts create mode 100644 eng/common/scripts/utils/exec-async.ts create mode 100644 eng/common/scripts/utils/git.ts diff --git a/eng/common/config/ci-triggers.ts b/eng/common/config/ci-triggers.ts new file mode 100644 index 0000000000..10d40f68c5 --- /dev/null +++ b/eng/common/config/ci-triggers.ts @@ -0,0 +1,18 @@ +import { AreaPaths } from "./areas.js"; + +/** + * Path that should trigger every CI build. + */ +const all = ["eng/common/", "vitest.config.ts"]; + +/** + * Path that should trigger only isolated packages + */ +const isolatedPackages = { + "http-client-csharp": [...AreaPaths["emitter:client:csharp"]], +}; + +/** + * Path that shouldn't trigger the core CI build + */ +const coreIgnore = [".prettierignore", ".prettierrc.json", "cspell.yaml", "esling.config.json"]; diff --git a/eng/common/scripts/analyze-change.ts b/eng/common/scripts/analyze-change.ts new file mode 100644 index 0000000000..7e7484d09d --- /dev/null +++ b/eng/common/scripts/analyze-change.ts @@ -0,0 +1,24 @@ +import { parseArgs } from "util"; +import { repoRoot } from "./common.js"; +import { listChangedFilesSince } from "./utils/git.js"; + +const args = parseArgs({ + args: process.argv.slice(2), + options: { + "target-branch": { type: "string" }, + }, +}); + +const targetBranch = args.values["target-branch"]; +if (!targetBranch) { + console.error("--target-branch is required"); + process.exit(1); +} + +console.log("Checking for changes in current branch compared to $TargetBranch"); + +const files = await listChangedFilesSince(targetBranch, { repositoryPath: repoRoot }); + +console.log("##[group]Files changed in this pr"); +console.log(files.map((x) => ` - ${x}`).join("\n")); +console.log("##[endgroup]"); diff --git a/eng/common/scripts/common.ts b/eng/common/scripts/common.ts index d0157c32e5..1214418aac 100644 --- a/eng/common/scripts/common.ts +++ b/eng/common/scripts/common.ts @@ -2,6 +2,7 @@ import { readFile, writeFile } from "fs/promises"; import { dirname, resolve } from "path"; import pc from "picocolors"; import { fileURLToPath } from "url"; + export const repo = { owner: "microsoft", repo: "typespec", diff --git a/eng/common/scripts/utils/exec-async.ts b/eng/common/scripts/utils/exec-async.ts new file mode 100644 index 0000000000..a3d06a1327 --- /dev/null +++ b/eng/common/scripts/utils/exec-async.ts @@ -0,0 +1,42 @@ +import { spawn, type SpawnOptions } from "child_process"; + +export interface ExecResult { + readonly code: number | null; + readonly stdall: Buffer; + readonly stdout: Buffer; + readonly stderr: Buffer; +} +export function execAsync( + cmd: string, + args: string[], + opts: SpawnOptions = {} +): Promise { + return new Promise((resolve, reject) => { + const child = spawn(cmd, args, opts); + let stdall = Buffer.from(""); + let stdout = Buffer.from(""); + let stderr = Buffer.from(""); + + if (child.stdout) { + child.stdout.on("data", (data) => { + stdout = Buffer.concat([stdout, data]); + stdall = Buffer.concat([stdall, data]); + }); + } + + if (child.stderr) { + child.stderr.on("data", (data) => { + stderr = Buffer.concat([stderr, data]); + stdall = Buffer.concat([stdall, data]); + }); + } + + child.on("error", (err) => { + reject(err); + }); + + child.on("close", (code) => { + resolve({ code, stdout, stderr, stdall }); + }); + }); +} diff --git a/eng/common/scripts/utils/git.ts b/eng/common/scripts/utils/git.ts new file mode 100644 index 0000000000..e32d2ca12c --- /dev/null +++ b/eng/common/scripts/utils/git.ts @@ -0,0 +1,36 @@ +import { execAsync, type ExecResult } from "./exec-async.js"; + +export async function listChangedFilesSince( + ref: string, + { repositoryPath }: { repositoryPath: string } +) { + return splitStdoutLines(await execGit(["diff", "--name-only", `${ref}...`], { repositoryPath })); +} + +async function execGit( + args: string[], + { repositoryPath }: { repositoryPath: string } +): Promise { + const result = await execAsync("git", args, { cwd: repositoryPath }); + + if (result.code !== 0) { + throw new GitError(args, result.stderr.toString()); + } + return result; +} + +export class GitError extends Error { + args: string[]; + + constructor(args: string[], stderr: string) { + super(`GitError running: git ${args.join(" ")}\n${stderr}`); + this.args = args; + } +} + +function splitStdoutLines(result: ExecResult): string[] { + return result.stdout + .toString() + .split("\n") + .filter((a) => a); +} diff --git a/package.json b/package.json index 86f200a451..4c18899249 100644 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "@octokit/plugin-paginate-graphql": "^5.2.2", "@octokit/plugin-rest-endpoint-methods": "^13.2.1", "@pnpm/find-workspace-packages": "^6.0.9", + "@types/micromatch": "^4.0.7", "@types/node": "~18.11.19", "@typescript-eslint/parser": "^7.9.0", "@typescript-eslint/utils": "^7.9.0", @@ -53,6 +54,7 @@ "eslint-plugin-import": "^2.29.1", "eslint-plugin-unicorn": "^53.0.0", "eslint-plugin-vitest": "^0.5.4", + "micromatch": "^4.0.5", "picocolors": "~1.0.1", "prettier": "~3.2.5", "prettier-plugin-organize-imports": "~3.2.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c4a076352f..253bf1d85d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -32,6 +32,9 @@ importers: '@pnpm/find-workspace-packages': specifier: ^6.0.9 version: 6.0.9(@pnpm/logger@5.0.0) + '@types/micromatch': + specifier: ^4.0.7 + version: 4.0.7 '@types/node': specifier: ~18.11.19 version: 18.11.19 @@ -62,6 +65,9 @@ importers: eslint-plugin-vitest: specifier: ^0.5.4 version: 0.5.4(eslint@8.57.0)(typescript@5.4.5)(vitest@1.6.0) + micromatch: + specifier: ^4.0.5 + version: 4.0.5 picocolors: specifier: ~1.0.1 version: 1.0.1 From 5b97e83cdd9cecf2a7bc8838503b0ea7e535dae7 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:30:21 -0700 Subject: [PATCH 02/23] Convert analyze to TS --- eng/common/config/ci-triggers.ts | 23 +++++++----- eng/common/scripts/analyze-change.ts | 2 +- eng/common/scripts/labels/automation.ts | 2 +- eng/common/scripts/labels/definitions.ts | 2 +- eng/common/scripts/utils/ado.ts | 3 ++ eng/common/scripts/{ => utils}/common.ts | 0 .../scripts/utils/find-area-changed.test.ts | 36 +++++++++++++++++++ eng/common/scripts/utils/find-area-changed.ts | 28 +++++++++++++++ eng/vitest.config.ts | 4 +++ package.json | 1 + vitest.workspace.ts | 6 +++- 11 files changed, 94 insertions(+), 13 deletions(-) create mode 100644 eng/common/scripts/utils/ado.ts rename eng/common/scripts/{ => utils}/common.ts (100%) create mode 100644 eng/common/scripts/utils/find-area-changed.test.ts create mode 100644 eng/common/scripts/utils/find-area-changed.ts create mode 100644 eng/vitest.config.ts diff --git a/eng/common/config/ci-triggers.ts b/eng/common/config/ci-triggers.ts index 10d40f68c5..f4ad2d8630 100644 --- a/eng/common/config/ci-triggers.ts +++ b/eng/common/config/ci-triggers.ts @@ -5,14 +5,19 @@ import { AreaPaths } from "./areas.js"; */ const all = ["eng/common/", "vitest.config.ts"]; -/** - * Path that should trigger only isolated packages - */ -const isolatedPackages = { - "http-client-csharp": [...AreaPaths["emitter:client:csharp"]], +export const CIRules = { + CSharp: [...AreaPaths["emitter:client:csharp"], ".editorconfig", ...all], + Core: [ + "*", + "**/*", + "!.prettierignore", + "!.prettierrc.json", + "!cspell.yaml", + "!esling.config.json", + ...ignore(AreaPaths["emitter:client:csharp"]), + ], }; -/** - * Path that shouldn't trigger the core CI build - */ -const coreIgnore = [".prettierignore", ".prettierrc.json", "cspell.yaml", "esling.config.json"]; +function ignore(paths: string[]) { + return paths.map((x) => `!${x}`); +} diff --git a/eng/common/scripts/analyze-change.ts b/eng/common/scripts/analyze-change.ts index 7e7484d09d..883a0c94a4 100644 --- a/eng/common/scripts/analyze-change.ts +++ b/eng/common/scripts/analyze-change.ts @@ -1,5 +1,5 @@ import { parseArgs } from "util"; -import { repoRoot } from "./common.js"; +import { repoRoot } from "./utils/common.js"; import { listChangedFilesSince } from "./utils/git.js"; const args = parseArgs({ diff --git a/eng/common/scripts/labels/automation.ts b/eng/common/scripts/labels/automation.ts index 039deacf9d..07c9c10542 100644 --- a/eng/common/scripts/labels/automation.ts +++ b/eng/common/scripts/labels/automation.ts @@ -2,7 +2,7 @@ import { resolve } from "path"; import { stringify } from "yaml"; import { AreaPaths } from "../../config/areas.js"; import { AreaLabels } from "../../config/labels.js"; -import { CheckOptions, repoRoot, syncFile } from "../common.js"; +import { CheckOptions, repoRoot, syncFile } from "../utils/common.js"; import { PolicyServiceConfig, and, diff --git a/eng/common/scripts/labels/definitions.ts b/eng/common/scripts/labels/definitions.ts index 554c9fdd73..e1ad4fe2b5 100644 --- a/eng/common/scripts/labels/definitions.ts +++ b/eng/common/scripts/labels/definitions.ts @@ -7,7 +7,7 @@ import pc from "picocolors"; import { format, resolveConfig } from "prettier"; import { inspect } from "util"; import rawLabels from "../../config/labels.js"; -import { repo, repoRoot } from "../common.js"; +import { repo, repoRoot } from "../utils/common.js"; const Octokit = OctokitCore.plugin(paginateGraphQL).plugin(restEndpointMethods); type Octokit = InstanceType; diff --git a/eng/common/scripts/utils/ado.ts b/eng/common/scripts/utils/ado.ts new file mode 100644 index 0000000000..be5854b581 --- /dev/null +++ b/eng/common/scripts/utils/ado.ts @@ -0,0 +1,3 @@ +export function setOutputVariable(name: string, value: string) { + console.log(`##vso[task.setvariable variable=${name};isOutput=true]${value}`); +} diff --git a/eng/common/scripts/common.ts b/eng/common/scripts/utils/common.ts similarity index 100% rename from eng/common/scripts/common.ts rename to eng/common/scripts/utils/common.ts diff --git a/eng/common/scripts/utils/find-area-changed.test.ts b/eng/common/scripts/utils/find-area-changed.test.ts new file mode 100644 index 0000000000..b2c61a1e55 --- /dev/null +++ b/eng/common/scripts/utils/find-area-changed.test.ts @@ -0,0 +1,36 @@ +import { expect, it } from "vitest"; +import { findAreasChanged } from "./find-area-changed.js"; + +it("Should return package variables if package specific changes are detected", () => { + const areas = findAreasChanged(["packages/http-client-csharp/src/constants.ts"]); + expect(areas).toEqual(["CSharp"]); +}); + +it("Should return Core if common files are changed", () => { + const areas = findAreasChanged(["packages/compiler/package.json"]); + expect(areas).toEqual(["Core"]); +}); + +it("Should return a combination of core and isolated packages", () => { + const areas = findAreasChanged([ + "packages/http-client-csharp/src/constants.ts", + "packages/compiler/package.json", + ]); + expect(areas).toEqual(["CSharp", "Core"]); +}); + +it("Should return CSharp and Core if .editorconfig is changed", () => { + const areas = findAreasChanged([".editorconfig"]); + expect(areas).toEqual(["CSharp", "Core"]); +}); + +it("Should not return runCore for .prettierignore, .prettierrc.json, cspell.yaml, esling.config.json", () => { + const areas = findAreasChanged([ + ".prettierignore", + ".prettierrc.json", + "cspell.yaml", + "esling.config.json", + "packages/http-client-csharp/emitter/src/constants.ts", + ]); + expect(areas).toEqual(["CSharp"]); +}); diff --git a/eng/common/scripts/utils/find-area-changed.ts b/eng/common/scripts/utils/find-area-changed.ts new file mode 100644 index 0000000000..1e868648c1 --- /dev/null +++ b/eng/common/scripts/utils/find-area-changed.ts @@ -0,0 +1,28 @@ +import micromatch from "micromatch"; +import pc from "picocolors"; +import { CIRules } from "../../config/ci-triggers.js"; + +export function findAreasChanged(files: string[]): (keyof typeof CIRules)[] { + const result: (keyof typeof CIRules)[] = []; + for (const [name, patterns] of Object.entries(CIRules)) { + const expandedPatterns = patterns.map(expandFolder); + console.log(`Checking trigger ${name}, with patterns:`, expandedPatterns); + const match = micromatch(files, expandedPatterns, { dot: true }); + + if (match.length > 0) { + result.push(name as any); + console.log(`Changes matched for trigger ${pc.cyan(name)}`, files); + } else { + console.log(`No changes matched for trigger ${pc.cyan(name)}`); + } + } + + return result; +} + +function expandFolder(maybeFolder: string) { + if (maybeFolder.endsWith("/")) { + return `${maybeFolder}**/*`; + } + return maybeFolder; +} diff --git a/eng/vitest.config.ts b/eng/vitest.config.ts new file mode 100644 index 0000000000..615f597160 --- /dev/null +++ b/eng/vitest.config.ts @@ -0,0 +1,4 @@ +import { defineConfig, mergeConfig } from "vitest/config"; +import { defaultTypeSpecVitestConfig } from "../vitest.workspace.js"; + +export default mergeConfig(defaultTypeSpecVitestConfig, defineConfig({})); diff --git a/package.json b/package.json index 4c18899249..84b39340c0 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ "regen-samples": "pnpm -r run regen-samples", "test:ci": "pnpm -r --aggregate-output --reporter=append-only --sequential test:ci", "test:e2e": "pnpm -r run test:e2e", + "test:eng": "vitest --dir ./eng", "test": "pnpm -r --aggregate-output --reporter=append-only run test", "update-latest-docs": "pnpm -r run update-latest-docs", "watch": "tsc --build ./tsconfig.ws.json --watch", diff --git a/vitest.workspace.ts b/vitest.workspace.ts index 959f05ce29..8aa3d25c31 100644 --- a/vitest.workspace.ts +++ b/vitest.workspace.ts @@ -1,4 +1,8 @@ -export default ["packages/*/vitest.config.ts", "packages/*/vitest.config.mts"]; +export default [ + "packages/*/vitest.config.ts", + "packages/*/vitest.config.mts", + "eng/vitest.config.ts", +]; /** * Default Config For all TypeSpec projects using vitest. From 3a123236eff116d330541ee4df0eb12744a69703 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:33:23 -0700 Subject: [PATCH 03/23] Extra steps --- eng/common/pipelines/ci.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/eng/common/pipelines/ci.yml b/eng/common/pipelines/ci.yml index 9a23ebe667..746ea371e0 100644 --- a/eng/common/pipelines/ci.yml +++ b/eng/common/pipelines/ci.yml @@ -22,18 +22,19 @@ extends: - job: InitJob displayName: Initialize steps: + - script: | + corepack enable + corepack prepare pnpm@latest-8 --activate + displayName: Install pnpm + + - script: pnpm install + displayName: Install JavaScript Dependencies + - script: node $(Build.SourcesDirectory)/eng/common/scripts/resolve-target-branch.js displayName: Resolve target branch - - task: PowerShell@2 + - script: pnpm tsx ./eng/common/scripts/analyze-change.ts --target-branch $(TARGET_BRANCH) displayName: "Analyze PR changes" - name: InitStep - inputs: - pwsh: true - filePath: $(Build.SourcesDirectory)/eng/common/scripts/Analyze-Changes.ps1 - arguments: > - -TargetBranch $(TARGET_BRANCH) - workingDirectory: $(Build.SourcesDirectory) # Run csharp stages if RunCSharp == true - template: /packages/http-client-csharp/eng/pipeline/templates/ci-stages.yml From a59a8b75c4f03915ccd78781a297ccc5060e68d8 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:37:39 -0700 Subject: [PATCH 04/23] Run --- eng/common/scripts/analyze-change.ts | 8 ++++++++ eng/tsconfig.json | 7 +++++++ 2 files changed, 15 insertions(+) create mode 100644 eng/tsconfig.json diff --git a/eng/common/scripts/analyze-change.ts b/eng/common/scripts/analyze-change.ts index 883a0c94a4..cba156c419 100644 --- a/eng/common/scripts/analyze-change.ts +++ b/eng/common/scripts/analyze-change.ts @@ -1,5 +1,7 @@ import { parseArgs } from "util"; +import { setOutputVariable } from "./utils/ado.js"; import { repoRoot } from "./utils/common.js"; +import { findAreasChanged } from "./utils/find-area-changed.js"; import { listChangedFilesSince } from "./utils/git.js"; const args = parseArgs({ @@ -22,3 +24,9 @@ const files = await listChangedFilesSince(targetBranch, { repositoryPath: repoRo console.log("##[group]Files changed in this pr"); console.log(files.map((x) => ` - ${x}`).join("\n")); console.log("##[endgroup]"); + +const areaChanged = findAreasChanged(files); + +for (const area of areaChanged) { + setOutputVariable(`Run${area}`, "true"); +} diff --git a/eng/tsconfig.json b/eng/tsconfig.json new file mode 100644 index 0000000000..edee1afcfe --- /dev/null +++ b/eng/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../tsconfig.base.json", + "compilerOptions": { + "noEmit": true + }, + "include": ["**/*"] +} From 7cb87e8f1ca1fc1059c3094df097327ea11c7784 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:43:46 -0700 Subject: [PATCH 05/23] Fix --- eng/common/pipelines/ci.yml | 2 +- .../scripts/{analyze-change.ts => dispatch-area-triggers.ts} | 2 +- package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename eng/common/scripts/{analyze-change.ts => dispatch-area-triggers.ts} (89%) diff --git a/eng/common/pipelines/ci.yml b/eng/common/pipelines/ci.yml index 746ea371e0..c3ed670fb2 100644 --- a/eng/common/pipelines/ci.yml +++ b/eng/common/pipelines/ci.yml @@ -33,7 +33,7 @@ extends: - script: node $(Build.SourcesDirectory)/eng/common/scripts/resolve-target-branch.js displayName: Resolve target branch - - script: pnpm tsx ./eng/common/scripts/analyze-change.ts --target-branch $(TARGET_BRANCH) + - script: pnpm tsx ./eng/common/scripts/dispatch-area-triggers.ts --target-branch $(TARGET_BRANCH) displayName: "Analyze PR changes" # Run csharp stages if RunCSharp == true diff --git a/eng/common/scripts/analyze-change.ts b/eng/common/scripts/dispatch-area-triggers.ts similarity index 89% rename from eng/common/scripts/analyze-change.ts rename to eng/common/scripts/dispatch-area-triggers.ts index cba156c419..a94bb4eddc 100644 --- a/eng/common/scripts/analyze-change.ts +++ b/eng/common/scripts/dispatch-area-triggers.ts @@ -19,7 +19,7 @@ if (!targetBranch) { console.log("Checking for changes in current branch compared to $TargetBranch"); -const files = await listChangedFilesSince(targetBranch, { repositoryPath: repoRoot }); +const files = await listChangedFilesSince(`origin/${targetBranch}`, { repositoryPath: repoRoot }); console.log("##[group]Files changed in this pr"); console.log(files.map((x) => ` - ${x}`).join("\n")); diff --git a/package.json b/package.json index 84b39340c0..b1340db8a1 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "regen-samples": "pnpm -r run regen-samples", "test:ci": "pnpm -r --aggregate-output --reporter=append-only --sequential test:ci", "test:e2e": "pnpm -r run test:e2e", - "test:eng": "vitest --dir ./eng", + "test:eng": "vitest --project eng", "test": "pnpm -r --aggregate-output --reporter=append-only run test", "update-latest-docs": "pnpm -r run update-latest-docs", "watch": "tsc --build ./tsconfig.ws.json --watch", From 13846b512ab6126775481b017b81380bc982db3c Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:49:04 -0700 Subject: [PATCH 06/23] . --- eng/common/scripts/dispatch-area-triggers.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/eng/common/scripts/dispatch-area-triggers.ts b/eng/common/scripts/dispatch-area-triggers.ts index a94bb4eddc..7968a04c4b 100644 --- a/eng/common/scripts/dispatch-area-triggers.ts +++ b/eng/common/scripts/dispatch-area-triggers.ts @@ -28,5 +28,6 @@ console.log("##[endgroup]"); const areaChanged = findAreasChanged(files); for (const area of areaChanged) { + console.log(`Setting output variable Run${area} to true`); setOutputVariable(`Run${area}`, "true"); } From 7013d85f1db0e1eca9a1cf09795177c3930cc6a4 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:54:34 -0700 Subject: [PATCH 07/23] Std out write --- eng/common/scripts/utils/ado.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/common/scripts/utils/ado.ts b/eng/common/scripts/utils/ado.ts index be5854b581..050dc38e27 100644 --- a/eng/common/scripts/utils/ado.ts +++ b/eng/common/scripts/utils/ado.ts @@ -1,3 +1,3 @@ export function setOutputVariable(name: string, value: string) { - console.log(`##vso[task.setvariable variable=${name};isOutput=true]${value}`); + process.stdout.write(`##vso[task.setvariable variable=${name};isOutput=true]${value}`); } From 4c437718bc4fdfeb8225c04022ce0eb469852066 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 15:58:30 -0700 Subject: [PATCH 08/23] test --- eng/common/scripts/utils/ado.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/eng/common/scripts/utils/ado.ts b/eng/common/scripts/utils/ado.ts index 050dc38e27..bd47f15b6b 100644 --- a/eng/common/scripts/utils/ado.ts +++ b/eng/common/scripts/utils/ado.ts @@ -1,3 +1,4 @@ export function setOutputVariable(name: string, value: string) { - process.stdout.write(`##vso[task.setvariable variable=${name};isOutput=true]${value}`); + process.stdout.write("##vso[task.setvariable variable=RunCore;isOutput=true]true"); + process.stdout.write(`##vso[task.setvariable variable=${name};isOutput=true]${value}\n`); } From 653e66bad469097bd06269480bc76e7b5f01aae2 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 16:04:52 -0700 Subject: [PATCH 09/23] Fix --- eng/common/pipelines/ci.yml | 1 + eng/common/scripts/utils/ado.ts | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/common/pipelines/ci.yml b/eng/common/pipelines/ci.yml index c3ed670fb2..2f7e6debd4 100644 --- a/eng/common/pipelines/ci.yml +++ b/eng/common/pipelines/ci.yml @@ -35,6 +35,7 @@ extends: - script: pnpm tsx ./eng/common/scripts/dispatch-area-triggers.ts --target-branch $(TARGET_BRANCH) displayName: "Analyze PR changes" + name: InitStep # Run csharp stages if RunCSharp == true - template: /packages/http-client-csharp/eng/pipeline/templates/ci-stages.yml diff --git a/eng/common/scripts/utils/ado.ts b/eng/common/scripts/utils/ado.ts index bd47f15b6b..3ac7778210 100644 --- a/eng/common/scripts/utils/ado.ts +++ b/eng/common/scripts/utils/ado.ts @@ -1,4 +1,3 @@ export function setOutputVariable(name: string, value: string) { - process.stdout.write("##vso[task.setvariable variable=RunCore;isOutput=true]true"); process.stdout.write(`##vso[task.setvariable variable=${name};isOutput=true]${value}\n`); } From 129991720effa0da40dcec1555eb6ec0f42f4d5d Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 16:42:51 -0700 Subject: [PATCH 10/23] Tweaks --- .../scripts/utils/find-area-changed.test.ts | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/eng/common/scripts/utils/find-area-changed.test.ts b/eng/common/scripts/utils/find-area-changed.test.ts index b2c61a1e55..f98320903d 100644 --- a/eng/common/scripts/utils/find-area-changed.test.ts +++ b/eng/common/scripts/utils/find-area-changed.test.ts @@ -1,14 +1,22 @@ -import { expect, it } from "vitest"; +import { describe, expect, it } from "vitest"; import { findAreasChanged } from "./find-area-changed.js"; -it("Should return package variables if package specific changes are detected", () => { - const areas = findAreasChanged(["packages/http-client-csharp/src/constants.ts"]); - expect(areas).toEqual(["CSharp"]); +describe("paths that should trigger CSharp CI", () => { + it.each(["packages/http-client-csharp/src/constants.ts"])("%s", (path) => { + const areas = findAreasChanged([path]); + expect(areas).toEqual(["CSharp"]); + }); }); -it("Should return Core if common files are changed", () => { - const areas = findAreasChanged(["packages/compiler/package.json"]); - expect(areas).toEqual(["Core"]); +describe("paths that should trigger Core CI", () => { + it.each([ + "packages/compiler/package.json", + "packages/http/package.json", + "packages/openapi3/package.json", + ])("%s", (path) => { + const areas = findAreasChanged([path]); + expect(areas).toEqual(["Core"]); + }); }); it("Should return a combination of core and isolated packages", () => { From 6ff90f0224aa58aacd4309d8b4683a77efbc3fae Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 16:49:15 -0700 Subject: [PATCH 11/23] Add tests --- eng/common/scripts/utils/find-area-changed.test.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/eng/common/scripts/utils/find-area-changed.test.ts b/eng/common/scripts/utils/find-area-changed.test.ts index f98320903d..3ae3843e18 100644 --- a/eng/common/scripts/utils/find-area-changed.test.ts +++ b/eng/common/scripts/utils/find-area-changed.test.ts @@ -32,7 +32,7 @@ it("Should return CSharp and Core if .editorconfig is changed", () => { expect(areas).toEqual(["CSharp", "Core"]); }); -it("Should not return runCore for .prettierignore, .prettierrc.json, cspell.yaml, esling.config.json", () => { +it("Should not return Core for .prettierignore, .prettierrc.json, cspell.yaml, esling.config.json", () => { const areas = findAreasChanged([ ".prettierignore", ".prettierrc.json", @@ -42,3 +42,8 @@ it("Should not return runCore for .prettierignore, .prettierrc.json, cspell.yaml ]); expect(areas).toEqual(["CSharp"]); }); + +it("should return Core for random files at the root", () => { + const areas = findAreasChanged(["some.file", "file/in/deep/directory"]); + expect(areas).toEqual(["Core"]); +}); From c87669a84fec4c51cc3b706ecd2e241d62ed01b6 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Tue, 21 May 2024 16:56:04 -0700 Subject: [PATCH 12/23] fix --- eng/common/scripts/utils/common.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/common/scripts/utils/common.ts b/eng/common/scripts/utils/common.ts index 1214418aac..e2eeab9eaa 100644 --- a/eng/common/scripts/utils/common.ts +++ b/eng/common/scripts/utils/common.ts @@ -8,7 +8,7 @@ export const repo = { repo: "typespec", }; -export const repoRoot = resolve(dirname(fileURLToPath(import.meta.url)), "../../.."); +export const repoRoot = resolve(dirname(fileURLToPath(import.meta.url)), "../../../.."); export interface CheckOptions { readonly check?: boolean; From 3b7f1fcb6805a9a44f2e37e944b7371d0391facd Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Fri, 24 May 2024 11:59:22 -0700 Subject: [PATCH 13/23] Update eng/common/pipelines/ci.yml --- eng/common/pipelines/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/common/pipelines/ci.yml b/eng/common/pipelines/ci.yml index 2f7e6debd4..55939b3b64 100644 --- a/eng/common/pipelines/ci.yml +++ b/eng/common/pipelines/ci.yml @@ -24,7 +24,7 @@ extends: steps: - script: | corepack enable - corepack prepare pnpm@latest-8 --activate + corepack prepare pnpm --activate displayName: Install pnpm - script: pnpm install From 364a31b608a6edd75b361e14dc342f328346b08a Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Fri, 24 May 2024 12:04:35 -0700 Subject: [PATCH 14/23] Fix --- eng/common/config/ci-triggers.ts | 3 +-- eng/common/config/labels.ts | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/eng/common/config/ci-triggers.ts b/eng/common/config/ci-triggers.ts index f4ad2d8630..783ccf0317 100644 --- a/eng/common/config/ci-triggers.ts +++ b/eng/common/config/ci-triggers.ts @@ -1,4 +1,4 @@ -import { AreaPaths } from "./areas.js"; +import { AreaPaths } from "./labels.js"; /** * Path that should trigger every CI build. @@ -8,7 +8,6 @@ const all = ["eng/common/", "vitest.config.ts"]; export const CIRules = { CSharp: [...AreaPaths["emitter:client:csharp"], ".editorconfig", ...all], Core: [ - "*", "**/*", "!.prettierignore", "!.prettierrc.json", diff --git a/eng/common/config/labels.ts b/eng/common/config/labels.ts index 0a4f398453..9bde815a2b 100644 --- a/eng/common/config/labels.ts +++ b/eng/common/config/labels.ts @@ -1,6 +1,6 @@ // cspell:ignore bfff -import { repo } from "../scripts/common.js"; import { defineConfig, defineLabels } from "../scripts/labels/config.js"; +import { repo } from "../scripts/utils/common.js"; /** * Labels that are used to categorize issue for which area they belong to. From c6ca3f2c9c85149f4ac9fe80390c2c3a4d598a0e Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Fri, 24 May 2024 12:11:01 -0700 Subject: [PATCH 15/23] don't bump other deps --- pnpm-lock.yaml | 1483 ++++++++++++------------------------------------ 1 file changed, 364 insertions(+), 1119 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fb7eccc68c..237681997c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -775,22 +775,22 @@ importers: version: 1.44.0 '@storybook/addon-actions': specifier: ^8.1.2 - version: 8.1.3 + version: 8.1.2 '@storybook/cli': specifier: ^8.1.2 - version: 8.1.3(react-dom@18.3.1)(react@18.3.1) + version: 8.1.2(react-dom@18.3.1)(react@18.3.1) '@storybook/react': specifier: ^8.1.2 - version: 8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5) + version: 8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5) '@storybook/react-vite': specifier: ^8.1.2 - version: 8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5)(vite@5.2.11) + version: 8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5)(vite@5.2.11) '@storybook/test': specifier: ^8.1.2 - version: 8.1.3(vitest@1.6.0) + version: 8.1.2(vitest@1.6.0) '@storybook/types': specifier: ^8.1.2 - version: 8.1.3 + version: 8.1.2 '@types/debounce': specifier: ~1.2.4 version: 1.2.4 @@ -1801,22 +1801,13 @@ packages: '@babel/highlight': 7.24.2 picocolors: 1.0.1 - /@babel/code-frame@7.24.6: - resolution: {integrity: sha512-ZJhac6FkEd1yhG2AHOmfcXG4ceoLltoCVJjN5XsWN9BifBQr+cHJbWi0h68HZuSORq+3WtJ2z0hwF2NG1b5kcA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/highlight': 7.24.6 - picocolors: 1.0.1 - dev: true - /@babel/compat-data@7.24.1: resolution: {integrity: sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==} engines: {node: '>=6.9.0'} - /@babel/compat-data@7.24.6: - resolution: {integrity: sha512-aC2DGhBq5eEdyXWqrDInSqQjO0k8xtPRf5YylULqx8MCd6jBtzqfta/3ETMRpuKIc5hyswfO80ObyA1MvkCcUQ==} + /@babel/compat-data@7.24.4: + resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==} engines: {node: '>=6.9.0'} - dev: true /@babel/core@7.24.5: resolution: {integrity: sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==} @@ -1865,26 +1856,11 @@ packages: dependencies: '@babel/types': 7.24.5 - /@babel/helper-annotate-as-pure@7.24.6: - resolution: {integrity: sha512-DitEzDfOMnd13kZnDqns1ccmftwJTS9DMkyn9pYTxulS7bZxUxpMly3Nf23QQ6NwA4UB8lAqjbqWtyvElEMAkg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true - /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - dev: false - - /@babel/helper-builder-binary-assignment-operator-visitor@7.24.6: - resolution: {integrity: sha512-+wnfqc5uHiMYtvRX7qu80Toef8BXeh4HHR1SPeonGb1SKPniNEd4a/nlaJJMv/OIEYvIVavvo0yR7u10Gqz0Iw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true /@babel/helper-compilation-targets@7.23.6: resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} @@ -1896,17 +1872,6 @@ packages: lru-cache: 5.1.1 semver: 6.3.1 - /@babel/helper-compilation-targets@7.24.6: - resolution: {integrity: sha512-VZQ57UsDGlX/5fFA7GkVPplZhHsVc+vuErWgdOiysI9Ksnw0Pbbd6pnPiR/mmJyKHgyIW0c7KT32gmhiF+cirg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/compat-data': 7.24.6 - '@babel/helper-validator-option': 7.24.6 - browserslist: 4.23.0 - lru-cache: 5.1.1 - semver: 6.3.1 - dev: true - /@babel/helper-create-class-features-plugin@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA==} engines: {node: '>=6.9.0'} @@ -1924,21 +1889,21 @@ packages: '@babel/helper-split-export-declaration': 7.24.5 semver: 6.3.1 - /@babel/helper-create-class-features-plugin@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-djsosdPJVZE6Vsw3kk7IPRWethP94WHGOhQTc67SNXE0ZzMhHgALw8iGmYS0TD1bbMM0VDROy43od7/hN6WYcA==} + /@babel/helper-create-class-features-plugin@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.24.6 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-function-name': 7.24.6 - '@babel/helper-member-expression-to-functions': 7.24.6 - '@babel/helper-optimise-call-expression': 7.24.6 - '@babel/helper-replace-supers': 7.24.6(@babel/core@7.24.5) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 - '@babel/helper-split-export-declaration': 7.24.6 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-member-expression-to-functions': 7.24.5 + '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/helper-split-export-declaration': 7.24.5 semver: 6.3.1 dev: true @@ -1953,18 +1918,6 @@ packages: regexpu-core: 5.3.2 semver: 6.3.1 - /@babel/helper-create-regexp-features-plugin@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-C875lFBIWWwyv6MHZUG9HmRrlTDgOsLWZfYR0nW69gaKJNe0/Mpxx5r0EID2ZdHQkdUmQo2t0uNckTL08/1BgA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.24.6 - regexpu-core: 5.3.2 - semver: 6.3.1 - dev: true - /@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.24.5): resolution: {integrity: sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==} peerDependencies: @@ -1972,7 +1925,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 debug: 4.3.4 lodash.debounce: 4.0.8 resolve: 1.22.8 @@ -1983,11 +1936,6 @@ packages: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} - /@babel/helper-environment-visitor@7.24.6: - resolution: {integrity: sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g==} - engines: {node: '>=6.9.0'} - dev: true - /@babel/helper-function-name@7.23.0: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} engines: {node: '>=6.9.0'} @@ -1995,38 +1943,23 @@ packages: '@babel/template': 7.24.0 '@babel/types': 7.24.5 - /@babel/helper-function-name@7.24.6: - resolution: {integrity: sha512-xpeLqeeRkbxhnYimfr2PC+iA0Q7ljX/d1eZ9/inYbmfG2jpl8Lu3DyXvpOAnrS5kxkfOWJjioIMQsaMBXFI05w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.24.6 - '@babel/types': 7.24.6 - dev: true - /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - /@babel/helper-hoist-variables@7.24.6: - resolution: {integrity: sha512-SF/EMrC3OD7dSta1bLJIlrsVxwtd0UpjRJqLno6125epQMJ/kyFmpTT4pbvPbdQHzCHg+biQ7Syo8lnDtbR+uA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true - /@babel/helper-member-expression-to-functions@7.23.0: resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - /@babel/helper-member-expression-to-functions@7.24.6: - resolution: {integrity: sha512-OTsCufZTxDUsv2/eDXanw/mUZHWOxSbEmC3pP8cgjcy5rgeVPWWMStnv274DV60JtHxTk0adT0QrCzC4M9NWGg==} + /@babel/helper-member-expression-to-functions@7.24.5: + resolution: {integrity: sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.6 + '@babel/types': 7.24.5 dev: true /@babel/helper-module-imports@7.24.3: @@ -2035,26 +1968,6 @@ packages: dependencies: '@babel/types': 7.24.5 - /@babel/helper-module-imports@7.24.6: - resolution: {integrity: sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true - - /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.5): - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.24.3 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - /@babel/helper-module-transforms@7.24.5(@babel/core@7.24.5): resolution: {integrity: sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==} engines: {node: '>=6.9.0'} @@ -2068,41 +1981,19 @@ packages: '@babel/helper-split-export-declaration': 7.24.5 '@babel/helper-validator-identifier': 7.24.5 - /@babel/helper-module-transforms@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-module-imports': 7.24.6 - '@babel/helper-simple-access': 7.24.6 - '@babel/helper-split-export-declaration': 7.24.6 - '@babel/helper-validator-identifier': 7.24.6 - dev: true - /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - /@babel/helper-optimise-call-expression@7.24.6: - resolution: {integrity: sha512-3SFDJRbx7KuPRl8XDUr8O7GAEB8iGyWPjLKJh/ywP/Iy9WOmEfMrsWbaZpvBu2HSYn4KQygIsz0O7m8y10ncMA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true - /@babel/helper-plugin-utils@7.24.0: resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} engines: {node: '>=6.9.0'} - /@babel/helper-plugin-utils@7.24.6: - resolution: {integrity: sha512-MZG/JcWfxybKwsA9N9PmtF2lOSFSEMVCpIRrbxccZFLJPrJciJdG/UhSh5W96GEteJI2ARqm5UAHxISwRDLSNg==} + /@babel/helper-plugin-utils@7.24.5: + resolution: {integrity: sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.5): resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} @@ -2114,19 +2005,6 @@ packages: '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 - dev: false - - /@babel/helper-remap-async-to-generator@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-1Qursq9ArRZPAMOZf/nuzVW8HgJLkTB9y9LfP4lW2MVp4e9WkLJDovfKBxoDcCk6VuzIxyqWHyBoaCtSRP10yg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.24.6 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-wrap-function': 7.24.6 - dev: true /@babel/helper-replace-supers@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==} @@ -2139,100 +2017,36 @@ packages: '@babel/helper-member-expression-to-functions': 7.23.0 '@babel/helper-optimise-call-expression': 7.22.5 - /@babel/helper-replace-supers@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-mRhfPwDqDpba8o1F8ESxsEkJMQkUF8ZIWrAc0FtWhxnjfextxMWxr22RtFizxxSYLjVHDeMgVsRq8BBZR2ikJQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-member-expression-to-functions': 7.24.6 - '@babel/helper-optimise-call-expression': 7.24.6 - 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.24.5 - /@babel/helper-simple-access@7.24.5: resolution: {integrity: sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - /@babel/helper-simple-access@7.24.6: - resolution: {integrity: sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true - /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - /@babel/helper-skip-transparent-expression-wrappers@7.24.6: - resolution: {integrity: sha512-jhbbkK3IUKc4T43WadP96a27oYti9gEf1LdyGSP2rHGH77kwLwfhO7TgwnWvxxQVmke0ImmCSS47vcuxEMGD3Q==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - 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.24.5 - /@babel/helper-split-export-declaration@7.24.5: resolution: {integrity: sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.24.5 - /@babel/helper-split-export-declaration@7.24.6: - resolution: {integrity: sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.24.6 - dev: true - /@babel/helper-string-parser@7.24.1: resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} engines: {node: '>=6.9.0'} - /@babel/helper-string-parser@7.24.6: - resolution: {integrity: sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q==} - engines: {node: '>=6.9.0'} - dev: true - - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - /@babel/helper-validator-identifier@7.24.5: resolution: {integrity: sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-identifier@7.24.6: - resolution: {integrity: sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw==} - engines: {node: '>=6.9.0'} - dev: true - /@babel/helper-validator-option@7.23.5: resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-option@7.24.6: - resolution: {integrity: sha512-Jktc8KkF3zIkePb48QO+IapbXlSapOW9S+ogZZkcO6bABgYAxtZcjZ/O005111YLf+j4M84uEgwYoidDkXbCkQ==} - engines: {node: '>=6.9.0'} - dev: true - /@babel/helper-wrap-function@7.22.20: resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} engines: {node: '>=6.9.0'} @@ -2240,16 +2054,6 @@ packages: '@babel/helper-function-name': 7.23.0 '@babel/template': 7.24.0 '@babel/types': 7.24.5 - dev: false - - /@babel/helper-wrap-function@7.24.6: - resolution: {integrity: sha512-f1JLrlw/jbiNfxvdrfBgio/gRBk3yTAEJWirpAkiJG2Hb22E7cEYKHWo0dFPTv/niPovzIdPdEDetrv6tC6gPQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-function-name': 7.24.6 - '@babel/template': 7.24.6 - '@babel/types': 7.24.6 - dev: true /@babel/helpers@7.24.5: resolution: {integrity: sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==} @@ -2265,21 +2069,11 @@ packages: resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-validator-identifier': 7.24.5 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.0.1 - /@babel/highlight@7.24.6: - resolution: {integrity: sha512-2YnuOp4HAk2BsBrJJvYCbItHx0zWscI1C3zgWkz+wDyD9I7GIVrfnLyrR4Y1VR+7p+chAEcrgRQYZAGIKMV7vQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.24.6 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.1 - dev: true - /@babel/parser@7.24.4: resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==} engines: {node: '>=6.0.0'} @@ -2295,23 +2089,15 @@ packages: dependencies: '@babel/types': 7.24.5 - /@babel/parser@7.24.6: - resolution: {integrity: sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - '@babel/types': 7.24.6 - dev: true - - /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-bYndrJ6Ph6Ar+GaB5VAc0JPoP80bQCm4qon6JEzXfRl5QZyQ8Ur1K6k7htxWmPA5z+k7JQvaMUrtXlqclWYzKw==} + /@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-LdXRi1wEMTrHVR4Zc9F8OewC3vdm5h4QB6L71zy6StmYeqGi1b3ttIO8UC+BfZKcH9jdr4aI249rBkm+3+YvHw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-plugin-utils': 7.24.5 dev: true /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.5): @@ -2321,18 +2107,7 @@ packages: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-iVuhb6poq5ikqRq2XWU6OQ+R5o9wF+r/or9CeUyovgptz0UlnK4/seOQ1Istu/XybYjAhQv1FRSSfHHufIku5Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==} @@ -2341,22 +2116,9 @@ packages: '@babel/core': ^7.13.0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.5) - dev: false - - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-c8TER5xMDYzzFcGqOEp9l4hvB7dcbhcGjcLVwxWfe4P5DOafdwjsBJZKsmv+o3aXh7NhopvayQIovHrh2zSRUQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 - '@babel/plugin-transform-optional-chaining': 7.24.6(@babel/core@7.24.5) - dev: true + '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==} @@ -2366,19 +2128,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-z8zEjYmwBUHN/pCF3NuWBhHQjJCrd33qAi8MgANfMrAvn72k2cImT8VjK9LJFu4ysOLJqhfkYYb3MvwANRUNZQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.5): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} @@ -2394,7 +2144,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.5): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} @@ -2402,7 +2152,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.5): resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} @@ -2411,7 +2161,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} @@ -2419,7 +2169,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} @@ -2427,16 +2177,16 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 - /@babel/plugin-syntax-flow@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-gNkksSdV8RbsCoHF9sjVYrHfYACMl/8U32UfUhJ9+84/ASXw8dlx+eHyyF0m6ncQJ9IBSxfuCkB36GJqYdXTOA==} + /@babel/plugin-syntax-flow@7.24.1(@babel/core@7.24.5): + resolution: {integrity: sha512-sxi2kLTI5DeW5vDtMUsk4mTPwvlUDbjOnoWayhynCwrw4QXRld4QEYwqzY8JmQXaJUtgUuCIurtSRH5sn4c7mA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 dev: true /@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.5): @@ -2446,18 +2196,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-syntax-import-assertions@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-BE6o2BogJKJImTmGpkmOic4V0hlRRxVtzqxiSPa8TIFxyhi4EFjHm08nq1M4STK4RytuLMgnSz0/wfflvGFNOg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==} @@ -2466,18 +2205,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-syntax-import-attributes@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-D+CfsVZousPXIdudSII7RGy52+dYRtbyKAZcvtQKq/NpsivyMVduepzcLqG5pMBugtMdedxdC8Ramdpcne9ZWQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.5): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} @@ -2485,7 +2213,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} @@ -2493,7 +2221,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==} @@ -2510,7 +2238,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} @@ -2518,7 +2246,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.5): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} @@ -2526,7 +2254,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} @@ -2534,7 +2262,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} @@ -2542,7 +2270,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.5): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} @@ -2550,7 +2278,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.5): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} @@ -2559,7 +2287,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.5): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} @@ -2568,7 +2296,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==} @@ -2587,7 +2315,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==} @@ -2596,18 +2324,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-arrow-functions@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-jSSSDt4ZidNMggcLx8SaKsbGNEfIl0PHx/4mFEulorE7bpYLbN0d3pDW3eJ7Y5Z3yPhy3L3NaPCYyTUY7TuugQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.24.5): resolution: {integrity: sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==} @@ -2617,23 +2334,9 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-async-generator-functions@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-VEP2o4iR2DqQU6KPgizTW2mnMx6BG5b5O9iQdrW9HesLkv8GIA8x2daXBQxw1MrsIkFQGA/iJ204CKoQ8UcnAA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-remap-async-to-generator': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==} @@ -2643,21 +2346,8 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-async-to-generator@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-NTBA2SioI3OsHeIn6sQmhvXleSl9T70YY/hostQLveWs0ic+qvbA3fa0kwAwQ0OA/XGaAerNZRQGJyRfhbJK4g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-imports': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-remap-async-to-generator': 7.24.6(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==} @@ -2666,18 +2356,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-block-scoped-functions@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-XNW7jolYHW9CwORrZgA/97tL/k05qe/HL0z/qqJq1mdWhwwCM6D4BJBV7wAz9HgFziN5dTOG31znkVIzwxv+vw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-block-scoping@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-h71T2QQvDgM2SmT29UYU6ozjMlAt7s7CSs5Hvy8f8cf/GM/Z4a2zMfN+fjVGaieeCrXR3EdQl6C4gQG+OgmbKw==} @@ -2689,14 +2368,14 @@ packages: '@babel/helper-plugin-utils': 7.24.0 dev: false - /@babel/plugin-transform-block-scoping@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-S/t1Xh4ehW7sGA7c1j/hiOBLnEYCp/c2sEG4ZkL8kI1xX9tW2pqJTCHKtdhe/jHKt8nG0pFCrDHUXd4DvjHS9w==} + /@babel/plugin-transform-block-scoping@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-sMfBc3OxghjC95BkYrYocHL3NaOplrcaunblzwXhGmlPwpmfsxr4vK+mBBt49r+S240vahmv+kUxkeKgs+haCw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 dev: true /@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.5): @@ -2709,17 +2388,6 @@ packages: '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.5) '@babel/helper-plugin-utils': 7.24.0 - /@babel/plugin-transform-class-properties@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-j6dZ0Z2Z2slWLR3kt9aOmSIrBvnntWjMDN/TVcMPxhXMLmJVqX605CBRlcGI4b32GMbfifTEsdEjGjiE+j/c3A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true - /@babel/plugin-transform-class-static-block@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-FUHlKCn6J3ERiu8Dv+4eoz7w8+kFLSyeVG4vDAikwADGjUCoHw/JHokyGtr8OR4UjpwPVivyF+h8Q5iv/JmrtA==} engines: {node: '>=6.9.0'} @@ -2732,15 +2400,15 @@ packages: '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) dev: false - /@babel/plugin-transform-class-static-block@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-1QSRfoPI9RoLRa8Mnakc6v3e0gJxiZQTYrMfLn+mD0sz5+ndSzwymp2hDcYJTyT0MOn0yuWzj8phlIvO72gTHA==} + /@babel/plugin-transform-class-static-block@7.24.4(@babel/core@7.24.5): + resolution: {integrity: sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) dev: true @@ -2757,24 +2425,24 @@ packages: '@babel/helper-function-name': 7.23.0 '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) - '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-split-export-declaration': 7.24.5 globals: 11.12.0 dev: false - /@babel/plugin-transform-classes@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-+fN+NO2gh8JtRmDSOB6gaCVo36ha8kfCW1nMq2Gc0DABln0VcHN4PrALDvF5/diLzIRKptC7z/d7Lp64zk92Fg==} + /@babel/plugin-transform-classes@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-gWkLP25DFj2dwe9Ck8uwMOpko4YsqyfZJrOmqqcegeDYEbp7rmn4U6UQZNj08UF6MaX39XenSpKRCvpDRBtZ7Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.24.6 - '@babel/helper-compilation-targets': 7.24.6 - '@babel/helper-environment-visitor': 7.24.6 - '@babel/helper-function-name': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-replace-supers': 7.24.6(@babel/core@7.24.5) - '@babel/helper-split-export-declaration': 7.24.6 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) + '@babel/helper-split-export-declaration': 7.24.5 globals: 11.12.0 dev: true @@ -2785,20 +2453,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/template': 7.24.0 - dev: false - - /@babel/plugin-transform-computed-properties@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-cRzPobcfRP0ZtuIEkA8QzghoUpSB3X3qSH5W2+FzG+VjWbJXExtx0nbRqwumdBN1x/ot2SlTNQLfBCnPdzp6kg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/template': 7.24.6 - dev: true /@babel/plugin-transform-destructuring@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==} @@ -2810,14 +2466,14 @@ packages: '@babel/helper-plugin-utils': 7.24.0 dev: false - /@babel/plugin-transform-destructuring@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-YLW6AE5LQpk5npNXL7i/O+U9CE4XsBCuRPgyjl1EICZYKmcitV+ayuuUGMJm2lC1WWjXYszeTnIxF/dq/GhIZQ==} + /@babel/plugin-transform-destructuring@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-SZuuLyfxvsm+Ah57I/i1HVjveBENYK9ue8MJ7qkc7ndoNjqquJiElzA7f5yaAXjyW2hKojosOTAQQRX50bPSVg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 dev: true /@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.5): @@ -2828,19 +2484,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-dotall-regex@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-rCXPnSEKvkm/EjzOtLoGvKseK+dS4kZwx1HexO3BtRtgL0fQ34awHn34aeSHuXtZY2F8a1X8xqBBPRtOxDVmcA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==} @@ -2849,18 +2493,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-duplicate-keys@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-/8Odwp/aVkZwPFJMllSbawhDAO3UJi65foB00HYnK/uXvvCPm0TAXSByjz1mpRmp0q6oX2SIxpkUOpPFHk7FLA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==} @@ -2869,20 +2502,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-dynamic-import@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-vpq8SSLRTBLOHUZHSnBqVo0AKX3PBaoPs2vVzYVWslXDTDIpwAcCDtfhUcHSQQoYoUvcFPTdC8TZYXu9ZnLT/w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==} @@ -2892,19 +2513,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-exponentiation-operator@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-EemYpHtmz0lHE7hxxxYEuTYOOBZ43WkDgZ4arQ4r+VX9QHuNZC+WH3wUWmRNvR8ECpTRne29aZV6XO22qpOtdA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==} @@ -2913,30 +2522,18 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-export-namespace-from@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-inXaTM1SVrIxCkIJ5gqWiozHfFMStuGbGJAxZFBoHcRRdDP0ySLb3jH6JOwmfiinPwyMZqMBX+7NBDCO4z0NSA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) - dev: true - /@babel/plugin-transform-flow-strip-types@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-1l8b24NoCpaQ13Vi6FtLG1nv6kNoi8PWvQb1AYO7GHZDpFfBYc3lbXArx1lP2KRt8b4pej1eWc/zrRmsQTfOdQ==} + /@babel/plugin-transform-flow-strip-types@7.24.1(@babel/core@7.24.5): + resolution: {integrity: sha512-iIYPIWt3dUmUKKE10s3W+jsQ3icFkw0JyRVyY1B7G4yK/nngAOHLVx8xlhA6b/Jzl/Y0nis8gjqhqKtRDQqHWQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-flow': 7.24.6(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/plugin-syntax-flow': 7.24.1(@babel/core@7.24.5) dev: true /@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.5): @@ -2946,20 +2543,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - dev: false - - /@babel/plugin-transform-for-of@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-n3Sf72TnqK4nw/jziSqEl1qaWPbCRw2CziHH+jdRYvw4J6yeCzsj4jdw8hIntOEeDGTmHVe2w4MVL44PN0GMzg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 - dev: true /@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==} @@ -2970,20 +2555,7 @@ packages: '@babel/core': 7.24.5 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-function-name@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-sOajCu6V0P1KPljWHKiDq6ymgqB+vfo3isUS4McqW1DZtvSVU2v/wuMhmRmkg3sFoq6GMaUUf8W4WtoSLkOV/Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.24.6 - '@babel/helper-function-name': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==} @@ -2992,20 +2564,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-json-strings@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-Uvgd9p2gUnzYJxVdBLcU0KurF8aVhkmVyMKW4MIY1/BByvs3EBpv45q01o7pRTVmTvtQq5zDlytP3dcUgm7v9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==} @@ -3014,18 +2574,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-literals@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-f2wHfR2HF6yMj+y+/y07+SLqnOSwRp8KYLpQKOzS58XLVlULhXbiYcygfXQxJlMbhII9+yXDwOUFLf60/TL5tw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==} @@ -3034,20 +2583,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-logical-assignment-operators@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-EKaWvnezBCMkRIHxMJSIIylzhqK09YpiJtDbr2wsXTwnO0TxyjMUkaw4RlFIZMIS0iDj0KyIg7H7XCguHu/YDA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==} @@ -3056,18 +2593,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-member-expression-literals@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-9g8iV146szUo5GWgXpRbq/GALTnY+WnNuRTuRHWWFfWGbP9ukRL0aO/jpu9dmOPikclkxnNsjY8/gsWl6bmZJQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==} @@ -3076,91 +2602,41 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-modules-amd@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-eAGogjZgcwqAxhyFgqghvoHRr+EYRQPFjUXrTYKBRb5qPnAVxOOglaxc4/byHqjvq/bqO2F3/CGwTHsgKJYHhQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.5): - resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-simple-access': 7.22.5 - - /@babel/plugin-transform-modules-commonjs@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-JEV8l3MHdmmdb7S7Cmx6rbNEjRCgTQMZxllveHO0mx6uiclB0NflCawlQQ6+o5ZrwjUBYPzHm2XoK4wqGVUFuw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-simple-access': 7.24.6 - dev: true - - /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.5): - resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - '@babel/helper-validator-identifier': 7.22.20 - dev: false - - /@babel/plugin-transform-modules-systemjs@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-xg1Z0J5JVYxtpX954XqaaAT6NpAY6LtZXvYFCJmGFJWwtlz2EmJoR8LycFRGNE8dBKizGWkGQZGegtkV8y8s+w==} + resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-hoist-variables': 7.24.6 - '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-validator-identifier': 7.24.6 - dev: true + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-simple-access': 7.24.5 - /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.5): - resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==} + /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.5): + resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-validator-identifier': 7.24.5 - /@babel/plugin-transform-modules-umd@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-esRCC/KsSEUvrSjv5rFYnjZI6qv4R1e/iHQrqwbZIoRJqk7xCvEUiN7L1XrmW5QSmQe3n1XD88wbgDTWLbVSyg==} + /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.5): + resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.5): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} @@ -3170,19 +2646,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-named-capturing-groups-regex@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-6DneiCiu91wm3YiNIGDWZsl6GfTTbspuj/toTEqLh9d4cx50UIzSdg+T96p8DuT7aJOBRhFyaE9ZvTHkXrXr6Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==} @@ -3191,18 +2655,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-new-target@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-f8liz9JG2Va8A4J5ZBuaSdwfPqN6axfWRK+y66fjKYbwf9VBLuq4WxtinhJhvp1w6lamKUwLG0slK2RxqFgvHA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==} @@ -3214,17 +2667,6 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) - /@babel/plugin-transform-nullish-coalescing-operator@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-+QlAiZBMsBK5NqrBWFXCYeXyiU1y7BQ/OYaiPAcQJMomn5Tyg+r5WuVtyEuvTbpV7L25ZSLfE+2E9ywj4FD48A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) - dev: true - /@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==} engines: {node: '>=6.9.0'} @@ -3232,20 +2674,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-numeric-separator@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-6voawq8T25Jvvnc4/rXcWZQKKxUNZcKMS8ZNrjxQqoRFernJJKjE3s18Qo6VFaatG5aiX5JV1oPD7DbJhn0a4Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-object-rest-spread@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==} @@ -3260,17 +2690,17 @@ packages: '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.5) dev: false - /@babel/plugin-transform-object-rest-spread@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-OKmi5wiMoRW5Smttne7BwHM8s/fb5JFs+bVGNSeHWzwZkWXWValR1M30jyXo1s/RaqgwwhEC62u4rFH/FBcBPg==} + /@babel/plugin-transform-object-rest-spread@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-7EauQHszLGM3ay7a161tTQH7fj+3vVM/gThlz5HpFtnygTxjrlvoeq7MPVA1Vy9Q555OB8SnAOsMkLShNkkrHA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-transform-parameters': 7.24.6(@babel/core@7.24.5) + '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) dev: true /@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.5): @@ -3280,20 +2710,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-object-super@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-N/C76ihFKlZgKfdkEYKtaRUtXZAgK7sOY4h2qrbVbVTXPrKGIi8aww5WGe/+Wmg8onn8sr2ut6FXlsbu/j6JHg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-replace-supers': 7.24.6(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==} @@ -3302,20 +2720,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) - dev: false - - /@babel/plugin-transform-optional-catch-binding@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-L5pZ+b3O1mSzJ71HmxSCmTVd03VOT2GXOigug6vDYJzE5awLI7P1g0wFcdmGuwSDSrQ0L2rDOe/hHws8J1rv3w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-optional-chaining@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==} @@ -3327,18 +2733,18 @@ packages: '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) + dev: false - /@babel/plugin-transform-optional-chaining@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-cHbqF6l1QP11OkYTYQ+hhVx1E017O5ZcSPXk9oODpqhcAD1htsWG2NpHrrhthEO2qZomLK0FXS+u7NfrkF5aOQ==} + /@babel/plugin-transform-optional-chaining@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) - dev: true /@babel/plugin-transform-parameters@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==} @@ -3350,14 +2756,14 @@ packages: '@babel/helper-plugin-utils': 7.24.0 dev: false - /@babel/plugin-transform-parameters@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-ST7guE8vLV+vI70wmAxuZpIKzVjvFX9Qs8bl5w6tN/6gOypPWUmMQL2p7LJz5E63vEGrDhAiYetniJFyBH1RkA==} + /@babel/plugin-transform-parameters@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-9Co00MqZ2aoky+4j2jhofErthm6QVLKbpQrvz20c3CH9KQCLHyNB+t2ya4/UrRpQGR+Wrwjg9foopoeSdnHOkA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 dev: true /@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.5): @@ -3370,17 +2776,6 @@ packages: '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.5) '@babel/helper-plugin-utils': 7.24.0 - /@babel/plugin-transform-private-methods@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-T9LtDI0BgwXOzyXrvgLTT8DFjCC/XgWLjflczTLXyvxbnSR/gpv0hbmzlHE/kmh9nOvlygbamLKRo6Op4yB6aw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true - /@babel/plugin-transform-private-property-in-object@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==} engines: {node: '>=6.9.0'} @@ -3394,16 +2789,16 @@ packages: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) dev: false - /@babel/plugin-transform-private-property-in-object@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-Qu/ypFxCY5NkAnEhCF86Mvg3NSabKsh/TPpBVswEdkGl7+FbsYHy1ziRqJpwGH4thBdQHh8zx+z7vMYmcJ7iaQ==} + /@babel/plugin-transform-private-property-in-object@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-JM4MHZqnWR04jPMujQDTBVRnqxpLLpx2tkn7iPn+Hmsc0Gnb79yvRWOkvqFOx3Z7P7VxiRIR22c4eGSNj87OBQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.24.6 - '@babel/helper-create-class-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) dev: true @@ -3414,18 +2809,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-property-literals@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-oARaglxhRsN18OYsnPTpb8TcKQWDYNsPNmTnx5++WOAsUJ0cSC/FZVlIJCKvPbU4yn/UXsS0551CFKJhN0CaMw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-react-constant-elements@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==} @@ -3509,20 +2893,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - regenerator-transform: 0.15.2 - dev: false - - /@babel/plugin-transform-regenerator@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-SMDxO95I8WXRtXhTAc8t/NFQUT7VYbIWwJCJgEli9ml4MhqUMh4S6hxgH6SmAC3eAQNWCDJFxcFeEt9w2sDdXg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 regenerator-transform: 0.15.2 - dev: true /@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==} @@ -3531,18 +2903,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-reserved-words@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-DcrgFXRRlK64dGE0ZFBPD5egM2uM8mgfrvTMOSB2yKzOtjpGegVYkzh3s1zZg1bBck3nkXiaOamJUqK3Syk+4A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-runtime@7.24.3(@babel/core@7.24.5): resolution: {integrity: sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ==} @@ -3568,18 +2929,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-shorthand-properties@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-xnEUvHSMr9eOWS5Al2YPfc32ten7CXdH7Zwyyk7IqITg4nX61oHj+GxpNvl+y5JHjfN3KXE2IV55wAWowBYMVw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==} @@ -3588,20 +2938,8 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - dev: false - - /@babel/plugin-transform-spread@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-h/2j7oIUDjS+ULsIrNZ6/TKG97FgmEk1PXryk/HQq6op4XUUUwif2f69fJrzK0wza2zjCS1xhXmouACaWV5uPA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.6 - dev: true /@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==} @@ -3610,18 +2948,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-sticky-regex@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-fN8OcTLfGmYv7FnDrsjodYBo1DhPL3Pze/9mIIE2MGCT1KgADYIOD7rEglpLHZj8PZlC/JFX5WcD+85FLAQusw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==} @@ -3630,18 +2957,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-template-literals@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-BJbEqJIcKwrqUP+KfUIkxz3q8VzXe2R8Wv8TaNgO1cx+nNavxn/2+H8kp9tgFSOL6wYPPEgFvU6IKS4qoGqhmg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-typeof-symbol@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==} @@ -3653,14 +2969,14 @@ packages: '@babel/helper-plugin-utils': 7.24.0 dev: false - /@babel/plugin-transform-typeof-symbol@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-IshCXQ+G9JIFJI7bUpxTE/oA2lgVLAIK8q1KdJNoPXOpvRaNjMySGuvLfBw/Xi2/1lLo953uE8hyYSDW3TSYig==} + /@babel/plugin-transform-typeof-symbol@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-UTGnhYVZtTAjdwOTzT+sCyXmTn8AhaxOS/MjG9REclZ6ULHWF9KoCZur0HSGU7hk8PdBFKKbYe6+gqdXWz84Jg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 + '@babel/helper-plugin-utils': 7.24.5 dev: true /@babel/plugin-transform-typescript@7.24.1(@babel/core@7.24.5): @@ -3682,18 +2998,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-unicode-escapes@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-bKl3xxcPbkQQo5eX9LjjDpU2xYHeEeNQbOhj0iPvetSzA+Tu9q/o5lujF4Sek60CM6MgYvOS/DJuwGbiEYAnLw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==} @@ -3703,19 +3008,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-unicode-property-regex@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-8EIgImzVUxy15cZiPii9GvLZwsy7Vxc+8meSlR3cXFmBIl5W5Tn9LGBf7CDKkHj4uVfNXCJB8RsVfnmY61iedA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==} @@ -3725,19 +3018,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-unicode-regex@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-pssN6ExsvxaKU638qcWb81RrvvgZom3jDgU/r5xFZ7TONkZGFf4MhI2ltMb8OcQWhHyxgIavEU+hgqtbKOmsPA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.5): resolution: {integrity: sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==} @@ -3747,19 +3028,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.0 - dev: false - - /@babel/plugin-transform-unicode-sets-regex@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-quiMsb28oXWIDK0gXLALOJRXLgICLiulqdZGOaPPd0vRT7fQp74NtdADAVu+D8s00C+0Xs0MxVP0VKF/sZEUgw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.24.6(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.6 - dev: true + '@babel/helper-plugin-utils': 7.24.5 /@babel/preset-env@7.24.3(@babel/core@7.24.5): resolution: {integrity: sha512-fSk430k5c2ff8536JcPvPWK4tZDwehWLGlBp0wrsBUjZVdeQV6lePbwKWZaZfK2vnh/1kQX1PzAJWsnBmVgGJA==} @@ -3846,35 +3115,35 @@ packages: babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.5) babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.5) babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.5) - core-js-compat: 3.36.1 + core-js-compat: 3.37.1 semver: 6.3.1 transitivePeerDependencies: - supports-color dev: false - /@babel/preset-env@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-CrxEAvN7VxfjOG8JNF2Y/eMqMJbZPZ185amwGUBp8D9USK90xQmv7dLdFSa+VbD7fdIqcy/Mfv7WtzG8+/qxKg==} + /@babel/preset-env@7.24.5(@babel/core@7.24.5): + resolution: {integrity: sha512-UGK2ifKtcC8i5AI4cH+sbLLuLc2ktYSFJgBAXorKAsHUZmrQ1q6aQ6i3BvU24wWs2AAKqQB6kq3N9V9Gw1HiMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.24.6 + '@babel/compat-data': 7.24.4 '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.24.6 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-validator-option': 7.24.6 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.6(@babel/core@7.24.5) + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.5) '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.5) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.5) '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-import-assertions': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-syntax-import-attributes': 7.24.6(@babel/core@7.24.5) + '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.5) '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.5) '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) @@ -3886,54 +3155,54 @@ packages: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.5) '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.5) - '@babel/plugin-transform-arrow-functions': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-async-generator-functions': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-async-to-generator': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-block-scoped-functions': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-block-scoping': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-class-properties': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-class-static-block': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-classes': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-computed-properties': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-destructuring': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-dotall-regex': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-duplicate-keys': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-dynamic-import': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-exponentiation-operator': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-export-namespace-from': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-for-of': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-function-name': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-json-strings': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-literals': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-logical-assignment-operators': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-member-expression-literals': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-modules-amd': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-modules-commonjs': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-modules-systemjs': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-modules-umd': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-new-target': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-numeric-separator': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-object-rest-spread': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-object-super': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-optional-catch-binding': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-optional-chaining': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-parameters': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-private-methods': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-private-property-in-object': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-property-literals': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-regenerator': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-reserved-words': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-shorthand-properties': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-spread': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-sticky-regex': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-template-literals': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-typeof-symbol': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-escapes': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-property-regex': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-regex': 7.24.6(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-sets-regex': 7.24.6(@babel/core@7.24.5) + '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.5) + '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-block-scoping': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-class-static-block': 7.24.4(@babel/core@7.24.5) + '@babel/plugin-transform-classes': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-destructuring': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.5) + '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-object-rest-spread': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-private-property-in-object': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-typeof-symbol': 7.24.5(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.5) '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.5) babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.5) babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.5) @@ -3944,16 +3213,16 @@ packages: - supports-color dev: true - /@babel/preset-flow@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-huoe0T1Qs9fQhMWbmqE/NHUeZbqmHDsN6n/jYvPcUUHfuKiPV32C9i8tDhMbQ1DEKTjbBP7Rjm3nSLwlB2X05g==} + /@babel/preset-flow@7.24.1(@babel/core@7.24.5): + resolution: {integrity: sha512-sWCV2G9pcqZf+JHyv/RyqEIpFypxdCSxWIxQjpdaQxenNog7cN1pr76hg8u0Fz8Qgg0H4ETkGcJnXL8d4j0PPA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.6 - '@babel/helper-validator-option': 7.24.6 - '@babel/plugin-transform-flow-strip-types': 7.24.6(@babel/core@7.24.5) + '@babel/helper-plugin-utils': 7.24.5 + '@babel/helper-validator-option': 7.23.5 + '@babel/plugin-transform-flow-strip-types': 7.24.1(@babel/core@7.24.5) dev: true /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.5): @@ -3962,7 +3231,7 @@ packages: '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-plugin-utils': 7.24.5 '@babel/types': 7.24.5 esutils: 2.0.3 @@ -3994,8 +3263,8 @@ packages: '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) '@babel/plugin-transform-typescript': 7.24.1(@babel/core@7.24.5) - /@babel/register@7.24.6(@babel/core@7.24.5): - resolution: {integrity: sha512-WSuFCc2wCqMeXkz/i3yfAAsxwWflEgbVkZzivgAmXl/MxrXeoYFZOOPllbC8R8WTF7u61wSRQtDVZ1879cdu6w==} + /@babel/register@7.23.7(@babel/core@7.24.5): + resolution: {integrity: sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -4033,25 +3302,16 @@ packages: '@babel/parser': 7.24.5 '@babel/types': 7.24.5 - /@babel/template@7.24.6: - resolution: {integrity: sha512-3vgazJlLwNXi9jhrR1ef8qiB65L1RK90+lEQwv4OxveHnqC3BfmnHdgySwRLzf6akhlOYenT+b7AfWq+a//AHw==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.24.6 - '@babel/parser': 7.24.6 - '@babel/types': 7.24.6 - dev: true - /@babel/traverse@7.24.1: resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.4 + '@babel/generator': 7.24.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-split-export-declaration': 7.24.5 '@babel/parser': 7.24.5 '@babel/types': 7.24.5 debug: 4.3.4 @@ -4082,7 +3342,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.24.1 - '@babel/helper-validator-identifier': 7.22.20 + '@babel/helper-validator-identifier': 7.24.5 to-fast-properties: 2.0.0 dev: true @@ -4094,15 +3354,6 @@ packages: '@babel/helper-validator-identifier': 7.24.5 to-fast-properties: 2.0.0 - /@babel/types@7.24.6: - resolution: {integrity: sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-string-parser': 7.24.6 - '@babel/helper-validator-identifier': 7.24.6 - to-fast-properties: 2.0.0 - dev: true - /@base2/pretty-print-object@1.0.1: resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} dev: true @@ -8586,10 +7837,10 @@ packages: micromark-util-symbol: 1.1.0 dev: false - /@storybook/addon-actions@8.1.3: - resolution: {integrity: sha512-XG6clFT/lPOHEm/tHdWO3E5G28HIock2272BZNr15+DqVTRYyGRhuFQKxPb+CdRWCpT1VQnWS+L9S1+95wDlJw==} + /@storybook/addon-actions@8.1.2: + resolution: {integrity: sha512-EW8sYgA1vpn67pTheBjfLCfPO82w0jMkKYFDFMMvxVoEDbJ3fgsUDDd058zBBFiDtnngv3VUrXASPTxK51F2mQ==} dependencies: - '@storybook/core-events': 8.1.3 + '@storybook/core-events': 8.1.2 '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 dequal: 2.0.3 @@ -8597,13 +7848,13 @@ packages: uuid: 9.0.1 dev: true - /@storybook/builder-manager@8.1.3(prettier@3.2.5): - resolution: {integrity: sha512-VIYgF6PreiteJMGlz716P27yyL/JF1dR7M2htVJij5IP2X6HUgyzFXScElKljX9fETq7vig+UZWksZ2M2Q9dYg==} + /@storybook/builder-manager@8.1.2(prettier@3.2.5): + resolution: {integrity: sha512-cOdfSUY6vtZvJaSK1htx4aNmCLldPS7gFTBoooj3oMv7SyP3c3T53NuB+RcYpMqAUtngjLnTcl+tQ9JR/H5meA==} dependencies: '@fal-works/esbuild-plugin-global-externals': 2.1.2 - '@storybook/core-common': 8.1.3(prettier@3.2.5) - '@storybook/manager': 8.1.3 - '@storybook/node-logger': 8.1.3 + '@storybook/core-common': 8.1.2(prettier@3.2.5) + '@storybook/manager': 8.1.2 + '@storybook/node-logger': 8.1.2 '@types/ejs': 3.1.5 '@yarnpkg/esbuild-plugin-pnp': 3.0.0-rc.15(esbuild@0.20.2) browser-assert: 1.2.1 @@ -8620,8 +7871,8 @@ packages: - supports-color dev: true - /@storybook/builder-vite@8.1.3(prettier@3.2.5)(typescript@5.4.5)(vite@5.2.11): - resolution: {integrity: sha512-REfjbsBCMgYLszeyOwmDsI9o0vJSeZ3xnCPBp4DphEX4i889t+jTTxavB4yiDSaK+ALqE8Hk3wfn6AQyIWEuCg==} + /@storybook/builder-vite@8.1.2(prettier@3.2.5)(typescript@5.4.5)(vite@5.2.11): + resolution: {integrity: sha512-7MqJEV7+LKfVM/ZixDjd5RMyAL6U6zjsTuaGPW8Chf3Zvr/Z/Xa2EvKdE3c6qEz3hvleGFTBhBnBCZttoG5b/g==} peerDependencies: '@preact/preset-vite': '*' typescript: '>= 4.3.x' @@ -8635,15 +7886,15 @@ packages: vite-plugin-glimmerx: optional: true dependencies: - '@storybook/channels': 8.1.3 - '@storybook/client-logger': 8.1.3 - '@storybook/core-common': 8.1.3(prettier@3.2.5) - '@storybook/core-events': 8.1.3 - '@storybook/csf-plugin': 8.1.3 - '@storybook/node-logger': 8.1.3 - '@storybook/preview': 8.1.3 - '@storybook/preview-api': 8.1.3 - '@storybook/types': 8.1.3 + '@storybook/channels': 8.1.2 + '@storybook/client-logger': 8.1.2 + '@storybook/core-common': 8.1.2(prettier@3.2.5) + '@storybook/core-events': 8.1.2 + '@storybook/csf-plugin': 8.1.2 + '@storybook/node-logger': 8.1.2 + '@storybook/preview': 8.1.2 + '@storybook/preview-api': 8.1.2 + '@storybook/types': 8.1.2 '@types/find-cache-dir': 3.2.1 browser-assert: 1.2.1 es-module-lexer: 1.5.0 @@ -8660,31 +7911,31 @@ packages: - supports-color dev: true - /@storybook/channels@8.1.3: - resolution: {integrity: sha512-iDoHFX3ty7vhSXegFRevJkQ6cV+QQ1JjDnoXK/SHeloMT26sn5gPtetn3ET9+6ZoFkU05Pf5d0DoywVOfumfcg==} + /@storybook/channels@8.1.2: + resolution: {integrity: sha512-ChWKPCDZ4VVBpulJsZ+RQiPi4NVm6tb0FJwjEcMskxl4Nx2x4+rxLrZHrsZHWXsH5uJctSEjmmvEn1QdjVKMPQ==} dependencies: - '@storybook/client-logger': 8.1.3 - '@storybook/core-events': 8.1.3 + '@storybook/client-logger': 8.1.2 + '@storybook/core-events': 8.1.2 '@storybook/global': 5.0.0 telejson: 7.2.0 tiny-invariant: 1.3.3 dev: true - /@storybook/cli@8.1.3(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-eqzjy7YOIF0WkeUPT5Mv+WKibk3z+IfP0voTKIWzYKAqZ8sD36NQV/lE7bHy0JAPw+rfw1Fq0gMOiFVcx3ZaUQ==} + /@storybook/cli@8.1.2(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-gynn8LjmqJmAfaMNAf8h0V+RFdTo10+x4x6yiCy/eI/Yct0B5ke9MPzdKHocMhBLv9EDNz1ealwjsvR7dmjy2w==} hasBin: true dependencies: '@babel/core': 7.24.5 '@babel/types': 7.24.5 '@ndelangen/get-tarball': 3.0.9 - '@storybook/codemod': 8.1.3 - '@storybook/core-common': 8.1.3(prettier@3.2.5) - '@storybook/core-events': 8.1.3 - '@storybook/core-server': 8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1) - '@storybook/csf-tools': 8.1.3 - '@storybook/node-logger': 8.1.3 - '@storybook/telemetry': 8.1.3(prettier@3.2.5) - '@storybook/types': 8.1.3 + '@storybook/codemod': 8.1.2 + '@storybook/core-common': 8.1.2(prettier@3.2.5) + '@storybook/core-events': 8.1.2 + '@storybook/core-server': 8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1) + '@storybook/csf-tools': 8.1.2 + '@storybook/node-logger': 8.1.2 + '@storybook/telemetry': 8.1.2(prettier@3.2.5) + '@storybook/types': 8.1.2 '@types/semver': 7.5.8 '@yarnpkg/fslib': 2.10.3 '@yarnpkg/libzip': 2.3.0 @@ -8699,7 +7950,7 @@ packages: get-npm-tarball-url: 2.1.0 giget: 1.2.3 globby: 14.0.1 - jscodeshift: 0.15.2(@babel/preset-env@7.24.6) + jscodeshift: 0.15.2(@babel/preset-env@7.24.5) leven: 3.1.0 ora: 5.4.1 prettier: 3.2.5 @@ -8720,26 +7971,26 @@ packages: - utf-8-validate dev: true - /@storybook/client-logger@8.1.3: - resolution: {integrity: sha512-dX1jZ+HhJ8hVhAKHQ8gs/FalHjIGo5j1Xk+2UqdsGjLoBlwHIHfHzkVbzrc/gCxxXL0juisk7BzbXaz7lME0KA==} + /@storybook/client-logger@8.1.2: + resolution: {integrity: sha512-2kiXh0CE2IJpV++r0sGknMVMjAiT/tQe16FlGHOh52XppUz7slQVy/W/nPhVKvcbdThSQd0kYFR9r3XmAT1LSQ==} dependencies: '@storybook/global': 5.0.0 dev: true - /@storybook/codemod@8.1.3: - resolution: {integrity: sha512-U21HQICKKm/xsfLKEODDphJJiBkzq5wFZzKN2DyMPd3vOfLpCWcaPsO9Pi5IX1cekyCz2o+phYt2r9aSRQUbOg==} + /@storybook/codemod@8.1.2: + resolution: {integrity: sha512-kcJjq5BBxxUBVsOxBnwwkqVPm/zdWMbr5VOjmZinqPtPA1slFQxbfRenD77l6icT15InZqbRXwkp1+G8oYDVGA==} dependencies: '@babel/core': 7.24.5 - '@babel/preset-env': 7.24.6(@babel/core@7.24.5) + '@babel/preset-env': 7.24.5(@babel/core@7.24.5) '@babel/types': 7.24.5 '@storybook/csf': 0.1.7 - '@storybook/csf-tools': 8.1.3 - '@storybook/node-logger': 8.1.3 - '@storybook/types': 8.1.3 + '@storybook/csf-tools': 8.1.2 + '@storybook/node-logger': 8.1.2 + '@storybook/types': 8.1.2 '@types/cross-spawn': 6.0.6 cross-spawn: 7.0.3 globby: 14.0.1 - jscodeshift: 0.15.2(@babel/preset-env@7.24.6) + jscodeshift: 0.15.2(@babel/preset-env@7.24.5) lodash: 4.17.21 prettier: 3.2.5 recast: 0.23.7 @@ -8748,18 +7999,18 @@ packages: - supports-color dev: true - /@storybook/core-common@8.1.3(prettier@3.2.5): - resolution: {integrity: sha512-VLG2Kg6oX0msq/Gjo+Pveqg7oLnJBClzms43/nwh6oxjJ/TFehRi3DyLjLqL+Nj726LI5lQetFZZyrsHudVskg==} + /@storybook/core-common@8.1.2(prettier@3.2.5): + resolution: {integrity: sha512-Wt9xMXVSXDA7Kzk6II6SISvRVHeAtOVuJOu3VnpsFFd3tBFiXMA7jD25rHVMB3VlZDT8iaoAgdZDYnq4xYTRJg==} peerDependencies: prettier: ^2 || ^3 peerDependenciesMeta: prettier: optional: true dependencies: - '@storybook/core-events': 8.1.3 - '@storybook/csf-tools': 8.1.3 - '@storybook/node-logger': 8.1.3 - '@storybook/types': 8.1.3 + '@storybook/core-events': 8.1.2 + '@storybook/csf-tools': 8.1.2 + '@storybook/node-logger': 8.1.2 + '@storybook/types': 8.1.2 '@yarnpkg/fslib': 2.10.3 '@yarnpkg/libzip': 2.3.0 chalk: 4.1.2 @@ -8791,34 +8042,34 @@ packages: - supports-color dev: true - /@storybook/core-events@8.1.3: - resolution: {integrity: sha512-eOs4HRrsEZz2FZFlMGwPuH9CGYBK8fkUS7mcHNPv8CqoHV8d3ErvDax8zA/KGRj3S6kWJ4PzI9IGuiDVvwuxhA==} + /@storybook/core-events@8.1.2: + resolution: {integrity: sha512-GKsvo/eeEQYDEhAw5YkUIZHYNurAJjzW3+uzThUuC1r0CGcfE+twJVfQXynAyOgL6hFdqy7879/3augf3v3cJQ==} dependencies: '@storybook/csf': 0.1.7 ts-dedent: 2.2.0 dev: true - /@storybook/core-server@8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-bOHbLI5atDFBOsFc5M0V0ikURVw+Kx/jRXGO5dnc6kr5SwW+ZfWooy1hiFKHRnI8hmVpGXcS6YqTHkUbcrAWgA==} + /@storybook/core-server@8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-I2DR6rWv3BYCu1of2rAo8fcgqsW2NdKRm3omPqW7VRtICYiV9EnOUqV8wbEmvWtFJkuweH5o/P3rSKre2j2scw==} dependencies: '@aw-web-design/x-default-browser': 1.4.126 '@babel/core': 7.24.5 '@babel/parser': 7.24.5 '@discoveryjs/json-ext': 0.5.7 - '@storybook/builder-manager': 8.1.3(prettier@3.2.5) - '@storybook/channels': 8.1.3 - '@storybook/core-common': 8.1.3(prettier@3.2.5) - '@storybook/core-events': 8.1.3 + '@storybook/builder-manager': 8.1.2(prettier@3.2.5) + '@storybook/channels': 8.1.2 + '@storybook/core-common': 8.1.2(prettier@3.2.5) + '@storybook/core-events': 8.1.2 '@storybook/csf': 0.1.7 - '@storybook/csf-tools': 8.1.3 + '@storybook/csf-tools': 8.1.2 '@storybook/docs-mdx': 3.1.0-next.0 '@storybook/global': 5.0.0 - '@storybook/manager': 8.1.3 - '@storybook/manager-api': 8.1.3(react-dom@18.3.1)(react@18.3.1) - '@storybook/node-logger': 8.1.3 - '@storybook/preview-api': 8.1.3 - '@storybook/telemetry': 8.1.3(prettier@3.2.5) - '@storybook/types': 8.1.3 + '@storybook/manager': 8.1.2 + '@storybook/manager-api': 8.1.2(react-dom@18.3.1)(react@18.3.1) + '@storybook/node-logger': 8.1.2 + '@storybook/preview-api': 8.1.2 + '@storybook/telemetry': 8.1.2(prettier@3.2.5) + '@storybook/types': 8.1.2 '@types/detect-port': 1.3.5 '@types/diff': 5.2.1 '@types/node': 18.11.19 @@ -8857,24 +8108,24 @@ packages: - utf-8-validate dev: true - /@storybook/csf-plugin@8.1.3: - resolution: {integrity: sha512-ONKhnz2j3zSa2RseBWypabTniRcs77ZWBdTrxnBqQap55tRMOAS/uCG+bgGgWlzwDskX35Kmd7XGkVOEngWSDQ==} + /@storybook/csf-plugin@8.1.2: + resolution: {integrity: sha512-MSWt4/bypBjfbPqna7FvIMLuvghmCfLkHMRFzZC5stUcEqPQavpTyxw8Kw0xFMTLaiBlDgi58EzDlGAXYKVZVw==} dependencies: - '@storybook/csf-tools': 8.1.3 + '@storybook/csf-tools': 8.1.2 unplugin: 1.10.1 transitivePeerDependencies: - supports-color dev: true - /@storybook/csf-tools@8.1.3: - resolution: {integrity: sha512-22h6Uv7w29v8HjoFsJvAkBci9POVH0aQhlfZ4NNYkiMbgD4X4HWeD2wqob6fTKpVWP3tDaNS9FfCWHxQXFE+ag==} + /@storybook/csf-tools@8.1.2: + resolution: {integrity: sha512-IGK6wx8qBuAmnPii2iSJ+ry3mGwd4iksHYypeKfrrkbmzKFG2Qh8QbytPrJz0FkTHI22kXPoQW2Ar9b0PyeqIA==} dependencies: '@babel/generator': 7.24.5 '@babel/parser': 7.24.5 '@babel/traverse': 7.24.5 '@babel/types': 7.24.5 '@storybook/csf': 0.1.7 - '@storybook/types': 8.1.3 + '@storybook/types': 8.1.2 fs-extra: 11.2.0 recast: 0.23.7 ts-dedent: 2.2.0 @@ -8892,13 +8143,13 @@ packages: resolution: {integrity: sha512-t4syFIeSyufieNovZbLruPt2DmRKpbwL4fERCZ1MifWDRIORCKLc4NCEHy+IqvIqd71/SJV2k4B51nF7vlJfmQ==} dev: true - /@storybook/docs-tools@8.1.3(prettier@3.2.5): - resolution: {integrity: sha512-EQIgzO5KdvEck0/20lR/znq1xCC7O1HvKd+yIkZ4bEGn2XnqWk8rmReKSOMI476rb3sn1CMIntT2BRsBUOfTOw==} + /@storybook/docs-tools@8.1.2(prettier@3.2.5): + resolution: {integrity: sha512-FWhs/ZN0Fc4Qke5zdA6l0UJhIP5kdrrRjEXe0IppP7UIvtRUgrIhiS4Kz/Re110cOkjO5/K0Hr6yQPLSCPnPKA==} dependencies: - '@storybook/core-common': 8.1.3(prettier@3.2.5) - '@storybook/core-events': 8.1.3 - '@storybook/preview-api': 8.1.3 - '@storybook/types': 8.1.3 + '@storybook/core-common': 8.1.2(prettier@3.2.5) + '@storybook/core-events': 8.1.2 + '@storybook/preview-api': 8.1.2 + '@storybook/types': 8.1.2 '@types/doctrine': 0.0.3 assert: 2.1.0 doctrine: 3.0.0 @@ -8924,30 +8175,30 @@ packages: react-dom: 18.3.1(react@18.3.1) dev: true - /@storybook/instrumenter@8.1.3: - resolution: {integrity: sha512-FYWXt6Pb7N64I934XxciRHUhy37l//uvXyQOwxIyI9syf2ESixpWHgPKd7XjyjULa3JOA2IAEJ3BEZVpqFirog==} + /@storybook/instrumenter@8.1.2: + resolution: {integrity: sha512-TWldk4QTtraVaCizQrsnf4y23IPz1OqUOvzY5bA8Aje9FzzX7YHo9yEGEvd4Nx6c2GaBnInn/gWmqucmWngJDg==} dependencies: - '@storybook/channels': 8.1.3 - '@storybook/client-logger': 8.1.3 - '@storybook/core-events': 8.1.3 + '@storybook/channels': 8.1.2 + '@storybook/client-logger': 8.1.2 + '@storybook/core-events': 8.1.2 '@storybook/global': 5.0.0 - '@storybook/preview-api': 8.1.3 + '@storybook/preview-api': 8.1.2 '@vitest/utils': 1.6.0 util: 0.12.5 dev: true - /@storybook/manager-api@8.1.3(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-2OpbHK0a3Tak+Wba0ZW/b17C62hdXMFa++rzGT7KzFcVmzg8Nx464wVx2hlrNxjlfBJkHoT723irAiAwmIl2Pg==} + /@storybook/manager-api@8.1.2(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-6Ge7EEx94YJm3HcfjkDfRPMnr5qVdF2RzhvyflJapBxMV0X44mkGPUWyzft3cf+vUCQlXXrmtBeZauB6JTJuiA==} dependencies: - '@storybook/channels': 8.1.3 - '@storybook/client-logger': 8.1.3 - '@storybook/core-events': 8.1.3 + '@storybook/channels': 8.1.2 + '@storybook/client-logger': 8.1.2 + '@storybook/core-events': 8.1.2 '@storybook/csf': 0.1.7 '@storybook/global': 5.0.0 '@storybook/icons': 1.2.9(react-dom@18.3.1)(react@18.3.1) - '@storybook/router': 8.1.3 - '@storybook/theming': 8.1.3(react-dom@18.3.1)(react@18.3.1) - '@storybook/types': 8.1.3 + '@storybook/router': 8.1.2 + '@storybook/theming': 8.1.2(react-dom@18.3.1)(react@18.3.1) + '@storybook/types': 8.1.2 dequal: 2.0.3 lodash: 4.17.21 memoizerific: 1.11.3 @@ -8959,23 +8210,23 @@ packages: - react-dom dev: true - /@storybook/manager@8.1.3: - resolution: {integrity: sha512-hmfQJJNLSqlM+jfcCXo5wnhUIugTsCxv6a+2UnRAt2AnF6J746QaV0npMThw1QG/7fi/ofaRY8hPGxgCN9uHRA==} + /@storybook/manager@8.1.2: + resolution: {integrity: sha512-RMAyvXkKId3C1ryYjcp8aSajTdtFc1+B+HvrehszrCWklj7H7sBJ5ZQFhw0WASDwyF/fzEnR7epb2kDjIKeCHA==} dev: true - /@storybook/node-logger@8.1.3: - resolution: {integrity: sha512-MpQ7Zl5n58zbFr1Yu3qgInGENoScEnfqsCxipMhj57b5SWJJ7NoOdSAWznjFFffo8NoaqxldHscuaQfzPBN9hA==} + /@storybook/node-logger@8.1.2: + resolution: {integrity: sha512-qdCzcDKsRiEqy7FeD0p0ZvIMqaXWn+GY0q0VkrGGhSwPJ3cxyIuyA+GA9FkXUMzxVJKgR7Gh9dOlTEaCe5ZjfA==} dev: true - /@storybook/preview-api@8.1.3: - resolution: {integrity: sha512-2eyNVr5wLzglE7KABdXu4nu+rPjJ8gVDP9TiovgU1MHhE5rX8qbKmJ47ymWSfJT1DMvH2dPISh4/wRK3WVNjmw==} + /@storybook/preview-api@8.1.2: + resolution: {integrity: sha512-94xFDtyz8l2TdyHQiew2RZ8YLkHAgD/qGgosrLUTX9w+Pe0stU+SyiyinMVof/cac8lPzQoK60fwTABHkv8Gpg==} dependencies: - '@storybook/channels': 8.1.3 - '@storybook/client-logger': 8.1.3 - '@storybook/core-events': 8.1.3 + '@storybook/channels': 8.1.2 + '@storybook/client-logger': 8.1.2 + '@storybook/core-events': 8.1.2 '@storybook/csf': 0.1.7 '@storybook/global': 5.0.0 - '@storybook/types': 8.1.3 + '@storybook/types': 8.1.2 '@types/qs': 6.9.14 dequal: 2.0.3 lodash: 4.17.21 @@ -8986,12 +8237,12 @@ packages: util-deprecate: 1.0.2 dev: true - /@storybook/preview@8.1.3: - resolution: {integrity: sha512-04Aet1jrsSMuJ/pm21GJBmSAaJdPhy/fhir50jKiQTwBMgM19G0HQ1IUMHgcy85fh/DWg1/h4pxVodvWvdIZfQ==} + /@storybook/preview@8.1.2: + resolution: {integrity: sha512-8VjDPF2sTU7iYigISV47ug90LI1u9PLCMY71hWqHAyrAMfPd6GIz0bO5scfZ1eOwN7jIgFZVFoSBYq8kmA4iiQ==} dev: true - /@storybook/react-dom-shim@8.1.3(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-CTyxH/ssU5KRbUwi3ws2NWEnMS6rjat0AYyhcskdPiPU59Qm24TrSpLqO+Rgzln8w7EDFsty3lLpcPNYs+BKlQ==} + /@storybook/react-dom-shim@8.1.2(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-Djcq9MBYfefwGdk3k3jmZrLxSRM0y0RQQ0M5c8zMkM6Hbqo0MKd/UXnAKoQ8TadNnNUNaVpkanRv7KWlF0FFUQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta @@ -9000,8 +8251,8 @@ packages: react-dom: 18.3.1(react@18.3.1) dev: true - /@storybook/react-vite@8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5)(vite@5.2.11): - resolution: {integrity: sha512-V4V2BAo/BV+g6BSm8Nqwqyvb4c9fdwe8c3K9TV3qPjiHgzYvSrfARl0FABNhXK9Y1PeXZp3DIRUxuxCkBN8shQ==} + /@storybook/react-vite@8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5)(vite@5.2.11): + resolution: {integrity: sha512-6OSy5hsdswdFZkSz1MiFiwqFGDCvDJC8iRGLJ6fMfQFN4rN1+awwHcTM3PrVkgiFVr4SSCD761XL4w3m6JdmxA==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta @@ -9010,10 +8261,10 @@ packages: dependencies: '@joshwooding/vite-plugin-react-docgen-typescript': 0.3.1(typescript@5.4.5)(vite@5.2.11) '@rollup/pluginutils': 5.1.0(rollup@4.17.2) - '@storybook/builder-vite': 8.1.3(prettier@3.2.5)(typescript@5.4.5)(vite@5.2.11) - '@storybook/node-logger': 8.1.3 - '@storybook/react': 8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5) - '@storybook/types': 8.1.3 + '@storybook/builder-vite': 8.1.2(prettier@3.2.5)(typescript@5.4.5)(vite@5.2.11) + '@storybook/node-logger': 8.1.2 + '@storybook/react': 8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5) + '@storybook/types': 8.1.2 find-up: 5.0.0 magic-string: 0.30.8 react: 18.3.1 @@ -9032,8 +8283,8 @@ packages: - vite-plugin-glimmerx dev: true - /@storybook/react@8.1.3(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5): - resolution: {integrity: sha512-95BytmZIpSg+QYO6glC6Oq+J0LlTTz9euL7trlYdzCpnuo6gBTaxtttSCQij4pRzRC/06tcDAK65l2JyYpiTXg==} + /@storybook/react@8.1.2(prettier@3.2.5)(react-dom@18.3.1)(react@18.3.1)(typescript@5.4.5): + resolution: {integrity: sha512-Gg/dm3GT0wsK+4TdNsbu6CLsPShfkTujlDEKRBxeGMsLsQOwIayZp67fYjSj3OE6EachMAQToNgtDweIMMXhEg==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta @@ -9043,12 +8294,12 @@ packages: typescript: optional: true dependencies: - '@storybook/client-logger': 8.1.3 - '@storybook/docs-tools': 8.1.3(prettier@3.2.5) + '@storybook/client-logger': 8.1.2 + '@storybook/docs-tools': 8.1.2(prettier@3.2.5) '@storybook/global': 5.0.0 - '@storybook/preview-api': 8.1.3 - '@storybook/react-dom-shim': 8.1.3(react-dom@18.3.1)(react@18.3.1) - '@storybook/types': 8.1.3 + '@storybook/preview-api': 8.1.2 + '@storybook/react-dom-shim': 8.1.2(react-dom@18.3.1)(react@18.3.1) + '@storybook/types': 8.1.2 '@types/escodegen': 0.0.6 '@types/estree': 0.0.51 '@types/node': 18.11.19 @@ -9073,20 +8324,20 @@ packages: - supports-color dev: true - /@storybook/router@8.1.3: - resolution: {integrity: sha512-CVEMpRD+PDVb+oZ3Sd0SV4P9vBJhYDgYiO9Km9X1jV6iyg/CXIALlo5Rd9pT+/U8IdqI2QX3bkZBUgCFDff67w==} + /@storybook/router@8.1.2: + resolution: {integrity: sha512-Lu05lDqoIinda1z43Danxhaq9t8k5jSKHJZXEIDsiLPUkGQCW3syzSE03c7qzOAbN/gmd/cu9MkmvGW+HBnWSA==} dependencies: - '@storybook/client-logger': 8.1.3 + '@storybook/client-logger': 8.1.2 memoizerific: 1.11.3 qs: 6.12.0 dev: true - /@storybook/telemetry@8.1.3(prettier@3.2.5): - resolution: {integrity: sha512-edFj0AJ3DEF8Z6Ym6ue7N8U9HZ2khAfXIcpk6RDgL/8FrpAZKC96XSEBMSnem3BLHxMi2bddQH1UTU6rKXrfBA==} + /@storybook/telemetry@8.1.2(prettier@3.2.5): + resolution: {integrity: sha512-FoJUDtRPNM5pTvnbQOPTGBIsmW2r/XC//DtHj84B8g7V+Ww+TToMrQWWgPTQwD1epL+ihtxbAV47EUlSB9mMDw==} dependencies: - '@storybook/client-logger': 8.1.3 - '@storybook/core-common': 8.1.3(prettier@3.2.5) - '@storybook/csf-tools': 8.1.3 + '@storybook/client-logger': 8.1.2 + '@storybook/core-common': 8.1.2(prettier@3.2.5) + '@storybook/csf-tools': 8.1.2 chalk: 4.1.2 detect-package-manager: 2.0.1 fetch-retry: 5.0.6 @@ -9098,13 +8349,13 @@ packages: - supports-color dev: true - /@storybook/test@8.1.3(vitest@1.6.0): - resolution: {integrity: sha512-9fjigeDBUk1X7el6haYk1Lniak0Se7Ol5f7QSw/64tIbXHp6ucj06FWEK+SfWx1J9GgCdDiFGW5UMmEZOiRCXw==} + /@storybook/test@8.1.2(vitest@1.6.0): + resolution: {integrity: sha512-wSsO7VSF9dM4NdiOu7EMQd326HpmkKzCarpIHm+FsxRemYfB6wCjbNRIrXe81PLSfyzFte8/ZvMPo0LeMefwHA==} dependencies: - '@storybook/client-logger': 8.1.3 - '@storybook/core-events': 8.1.3 - '@storybook/instrumenter': 8.1.3 - '@storybook/preview-api': 8.1.3 + '@storybook/client-logger': 8.1.2 + '@storybook/core-events': 8.1.2 + '@storybook/instrumenter': 8.1.2 + '@storybook/preview-api': 8.1.2 '@testing-library/dom': 9.3.4 '@testing-library/jest-dom': 6.4.5(vitest@1.6.0) '@testing-library/user-event': 14.5.2(@testing-library/dom@9.3.4) @@ -9119,8 +8370,8 @@ packages: - vitest dev: true - /@storybook/theming@8.1.3(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-BXtD5pna4eAAxNbzZUijP6W25IFVhvANG5P96xYM+OH+5OMSdLpDANnG2qWcZumwX5JFd74KqOIuV8yIO0AYXQ==} + /@storybook/theming@8.1.2(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-4ayCoSluaReGfj+wDa/KKwX5mEReVsjDhQ3nCusKsPQJK5zgT4Vt4CZekU7IK0cYmRPF4nMgVH3m3jmMD4x4ng==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta @@ -9131,17 +8382,17 @@ packages: optional: true dependencies: '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.3.1) - '@storybook/client-logger': 8.1.3 + '@storybook/client-logger': 8.1.2 '@storybook/global': 5.0.0 memoizerific: 1.11.3 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: true - /@storybook/types@8.1.3: - resolution: {integrity: sha512-2uUC1z7heMceRPHQ4KCcZwwKjtW2YiToUODsEw0YOq6NC/Q9elZta1FABSG0Bq7XM08EiAgjyc7P9CZPJ2QxUQ==} + /@storybook/types@8.1.2: + resolution: {integrity: sha512-8P3rB/6UxHlui0/Gdh2/qQvyLy6efJxVUt0g7iANQorqdYMxRNS/OtxNjI8rxFB3sIvl4owG7iYh3j2RCCEqaQ==} dependencies: - '@storybook/channels': 8.1.3 + '@storybook/channels': 8.1.2 '@types/express': 4.17.21 file-system-cache: 2.3.0 dev: true @@ -11025,7 +10276,7 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/compat-data': 7.24.1 + '@babel/compat-data': 7.24.4 '@babel/core': 7.24.5 '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.5) semver: 6.3.1 @@ -11039,7 +10290,7 @@ packages: dependencies: '@babel/core': 7.24.5 '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.5) - core-js-compat: 3.36.1 + core-js-compat: 3.37.1 transitivePeerDependencies: - supports-color @@ -11888,16 +11139,10 @@ packages: yargs: 16.2.0 dev: true - /core-js-compat@3.36.1: - resolution: {integrity: sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==} - dependencies: - browserslist: 4.23.0 - /core-js-compat@3.37.1: resolution: {integrity: sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==} dependencies: browserslist: 4.23.0 - dev: true /core-js-pure@3.36.1: resolution: {integrity: sha512-NXCvHvSVYSrewP0L5OhltzXeWFJLo2AL2TYnj6iLV3Bw8mM62wAQMNgUCRI6EBu6hVVpbCxmOPlxh1Ikw2PfUA==} @@ -15638,7 +14883,7 @@ packages: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} dev: true - /jscodeshift@0.15.2(@babel/preset-env@7.24.6): + /jscodeshift@0.15.2(@babel/preset-env@7.24.5): resolution: {integrity: sha512-FquR7Okgmc4Sd0aEDwqho3rEiKR3BdvuG9jfdHjLJ6JQoWSMpavug3AoIfnfWhxFlf+5pzQh8qjqz0DWFrNQzA==} hasBin: true peerDependencies: @@ -15652,12 +14897,12 @@ packages: '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.5) '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.5) + '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.5) - '@babel/preset-env': 7.24.6(@babel/core@7.24.5) - '@babel/preset-flow': 7.24.6(@babel/core@7.24.5) + '@babel/preset-env': 7.24.5(@babel/core@7.24.5) + '@babel/preset-flow': 7.24.1(@babel/core@7.24.5) '@babel/preset-typescript': 7.24.1(@babel/core@7.24.5) - '@babel/register': 7.24.6(@babel/core@7.24.5) + '@babel/register': 7.23.7(@babel/core@7.24.5) babel-core: 7.0.0-bridge.0(@babel/core@7.24.5) chalk: 4.1.2 flow-parser: 0.236.0 @@ -16126,7 +15371,7 @@ packages: resolution: {integrity: sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==} dependencies: '@babel/parser': 7.24.5 - '@babel/types': 7.24.0 + '@babel/types': 7.24.5 source-map-js: 1.2.0 dev: true From 7527bdc58abb7577fb028e7820c257b478496365 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Fri, 24 May 2024 12:39:14 -0700 Subject: [PATCH 16/23] fix --- tsconfig.eng.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tsconfig.eng.json b/tsconfig.eng.json index d22217ee72..1d3264dce6 100644 --- a/tsconfig.eng.json +++ b/tsconfig.eng.json @@ -1,4 +1,5 @@ { "extends": "./tsconfig.base.json", - "include": ["eng"] + "include": ["eng"], + "exclude": ["eng/vitest.config.ts"] } From d1d2c4644ef98a33a5b3689663043274e64461f4 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Thu, 25 Jul 2024 08:11:37 -0700 Subject: [PATCH 17/23] update --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index edb6dafb6a..2cc1e0cd7d 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "@octokit/plugin-paginate-graphql": "^5.2.2", "@octokit/plugin-rest-endpoint-methods": "^13.2.4", "@pnpm/find-workspace-packages": "^6.0.9", - "@types/micromatch": "^4.0.7", + "@types/micromatch": "^4.0.9", "@types/node": "~18.11.19", "@typescript-eslint/parser": "^7.17.0", "@typescript-eslint/utils": "^7.17.0", @@ -56,7 +56,7 @@ "eslint-plugin-react-hooks": "^4.6.2", "eslint-plugin-unicorn": "^54.0.0", "eslint-plugin-vitest": "^0.5.4", - "micromatch": "^4.0.5", + "micromatch": "^4.0.7", "picocolors": "~1.0.1", "prettier": "~3.3.3", "prettier-plugin-organize-imports": "~4.0.0", From dbf361f8a27acf259e70c809b095b481598885e4 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Thu, 25 Jul 2024 08:20:21 -0700 Subject: [PATCH 18/23] update lock --- pnpm-lock.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6a857cadfd..6b72f5f939 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -33,7 +33,7 @@ importers: specifier: ^6.0.9 version: 6.0.9(@pnpm/logger@5.0.0) '@types/micromatch': - specifier: ^4.0.7 + specifier: ^4.0.9 version: 4.0.9 '@types/node': specifier: ~18.11.19 @@ -72,7 +72,7 @@ importers: specifier: ^0.5.4 version: 0.5.4(eslint@8.57.0)(typescript@5.5.4)(vitest@2.0.4(@types/node@18.11.19)(@vitest/ui@2.0.4)(happy-dom@14.12.3)(jsdom@19.0.0)(terser@5.30.0)) micromatch: - specifier: ^4.0.5 + specifier: ^4.0.7 version: 4.0.7 picocolors: specifier: ~1.0.1 From a598eb5860355a486b583c40863472ca676da5d1 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Thu, 25 Jul 2024 09:33:32 -0700 Subject: [PATCH 19/23] Move config around --- eng/common/config/area.ts | 55 +++++++++++++++++++ eng/common/config/ci-triggers.ts | 22 -------- eng/common/config/labels.ts | 27 +-------- eng/common/scripts/utils/find-area-changed.ts | 2 +- 4 files changed, 57 insertions(+), 49 deletions(-) create mode 100644 eng/common/config/area.ts delete mode 100644 eng/common/config/ci-triggers.ts diff --git a/eng/common/config/area.ts b/eng/common/config/area.ts new file mode 100644 index 0000000000..ac3d5c6990 --- /dev/null +++ b/eng/common/config/area.ts @@ -0,0 +1,55 @@ +import type { AreaLabels } from "./labels.js"; + +/** + * Set the paths that each area applies to. + */ +export const AreaPaths: Record = { + "compiler:core": ["packages/compiler/"], + "compiler:emitter-framework": [], + ide: ["packages/typespec-vscode/", "packages/typespec-vs/"], + "lib:http": ["packages/http/"], + "lib:openapi": ["packages/openapi/"], + "lib:rest": ["packages/rest/"], + "lib:versioning": ["packages/versioning/"], + "meta:blog": ["blog/"], + "meta:website": ["website/"], + tspd: ["packages/tspd/"], + "emitter:client:csharp": ["packages/http-client-csharp/"], + "emitter:json-schema": ["packages/json-schema/"], + "emitter:protobuf": ["packages/protobuf/"], + "emitter:openapi3": ["packages/openapi3/"], + "openapi3:converter": ["packages/openapi3/src/cli/actions/convert/"], + "emitter:service:csharp": [], + "emitter:service:js": [], + eng: ["eng/", ".github/"], + "ui:playground": ["packages/playground/"], + "ui:type-graph-viewer": ["packages/html-program-viewer/"], +}; + +/** + * Path that should trigger every CI build. + */ +const all = ["eng/common/", "vitest.config.ts"]; + +/** + * Path that should trigger all standalone emitter builds + */ +const standaloneEmitters = ["eng/emitter/"]; + +export const CIRules = { + CSharp: [...all, ...standaloneEmitters, ...AreaPaths["emitter:client:csharp"], ".editorconfig"], + + Core: [ + "**/*", + "!.prettierignore", + "!.prettierrc.json", + "!cspell.yaml", + "!esling.config.json", + ...ignore(standaloneEmitters), + ...ignore(AreaPaths["emitter:client:csharp"]), + ], +}; + +function ignore(paths: string[]) { + return paths.map((x) => `!${x}`); +} diff --git a/eng/common/config/ci-triggers.ts b/eng/common/config/ci-triggers.ts deleted file mode 100644 index 783ccf0317..0000000000 --- a/eng/common/config/ci-triggers.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { AreaPaths } from "./labels.js"; - -/** - * Path that should trigger every CI build. - */ -const all = ["eng/common/", "vitest.config.ts"]; - -export const CIRules = { - CSharp: [...AreaPaths["emitter:client:csharp"], ".editorconfig", ...all], - Core: [ - "**/*", - "!.prettierignore", - "!.prettierrc.json", - "!cspell.yaml", - "!esling.config.json", - ...ignore(AreaPaths["emitter:client:csharp"]), - ], -}; - -function ignore(paths: string[]) { - return paths.map((x) => `!${x}`); -} diff --git a/eng/common/config/labels.ts b/eng/common/config/labels.ts index 1597631022..d26b6f64fc 100644 --- a/eng/common/config/labels.ts +++ b/eng/common/config/labels.ts @@ -1,6 +1,7 @@ // cspell:ignore bfff import { defineConfig, defineLabels } from "../scripts/labels/config.js"; import { repo } from "../scripts/utils/common.js"; +import { AreaPaths } from "./area.js"; /** * Labels that are used to categorize issue for which area they belong to. @@ -162,32 +163,6 @@ export const CommonLabels = { }, }; -/** - * Set the paths that each area applies to. - */ -export const AreaPaths: Record = { - "compiler:core": ["packages/compiler/"], - "compiler:emitter-framework": [], - ide: ["packages/typespec-vscode/", "packages/typespec-vs/"], - "lib:http": ["packages/http/"], - "lib:openapi": ["packages/openapi/"], - "lib:rest": ["packages/rest/"], - "lib:versioning": ["packages/versioning/"], - "meta:blog": ["blog/"], - "meta:website": ["website/"], - tspd: ["packages/tspd/"], - "emitter:client:csharp": ["packages/http-client-csharp/"], - "emitter:json-schema": ["packages/json-schema/"], - "emitter:protobuf": ["packages/protobuf/"], - "emitter:openapi3": ["packages/openapi3/"], - "openapi3:converter": ["packages/openapi3/src/cli/actions/convert/"], - "emitter:service:csharp": [], - "emitter:service:js": [], - eng: ["eng/", ".github/"], - "ui:playground": ["packages/playground/"], - "ui:type-graph-viewer": ["packages/html-program-viewer/"], -}; - export default defineConfig({ repo, labels: { diff --git a/eng/common/scripts/utils/find-area-changed.ts b/eng/common/scripts/utils/find-area-changed.ts index 1e868648c1..e56fa4479b 100644 --- a/eng/common/scripts/utils/find-area-changed.ts +++ b/eng/common/scripts/utils/find-area-changed.ts @@ -1,6 +1,6 @@ import micromatch from "micromatch"; import pc from "picocolors"; -import { CIRules } from "../../config/ci-triggers.js"; +import { CIRules } from "../../config/area.js"; export function findAreasChanged(files: string[]): (keyof typeof CIRules)[] { const result: (keyof typeof CIRules)[] = []; From a187dece566673213d4a6c123bd437cb44d6df83 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Thu, 25 Jul 2024 09:35:50 -0700 Subject: [PATCH 20/23] merge --- eng/common/config/area.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/eng/common/config/area.ts b/eng/common/config/area.ts index ac3d5c6990..139ff5fe8e 100644 --- a/eng/common/config/area.ts +++ b/eng/common/config/area.ts @@ -15,6 +15,7 @@ export const AreaPaths: Record = { "meta:website": ["website/"], tspd: ["packages/tspd/"], "emitter:client:csharp": ["packages/http-client-csharp/"], + "emitter:client:java": ["packages/http-client-java/"], "emitter:json-schema": ["packages/json-schema/"], "emitter:protobuf": ["packages/protobuf/"], "emitter:openapi3": ["packages/openapi3/"], From c3e503d80a2a026deacbccea10cc8e706b184e03 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Thu, 25 Jul 2024 09:37:30 -0700 Subject: [PATCH 21/23] Add doc --- eng/common/config/area.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/common/config/area.ts b/eng/common/config/area.ts index 139ff5fe8e..2042b91ffb 100644 --- a/eng/common/config/area.ts +++ b/eng/common/config/area.ts @@ -42,10 +42,10 @@ export const CIRules = { Core: [ "**/*", - "!.prettierignore", + "!.prettierignore", // Prettier is already run as its dedicated CI(via github action) "!.prettierrc.json", - "!cspell.yaml", - "!esling.config.json", + "!cspell.yaml", // CSpell is already run as its dedicated CI(via github action) + "!esling.config.json", // Eslint is already run as its dedicated CI(via github action) ...ignore(standaloneEmitters), ...ignore(AreaPaths["emitter:client:csharp"]), ], From 349b4c14ea09460600fab6685586b106e6f730ad Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Thu, 25 Jul 2024 09:41:07 -0700 Subject: [PATCH 22/23] Add test and fix typo in `eng/emitter` --- eng/common/config/area.ts | 8 ++++---- eng/common/scripts/utils/find-area-changed.test.ts | 7 +++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/eng/common/config/area.ts b/eng/common/config/area.ts index 2042b91ffb..5e35691382 100644 --- a/eng/common/config/area.ts +++ b/eng/common/config/area.ts @@ -33,12 +33,12 @@ export const AreaPaths: Record = { const all = ["eng/common/", "vitest.config.ts"]; /** - * Path that should trigger all standalone emitter builds + * Path that should trigger all isolated emitter builds */ -const standaloneEmitters = ["eng/emitter/"]; +const isolatedEmitters = ["eng/emitters/"]; export const CIRules = { - CSharp: [...all, ...standaloneEmitters, ...AreaPaths["emitter:client:csharp"], ".editorconfig"], + CSharp: [...all, ...isolatedEmitters, ...AreaPaths["emitter:client:csharp"], ".editorconfig"], Core: [ "**/*", @@ -46,7 +46,7 @@ export const CIRules = { "!.prettierrc.json", "!cspell.yaml", // CSpell is already run as its dedicated CI(via github action) "!esling.config.json", // Eslint is already run as its dedicated CI(via github action) - ...ignore(standaloneEmitters), + ...ignore(isolatedEmitters), ...ignore(AreaPaths["emitter:client:csharp"]), ], }; diff --git a/eng/common/scripts/utils/find-area-changed.test.ts b/eng/common/scripts/utils/find-area-changed.test.ts index 3ae3843e18..da8708d80d 100644 --- a/eng/common/scripts/utils/find-area-changed.test.ts +++ b/eng/common/scripts/utils/find-area-changed.test.ts @@ -19,6 +19,13 @@ describe("paths that should trigger Core CI", () => { }); }); +describe("paths that should trigger all isolated packages", () => { + it.each(["eng/emitters/pipelines/templates/jobs/detect-api-changes.yml"])("%s", (path) => { + const areas = findAreasChanged([path]); + expect(areas).toEqual(["CSharp"]); + }); +}); + it("Should return a combination of core and isolated packages", () => { const areas = findAreasChanged([ "packages/http-client-csharp/src/constants.ts", From cb949aac1dcdc44d95bd7d7255bcdafa541be358 Mon Sep 17 00:00:00 2001 From: Timothee Guerin Date: Fri, 26 Jul 2024 10:32:57 -0700 Subject: [PATCH 23/23] Add more test and remove unused ps1 scripts --- eng/common/scripts/Analyze-Changes.Tests.ps1 | 76 -------- eng/common/scripts/Analyze-Changes.ps1 | 181 ------------------ .../scripts/utils/find-area-changed.test.ts | 12 +- 3 files changed, 10 insertions(+), 259 deletions(-) delete mode 100644 eng/common/scripts/Analyze-Changes.Tests.ps1 delete mode 100644 eng/common/scripts/Analyze-Changes.ps1 diff --git a/eng/common/scripts/Analyze-Changes.Tests.ps1 b/eng/common/scripts/Analyze-Changes.Tests.ps1 deleted file mode 100644 index 3a04448702..0000000000 --- a/eng/common/scripts/Analyze-Changes.Tests.ps1 +++ /dev/null @@ -1,76 +0,0 @@ -BeforeAll { - . $PSScriptRoot/Analyze-Changes.ps1 *>&1 | Out-Null -} - -Describe 'Analyze-Changes' { - AfterEach { - foreach($package in $isolatedPackages.Values) { - $package.RunValue = $false; - } - } - - It 'Should return package variables if package specific changes are detected' { - $actual = Get-ActiveVariables @( - "packages/http-client-csharp/src/constants.ts" - ) - - $expected = @('RunCSharp') - - $actual | ForEach-Object { - $_ | Should -BeIn $expected - } - } - - It 'Should return RunCore if common files are changed' { - $actual = Get-ActiveVariables @( - "packages/compiler/package.json" - ) - - $expected = @('RunCore') - - $actual | ForEach-Object { - $_ | Should -BeIn $expected - } - } - - It 'Should return a combination of core and isolated packages' { - $actual = Get-ActiveVariables @( - "packages/http-client-csharp/src/constants.ts", - "packages/compiler/package.json" - ) - - $expected = @('RunCore', 'RunCSharp') - - $actual | ForEach-Object { - $_ | Should -BeIn $expected - } - } - - It 'Should return RunCSharp and RunCore if .editorconfig is changed' { - $actual = Get-ActiveVariables @( - ".editorconfig" - ) - - $expected = @('RunCore', 'RunCSharp') - - $actual | ForEach-Object { - $_ | Should -BeIn $expected - } - } - - It 'Should not return runCore for .prettierignore, .prettierrc.json, cspell.yaml, esling.config.json' { - $actual = Get-ActiveVariables @( - ".prettierignore", - ".prettierrc.json", - "cspell.yaml", - "esling.config.json" - "packages/http-client-csharp/emitter/src/constants.ts" - ) - - $expected = @('RunCore', 'RunCSharp') - - $actual | ForEach-Object { - $_ | Should -BeIn $expected - } -} -} diff --git a/eng/common/scripts/Analyze-Changes.ps1 b/eng/common/scripts/Analyze-Changes.ps1 deleted file mode 100644 index c4ec209195..0000000000 --- a/eng/common/scripts/Analyze-Changes.ps1 +++ /dev/null @@ -1,181 +0,0 @@ -#Requires -Version 7.0 - -param( - [string] $TargetBranch -) - -# Represents an isolated package which has its own stages in typespec - ci pipeline -class IsolatedPackage { - [string[]] $Paths - [string] $RunVariable - [bool] $RunValue - - IsolatedPackage([string[]]$paths, [string]$runVariable, [bool]$runValue) { - $this.Paths = $paths - $this.RunVariable = $runVariable - $this.RunValue = $runValue - } -} - -# Emitter packages in the repo -$isolatedPackages = @{ - "http-client-csharp" = [IsolatedPackage]::new(@("packages/http-client-csharp", ".editorconfig"), "RunCSharp", $false) - "http-client-java" = [IsolatedPackage]::new(@("packages/http-client-java"), "RunJava", $false) - "http-client-typescript" = [IsolatedPackage]::new(@("packages/http-client-typescript"), "RunTypeScript", $false) - "http-client-python" = [IsolatedPackage]::new(@("packages/http-client-python"), "RunPython", $false) -} - -# A tree representation of a set of files -# Each node represents a directory and contains a list of child nodes. -class TreeNode { - [string] $Name - [System.Collections.Generic.List[TreeNode]] $Children - - TreeNode([string]$name) { - $this.Name = $name - $this.Children = @() - } - - # Add a file to the tree - [void] Add([string]$filePath) { - $parts = $filePath -split '/' - - $currentNode = $this - foreach ($part in $parts) { - $childNode = $currentNode.Children | Where-Object { $_.Name -eq $part } - if (-not $childNode) { - $childNode = [TreeNode]::new($part) - $currentNode.Children.Add($childNode) - } - $currentNode = $childNode - } - } - - # Check if a file exists in the tree - [bool] PathExists([string]$filePath) { - $parts = $filePath -split '/' - - $currentNode = $this - foreach ($part in $parts) { - $childNode = $currentNode.Children | Where-Object { $_.Name -eq $part } - if (-not $childNode) { - return $false - } - $currentNode = $childNode - } - return $true - } - - # Check if anything outside of emitter packages exists - [bool] AnythingOutsideIsolatedPackagesExists($isolatedPackages) { - if ($this.Children.Count -eq 0) { - return $false - } - - # if anything in first level is not 'packages', return true - foreach ($child in $this.Children) { - # skip .prettierignore, .prettierrc.json, cspell.yaml, esling.config.json since these are all covered by github actions globally - if ($child.Name -in @('.prettierignore', '.prettierrc.json', 'cspell.yaml', 'esling.config.json')) { - continue - } - - if ($child.Name -ne 'packages') { - return $true - } - } - - $packagesNode = $this.Children | Where-Object { $_.Name -eq "packages" } - if (-not $packagesNode) { - return $false - } - - # if anything in second level is not an emitter package, return true - foreach ($child in $packagesNode.Children) { - if ($child.Name -notin $isolatedPackages.Keys) { - return $true - } - } - - return $false - } - - [string] ToString() { - return $this.Name - } -} - -function Get-ActiveVariables($changes) { - # initialize tree - $root = [TreeNode]::new('Root') - $variables = @() - - $changes | ForEach-Object { - $root.Add($_) - } - - # exit early if no changes detected - if ($root.Children.Count -eq 0) { - Write-Host "##[error] No changes detected" - exit 1 - } - - # set global flag to run all if common files are changed - $runAll = $root.PathExists('eng/common') -or $root.PathExists('vitest.config.ts') - - # set global isolated package flag to run if any eng/emiters files changed - $runIsolated = $root.PathExists('eng/emitters') - - # no need to check individual packages if runAll is true - if (-not $runAll) { - if (-not $runIsolated) { - # set each isolated package flag - foreach ($package in $isolatedPackages.Values) { - foreach ($path in $package.Paths) { - $package.RunValue = $package.RunValue -or $root.PathExists($path) - if ($package.RunValue) { - break - } - } - } - } - - # set runCore to true if none of the - $runCore = $root.AnythingOutsideIsolatedPackagesExists($isolatedPackages) - } - - # set log commands - if ($runAll -or $runCore) { - $variables += "RunCore" - } - - # foreach isolated package, set log commands if the RunValue is true - foreach ($package in $isolatedPackages.Values) { - if ($runAll -or $runIsolated -or $package.RunValue) { - $variables += $package.RunVariable - } - } - - return $variables -} - - -# add all changed files to the tree -Write-Host "Checking for changes in current branch compared to $TargetBranch" -$changes = git diff --name-only origin/$TargetBranch... - -Write-Host "##[group]Files changed in this pr" -$changes | ForEach-Object { - Write-Host " - $_" -} -Write-Host "##[endgroup]" - -if ($LASTEXITCODE -ne 0) { - Write-Host "##[error] 'git diff --name-only origin/$TargetBranch...' failed, exiting..." - exit 1 # Exit with a non-zero exit code to indicate failure -} - -$variables = Get-ActiveVariables $changes -foreach ($variable in $variables) { - Write-Host "Setting $variable to true" - Write-Host "##vso[task.setvariable variable=$variable;isOutput=true]true" -} diff --git a/eng/common/scripts/utils/find-area-changed.test.ts b/eng/common/scripts/utils/find-area-changed.test.ts index da8708d80d..9593a81813 100644 --- a/eng/common/scripts/utils/find-area-changed.test.ts +++ b/eng/common/scripts/utils/find-area-changed.test.ts @@ -2,8 +2,16 @@ import { describe, expect, it } from "vitest"; import { findAreasChanged } from "./find-area-changed.js"; describe("paths that should trigger CSharp CI", () => { - it.each(["packages/http-client-csharp/src/constants.ts"])("%s", (path) => { - const areas = findAreasChanged([path]); + it.each([ + ["packages/http-client-csharp/src/constants.ts"], + [ + "eng/emitters/pipelines/templates/jobs/test-job.yml", + "packages/http-client-csharp/eng/scripts/Test-CadlRanch.ps1", + "packages/http-client-csharp/generator/TestProjects/CadlRanch.Tests/Infrastructure/AssemblyCleanFixture.cs", + "packages/http-client-csharp/generator/TestProjects/CadlRanch.Tests/Infrastructure/CadlRanchServer.cs", + ], + ])("%s", (...paths) => { + const areas = findAreasChanged(paths); expect(areas).toEqual(["CSharp"]); }); });