diff --git a/.github/workflows/ci-validate-platforms.yml b/.github/workflows/ci-validate-platforms.yml index b1531b31fa1..4341cbc5fb5 100644 --- a/.github/workflows/ci-validate-platforms.yml +++ b/.github/workflows/ci-validate-platforms.yml @@ -64,9 +64,7 @@ jobs: run: yarn prepare - name: Install playwright dependencies and browsers - run: | - yarn playwright install-deps - yarn playwright install + run: npx playwright install --with-deps - name: Run tests in changed packages if: ${{ github.event_name == 'pull_request' }} diff --git a/.github/workflows/ci-validate-pr.yml b/.github/workflows/ci-validate-pr.yml index 42226b3b107..d4e5a4f3dfa 100644 --- a/.github/workflows/ci-validate-pr.yml +++ b/.github/workflows/ci-validate-pr.yml @@ -51,9 +51,7 @@ jobs: run: yarn prepare - name: Install playwright dependencies and browsers - run: | - yarn playwright install-deps - yarn playwright install + run: npx playwright install --with-deps - name: Testing unit tests run: yarn lerna run test --stream diff --git a/change/@microsoft-fast-colors-2e75979a-6bc6-4463-ae4d-0739638fa981.json b/change/@microsoft-fast-colors-2e75979a-6bc6-4463-ae4d-0739638fa981.json new file mode 100644 index 00000000000..2fc67efd47b --- /dev/null +++ b/change/@microsoft-fast-colors-2e75979a-6bc6-4463-ae4d-0739638fa981.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update to use web test runner", + "packageName": "@microsoft/fast-colors", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-element-f069a730-f321-4638-b391-9977ac476604.json b/change/@microsoft-fast-element-f069a730-f321-4638-b391-9977ac476604.json new file mode 100644 index 00000000000..3dc8686dc31 --- /dev/null +++ b/change/@microsoft-fast-element-f069a730-f321-4638-b391-9977ac476604.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update to use web test runner", + "packageName": "@microsoft/fast-element", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-foundation-d5fd6847-720e-4748-a95a-d6f4df9d37ba.json b/change/@microsoft-fast-foundation-d5fd6847-720e-4748-a95a-d6f4df9d37ba.json new file mode 100644 index 00000000000..b4e5a48fa90 --- /dev/null +++ b/change/@microsoft-fast-foundation-d5fd6847-720e-4748-a95a-d6f4df9d37ba.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update to use web test runner", + "packageName": "@microsoft/fast-foundation", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-react-wrapper-ff95291f-c473-43f6-852f-6ba3a98d590f.json b/change/@microsoft-fast-react-wrapper-ff95291f-c473-43f6-852f-6ba3a98d590f.json new file mode 100644 index 00000000000..145d86c926e --- /dev/null +++ b/change/@microsoft-fast-react-wrapper-ff95291f-c473-43f6-852f-6ba3a98d590f.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update to use web test runner", + "packageName": "@microsoft/fast-react-wrapper", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-router-0f32d115-9466-4195-90b0-b463a5714429.json b/change/@microsoft-fast-router-0f32d115-9466-4195-90b0-b463a5714429.json new file mode 100644 index 00000000000..4c55110c96c --- /dev/null +++ b/change/@microsoft-fast-router-0f32d115-9466-4195-90b0-b463a5714429.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update to use web test runner", + "packageName": "@microsoft/fast-router", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-ssr-f080a9c4-e146-4fe1-be11-ea9dab328662.json b/change/@microsoft-fast-ssr-f080a9c4-e146-4fe1-be11-ea9dab328662.json new file mode 100644 index 00000000000..8c25a746032 --- /dev/null +++ b/change/@microsoft-fast-ssr-f080a9c4-e146-4fe1-be11-ea9dab328662.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update playwright version", + "packageName": "@microsoft/fast-ssr", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/change/@microsoft-fast-web-utilities-7faf962a-1974-474e-a3c2-f4ec64177eab.json b/change/@microsoft-fast-web-utilities-7faf962a-1974-474e-a3c2-f4ec64177eab.json new file mode 100644 index 00000000000..88ce39f3238 --- /dev/null +++ b/change/@microsoft-fast-web-utilities-7faf962a-1974-474e-a3c2-f4ec64177eab.json @@ -0,0 +1,7 @@ +{ + "type": "none", + "comment": "update to use web test runner", + "packageName": "@microsoft/fast-web-utilities", + "email": "chhol@microsoft.com", + "dependentChangeType": "none" +} diff --git a/package.json b/package.json index 4fb8c0d9153..f49b1e03e9e 100644 --- a/package.json +++ b/package.json @@ -18,9 +18,6 @@ "examples/ssr" ], "nohoist": [ - "**/@types/chai", - "**/@types/jest", - "**/@types/karma", "**/@types/mocha", "**/@types/node", "**/chai", diff --git a/packages/utilities/fast-colors/package.json b/packages/utilities/fast-colors/package.json index 6a77fba5bb5..ce09d9c8a25 100644 --- a/packages/utilities/fast-colors/package.json +++ b/packages/utilities/fast-colors/package.json @@ -37,9 +37,8 @@ "watch": "yarn build -- -w --preserveWatchOutput" }, "devDependencies": { - "@types/chai": "^4.2.11", + "@esm-bundle/chai": "4.3.4-fix.0", "@types/mocha": "^8.2.0", - "chai": "^4.2.0", "mocha": "^8.2.1", "@microsoft/eslint-config-fast-dna": "^2.1.0", "eslint-config-prettier": "^8.8.0", diff --git a/packages/utilities/fast-colors/src/color-blending.spec.ts b/packages/utilities/fast-colors/src/color-blending.spec.ts index 968427241ee..0ac3933e6b9 100644 --- a/packages/utilities/fast-colors/src/color-blending.spec.ts +++ b/packages/utilities/fast-colors/src/color-blending.spec.ts @@ -1,4 +1,4 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { testData } from "./__test__/testData.js"; import { @@ -16,7 +16,7 @@ import { lightenViaLAB, saturateViaLCH, } from "./index.js"; -const expect = chai.expect; + const testPrecision: number = 4; describe("Color blending functions", () => { diff --git a/packages/utilities/fast-colors/src/color-converters.spec.ts b/packages/utilities/fast-colors/src/color-converters.spec.ts index abb7165a59f..d4b53211f6b 100644 --- a/packages/utilities/fast-colors/src/color-converters.spec.ts +++ b/packages/utilities/fast-colors/src/color-converters.spec.ts @@ -1,4 +1,4 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { testData } from "./__test__/testData.js"; import { @@ -28,7 +28,6 @@ import { xyzToLAB, xyzToRGB, } from "./index.js"; -const expect = chai.expect; const testPrecision: number = 4; diff --git a/packages/utilities/fast-colors/src/color-palette.spec.ts b/packages/utilities/fast-colors/src/color-palette.spec.ts index 29199002abd..e714af2c4f4 100644 --- a/packages/utilities/fast-colors/src/color-palette.spec.ts +++ b/packages/utilities/fast-colors/src/color-palette.spec.ts @@ -1,4 +1,4 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { testData } from "./__test__/testData.js"; import { @@ -9,7 +9,6 @@ import { } from "./color-palette.js"; import { ColorRGBA64 } from "./color-rgba-64.js"; import { parseColorHexRGB } from "./parse-color.js"; -const expect = chai.expect; const testPrecision: number = 4; diff --git a/packages/utilities/fast-colors/src/color-quantization.spec.ts b/packages/utilities/fast-colors/src/color-quantization.spec.ts index 8570c5501cf..249208fe2ab 100644 --- a/packages/utilities/fast-colors/src/color-quantization.spec.ts +++ b/packages/utilities/fast-colors/src/color-quantization.spec.ts @@ -1,10 +1,9 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { test200ImageData } from "./__test__/test200.js"; import { testGrey200ImageData } from "./__test__/testGrey200.js"; import { ArrayPixelBlob } from "./array-pixel-blob.js"; import { quantize, QuantizedColor } from "./color-quantization.js"; -const expect = chai.expect; describe("Generating a histogram from an image", (): void => { test("quantize with default settings", () => { diff --git a/packages/utilities/fast-colors/src/histogram.spec.ts b/packages/utilities/fast-colors/src/histogram.spec.ts index fb63b6e9706..282b9232609 100644 --- a/packages/utilities/fast-colors/src/histogram.spec.ts +++ b/packages/utilities/fast-colors/src/histogram.spec.ts @@ -1,9 +1,8 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { test200ImageData } from "./__test__/test200.js"; import { Histogram } from "./histogram.js"; import { ArrayPixelBlob } from "./array-pixel-blob.js"; -const expect = chai.expect; describe("Generating a histogram from an image", (): void => { test("getHistogramIndex", () => { diff --git a/packages/utilities/fast-colors/src/palette-extractor.spec.ts b/packages/utilities/fast-colors/src/palette-extractor.spec.ts index 22362ffa185..517f098747f 100644 --- a/packages/utilities/fast-colors/src/palette-extractor.spec.ts +++ b/packages/utilities/fast-colors/src/palette-extractor.spec.ts @@ -1,11 +1,10 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { test200ImageData } from "./__test__/test200.js"; import { testGrey200ImageData } from "./__test__/testGrey200.js"; import { ArrayPixelBlob } from "./array-pixel-blob.js"; import { quantize, QuantizedColor } from "./color-quantization.js"; import { extractPalette, PaletteEntry } from "./palette-extractor.js"; -const expect = chai.expect; describe("Extracting a palette from a set of colors", (): void => { test("Extract palette with default settings", () => { diff --git a/packages/utilities/fast-colors/src/parse-color.spec.ts b/packages/utilities/fast-colors/src/parse-color.spec.ts index b809f679ec2..92a01539d54 100644 --- a/packages/utilities/fast-colors/src/parse-color.spec.ts +++ b/packages/utilities/fast-colors/src/parse-color.spec.ts @@ -1,4 +1,4 @@ -import chai from "chai"; +import { expect } from "@esm-bundle/chai"; import { test } from "mocha"; import { testData } from "./__test__/testData.js"; import { @@ -16,7 +16,6 @@ import { parseColorWebRGB, parseColorWebRGBA, } from "./index.js"; -const expect = chai.expect; const testPrecision: number = 4; const hexDigits: string[] = [ diff --git a/packages/utilities/fast-react-wrapper/karma.conf.cjs b/packages/utilities/fast-react-wrapper/karma.conf.cjs deleted file mode 100644 index 4e96dbab80e..00000000000 --- a/packages/utilities/fast-react-wrapper/karma.conf.cjs +++ /dev/null @@ -1,141 +0,0 @@ -const path = require("path"); -const basePath = path.resolve(__dirname); - -const commonChromeFlags = [ - "--no-default-browser-check", - "--no-first-run", - "--no-sandbox", - "--no-managed-user-acknowledgment-check", - "--disable-background-timer-throttling", - "--disable-backing-store-limit", - "--disable-boot-animation", - "--disable-cloud-import", - "--disable-contextual-search", - "--disable-default-apps", - "--disable-extensions", - "--disable-infobars", - "--disable-translate", -]; - -module.exports = function (config) { - let browsers; - if (process.env.BROWSERS) { - browsers = [process.env.BROWSERS]; - } else if (config.browsers) { - browsers = config.browsers; - } else { - browsers = ["Chrome"]; - } - - const setup = "setup-browser" + (config.package ? "-" + config.package : ""); - const options = { - basePath, - browserDisconnectTimeout: 10000, - processKillTimeout: 10000, - frameworks: ["source-map-support", "mocha"], - plugins: [ - require("karma-mocha"), - require("karma-mocha-reporter"), - require("karma-webpack"), - require("karma-source-map-support"), - require("karma-sourcemap-loader"), - require("karma-coverage-istanbul-reporter"), - require("karma-chrome-launcher"), - require("karma-firefox-launcher"), - ], - files: [`dist/esm/__test__/${setup}.cjs`], - preprocessors: { - [`dist/esm/__test__/${setup}.cjs`]: ["webpack", "sourcemap"], - }, - webpackMiddleware: { - // webpack-dev-middleware configuration - // i. e. - stats: "errors-only", - }, - webpack: { - mode: "development", - resolve: { - extensions: [".js"], - modules: ["dist", "node_modules"], - mainFields: ["module", "main"], - }, - devtool: "inline-source-map", - performance: { - hints: false, - }, - optimization: { - usedExports: true, - flagIncludedChunks: false, - sideEffects: true, - concatenateModules: true, - splitChunks: { - name: false, - }, - runtimeChunk: false, - noEmitOnErrors: false, - checkWasmTypes: false, - minimize: false, - }, - module: { - rules: [ - { - test: /\.js\.map$/, - use: ["ignore-loader"], - }, - { - test: /\.js$/, - use: ["source-map-loader"], - enforce: "pre", - }, - ], - }, - }, - mime: { - "text/x-typescript": ["ts"], - }, - reporters: [config.reporter || (process.env.CI ? "min" : "progress")], - browsers: browsers, - customLaunchers: { - ChromeDebugging: { - base: "Chrome", - flags: [...commonChromeFlags, "--remote-debugging-port=9333"], - debug: true, - }, - ChromeHeadlessOpt: { - base: "ChromeHeadless", - flags: [...commonChromeFlags], - }, - }, - client: { - captureConsole: true, - mocha: { - bail: config["bail"], - ui: "bdd", - timeout: 5000, - }, - }, - logLevel: config.LOG_ERROR, // to disable the WARN 404 for image requests, - }; - - if (config.coverage) { - options.webpack.module.rules.push({ - enforce: "post", - exclude: /(__tests__|testing|node_modules|\.spec\.[tj]s$)/, - loader: "istanbul-instrumenter-loader", - options: { esModules: true }, - test: /\.[tj]s$/, - }); - options.reporters = ["coverage-istanbul", ...options.reporters]; - options.coverageIstanbulReporter = { - reports: ["html", "text-summary", "json", "lcovonly", "cobertura"], - dir: "coverage", - }; - options.junitReporter = { - outputDir: "coverage", - outputFile: "test-results.xml", - useBrowserName: false, - }; - } - - config.set(options); -}; diff --git a/packages/utilities/fast-react-wrapper/package.json b/packages/utilities/fast-react-wrapper/package.json index 6a1c95dde30..0a2d012a391 100644 --- a/packages/utilities/fast-react-wrapper/package.json +++ b/packages/utilities/fast-react-wrapper/package.json @@ -25,50 +25,29 @@ "clean:dist": "node ../../../build/clean.js dist", "doc": "api-extractor run --local", "doc:ci": "api-extractor run", - "build": "tsc -p ./tsconfig.json && yarn doc", + "build": "yarn build:tsc && yarn doc", + "build:tsc": "tsc -p ./tsconfig.json", "dev": "tsc -p ./tsconfig.json -w", - "tdd": "yarn dev & yarn test-chrome:watch", "prepare": "yarn clean:dist && yarn build", "prettier": "prettier --config ../../../.prettierrc --write \"**/*.ts\"", "prettier:diff": "prettier --config ../../../.prettierrc \"**/*.ts\" --list-different", "eslint": "eslint . --ext .ts", "eslint:fix": "eslint . --ext .ts --fix", - "test": "yarn eslint && yarn test-chrome:verbose && yarn doc:ci", - "test-node": "mocha --reporter min --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-node:verbose": "mocha --reporter spec --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-chrome": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage", - "test-chrome:verbose": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage --reporter=mocha", - "test-chrome:watch": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --coverage --watch-extensions js", - "test-chrome:debugger": "karma start karma.conf.cjs --browsers=ChromeDebugging", - "test-chrome:verbose:watch": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --coverage --watch-extensions js --reporter=mocha", - "test-chrome:verbose:debugger": "karma start karma.conf.cjs --browsers=ChromeDebugging --reporter=mocha", - "test-firefox": "karma start karma.conf.cjs --browsers=FirefoxHeadless --single-run --coverage", - "test-firefox:verbose": "karma start karma.conf.cjs --browsers=FirefoxHeadless --single-run --coverage --reporter=mocha" + "test": "yarn eslint && yarn build:tsc && web-test-runner && yarn doc:ci" }, "devDependencies": { + "@esm-bundle/chai": "4.3.4-fix.0", "@microsoft/api-extractor": "7.24.2", - "@types/chai": "^4.2.11", - "@types/karma": "^6.3.3", + "@rollup/plugin-commonjs": "~25.0.4", + "@rollup/plugin-node-resolve": "~15.2.1", + "@rollup/plugin-replace": "~5.0.2", "@types/mocha": "^7.0.2", "@types/react-dom": "16.9.0", - "@types/webpack-env": "^1.15.2", - "chai": "^4.2.0", + "@web/dev-server-rollup": "~0.5.2", + "@web/test-runner": "0.17.0", + "@web/test-runner-playwright": "0.10.1", "esm": "^3.2.25", "ignore-loader": "^0.1.2", - "istanbul": "^0.4.5", - "istanbul-instrumenter-loader": "^3.0.1", - "jsdom": "^16.2.2", - "jsdom-global": "3.0.2", - "karma": "^6.4.1", - "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.0.2", - "karma-coverage-istanbul-reporter": "^3.0.0", - "karma-firefox-launcher": "^2.1.0", - "karma-mocha": "^2.0.1", - "karma-mocha-reporter": "^2.2.5", - "karma-source-map-support": "^1.4.0", - "karma-sourcemap-loader": "^0.3.7", - "karma-webpack": "^5.0.0", "mocha": "^7.1.2", "prettier": "2.8.8", "react": "^16.9.0", @@ -78,9 +57,7 @@ "ts-loader": "^9.3.0", "ts-node": "^8.9.1", "tsconfig-paths": "^3.9.0", - "typescript": "^4.7.0", - "webpack": "^5.72.0", - "webpack-cli": "^4.9.2" + "typescript": "^4.7.0" }, "dependencies": { "@microsoft/fast-element": "^2.0.0-beta.26" diff --git a/packages/utilities/fast-react-wrapper/src/index.spec.tsx b/packages/utilities/fast-react-wrapper/src/index.spec.tsx index 6621299e3bb..537106ea850 100644 --- a/packages/utilities/fast-react-wrapper/src/index.spec.tsx +++ b/packages/utilities/fast-react-wrapper/src/index.spec.tsx @@ -2,7 +2,7 @@ import { attr, customElement, DOM, FASTElement, html, nullableNumberConverter, o import React from "react"; import ReactDOM from "react-dom"; import { uniqueElementName } from '@microsoft/fast-element/testing.js'; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai";; import { reactWrapper } from './index.js'; /* eslint-disable @typescript-eslint/no-non-null-assertion */ diff --git a/packages/utilities/fast-react-wrapper/web-test-runner.config.mjs b/packages/utilities/fast-react-wrapper/web-test-runner.config.mjs new file mode 100644 index 00000000000..f487c403c1d --- /dev/null +++ b/packages/utilities/fast-react-wrapper/web-test-runner.config.mjs @@ -0,0 +1,42 @@ +import { playwrightLauncher } from "@web/test-runner-playwright"; +import { rollupBundlePlugin } from '@web/dev-server-rollup'; +import commonjs from '@rollup/plugin-commonjs'; +import nodeResolve from '@rollup/plugin-node-resolve'; +import replace from '@rollup/plugin-replace'; + +export default { + concurrency: 10, + coverage: true, + nodeResolve: true, + // in a monorepo you need to set set the root dir to resolve modules + rootDir: "../../../", + playwright: true, + browsers: [ + playwrightLauncher({ product: "chromium" }), + ], + files: [ + "dist/esm/**/*.spec.js", + "!**/node_modules/**" + ], + plugins: [ + rollupBundlePlugin({ + rollupConfig: { + input: [ + 'dist/esm/index.spec.js', + ], + plugins: [ + commonjs(), + nodeResolve(), + replace({ + preventAssignment: false, + 'process.env.NODE_ENV': JSON.stringify('development'), + }), + ], + onwarn(warning, console) { + if (warning.code === 'THIS_IS_UNDEFINED') return; + console.warn(warning); + }, + }, + }) + ], +}; diff --git a/packages/utilities/fast-web-utilities/karma.conf.ts b/packages/utilities/fast-web-utilities/karma.conf.ts deleted file mode 100644 index 6ab584050c4..00000000000 --- a/packages/utilities/fast-web-utilities/karma.conf.ts +++ /dev/null @@ -1,159 +0,0 @@ -const path = require("path"); - -const basePath = path.resolve(__dirname); - -const commonChromeFlags = [ - "--no-default-browser-check", - "--no-first-run", - "--no-sandbox", - "--no-managed-user-acknowledgment-check", - "--disable-background-timer-throttling", - "--disable-backing-store-limit", - "--disable-boot-animation", - "--disable-cloud-import", - "--disable-contextual-search", - "--disable-default-apps", - "--disable-extensions", - "--disable-infobars", - "--disable-translate", -]; - -module.exports = function (config: any) { - let browsers; - if (process.env.BROWSERS) { - browsers = [process.env.BROWSERS]; - } else if (config.browsers) { - browsers = config.browsers; - } else { - browsers = ["Chrome"]; - } - - const setup = "setup-browser" + (config.package ? "-" + config.package : ""); - const options = { - basePath, - browserDisconnectTimeout: 10000, - processKillTimeout: 10000, - frameworks: ["source-map-support", "mocha"], - plugins: [ - require("karma-mocha"), - require("karma-mocha-reporter"), - require("karma-webpack"), - require("karma-source-map-support"), - require("karma-sourcemap-loader"), - require("karma-coverage-istanbul-reporter"), - require("karma-chrome-launcher"), - require("karma-firefox-launcher"), - ], - files: [`dist/__test__/${setup}.cjs`], - preprocessors: { - [`dist/__test__/${setup}.cjs`]: ["webpack", "sourcemap"], - }, - webpackMiddleware: { - // webpack-dev-middleware configuration - // i. e. - stats: "errors-only", - }, - webpack: { - mode: "none", - resolve: { - extensions: [".js"], - modules: ["node_modules"], - mainFields: ["module", "main"], - }, - devtool: "inline-source-map", - performance: { - hints: false, - }, - optimization: { - nodeEnv: false, - usedExports: true, - flagIncludedChunks: false, - sideEffects: true, - concatenateModules: true, - splitChunks: { - name: false, - }, - runtimeChunk: false, - noEmitOnErrors: false, - checkWasmTypes: false, - minimize: false, - }, - module: { - rules: [ - { - test: /\.js\.map$/, - use: ["ignore-loader"], - }, - { - test: /\.js$/, - use: [ - { - loader: "source-map-loader", - options: { - enforce: "pre", - }, - }, - ], - }, - ], - }, - }, - mime: { - "text/x-typescript": ["ts"], - }, - reporters: [config.reporter || (process.env.CI ? "min" : "progress")], - browsers: browsers, - customLaunchers: { - ChromeDebugging: { - base: "Chrome", - flags: [...commonChromeFlags, "--remote-debugging-port=9333"], - debug: true, - }, - ChromeHeadlessOpt: { - base: "ChromeHeadless", - flags: [...commonChromeFlags], - }, - }, - client: { - captureConsole: true, - mocha: { - bail: config["bail"], - ui: "bdd", - timeout: 5000, - }, - }, - logLevel: config.LOG_ERROR, // to disable the WARN 404 for image requests - }; - - if (config.coverage) { - options.webpack.module.rules.push({ - enforce: "post", - exclude: /(__tests__|testing|node_modules|\.spec\.[tj]s$)/, - loader: "istanbul-instrumenter-loader", - options: { esModules: true }, - test: /\.[tj]s$/, - } as any); - options.reporters = ["coverage-istanbul", ...options.reporters]; - (options as any).coverageIstanbulReporter = { - reports: ["html", "text-summary", "json", "lcovonly", "cobertura"], - dir: "coverage", - verbose: true, - thresholds: { - emitWarning: false, - global: { - statements: 90, - lines: 90, - branches: 90, - functions: 90, - }, - }, - }; - (options as any).junitReporter = { - outputDir: "coverage", - outputFile: "test-results.xml", - useBrowserName: false, - }; - } - - config.set(options); -}; diff --git a/packages/utilities/fast-web-utilities/package.json b/packages/utilities/fast-web-utilities/package.json index f2cee32bfe3..98c9e80b5f4 100644 --- a/packages/utilities/fast-web-utilities/package.json +++ b/packages/utilities/fast-web-utilities/package.json @@ -26,45 +26,20 @@ "prepare": "yarn clean:dist && yarn build", "prettier": "prettier --config ../../../.prettierrc --write \"**/*.ts\"", "prettier:diff": "prettier --config ../../../.prettierrc \"**/*.ts\" --list-different", - "test": "yarn eslint && yarn build && yarn test-chrome:verbose", - "test-node": "mocha --reporter min --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-node:verbose": "mocha --reporter spec --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-chrome": "karma start karma.conf.ts --browsers=ChromeHeadlessOpt --single-run --coverage", - "test-chrome:verbose": "karma start karma.conf.ts --browsers=ChromeHeadlessOpt --single-run --coverage --reporter=mocha", - "test-chrome:watch": "karma start karma.conf.ts --browsers=ChromeHeadlessOpt --coverage --watch-extensions js", - "test-chrome:debugger": "karma start karma.conf.ts --browsers=ChromeDebugging", - "test-chrome:verbose:watch": "karma start karma.conf.ts --browsers=ChromeHeadlessOpt --coverage --watch-extensions js --reporter=mocha", - "test-chrome:verbose:debugger": "karma start karma.conf.ts --browsers=ChromeDebugging --reporter=mocha", - "test-firefox": "karma start karma.conf.ts --browsers=FirefoxHeadless --single-run --coverage", - "test-firefox:verbose": "karma start karma.conf.ts --browsers=FirefoxHeadless --single-run --coverage --reporter=mocha", - "test-firefox:watch": "karma start karma.conf.ts --browsers=FirefoxHeadless --coverage --watch-extensions js", + "test": "yarn eslint && yarn build && web-test-runner", "eslint": "eslint . --ext .ts,.tsx", "eslint:fix": "eslint . --ext .ts,.tsx --fix", "watch": "yarn build -- -w --preserveWatchOutput" }, "devDependencies": { - "@types/chai": "^4.2.11", - "@types/karma": "^6.3.3", - "@types/mocha": "^7.0.2", + "@esm-bundle/chai": "4.3.4-fix.0", "@microsoft/eslint-config-fast-dna": "^2.1.0", - "chai": "^4.2.0", - "chai-spies": "^1.0.0", + "@types/mocha": "^7.0.2", + "@types/sinon": "10.0.17", + "@web/test-runner": "0.17.0", + "@web/test-runner-playwright": "0.10.1", "eslint-config-prettier": "^8.8.0", "eslint-loader": "^4.0.0", - "istanbul": "^0.4.5", - "istanbul-instrumenter-loader": "^3.0.1", - "jsdom": "^16.2.2", - "jsdom-global": "3.0.2", - "karma": "^6.4.1", - "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.0.2", - "karma-coverage-istanbul-reporter": "^3.0.0", - "karma-firefox-launcher": "^2.1.0", - "karma-mocha": "^2.0.1", - "karma-mocha-reporter": "^2.2.5", - "karma-source-map-support": "^1.4.0", - "karma-sourcemap-loader": "^0.3.7", - "karma-webpack": "^5.0.0", "mocha": "^7.1.2", "prettier": "2.8.8", "ts-loader": "^4.0.1", diff --git a/packages/utilities/fast-web-utilities/src/aria.spec.ts b/packages/utilities/fast-web-utilities/src/aria.spec.ts index b56cdd26eb1..13152a8ad83 100644 --- a/packages/utilities/fast-web-utilities/src/aria.spec.ts +++ b/packages/utilities/fast-web-utilities/src/aria.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Orientation } from "./aria.js"; describe("aria-orientation", () => { diff --git a/packages/utilities/fast-web-utilities/src/array.spec.ts b/packages/utilities/fast-web-utilities/src/array.spec.ts index fec29dee7b8..4ed550045e0 100644 --- a/packages/utilities/fast-web-utilities/src/array.spec.ts +++ b/packages/utilities/fast-web-utilities/src/array.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { findLastIndex } from "./array.js"; describe("findLastIndex", (): void => { diff --git a/packages/utilities/fast-web-utilities/src/class-names.spec.ts b/packages/utilities/fast-web-utilities/src/class-names.spec.ts index 3a5e5f20469..64a07290195 100644 --- a/packages/utilities/fast-web-utilities/src/class-names.spec.ts +++ b/packages/utilities/fast-web-utilities/src/class-names.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { classNames } from "./class-names.js"; describe("classNames", (): void => { diff --git a/packages/utilities/fast-web-utilities/src/dom.spec.ts b/packages/utilities/fast-web-utilities/src/dom.spec.ts index 251ed29a23f..ba3757c686b 100644 --- a/packages/utilities/fast-web-utilities/src/dom.spec.ts +++ b/packages/utilities/fast-web-utilities/src/dom.spec.ts @@ -1,5 +1,5 @@ -import chai, { expect } from "chai"; -import spies from "chai-spies"; +import { expect } from "@esm-bundle/chai"; +import sinon from "sinon"; import { canUseCssGrid, canUseFocusVisible, @@ -9,8 +9,6 @@ import { resetDocumentCache, } from "./dom.js"; -chai.use(spies); - describe("isHTMLElement", () => { document.body.innerHTML = `
@@ -64,7 +62,7 @@ describe("canUseFocusVisible", () => { // Run the function and intercept its appendChild call const realAppendChild = document.head.appendChild; - const mockAppendChild = chai.spy(realAppendChild); + const mockAppendChild = sinon.spy(realAppendChild); Object.defineProperty(document.head, "appendChild", { value: mockAppendChild, configurable: true, @@ -81,7 +79,7 @@ describe("canUseFocusVisible", () => { mutationObserver.observe(document.head, { childList: true, subtree: true }); canUseFocusVisible(); - expect(mockAppendChild).to.have.been.called.exactly(1); + mockAppendChild.calledOnce; Object.defineProperty(document.head, "appendChild", { value: realAppendChild, configurable: true, @@ -89,17 +87,17 @@ describe("canUseFocusVisible", () => { }); it("should cache the result for subsequent calls", () => { const realAppendChild = document.head.appendChild; - const mockAppendChild = chai.spy(realAppendChild); + const mockAppendChild = sinon.spy(realAppendChild); Object.defineProperty(document.head, "appendChild", { value: mockAppendChild, configurable: true, }); canUseFocusVisible(); - expect(mockAppendChild).to.have.been.called.exactly(1); + mockAppendChild.calledOnce; canUseFocusVisible(); - expect(mockAppendChild).to.have.been.called.exactly(1); + mockAppendChild.calledOnce; Object.defineProperty(document.head, "appendChild", { value: realAppendChild, configurable: true, diff --git a/packages/utilities/fast-web-utilities/src/html.spec.ts b/packages/utilities/fast-web-utilities/src/html.spec.ts index 08325ec9208..a90f8097a62 100644 --- a/packages/utilities/fast-web-utilities/src/html.spec.ts +++ b/packages/utilities/fast-web-utilities/src/html.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { convertStylePropertyPixelsToNumber, getClientRectWithMargin } from "./html.js"; describe("getClientRectWithMargin", () => { diff --git a/packages/utilities/fast-web-utilities/src/numbers.spec.ts b/packages/utilities/fast-web-utilities/src/numbers.spec.ts index ff58089d621..6890379f47b 100644 --- a/packages/utilities/fast-web-utilities/src/numbers.spec.ts +++ b/packages/utilities/fast-web-utilities/src/numbers.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { inRange, limit, wrapInBounds } from "./numbers.js"; describe("wrapInBounds", () => { diff --git a/packages/utilities/fast-web-utilities/src/query.spec.ts b/packages/utilities/fast-web-utilities/src/query.spec.ts index 0a2c38dcd23..e781e59584d 100644 --- a/packages/utilities/fast-web-utilities/src/query.spec.ts +++ b/packages/utilities/fast-web-utilities/src/query.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { parseQueryStringParams } from "./query.js"; describe("parseQueryStringParams", (): void => { diff --git a/packages/utilities/fast-web-utilities/src/rtl-scroll-converter.spec.ts b/packages/utilities/fast-web-utilities/src/rtl-scroll-converter.spec.ts index 32aa42934e4..cec4d5cf3b7 100644 --- a/packages/utilities/fast-web-utilities/src/rtl-scroll-converter.spec.ts +++ b/packages/utilities/fast-web-utilities/src/rtl-scroll-converter.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { RtlScrollConverter } from "./rtl-scroll-converter.js"; import { Direction } from "./localization.js"; diff --git a/packages/utilities/fast-web-utilities/src/strings.spec.ts b/packages/utilities/fast-web-utilities/src/strings.spec.ts index f5e80405059..37f42c761f4 100644 --- a/packages/utilities/fast-web-utilities/src/strings.spec.ts +++ b/packages/utilities/fast-web-utilities/src/strings.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { format, isNullOrWhiteSpace, diff --git a/packages/utilities/fast-web-utilities/tsconfig.json b/packages/utilities/fast-web-utilities/tsconfig.json index e9b46b1f30e..b5acb46fe7f 100644 --- a/packages/utilities/fast-web-utilities/tsconfig.json +++ b/packages/utilities/fast-web-utilities/tsconfig.json @@ -6,6 +6,6 @@ "strictNullChecks": true, "strictPropertyInitialization": true, "allowJs": true, - "types": ["mocha", "webpack-env", "node"] + "types": ["mocha", "sinon", "webpack-env", "node"] } } diff --git a/packages/utilities/fast-web-utilities/web-test-runner.config.mjs b/packages/utilities/fast-web-utilities/web-test-runner.config.mjs new file mode 100644 index 00000000000..e7caf174c24 --- /dev/null +++ b/packages/utilities/fast-web-utilities/web-test-runner.config.mjs @@ -0,0 +1,17 @@ +import { playwrightLauncher } from "@web/test-runner-playwright"; + +export default { + concurrency: 10, + coverage: true, + nodeResolve: true, + // in a monorepo you need to set set the root dir to resolve modules + rootDir: "../../../", + playwright: true, + browsers: [ + playwrightLauncher({ product: "chromium" }), + ], + files: [ + "dist/**/*.spec.js", + "!**/node_modules/**" + ], +}; diff --git a/packages/web-components/fast-element/.mocharc.json b/packages/web-components/fast-element/.mocharc.json deleted file mode 100644 index 7240038154e..00000000000 --- a/packages/web-components/fast-element/.mocharc.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "colors": true, - "recursive": true, - "timeout": 5000, - "require": [ - "esm", - "jsdom-global/register" - ] -} \ No newline at end of file diff --git a/packages/web-components/fast-element/karma.conf.cjs b/packages/web-components/fast-element/karma.conf.cjs deleted file mode 100644 index 4e96dbab80e..00000000000 --- a/packages/web-components/fast-element/karma.conf.cjs +++ /dev/null @@ -1,141 +0,0 @@ -const path = require("path"); -const basePath = path.resolve(__dirname); - -const commonChromeFlags = [ - "--no-default-browser-check", - "--no-first-run", - "--no-sandbox", - "--no-managed-user-acknowledgment-check", - "--disable-background-timer-throttling", - "--disable-backing-store-limit", - "--disable-boot-animation", - "--disable-cloud-import", - "--disable-contextual-search", - "--disable-default-apps", - "--disable-extensions", - "--disable-infobars", - "--disable-translate", -]; - -module.exports = function (config) { - let browsers; - if (process.env.BROWSERS) { - browsers = [process.env.BROWSERS]; - } else if (config.browsers) { - browsers = config.browsers; - } else { - browsers = ["Chrome"]; - } - - const setup = "setup-browser" + (config.package ? "-" + config.package : ""); - const options = { - basePath, - browserDisconnectTimeout: 10000, - processKillTimeout: 10000, - frameworks: ["source-map-support", "mocha"], - plugins: [ - require("karma-mocha"), - require("karma-mocha-reporter"), - require("karma-webpack"), - require("karma-source-map-support"), - require("karma-sourcemap-loader"), - require("karma-coverage-istanbul-reporter"), - require("karma-chrome-launcher"), - require("karma-firefox-launcher"), - ], - files: [`dist/esm/__test__/${setup}.cjs`], - preprocessors: { - [`dist/esm/__test__/${setup}.cjs`]: ["webpack", "sourcemap"], - }, - webpackMiddleware: { - // webpack-dev-middleware configuration - // i. e. - stats: "errors-only", - }, - webpack: { - mode: "development", - resolve: { - extensions: [".js"], - modules: ["dist", "node_modules"], - mainFields: ["module", "main"], - }, - devtool: "inline-source-map", - performance: { - hints: false, - }, - optimization: { - usedExports: true, - flagIncludedChunks: false, - sideEffects: true, - concatenateModules: true, - splitChunks: { - name: false, - }, - runtimeChunk: false, - noEmitOnErrors: false, - checkWasmTypes: false, - minimize: false, - }, - module: { - rules: [ - { - test: /\.js\.map$/, - use: ["ignore-loader"], - }, - { - test: /\.js$/, - use: ["source-map-loader"], - enforce: "pre", - }, - ], - }, - }, - mime: { - "text/x-typescript": ["ts"], - }, - reporters: [config.reporter || (process.env.CI ? "min" : "progress")], - browsers: browsers, - customLaunchers: { - ChromeDebugging: { - base: "Chrome", - flags: [...commonChromeFlags, "--remote-debugging-port=9333"], - debug: true, - }, - ChromeHeadlessOpt: { - base: "ChromeHeadless", - flags: [...commonChromeFlags], - }, - }, - client: { - captureConsole: true, - mocha: { - bail: config["bail"], - ui: "bdd", - timeout: 5000, - }, - }, - logLevel: config.LOG_ERROR, // to disable the WARN 404 for image requests, - }; - - if (config.coverage) { - options.webpack.module.rules.push({ - enforce: "post", - exclude: /(__tests__|testing|node_modules|\.spec\.[tj]s$)/, - loader: "istanbul-instrumenter-loader", - options: { esModules: true }, - test: /\.[tj]s$/, - }); - options.reporters = ["coverage-istanbul", ...options.reporters]; - options.coverageIstanbulReporter = { - reports: ["html", "text-summary", "json", "lcovonly", "cobertura"], - dir: "coverage", - }; - options.junitReporter = { - outputDir: "coverage", - outputFile: "test-results.xml", - useBrowserName: false, - }; - } - - config.set(options); -}; diff --git a/packages/web-components/fast-element/package.json b/packages/web-components/fast-element/package.json index f807de81e2c..6a810cce98b 100644 --- a/packages/web-components/fast-element/package.json +++ b/packages/web-components/fast-element/package.json @@ -98,63 +98,30 @@ "build:rollup": "rollup -c", "build:tsc": "tsc -p ./tsconfig.json", "dev": "tsc -p ./tsconfig.json -w", - "tdd": "yarn dev & yarn test-chrome:watch", "prepare": "yarn clean:dist && yarn build", "prettier": "prettier --config ../../../.prettierrc --write \"**/*.ts\"", "prettier:diff": "prettier --config ../../../.prettierrc \"**/*.ts\" --list-different", "eslint": "eslint . --ext .ts", "eslint:fix": "eslint . --ext .ts --fix", - "test": "yarn eslint && yarn test-chrome:verbose && yarn doc:ci", - "test-node": "mocha --reporter min --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-node:verbose": "mocha --reporter spec --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-chrome": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage", - "test-chrome:verbose": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage --reporter=mocha", - "test-chrome:watch": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --coverage --watch-extensions js", - "test-chrome:debugger": "karma start karma.conf.cjs --browsers=ChromeDebugging", - "test-chrome:verbose:watch": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --coverage --watch-extensions js --reporter=mocha", - "test-chrome:verbose:debugger": "karma start karma.conf.cjs --browsers=ChromeDebugging --reporter=mocha", - "test-firefox": "karma start karma.conf.cjs --browsers=FirefoxHeadless --single-run --coverage", - "test-firefox:verbose": "karma start karma.conf.cjs --browsers=FirefoxHeadless --single-run --coverage --reporter=mocha" + "test": "yarn eslint && yarn build:tsc && web-test-runner && yarn doc:ci" }, "devDependencies": { + "@esm-bundle/chai": "4.3.4-fix.0", "@microsoft/api-extractor": "7.24.2", - "@types/chai": "^4.2.11", - "@types/chai-spies": "^1.0.3", - "@types/karma": "^6.3.3", - "@types/mocha": "^7.0.2", - "@types/webpack-env": "^1.15.2", - "chai": "^4.2.0", - "chai-spies": "^1.0.0", + "@web/test-runner": "0.17.0", + "@web/test-runner-playwright": "0.10.1", + "@types/mocha": "10.0.1", + "@types/sinon": "10.0.17", "esm": "^3.2.25", "ignore-loader": "^0.1.2", - "istanbul": "^0.4.5", - "istanbul-instrumenter-loader": "^3.0.1", - "jsdom": "^16.2.2", - "jsdom-global": "3.0.2", - "karma": "^6.4.1", - "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.0.2", - "karma-coverage-istanbul-reporter": "^3.0.0", - "karma-firefox-launcher": "^2.1.0", - "karma-mocha": "^2.0.1", - "karma-mocha-reporter": "^2.2.5", - "karma-source-map-support": "^1.4.0", - "karma-sourcemap-loader": "^0.3.7", - "karma-webpack": "^5.0.0", - "mocha": "^7.1.2", + "mocha": "10.2.0", "prettier": "2.8.8", "rollup": "^2.71.1", "rollup-plugin-filesize": "^9.1.2", "rollup-plugin-terser": "^7.0.2", "@rollup/plugin-typescript": "^8.3.2", - "source-map": "^0.7.3", - "source-map-loader": "^0.2.4", - "ts-loader": "^7.0.2", - "ts-node": "^8.9.1", - "tsconfig-paths": "^3.9.0", + "sinon": "~16.0.0", "tslib": "^2.4.0", - "typescript": "^4.7.0", - "webpack": "^5.72.0", - "webpack-cli": "^4.9.2" + "typescript": "^4.7.0" } } diff --git a/packages/web-components/fast-element/src/__test__/setup-browser.cts b/packages/web-components/fast-element/src/__test__/setup-browser.cts deleted file mode 100644 index 55b02eb60f5..00000000000 --- a/packages/web-components/fast-element/src/__test__/setup-browser.cts +++ /dev/null @@ -1,6 +0,0 @@ -function importAll(r: __WebpackModuleApi.RequireContext): void { - r.keys().forEach(r); -} - -// Explicitly add to browser test -importAll(require.context("../", true, /\.spec\.js$/)); diff --git a/packages/web-components/fast-element/src/__test__/setup-node.ts b/packages/web-components/fast-element/src/__test__/setup-node.ts deleted file mode 100644 index dc65609652a..00000000000 --- a/packages/web-components/fast-element/src/__test__/setup-node.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* eslint-disable */ -if (window.document && !window.document.createRange) { - window.document.createRange = () => ({ - setStart: () => {}, - setEnd: () => {}, - // @ts-ignore - commonAncestorContainer: { - nodeName: "BODY", - ownerDocument: document, - }, - }); -} - -if (!window.requestAnimationFrame) { - window.requestAnimationFrame = function (callback: FrameRequestCallback) { - return setTimeout(callback, 4); - }; -} diff --git a/packages/web-components/fast-element/src/components/attributes.spec.ts b/packages/web-components/fast-element/src/components/attributes.spec.ts index d2706fc00a8..0bbe5ba7f16 100644 --- a/packages/web-components/fast-element/src/components/attributes.spec.ts +++ b/packages/web-components/fast-element/src/components/attributes.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { attr, AttributeDefinition } from "./attributes.js"; import { FASTElement } from "./fast-element.js"; diff --git a/packages/web-components/fast-element/src/components/element-controller.spec.ts b/packages/web-components/fast-element/src/components/element-controller.spec.ts index b038341bf84..660f14cafca 100644 --- a/packages/web-components/fast-element/src/components/element-controller.spec.ts +++ b/packages/web-components/fast-element/src/components/element-controller.spec.ts @@ -1,4 +1,4 @@ -import chai, { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { ElementStyles } from "../index.debug.js"; import type { HostBehavior, HostController } from "../styles/host.js"; import { observable, Observable } from "../observation/observable.js"; @@ -9,9 +9,7 @@ import { toHTML } from "../__test__/helpers.js"; import { ElementController } from "./element-controller.js"; import { FASTElementDefinition, PartialFASTElementDefinition } from "./fast-definitions.js"; import { FASTElement } from "./fast-element.js"; -import spies from "chai-spies"; - -chai.use(spies); +import sinon from "sinon"; describe("The ElementController", () => { const templateA = html`a`; @@ -450,7 +448,7 @@ describe("The ElementController", () => { } } - const disconnected = chai.spy(); + const disconnected = sinon.spy(); class ChildBehavior implements HostBehavior { disconnectedCallback = disconnected } @@ -461,7 +459,7 @@ describe("The ElementController", () => { controller.connect(); controller.disconnect(); - expect(behavior.child.disconnectedCallback).to.have.been.called(); + behavior.child.disconnectedCallback.called; }); it("should unbind a behavior only when the behavior is removed the number of times it has been added", () => { @@ -522,45 +520,55 @@ describe("The ElementController", () => { it("should connect behaviors added by stylesheets by .addStyles() during connection and disconnect them during disconnection", () => { const { controller } = createController(); + const connected = sinon.spy(); + const disconnected = sinon.spy(); const behavior: HostBehavior = { - connectedCallback: chai.spy(), - disconnectedCallback: chai.spy() + connectedCallback: connected, + disconnectedCallback: disconnected }; controller.addStyles(css``.withBehaviors(behavior)); controller.connect(); - expect(behavior.connectedCallback).to.have.been.called; + + connected.called; controller.disconnect(); - expect(behavior.disconnectedCallback).to.have.been.called; + + disconnected.called; }); it("should connect behaviors added by the component's main stylesheet during connection and disconnect them during disconnection", () => { + const connected = sinon.spy(); + const disconnected = sinon.spy(); const behavior: HostBehavior = { - connectedCallback: chai.spy(), - disconnectedCallback: chai.spy() + connectedCallback: connected, + disconnectedCallback: disconnected }; const { controller } = createController({styles: css``.withBehaviors(behavior)}); controller.connect(); - expect(behavior.connectedCallback).to.have.been.called(); + connected.called; controller.disconnect(); - expect(behavior.disconnectedCallback).to.have.been.called(); + + disconnected.called; }); it("should add behaviors added by a stylesheet when added and remove them the stylesheet is removed", () => { + const added = sinon.spy(); + const removed = sinon.spy(); const behavior: HostBehavior = { - addedCallback: chai.spy(), - removedCallback: chai.spy() + addedCallback: added, + removedCallback: removed }; const styles = css``.withBehaviors(behavior) const { controller } = createController(); controller.addStyles(styles) - expect(behavior.addedCallback).to.have.been.called(); + added.called; controller.removeStyles(styles); - expect(behavior.removedCallback).to.have.been.called(); + + removed.called; }); }); diff --git a/packages/web-components/fast-element/src/components/fast-definitions.spec.ts b/packages/web-components/fast-element/src/components/fast-definitions.spec.ts index c37d9de802c..b964022e297 100644 --- a/packages/web-components/fast-element/src/components/fast-definitions.spec.ts +++ b/packages/web-components/fast-element/src/components/fast-definitions.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { FASTElementDefinition } from "./fast-definitions.js"; import { ElementStyles } from "../styles/element-styles.js"; import { uniqueElementName } from "../testing/fixture.js"; diff --git a/packages/web-components/fast-element/src/components/hydration.spec.ts b/packages/web-components/fast-element/src/components/hydration.spec.ts index 2dba199078b..146e319e26d 100644 --- a/packages/web-components/fast-element/src/components/hydration.spec.ts +++ b/packages/web-components/fast-element/src/components/hydration.spec.ts @@ -1,4 +1,4 @@ -import chai, { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { css, HostBehavior, Updates } from "../index.js"; import { html } from "../templating/template.js"; import { uniqueElementName } from "../testing/exports.js"; @@ -6,9 +6,7 @@ import { ElementController } from "./element-controller.js"; import { FASTElementDefinition, PartialFASTElementDefinition } from "./fast-definitions.js"; import { FASTElement } from "./fast-element.js"; import { HydratableElementController } from "./hydration.js"; -import spies from "chai-spies"; - -chai.use(spies) +import sinon from "sinon"; describe("The HydratableElementController", () => { beforeEach(() => { @@ -65,15 +63,18 @@ describe("The HydratableElementController", () => { document.body.removeChild(element) }); it("should invoke a HostBehavior's connectedCallback", async () => { + const connected = sinon.spy(() => {}); const behavior: HostBehavior = { - connectedCallback: chai.spy(() => {}) + connectedCallback: connected } const { element, controller } = createController() controller.addBehavior(behavior); document.body.appendChild(element); - expect(behavior.connectedCallback).to.have.been.called() + + connected.called; + document.body.removeChild(element) }); }) @@ -97,8 +98,9 @@ describe("The HydratableElementController", () => { document.body.removeChild(element) }); it("should not invoke a HostBehavior's connectedCallback", async () => { + const connected = sinon.spy(() => {}); const behavior: HostBehavior = { - connectedCallback: chai.spy(() => {}) + connectedCallback: connected } const { element, controller } = createController() @@ -106,7 +108,9 @@ describe("The HydratableElementController", () => { controller.addBehavior(behavior); document.body.appendChild(element); - expect(behavior.connectedCallback).not.to.have.been.called() + + connected.called; + document.body.removeChild(element) }); }) @@ -136,8 +140,9 @@ describe("The HydratableElementController", () => { document.body.removeChild(element); }); it("should invoke a HostBehavior's connectedCallback", async () => { + const connected = sinon.spy(() => {}); const behavior: HostBehavior = { - connectedCallback: chai.spy(() => {}) + connectedCallback: connected } const { element, controller } = createController() @@ -145,10 +150,14 @@ describe("The HydratableElementController", () => { controller.addBehavior(behavior); document.body.appendChild(element); - expect(behavior.connectedCallback).not.to.have.been.called(); + + connected.notCalled; + element.removeAttribute('defer-hydration'); await Updates.next(); - expect(behavior.connectedCallback).to.have.been.called(); + + connected.called; + document.body.removeChild(element) }); }) diff --git a/packages/web-components/fast-element/src/context.spec.ts b/packages/web-components/fast-element/src/context.spec.ts index 9fcef64793a..6b063fe82d4 100644 --- a/packages/web-components/fast-element/src/context.spec.ts +++ b/packages/web-components/fast-element/src/context.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Context } from "./context.js"; import { uniqueElementName } from "./testing/fixture.js"; diff --git a/packages/web-components/fast-element/src/debug.spec.ts b/packages/web-components/fast-element/src/debug.spec.ts index 8c0ccedba04..17a48564b61 100644 --- a/packages/web-components/fast-element/src/debug.spec.ts +++ b/packages/web-components/fast-element/src/debug.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import "./debug.js"; import type { FASTGlobal } from "./interfaces.js"; diff --git a/packages/web-components/fast-element/src/di/di.containerconfiguration.spec.ts b/packages/web-components/fast-element/src/di/di.containerconfiguration.spec.ts index 4fb41ba4b90..da94f789d20 100644 --- a/packages/web-components/fast-element/src/di/di.containerconfiguration.spec.ts +++ b/packages/web-components/fast-element/src/di/di.containerconfiguration.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { ContainerConfiguration, DefaultResolver, DI, Container } from "./di.js"; describe("ContainerConfiguration", function () { diff --git a/packages/web-components/fast-element/src/di/di.exception.spec.ts b/packages/web-components/fast-element/src/di/di.exception.spec.ts index 330798ce6da..0d0f9108190 100644 --- a/packages/web-components/fast-element/src/di/di.exception.spec.ts +++ b/packages/web-components/fast-element/src/di/di.exception.spec.ts @@ -1,4 +1,5 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; +import { Message } from "../interfaces.js"; import { DI, optional } from "./di.js"; describe("DI Exception", function () { @@ -13,9 +14,9 @@ describe("DI Exception", function () { public constructor(@Foo public readonly foo: Foo) {} } - expect(() => container.get(Foo)).to.throw(/.*Foo*/, "throws once"); - expect(() => container.get(Foo)).to.throw(/.*Foo*/, "throws twice"); // regression test - expect(() => container.get(Bar)).to.throw(/.*Foo.*/, "throws on inject into"); + expect(() => container.get(Foo)).to.throw(`${Message.cannotJITRegisterInterface}`, "throws once"); + expect(() => container.get(Foo)).to.throw(`${Message.cannotJITRegisterInterface}`, "throws twice"); // regression test + expect(() => container.get(Bar)).to.throw(`${Message.cannotJITRegisterInterface}`, "throws on inject into"); }); it("cyclic dependency", function () { @@ -30,6 +31,6 @@ describe("DI Exception", function () { public constructor(@optional(Foo) public parent: Foo) {} } - expect(() => container.get(Foo)).to.throw(/.*Cycl*/, "test"); + expect(() => container.get(Foo)).to.throw(`${Message.cyclicDependency}`, "test"); }); }); diff --git a/packages/web-components/fast-element/src/di/di.get.spec.ts b/packages/web-components/fast-element/src/di/di.get.spec.ts index 0ff727d87b4..19733908736 100644 --- a/packages/web-components/fast-element/src/di/di.get.spec.ts +++ b/packages/web-components/fast-element/src/di/di.get.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { all, DI, diff --git a/packages/web-components/fast-element/src/di/di.getAll.spec.ts b/packages/web-components/fast-element/src/di/di.getAll.spec.ts index 638d340778e..a0adcfb8e93 100644 --- a/packages/web-components/fast-element/src/di/di.getAll.spec.ts +++ b/packages/web-components/fast-element/src/di/di.getAll.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { all, DI, Container, Registration } from "./di.js"; describe("Container#.getAll", function () { diff --git a/packages/web-components/fast-element/src/di/di.integration.spec.ts b/packages/web-components/fast-element/src/di/di.integration.spec.ts index b2353e19737..5040879155a 100644 --- a/packages/web-components/fast-element/src/di/di.integration.spec.ts +++ b/packages/web-components/fast-element/src/di/di.integration.spec.ts @@ -1,10 +1,8 @@ import { DI, Container, inject, Registration, singleton } from "./di.js"; -import chai, { expect } from "chai"; -import spies from "chai-spies"; +import { expect } from "@esm-bundle/chai"; +import sinon, { SinonSpy } from "sinon"; import type { ContextDecorator } from "../context.js"; -chai.use(spies); - describe("DI.singleton", function () { describe("registerInRequester", function () { class Foo {} @@ -84,7 +82,8 @@ describe("DI.createContext() -> container.get()", function () { return new CachedCallback(); } - let callback: any; + let callback: SinonSpy; + let containerSpy: SinonSpy; // eslint-disable-next-line mocha/no-hooks beforeEach(function () { @@ -98,12 +97,12 @@ describe("DI.createContext() -> container.get()", function () { ); instance = new Instance(); IInstance = DI.createContext("IInstance", x => x.instance(instance)); - callback = chai.spy(() => new Callback()); + callback = sinon.spy(() => new Callback()); ICallback = DI.createContext("ICallback", x => x.callback(callback)); ICachedCallback = DI.createContext("ICachedCallback", x => x.cachedCallback(callbackToCache) ); - chai.spy.on(container, "get"); + containerSpy = sinon.spy(container, "get"); }); describe("leaf", function () { @@ -117,8 +116,8 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).to.not.equal(actual2, `actual1`); - expect(container.get).to.have.been.first.called.with(ITransient); - expect(container.get).to.have.been.second.called.with(ITransient); + containerSpy.firstCall.calledWith(ITransient); + containerSpy.secondCall.calledWith(ITransient); }); it(`singleton registration returns the same instance each time`, function () { @@ -130,8 +129,8 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).to.equal(actual2, `actual1`); - expect(container.get).to.have.been.first.called.with(ISingleton); - expect(container.get).to.have.been.second.called.with(ISingleton); + containerSpy.firstCall.calledWith(ISingleton); + containerSpy.secondCall.calledWith(ISingleton); }); it(`instance registration returns the same instance each time`, function () { @@ -144,8 +143,8 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(instance, `actual1`); expect(actual2).equal(instance, `actual2`); - expect(container.get).to.have.been.first.called.with(IInstance); - expect(container.get).to.have.been.second.called.with(IInstance); + containerSpy.firstCall.calledWith(IInstance); + containerSpy.secondCall.calledWith(IInstance); }); it(`callback registration is invoked each time`, function () { @@ -157,19 +156,19 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).not.equal(actual2, `actual1`); - expect(callback).to.have.been.first.called.with( + callback.firstCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(callback).to.have.been.second.called.with( + callback.secondCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(container.get).to.have.been.first.called.with(ICallback); - expect(container.get).to.have.been.second.called.with(ICallback); + containerSpy.firstCall.calledWith(ICallback); + containerSpy.secondCall.calledWith(ICallback); }); it(`cachedCallback registration is invoked once`, function () { @@ -270,10 +269,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).not.equal(actual2, `actual1`); - expect(container.get).to.have.been.first.called.with(IAlias); - expect(container.get).to.have.been.second.called.with(ITransient); - expect(container.get).to.have.been.third.called.with(IAlias); - expect(container.get).to.have.been.nth(4).called.with(ITransient); + containerSpy.firstCall.calledWith(IAlias); + containerSpy.secondCall.calledWith(ITransient); + containerSpy.thirdCall.calledWith(IAlias); + containerSpy.lastCall.calledWith(ITransient); }); it(`ContextDecorator alias to singleton registration returns the same instance each time`, function () { @@ -290,10 +289,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(actual2, `actual1`); - expect(container.get).to.have.been.first.called.with(IAlias); - expect(container.get).to.have.been.second.called.with(ISingleton); - expect(container.get).to.have.been.third.called.with(IAlias); - expect(container.get).to.have.been.nth(4).called.with(ISingleton); + containerSpy.firstCall.calledWith(IAlias); + containerSpy.secondCall.calledWith(ISingleton); + containerSpy.thirdCall.calledWith(IAlias); + containerSpy.lastCall.calledWith(ISingleton); }); it(`ContextDecorator alias to instance registration returns the same instance each time`, function () { @@ -311,10 +310,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(instance, `actual1`); expect(actual2).equal(instance, `actual2`); - expect(container.get).to.have.been.first.called.with(IAlias); - expect(container.get).to.have.been.second.called.with(IInstance); - expect(container.get).to.have.been.third.called.with(IAlias); - expect(container.get).to.have.been.nth(4).called.with(IInstance); + containerSpy.firstCall.calledWith(IAlias); + containerSpy.secondCall.calledWith(IInstance); + containerSpy.thirdCall.calledWith(IAlias); + containerSpy.lastCall.calledWith(IInstance); }); it(`ContextDecorator alias to callback registration is invoked each time`, function () { @@ -331,21 +330,21 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).not.equal(actual2, `actual1`); - expect(callback).to.have.been.first.called.with( + callback.firstCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(callback).to.have.been.second.called.with( + callback.secondCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(container.get).to.have.been.first.called.with(IAlias); - expect(container.get).to.have.been.second.called.with(ICallback); - expect(container.get).to.have.been.third.called.with(IAlias); - expect(container.get).to.have.been.nth(4).called.with(ICallback); + containerSpy.firstCall.calledWith(IAlias); + containerSpy.secondCall.calledWith(ICallback); + containerSpy.thirdCall.calledWith(IAlias); + containerSpy.lastCall.calledWith(ICallback); }); it(`string alias to transient registration returns a new instance each time`, function () { @@ -359,10 +358,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).not.equal(actual2, `actual1`); - expect(container.get).to.have.been.first.called.with("alias"); - expect(container.get).to.have.been.second.called.with(ITransient); - expect(container.get).to.have.been.third.called.with("alias"); - expect(container.get).to.have.been.nth(4).called.with(ITransient); + containerSpy.firstCall.calledWith("alias"); + containerSpy.secondCall.calledWith(ITransient); + containerSpy.thirdCall.calledWith("alias"); + containerSpy.lastCall.calledWith(ITransient); }); it(`string alias to singleton registration returns the same instance each time`, function () { @@ -376,10 +375,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(actual2, `actual1`); - expect(container.get).to.have.been.first.called.with("alias"); - expect(container.get).to.have.been.second.called.with(ISingleton); - expect(container.get).to.have.been.third.called.with("alias"); - expect(container.get).to.have.been.nth(4).called.with(ISingleton); + containerSpy.firstCall.calledWith("alias"); + containerSpy.secondCall.calledWith(ISingleton); + containerSpy.thirdCall.calledWith("alias"); + containerSpy.lastCall.calledWith(ISingleton); }); it(`string alias to instance registration returns the same instance each time`, function () { @@ -394,10 +393,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(instance, `actual1`); expect(actual2).equal(instance, `actual2`); - expect(container.get).to.have.been.first.called.with("alias"); - expect(container.get).to.have.been.second.called.with(IInstance); - expect(container.get).to.have.been.third.called.with("alias"); - expect(container.get).to.have.been.nth(4).called.with(IInstance); + containerSpy.firstCall.calledWith("alias"); + containerSpy.secondCall.calledWith(IInstance); + containerSpy.thirdCall.calledWith("alias"); + containerSpy.lastCall.calledWith(IInstance); }); it(`string alias to callback registration is invoked each time`, function () { @@ -411,21 +410,21 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).not.equal(actual2, `actual1`); - expect(callback).to.have.been.first.called.with( + callback.firstCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(callback).to.have.been.second.called.with( + callback.secondCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(container.get).to.have.been.first.called.with("alias"); - expect(container.get).to.have.been.second.called.with(ICallback); - expect(container.get).to.have.been.third.called.with("alias"); - expect(container.get).to.have.been.nth(4).called.with(ICallback); + containerSpy.firstCall.calledWith("alias"); + containerSpy.secondCall.calledWith(ICallback); + containerSpy.thirdCall.calledWith("alias"); + containerSpy.lastCall.calledWith(ICallback); }); }); @@ -461,10 +460,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1.dep).not.equal(actual2.dep, `actual1.dep`); - expect(container.get).to.have.been.first.called.with(ITransientParent); - expect(container.get).to.have.been.second.called.with(ITransient); - expect(container.get).to.have.been.third.called.with(ITransientParent); - expect(container.get).to.have.been.nth(4).called.with(ITransient); + containerSpy.firstCall.calledWith(ITransientParent); + containerSpy.secondCall.calledWith(ITransient); + containerSpy.thirdCall.calledWith(ITransientParent); + containerSpy.lastCall.calledWith(ITransient); }); it(`singleton child registration returns the same instance each time`, function () { @@ -486,10 +485,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(container.get).to.have.been.first.called.with(ITransientParent); - expect(container.get).to.have.been.second.called.with(ISingleton); - expect(container.get).to.have.been.third.called.with(ITransientParent); - expect(container.get).to.have.been.nth(4).called.with(ISingleton); + containerSpy.firstCall.calledWith(ITransientParent); + containerSpy.secondCall.calledWith(ISingleton); + containerSpy.thirdCall.calledWith(ITransientParent); + containerSpy.lastCall.calledWith(ISingleton); }); it(`instance child registration returns the same instance each time`, function () { @@ -511,10 +510,10 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(container.get).to.have.been.first.called.with(ITransientParent); - expect(container.get).to.have.been.second.called.with(IInstance); - expect(container.get).to.have.been.third.called.with(ITransientParent); - expect(container.get).to.have.been.nth(4).called.with(IInstance); + containerSpy.firstCall.calledWith(ITransientParent); + containerSpy.secondCall.calledWith(IInstance); + containerSpy.thirdCall.calledWith(ITransientParent); + containerSpy.lastCall.calledWith(IInstance); }); it(`callback child registration is invoked each time`, function () { @@ -535,21 +534,21 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).not.equal(actual2, `actual1`); expect(actual1.dep).not.equal(actual2.dep, `actual1.dep`); - expect(callback).to.have.been.first.called.with( + callback.firstCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(callback).to.have.been.second.called.with( + callback.secondCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(container.get).to.have.been.first.called.with(ITransientParent); - expect(container.get).to.have.been.second.called.with(ICallback); - expect(container.get).to.have.been.third.called.with(ITransientParent); - expect(container.get).to.have.been.nth(4).called.with(ICallback); + containerSpy.firstCall.calledWith(ITransientParent); + containerSpy.secondCall.calledWith(ICallback); + containerSpy.thirdCall.calledWith(ITransientParent); + containerSpy.lastCall.calledWith(ICallback); }); }); @@ -585,9 +584,9 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(container.get).to.have.been.first.called.with(ISingletonParent); - expect(container.get).to.have.been.second.called.with(ITransient); - expect(container.get).to.have.been.third.called.with(ISingletonParent); + containerSpy.firstCall.calledWith(ISingletonParent); + containerSpy.secondCall.calledWith(ITransient); + containerSpy.thirdCall.calledWith(ISingletonParent); }); it(`singleton registration is reused by the singleton parent`, function () { @@ -609,9 +608,9 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(container.get).to.have.been.first.called.with(ISingletonParent); - expect(container.get).to.have.been.second.called.with(ISingleton); - expect(container.get).to.have.been.third.called.with(ISingletonParent); + containerSpy.firstCall.calledWith(ISingletonParent); + containerSpy.secondCall.calledWith(ISingleton); + containerSpy.thirdCall.calledWith(ISingletonParent); }); it(`instance registration is reused by the singleton parent`, function () { @@ -633,9 +632,9 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(container.get).to.have.been.first.called.with(ISingletonParent); - expect(container.get).to.have.been.second.called.with(IInstance); - expect(container.get).to.have.been.third.called.with(ISingletonParent); + containerSpy.firstCall.calledWith(ISingletonParent); + containerSpy.secondCall.calledWith(IInstance); + containerSpy.thirdCall.calledWith(ISingletonParent); }); it(`callback registration is reused by the singleton parent`, function () { @@ -656,15 +655,15 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(actual2, `actual1`); expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(callback).to.have.been.first.called.with( + callback.firstCall.calledWith( container, container, container.getResolver(ICallback) ); - expect(container.get).to.have.been.first.called.with(ISingletonParent); - expect(container.get).to.have.been.second.called.with(ICallback); - expect(container.get).to.have.been.third.called.with(ISingletonParent); + containerSpy.firstCall.calledWith(ISingletonParent); + containerSpy.secondCall.calledWith(ICallback); + containerSpy.thirdCall.calledWith(ISingletonParent); }); }); @@ -760,7 +759,7 @@ describe("DI.createContext() -> container.get()", function () { expect(actual1).equal(actual2, `actual1`); expect(actual1.dep).equal(actual2.dep, `actual1.dep`); - expect(callback).to.have.been.first.called.with( + callback.firstCall.calledWith( container, container, container.getResolver(ICallback) diff --git a/packages/web-components/fast-element/src/di/di.spec.ts b/packages/web-components/fast-element/src/di/di.spec.ts index 9ace73862dc..dc727b548e8 100644 --- a/packages/web-components/fast-element/src/di/di.spec.ts +++ b/packages/web-components/fast-element/src/di/di.spec.ts @@ -10,16 +10,14 @@ import { singleton, transient, } from "./di.js"; -import chai, { expect } from "chai"; -import spies from "chai-spies"; +import { expect } from "@esm-bundle/chai"; +import sinon, { SinonSpy } from "sinon"; import { uniqueElementName } from "../testing/fixture.js"; import { Context } from "../context.js"; import { customElement, FASTElement } from "../components/fast-element.js"; import { html } from "../templating/template.js"; import { ref } from "../templating/ref.js"; -chai.use(spies); - function decorator(): ClassDecorator { return (target: any) => target; } @@ -393,17 +391,18 @@ describe(`The singleton decorator`, function () { describe(`The Resolver class`, function () { let container: Container; - + let resolverSpy: SinonSpy; beforeEach(function () { container = DI.createContainer(); - chai.spy.on(container, "registerResolver"); + resolverSpy = sinon.spy(container, "registerResolver"); }); describe(`register()`, function () { it(`registers the resolver to the container with its own key`, function () { const sut = new ResolverImpl("foo", 0, null); sut.register(container); - expect(container.registerResolver).called.with("foo", sut); + + resolverSpy.calledWith("foo", sut); }); }); @@ -437,10 +436,10 @@ describe(`The Resolver class`, function () { }); it(`array - calls resolve() on the first item in the state array`, function () { - const resolver = { resolve: chai.spy() }; + const resolver = { resolve: sinon.spy() }; const sut = new ResolverImpl("foo", ResolverStrategy.array, [resolver]); sut.resolve(container, container); - expect(resolver.resolve).called.with(container, container); + resolver.resolve.calledWith(container, container); }); it(`throws for unknown strategy`, function () { @@ -563,7 +562,7 @@ describe(`The Factory class`, function () { describe(`The Container class`, function () { function createFixture() { const sut = DI.createContainer(); - const register = chai.spy(); + const register = sinon.spy(); return { sut, register, context: {} }; } @@ -578,10 +577,11 @@ describe(`The Container class`, function () { test: (...args: any[]) => { sut.register(...args); - expect(register).to.have.been.first.called.with(sut); + register.firstCall.calledWith(sut); if (args.length === 2) { - expect(register).to.have.been.second.called.with(sut); + register.secondCall.calledWith(sut); + } } }; diff --git a/packages/web-components/fast-element/src/dom-policy.spec.ts b/packages/web-components/fast-element/src/dom-policy.spec.ts index 7def3224b4b..34451de4e37 100644 --- a/packages/web-components/fast-element/src/dom-policy.spec.ts +++ b/packages/web-components/fast-element/src/dom-policy.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { DOMPolicy, DOMPolicyOptions } from "./dom-policy.js"; import { DOM, DOMAspect, DOMSink } from "./dom.js"; diff --git a/packages/web-components/fast-element/src/metadata.spec.ts b/packages/web-components/fast-element/src/metadata.spec.ts index 59921ce3e99..3cd51d5c4f4 100644 --- a/packages/web-components/fast-element/src/metadata.spec.ts +++ b/packages/web-components/fast-element/src/metadata.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Metadata } from "./metadata.js"; import { emptyArray } from "./platform.js"; diff --git a/packages/web-components/fast-element/src/observation/arrays.spec.ts b/packages/web-components/fast-element/src/observation/arrays.spec.ts index 27da19775f0..45d53ab4fa9 100644 --- a/packages/web-components/fast-element/src/observation/arrays.spec.ts +++ b/packages/web-components/fast-element/src/observation/arrays.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Observable } from "./observable.js"; import { ArrayObserver, lengthOf, Splice } from "./arrays.js"; import { SubscriberSet } from "./notifier.js"; diff --git a/packages/web-components/fast-element/src/observation/notifier.spec.ts b/packages/web-components/fast-element/src/observation/notifier.spec.ts index e2d12a9122f..b3e87f326e3 100644 --- a/packages/web-components/fast-element/src/observation/notifier.spec.ts +++ b/packages/web-components/fast-element/src/observation/notifier.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { PropertyChangeNotifier, Subscriber, SubscriberSet } from "./notifier.js"; describe(`A SubscriberSet`, () => { diff --git a/packages/web-components/fast-element/src/observation/observable.spec.ts b/packages/web-components/fast-element/src/observation/observable.spec.ts index 0c308a2c6e1..6832cff5b8b 100644 --- a/packages/web-components/fast-element/src/observation/observable.spec.ts +++ b/packages/web-components/fast-element/src/observation/observable.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Updates } from "./update-queue.js"; import { PropertyChangeNotifier, SubscriberSet } from "./notifier.js"; import { ExecutionContext, Expression, Observable, observable, volatile } from "./observable.js"; diff --git a/packages/web-components/fast-element/src/observation/update-queue.spec.ts b/packages/web-components/fast-element/src/observation/update-queue.spec.ts index 577dbf61993..30a9be461db 100644 --- a/packages/web-components/fast-element/src/observation/update-queue.spec.ts +++ b/packages/web-components/fast-element/src/observation/update-queue.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Updates } from "./update-queue.js"; const waitMilliseconds = 100; diff --git a/packages/web-components/fast-element/src/platform.spec.ts b/packages/web-components/fast-element/src/platform.spec.ts index e5644480ac2..f504c02c610 100644 --- a/packages/web-components/fast-element/src/platform.spec.ts +++ b/packages/web-components/fast-element/src/platform.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import type { FASTGlobal } from "./interfaces.js"; import { createTypeRegistry, TypeDefinition } from "./platform.js"; diff --git a/packages/web-components/fast-element/src/state/reactive.spec.ts b/packages/web-components/fast-element/src/state/reactive.spec.ts index 9793ba1d35f..0a1def03c4f 100644 --- a/packages/web-components/fast-element/src/state/reactive.spec.ts +++ b/packages/web-components/fast-element/src/state/reactive.spec.ts @@ -1,6 +1,6 @@ import { Observable } from "../observation/observable.js"; import { reactive } from "./reactive.js"; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; export function createComplexObject() { return { diff --git a/packages/web-components/fast-element/src/state/state.spec.ts b/packages/web-components/fast-element/src/state/state.spec.ts index f25202d3341..f601c18ca8d 100644 --- a/packages/web-components/fast-element/src/state/state.spec.ts +++ b/packages/web-components/fast-element/src/state/state.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { computedState, ownedState, state } from "./state.js"; import { Observable } from "../observation/observable.js"; import { Updates } from "../observation/update-queue.js"; diff --git a/packages/web-components/fast-element/src/state/watch.spec.ts b/packages/web-components/fast-element/src/state/watch.spec.ts index d4622384286..9a622497b30 100644 --- a/packages/web-components/fast-element/src/state/watch.spec.ts +++ b/packages/web-components/fast-element/src/state/watch.spec.ts @@ -2,7 +2,7 @@ import { watch } from "./watch.js"; import { Updates } from "../observation/update-queue.js"; import { Splice } from "../observation/arrays.js"; import { reactive } from "./reactive.js"; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { createComplexObject } from "./reactive.spec.js"; describe("The watch function", () => { diff --git a/packages/web-components/fast-element/src/styles/css-binding-directive.spec.ts b/packages/web-components/fast-element/src/styles/css-binding-directive.spec.ts index 4b733965825..302ac24d340 100644 --- a/packages/web-components/fast-element/src/styles/css-binding-directive.spec.ts +++ b/packages/web-components/fast-element/src/styles/css-binding-directive.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { attr } from "../components/attributes.js"; import { customElement, FASTElement } from "../components/fast-element.js"; import { observable } from "../observation/observable.js"; diff --git a/packages/web-components/fast-element/src/styles/styles.spec.ts b/packages/web-components/fast-element/src/styles/styles.spec.ts index 6c19c460d67..610bfeeaeff 100644 --- a/packages/web-components/fast-element/src/styles/styles.spec.ts +++ b/packages/web-components/fast-element/src/styles/styles.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { AdoptedStyleSheetsStrategy, StyleElementStrategy } from "../components/element-controller.js"; diff --git a/packages/web-components/fast-element/src/templating/binding.spec.ts b/packages/web-components/fast-element/src/templating/binding.spec.ts index 4ed74039e48..b5f0bc506b4 100644 --- a/packages/web-components/fast-element/src/templating/binding.spec.ts +++ b/packages/web-components/fast-element/src/templating/binding.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { HTMLBindingDirective } from "./html-binding-directive.js"; import { observable } from "../observation/observable.js"; import { html, ViewTemplate } from "./template.js"; diff --git a/packages/web-components/fast-element/src/templating/children.spec.ts b/packages/web-components/fast-element/src/templating/children.spec.ts index a1a5f9f1153..2e2b280b121 100644 --- a/packages/web-components/fast-element/src/templating/children.spec.ts +++ b/packages/web-components/fast-element/src/templating/children.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { children, ChildrenDirective } from "./children.js"; import { observable } from "../observation/observable.js"; import { elements } from "./node-observation.js"; diff --git a/packages/web-components/fast-element/src/templating/compiler.spec.ts b/packages/web-components/fast-element/src/templating/compiler.spec.ts index c563b1c106e..d36a873eec9 100644 --- a/packages/web-components/fast-element/src/templating/compiler.spec.ts +++ b/packages/web-components/fast-element/src/templating/compiler.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { customElement, FASTElement } from "../components/fast-element.js"; import { Markup } from './markup.js'; import { css } from "../styles/css.js"; diff --git a/packages/web-components/fast-element/src/templating/ref.spec.ts b/packages/web-components/fast-element/src/templating/ref.spec.ts index c3dbac17043..aab8ca16703 100644 --- a/packages/web-components/fast-element/src/templating/ref.spec.ts +++ b/packages/web-components/fast-element/src/templating/ref.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { ref } from "./ref.js"; import { html } from "./template.js"; diff --git a/packages/web-components/fast-element/src/templating/render.spec.ts b/packages/web-components/fast-element/src/templating/render.spec.ts index 8baac5de0b1..b8a371f0753 100644 --- a/packages/web-components/fast-element/src/templating/render.spec.ts +++ b/packages/web-components/fast-element/src/templating/render.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { customElement, FASTElement } from "../components/fast-element.js"; import { observable } from "../observation/observable.js"; import { Updates } from "../observation/update-queue.js"; diff --git a/packages/web-components/fast-element/src/templating/repeat.spec.ts b/packages/web-components/fast-element/src/templating/repeat.spec.ts index f0fb47cad3e..dd0a61f4dcf 100644 --- a/packages/web-components/fast-element/src/templating/repeat.spec.ts +++ b/packages/web-components/fast-element/src/templating/repeat.spec.ts @@ -1,6 +1,6 @@ import { observable } from "../observation/observable.js"; import { RepeatBehavior, RepeatDirective, repeat } from "./repeat.js"; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { html } from "./template.js"; import { toHTML } from "../__test__/helpers.js"; import { Updates } from "../observation/update-queue.js"; @@ -253,7 +253,7 @@ describe("The repeat", () => { behavior.bind(controller); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( createOutput(size, void 0, void 0, input => `
${input}
`) ); @@ -261,13 +261,13 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal(""); + await expect(toHTML(parent)).to.equal(""); data.items = createArray(size); await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( createOutput(size, void 0, void 0, input => `
${input}
`) ); }); @@ -290,7 +290,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal(`${createOutput(size)}newitem`); + await expect(toHTML(parent)).to.equal(`${createOutput(size)}newitem`); }); }); @@ -313,7 +313,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size, x => x !== index)}` ); }); @@ -337,7 +337,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal(`${createOutput(size, x => x !== 0)}`); + await expect(toHTML(parent)).to.equal(`${createOutput(size, x => x !== 0)}`); }); }); @@ -360,7 +360,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size, x => x !== index)}newitem1newitem2` ); }); @@ -386,7 +386,7 @@ describe("The repeat", () => { await Updates.next(); expectViewPositionToBeCorrect(behavior); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size, x => x !== index)}newitem1newitem2` ); }); @@ -409,7 +409,7 @@ describe("The repeat", () => { const mid = Math.floor(vm.items.length/2) vm.items.splice(mid, 1, { name: "newitem1" }); await Updates.next(); - expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1${createOutput(vm.items.slice(mid +1).length , void 0, void 0, void 0, mid +1 ) }`); + await expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1${createOutput(vm.items.slice(mid +1).length , void 0, void 0, void 0, mid +1 ) }`); }); it(`updates rendered HTML when a single item is spliced from the middle of an array of size ${size} with recycle property set to false`, async () => { @@ -433,7 +433,7 @@ describe("The repeat", () => { await Updates.next(); expectViewPositionToBeCorrect(behavior); - expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1${createOutput(vm.items.slice(mid +1).length , void 0, void 0, void 0, mid +1 ) }`); + await expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1${createOutput(vm.items.slice(mid +1).length , void 0, void 0, void 0, mid +1 ) }`); }); }); @@ -454,7 +454,7 @@ describe("The repeat", () => { const mid = Math.floor(vm.items.length/2) vm.items.splice(mid, 2, { name: "newitem1" }, { name: "newitem2" }); await Updates.next(); - expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1newitem2${createOutput(vm.items.slice(mid +2).length , void 0, void 0, void 0, mid +2 ) }`); + await expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1newitem2${createOutput(vm.items.slice(mid +2).length , void 0, void 0, void 0, mid +2 ) }`); }); it(`updates rendered HTML when 2 items are spliced from the middle of an array of size ${size} with recycle property set to false`, async () => { @@ -475,7 +475,7 @@ describe("The repeat", () => { const mid = Math.floor(vm.items.length/2) vm.items.splice(mid, 2, { name: "newitem1" }, { name: "newitem2" }); await Updates.next(); - expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1newitem2${createOutput(vm.items.slice(mid +2).length , void 0, void 0, void 0, mid +2 ) }`); + await expect(toHTML(parent)).to.equal(`${createOutput(mid)}newitem1newitem2${createOutput(vm.items.slice(mid +2).length , void 0, void 0, void 0, mid +2 ) }`); }); it(`updates rendered HTML when all items are spliced to replace entire array with an array of size ${size}`, async () => { const { parent, targets, nodeId } = createLocation(); @@ -496,12 +496,12 @@ describe("The repeat", () => { vm.items.splice(0, vm.items.length, ...vm.items); await Updates.next(); expectViewPositionToBeCorrect(behavior); - expect(toHTML(parent)).to.equal(createOutput(size)); + await expect(toHTML(parent)).to.equal(createOutput(size)); vm.items.splice(0, vm.items.length, ...vm.items); await Updates.next(); expectViewPositionToBeCorrect(behavior); - expect(toHTML(parent)).to.equal(createOutput(size)); + await expect(toHTML(parent)).to.equal(createOutput(size)); }); }); @@ -523,7 +523,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `newitem1newitem2${createOutput(size, x => x !== 0)}` ); }); @@ -549,7 +549,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal(createOutput(size, () => true, "*")); + await expect(toHTML(parent)).to.equal(createOutput(size, () => true, "*")); }); }); @@ -578,7 +578,7 @@ describe("The repeat", () => { for (let i = 0; i < size; ++i) { const str = `child-item${i + 1}root-root`; - expect(text.indexOf(str)).to.not.equal(-1); + await expect(text.indexOf(str)).to.not.equal(-1); } }); }); @@ -602,7 +602,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `shift${createOutput(size, index => index !== 0)}` ); }); @@ -627,7 +627,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `shiftshift${createOutput(size, index => index !== 0)}` ); }); @@ -653,7 +653,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `shift2${createOutput(size, index => index !== 0)}` ); }); @@ -678,7 +678,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size, index => index !== 0)}shift3` ); }); @@ -703,7 +703,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size, index => index !== 0)}shift3` ); }); @@ -728,7 +728,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size)}` ); }); @@ -753,7 +753,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `${createOutput(size-1)}shift3` ); }); @@ -779,7 +779,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `shift1shift2${createOutput(size-1)}shift3` ); }); @@ -805,7 +805,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `shift1shift2${createOutput(size)}` ); }); @@ -831,7 +831,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal( + await expect(toHTML(parent)).to.equal( `shift1shift2${createOutput(size -1, index => index !== 0, void 0, void 0, 1 ) }` ); }); @@ -865,7 +865,7 @@ describe("The repeat", () => { await Updates.next(); - expect(toHTML(parent)).to.equal(`${createOutput(size)}newitem`); + await expect(toHTML(parent)).to.equal(`${createOutput(size)}newitem`); }); }); }); diff --git a/packages/web-components/fast-element/src/templating/slotted.spec.ts b/packages/web-components/fast-element/src/templating/slotted.spec.ts index b9461ad09ae..04701fd8979 100644 --- a/packages/web-components/fast-element/src/templating/slotted.spec.ts +++ b/packages/web-components/fast-element/src/templating/slotted.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { slotted, SlottedDirective } from "./slotted.js"; import { ref } from "./ref.js"; import { observable } from "../observation/observable.js"; diff --git a/packages/web-components/fast-element/src/templating/template.spec.ts b/packages/web-components/fast-element/src/templating/template.spec.ts index ba822144bc7..e410c3906b2 100644 --- a/packages/web-components/fast-element/src/templating/template.spec.ts +++ b/packages/web-components/fast-element/src/templating/template.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { html, ViewTemplate } from "./template.js"; import { Markup, nextId, Parser } from "./markup.js"; import { HTMLBindingDirective } from "./html-binding-directive.js"; diff --git a/packages/web-components/fast-element/src/templating/view.spec.ts b/packages/web-components/fast-element/src/templating/view.spec.ts index ac1eab4a9b2..4330dea90fc 100644 --- a/packages/web-components/fast-element/src/templating/view.spec.ts +++ b/packages/web-components/fast-element/src/templating/view.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Message } from "../interfaces.js"; import { ExecutionContext } from "../observation/observable.js"; import { FAST } from "../platform.js"; diff --git a/packages/web-components/fast-element/src/templating/when.spec.ts b/packages/web-components/fast-element/src/templating/when.spec.ts index 6fad85a6365..8ab45a1a438 100644 --- a/packages/web-components/fast-element/src/templating/when.spec.ts +++ b/packages/web-components/fast-element/src/templating/when.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { when } from "./when.js"; import { html } from "./template.js"; import type { Expression } from "../observation/observable.js"; diff --git a/packages/web-components/fast-element/src/testing/fixture.spec.ts b/packages/web-components/fast-element/src/testing/fixture.spec.ts index ef499dd8925..ed0195c4a7b 100644 --- a/packages/web-components/fast-element/src/testing/fixture.spec.ts +++ b/packages/web-components/fast-element/src/testing/fixture.spec.ts @@ -1,4 +1,4 @@ -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { attr } from "../components/attributes.js"; import { customElement, FASTElement } from "../components/fast-element.js"; import { observable } from "../observation/observable.js"; diff --git a/packages/web-components/fast-element/src/utilities.spec.ts b/packages/web-components/fast-element/src/utilities.spec.ts index 023ab921031..c77efd3bdc7 100644 --- a/packages/web-components/fast-element/src/utilities.spec.ts +++ b/packages/web-components/fast-element/src/utilities.spec.ts @@ -1,5 +1,5 @@ import { composedContains, composedParent } from "./utilities.js"; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; import { Updates } from "./observation/update-queue.js"; import { customElement, FASTElement } from "./components/fast-element.js"; import { observable } from "./observation/observable.js"; diff --git a/packages/web-components/fast-element/tsconfig.json b/packages/web-components/fast-element/tsconfig.json index b8f6e98da99..817dda05fcb 100644 --- a/packages/web-components/fast-element/tsconfig.json +++ b/packages/web-components/fast-element/tsconfig.json @@ -13,7 +13,7 @@ "moduleResolution": "Node16", "types": [ "mocha", - "webpack-env" + "sinon" ], "lib": [ "DOM", diff --git a/packages/web-components/fast-element/web-test-runner.config.mjs b/packages/web-components/fast-element/web-test-runner.config.mjs new file mode 100644 index 00000000000..182f9bc659c --- /dev/null +++ b/packages/web-components/fast-element/web-test-runner.config.mjs @@ -0,0 +1,17 @@ +import { playwrightLauncher } from "@web/test-runner-playwright"; + +export default { + concurrency: 10, + coverage: true, + nodeResolve: true, + // in a monorepo you need to set set the root dir to resolve modules + rootDir: "../../../", + playwright: true, + browsers: [ + playwrightLauncher({ product: "chromium" }), + ], + files: [ + "dist/esm/**/*.spec.js", + "!**/node_modules/**" + ], +}; diff --git a/packages/web-components/fast-foundation/package.json b/packages/web-components/fast-foundation/package.json index b96783ff075..94b640c49ec 100644 --- a/packages/web-components/fast-foundation/package.json +++ b/packages/web-components/fast-foundation/package.json @@ -251,9 +251,10 @@ "devDependencies": { "@custom-elements-manifest/analyzer": "^0.5.7", "@custom-elements-manifest/to-markdown": "^0.1.0", + "@esm-bundle/chai": "4.3.4-fix.0", "@microsoft/api-extractor": "7.24.2", "@microsoft/tsdoc-config": "^0.13.4", - "@playwright/test": "^1.25.2", + "@playwright/test": "~1.37.1", "@rollup/plugin-node-resolve": "^13.3.0", "@storybook/addon-docs": "6.5.10", "@storybook/addon-essentials": "6.5.10", diff --git a/packages/web-components/fast-foundation/src/combobox/combobox.pw.spec.ts b/packages/web-components/fast-foundation/src/combobox/combobox.pw.spec.ts index 1a86e31da23..1777c158fe8 100644 --- a/packages/web-components/fast-foundation/src/combobox/combobox.pw.spec.ts +++ b/packages/web-components/fast-foundation/src/combobox/combobox.pw.spec.ts @@ -166,7 +166,7 @@ test.describe("Combobox", () => { node.open = true; }); - await expect(element).toHaveAttribute("aria-activedescendant", ""); + await expect(control).toHaveAttribute("aria-activedescendant", ""); const optionsCount = await options.count(); @@ -188,7 +188,7 @@ test.describe("Combobox", () => { await expect(control).hasAttribute("aria-activedescendant"); - await expect(element).toHaveAttribute("aria-activedescendant", ""); + await expect(control).toHaveAttribute("aria-activedescendant", ""); }); test("should set its value to the first option with the `selected` attribute present", async () => { @@ -267,117 +267,111 @@ test.describe("Combobox", () => { await expect(listbox).toBeVisible(); }); - test.describe( - "should NOT emit a 'change' event when the value changes by user input while open", - () => { - test("via arrow down key", async () => { - await root.evaluate(node => { - node.innerHTML = /* html */ ` + test.describe("should NOT emit a 'change' event when the value changes by user input while open", () => { + test("via arrow down key", async () => { + await root.evaluate(node => { + node.innerHTML = /* html */ ` Option 1 Option 2 Option 3 `; - }); + }); - await element.click(); + await element.click(); - await element.locator(".listbox").waitFor({ state: "visible" }); + await element.locator(".listbox").waitFor({ state: "visible" }); - await expect(element).toHaveBooleanAttribute("open"); + await expect(element).toHaveBooleanAttribute("open"); - const [wasChanged] = await Promise.all([ - element.evaluate(node => - Promise.race([ - new Promise(resolve => { - node.addEventListener("change", () => resolve(true)); - }), - new Promise(resolve => setTimeout(() => resolve(false), 100)), - ]) - ), - element.press("ArrowDown"), - ]); + const [wasChanged] = await Promise.all([ + element.evaluate(node => + Promise.race([ + new Promise(resolve => { + node.addEventListener("change", () => resolve(true)); + }), + new Promise(resolve => setTimeout(() => resolve(false), 100)), + ]) + ), + element.press("ArrowDown"), + ]); - expect(wasChanged).toBeFalsy(); - }); + expect(wasChanged).toBeFalsy(); + }); - test("via arrow up key", async () => { - await root.evaluate(node => { - node.innerHTML = /* html */ ` + test("via arrow up key", async () => { + await root.evaluate(node => { + node.innerHTML = /* html */ ` Option 1 Option 2 Option 3 `; - }); + }); - await element.evaluate((node: FASTCombobox) => { - node.value = "two"; - }); + await element.evaluate((node: FASTCombobox) => { + node.value = "two"; + }); - await element.click(); + await element.click(); - await element.locator(".listbox").waitFor({ state: "visible" }); + await element.locator(".listbox").waitFor({ state: "visible" }); - expect( - await element.evaluate(node => node.hasAttribute("open")) - ).toBeTruthy(); + expect( + await element.evaluate(node => node.hasAttribute("open")) + ).toBeTruthy(); - const [wasChanged] = await Promise.all([ - element.evaluate(node => - Promise.race([ - new Promise(resolve => { - node.addEventListener("change", () => resolve(true)); - }), - new Promise(resolve => setTimeout(() => resolve(false), 100)), - ]) - ), - element.press("ArrowUp"), - ]); + const [wasChanged] = await Promise.all([ + element.evaluate(node => + Promise.race([ + new Promise(resolve => { + node.addEventListener("change", () => resolve(true)); + }), + new Promise(resolve => setTimeout(() => resolve(false), 100)), + ]) + ), + element.press("ArrowUp"), + ]); - expect(wasChanged).toBeFalsy(); - }); - } - ); - - test.describe( - "should NOT emit a 'change' event when the value changes by programmatic interaction", - () => { - test("via end key", async () => { - await root.evaluate(node => { - node.innerHTML = /* html */ ` + expect(wasChanged).toBeFalsy(); + }); + }); + + test.describe("should NOT emit a 'change' event when the value changes by programmatic interaction", () => { + test("via end key", async () => { + await root.evaluate(node => { + node.innerHTML = /* html */ ` Option 1 Option 2 Option 3 `; - }); - - await element.evaluate((node: FASTCombobox) => { - node.value = "two"; - }); - - const [wasChanged] = await Promise.all([ - element.evaluate(node => - Promise.race([ - new Promise(resolve => { - node.addEventListener("change", () => resolve(true)); - }), - new Promise(resolve => setTimeout(() => resolve(false), 50)), - ]) - ), - element.press("End"), - ]); - - expect(wasChanged).toBeFalsy(); - - await expect(element).toHaveJSProperty("value", "two"); }); - } - ); + + await element.evaluate((node: FASTCombobox) => { + node.value = "two"; + }); + + const [wasChanged] = await Promise.all([ + element.evaluate(node => + Promise.race([ + new Promise(resolve => { + node.addEventListener("change", () => resolve(true)); + }), + new Promise(resolve => setTimeout(() => resolve(false), 50)), + ]) + ), + element.press("End"), + ]); + + expect(wasChanged).toBeFalsy(); + + await expect(element).toHaveJSProperty("value", "two"); + }); + }); test.describe("when the owning form's reset() function is invoked", () => { test("should reset the value property to its initial value", async () => { diff --git a/packages/web-components/fast-foundation/src/design-token/event-strategy.spec.ts b/packages/web-components/fast-foundation/src/design-token/event-strategy.spec.ts index 43ee982bf47..286ae44bd81 100644 --- a/packages/web-components/fast-foundation/src/design-token/event-strategy.spec.ts +++ b/packages/web-components/fast-foundation/src/design-token/event-strategy.spec.ts @@ -1,7 +1,6 @@ import { css, customElement, FASTElement, HostController, html, Observable, Updates } from "@microsoft/fast-element"; -import chai, { expect } from "chai"; -import spies from "chai-spies"; +import { expect } from "@esm-bundle/chai"; import { uniqueElementName } from "@microsoft/fast-element/testing.js"; import {DesignTokenEventResolutionStrategy} from "./event-strategy.js" diff --git a/packages/web-components/fast-foundation/src/dialog/README.md b/packages/web-components/fast-foundation/src/dialog/README.md index 5373ba3a734..b2a7df27bb3 100644 --- a/packages/web-components/fast-foundation/src/dialog/README.md +++ b/packages/web-components/fast-foundation/src/dialog/README.md @@ -63,14 +63,14 @@ export const myDialog = Dialog.compose({ #### Fields -| Name | Privacy | Type | Default | Description | Inherited From | -| ----------------- | ------- | --------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | -| `modal` | public | `boolean` | `false` | Indicates the element is modal. When modal, user mouse interaction will be limited to the contents of the element by a modal overlay. Clicks on the overlay will cause the dialog to emit a "dismiss" event. | | -| `hidden` | public | `boolean` | `false` | The hidden state of the element. | | -| `noFocusTrap` | public | `boolean` | `false` | Indicates that the dialog should not trap focus. | | -| `ariaDescribedby` | public | `string` | | The id of the element describing the dialog. | | -| `ariaLabelledby` | public | `string` | | The id of the element labeling the dialog. | | -| `ariaLabel` | public | `string` | | The label surfaced to assistive technologies. | | +| Name | Privacy | Type | Default | Description | Inherited From | +| ----------------- | ------- | --------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------- | +| `modal` | public | `boolean` | `false` | Indicates the element is modal. When modal, user mouse interaction will be limited to the contents of the element by a modal overlay. Clicks on the overlay will cause the dialog to emit a "dismiss" event. | | +| `hidden` | public | `boolean` | `false` | The hidden state of the element. | | +| `noFocusTrap` | public | `boolean` | `false` | Indicates that the dialog should not trap focus. | | +| `ariaDescribedby` | public | `string` | | The id of the element describing the dialog. | | +| `ariaLabelledby` | public | `string` | | The id of the element labeling the dialog. | | +| `ariaLabel` | public | `string` | | The label surfaced to assistive technologies. | | #### Methods diff --git a/packages/web-components/fast-foundation/src/dialog/dialog.ts b/packages/web-components/fast-foundation/src/dialog/dialog.ts index 26bc77c1b3b..23818240267 100644 --- a/packages/web-components/fast-foundation/src/dialog/dialog.ts +++ b/packages/web-components/fast-foundation/src/dialog/dialog.ts @@ -24,7 +24,7 @@ import { isTabbable } from "tabbable"; export class FASTDialog extends FASTElement { /** * Indicates the element is modal. When modal, user mouse interaction will be limited to the contents of the element by a modal - * overlay. Clicks on the overlay will cause the dialog to emit a "dismiss" event. + * overlay. Clicks on the overlay will cause the dialog to emit a "dismiss" event. * @public * @defaultValue - false * @remarks diff --git a/packages/web-components/fast-foundation/src/directives/reflect-attributes.spec.ts b/packages/web-components/fast-foundation/src/directives/reflect-attributes.spec.ts index 5b74c1d3888..3643b97c60b 100644 --- a/packages/web-components/fast-foundation/src/directives/reflect-attributes.spec.ts +++ b/packages/web-components/fast-foundation/src/directives/reflect-attributes.spec.ts @@ -1,7 +1,7 @@ import { html, ref, customElement, FASTElement, Updates } from "@microsoft/fast-element"; import { fixture, uniqueElementName } from "@microsoft/fast-element/testing.js"; import { reflectAttributes } from "./reflect-attributes.js"; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai";; const template = html`
{ `; }); - await expect(element).toHaveAttribute("tabindex", ""); + await expect(element).not.toHaveAttribute("tabindex", ""); }); test("should initialize to the initial value if no value property is set", async () => { diff --git a/packages/web-components/fast-foundation/src/slider/slider.pw.spec.ts b/packages/web-components/fast-foundation/src/slider/slider.pw.spec.ts index 941c05e4b93..3de789d13c0 100644 --- a/packages/web-components/fast-foundation/src/slider/slider.pw.spec.ts +++ b/packages/web-components/fast-foundation/src/slider/slider.pw.spec.ts @@ -513,7 +513,7 @@ test.describe("Slider", () => { node.value = "3"; }); - await expect(element).toHaveAttribute("value", ""); + await expect(element).not.toHaveAttribute("value", ""); await expect(element).toHaveJSProperty("value", "3"); diff --git a/packages/web-components/fast-router/karma.conf.cjs b/packages/web-components/fast-router/karma.conf.cjs deleted file mode 100644 index 4e96dbab80e..00000000000 --- a/packages/web-components/fast-router/karma.conf.cjs +++ /dev/null @@ -1,141 +0,0 @@ -const path = require("path"); -const basePath = path.resolve(__dirname); - -const commonChromeFlags = [ - "--no-default-browser-check", - "--no-first-run", - "--no-sandbox", - "--no-managed-user-acknowledgment-check", - "--disable-background-timer-throttling", - "--disable-backing-store-limit", - "--disable-boot-animation", - "--disable-cloud-import", - "--disable-contextual-search", - "--disable-default-apps", - "--disable-extensions", - "--disable-infobars", - "--disable-translate", -]; - -module.exports = function (config) { - let browsers; - if (process.env.BROWSERS) { - browsers = [process.env.BROWSERS]; - } else if (config.browsers) { - browsers = config.browsers; - } else { - browsers = ["Chrome"]; - } - - const setup = "setup-browser" + (config.package ? "-" + config.package : ""); - const options = { - basePath, - browserDisconnectTimeout: 10000, - processKillTimeout: 10000, - frameworks: ["source-map-support", "mocha"], - plugins: [ - require("karma-mocha"), - require("karma-mocha-reporter"), - require("karma-webpack"), - require("karma-source-map-support"), - require("karma-sourcemap-loader"), - require("karma-coverage-istanbul-reporter"), - require("karma-chrome-launcher"), - require("karma-firefox-launcher"), - ], - files: [`dist/esm/__test__/${setup}.cjs`], - preprocessors: { - [`dist/esm/__test__/${setup}.cjs`]: ["webpack", "sourcemap"], - }, - webpackMiddleware: { - // webpack-dev-middleware configuration - // i. e. - stats: "errors-only", - }, - webpack: { - mode: "development", - resolve: { - extensions: [".js"], - modules: ["dist", "node_modules"], - mainFields: ["module", "main"], - }, - devtool: "inline-source-map", - performance: { - hints: false, - }, - optimization: { - usedExports: true, - flagIncludedChunks: false, - sideEffects: true, - concatenateModules: true, - splitChunks: { - name: false, - }, - runtimeChunk: false, - noEmitOnErrors: false, - checkWasmTypes: false, - minimize: false, - }, - module: { - rules: [ - { - test: /\.js\.map$/, - use: ["ignore-loader"], - }, - { - test: /\.js$/, - use: ["source-map-loader"], - enforce: "pre", - }, - ], - }, - }, - mime: { - "text/x-typescript": ["ts"], - }, - reporters: [config.reporter || (process.env.CI ? "min" : "progress")], - browsers: browsers, - customLaunchers: { - ChromeDebugging: { - base: "Chrome", - flags: [...commonChromeFlags, "--remote-debugging-port=9333"], - debug: true, - }, - ChromeHeadlessOpt: { - base: "ChromeHeadless", - flags: [...commonChromeFlags], - }, - }, - client: { - captureConsole: true, - mocha: { - bail: config["bail"], - ui: "bdd", - timeout: 5000, - }, - }, - logLevel: config.LOG_ERROR, // to disable the WARN 404 for image requests, - }; - - if (config.coverage) { - options.webpack.module.rules.push({ - enforce: "post", - exclude: /(__tests__|testing|node_modules|\.spec\.[tj]s$)/, - loader: "istanbul-instrumenter-loader", - options: { esModules: true }, - test: /\.[tj]s$/, - }); - options.reporters = ["coverage-istanbul", ...options.reporters]; - options.coverageIstanbulReporter = { - reports: ["html", "text-summary", "json", "lcovonly", "cobertura"], - dir: "coverage", - }; - options.junitReporter = { - outputDir: "coverage", - outputFile: "test-results.xml", - useBrowserName: false, - }; - } - - config.set(options); -}; diff --git a/packages/web-components/fast-router/package.json b/packages/web-components/fast-router/package.json index 0c3b74a5394..ff42c94ad5f 100644 --- a/packages/web-components/fast-router/package.json +++ b/packages/web-components/fast-router/package.json @@ -25,49 +25,25 @@ "clean:dist": "node ../../../build/clean.js dist", "doc": "api-extractor run --local", "doc:ci": "api-extractor run", - "build": "tsc -p ./tsconfig.json && yarn doc", + "build": "yarn build:tsc && yarn doc", + "build:tsc": "tsc -p ./tsconfig.json", "dev": "tsc -p ./tsconfig.json -w", - "tdd": "yarn dev & yarn test-chrome:watch", "prepare": "yarn clean:dist && yarn build", "prettier": "prettier --config ../../../.prettierrc --write \"**/*.ts\"", "prettier:diff": "prettier --config ../../../.prettierrc \"**/*.ts\" --list-different", "eslint": "eslint . --ext .ts", "eslint:fix": "eslint . --ext .ts --fix", - "test": "yarn eslint && yarn test-chrome:verbose && yarn doc:ci", - "test-node": "mocha --reporter min --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-node:verbose": "mocha --reporter spec --exit dist/esm/__test__/setup-node.js './dist/esm/**/*.spec.js'", - "test-chrome": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage", - "test-chrome:verbose": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --single-run --coverage --reporter=mocha", - "test-chrome:watch": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --coverage --watch-extensions js", - "test-chrome:debugger": "karma start karma.conf.cjs --browsers=ChromeDebugging", - "test-chrome:verbose:watch": "karma start karma.conf.cjs --browsers=ChromeHeadlessOpt --coverage --watch-extensions js --reporter=mocha", - "test-chrome:verbose:debugger": "karma start karma.conf.cjs --browsers=ChromeDebugging --reporter=mocha", - "test-firefox": "karma start karma.conf.cjs --browsers=FirefoxHeadless --single-run --coverage", - "test-firefox:verbose": "karma start karma.conf.cjs --browsers=FirefoxHeadless --single-run --coverage --reporter=mocha" + "test": "yarn eslint && yarn build:tsc && web-test-runner && yarn doc:ci" }, "devDependencies": { + "@esm-bundle/chai": "4.3.4-fix.0", "@microsoft/api-extractor": "7.24.2", - "@types/chai": "^4.2.11", - "@types/karma": "^6.3.3", + "@web/test-runner": "0.17.0", + "@web/test-runner-playwright": "0.10.1", "@types/mocha": "^7.0.2", "@types/webpack-env": "^1.15.2", - "chai": "^4.2.0", "esm": "^3.2.25", "ignore-loader": "^0.1.2", - "istanbul": "^0.4.5", - "istanbul-instrumenter-loader": "^3.0.1", - "jsdom": "^16.2.2", - "jsdom-global": "3.0.2", - "karma": "^6.4.1", - "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.0.2", - "karma-coverage-istanbul-reporter": "^3.0.0", - "karma-firefox-launcher": "^2.1.0", - "karma-mocha": "^2.0.1", - "karma-mocha-reporter": "^2.2.5", - "karma-source-map-support": "^1.4.0", - "karma-sourcemap-loader": "^0.3.7", - "karma-webpack": "^5.0.0", "mocha": "^7.1.2", "prettier": "2.8.8", "source-map": "^0.7.3", @@ -75,9 +51,7 @@ "ts-loader": "^7.0.2", "ts-node": "^8.9.1", "tsconfig-paths": "^3.9.0", - "typescript": "^4.7.0", - "webpack": "^5.72.0", - "webpack-cli": "^4.9.2" + "typescript": "^4.7.0" }, "dependencies": { "@microsoft/fast-element": "^2.0.0-beta.26" diff --git a/packages/web-components/fast-router/src/recognizer.spec.ts b/packages/web-components/fast-router/src/recognizer.spec.ts index 0dfd752aa4f..beeeccfae38 100644 --- a/packages/web-components/fast-router/src/recognizer.spec.ts +++ b/packages/web-components/fast-router/src/recognizer.spec.ts @@ -4,7 +4,7 @@ import { Endpoint, RecognizedRoute, } from "./recognizer.js"; -import { expect } from "chai"; +import { expect } from "@esm-bundle/chai"; describe(DefaultRouteRecognizer.name, function () { interface RecognizeSpec { diff --git a/packages/web-components/fast-router/web-test-runner.config.mjs b/packages/web-components/fast-router/web-test-runner.config.mjs new file mode 100644 index 00000000000..6da1328815c --- /dev/null +++ b/packages/web-components/fast-router/web-test-runner.config.mjs @@ -0,0 +1,17 @@ +import { playwrightLauncher } from "@web/test-runner-playwright"; + +export default { + coverage: true, + nodeResolve: true, + testsFinishTimeout: 200000, + // in a monorepo you need to set set the root dir to resolve modules + rootDir: "../../../", + playwright: true, + browsers: [ + playwrightLauncher({ product: "chromium" }), + ], + files: [ + "dist/esm/**/*.spec.js", + "!**/node_modules/**" + ], +}; diff --git a/packages/web-components/fast-ssr/package.json b/packages/web-components/fast-ssr/package.json index 5ba584a7d33..3aab94bf121 100644 --- a/packages/web-components/fast-ssr/package.json +++ b/packages/web-components/fast-ssr/package.json @@ -63,7 +63,7 @@ "@microsoft/fast-element": "^2.0.0-beta.26", "@microsoft/fast-foundation": "^3.0.0-alpha.31", "@microsoft/api-extractor": "7.24.2", - "@playwright/test": "^1.25.2", + "@playwright/test": "~1.37.1", "@types/express": "^4.17.13", "@types/node": "^17.0.17", "chokidar-cli": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index 29cbad9627b..b2d98fe4837 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,14 @@ # yarn lockfile v1 +"@75lb/deep-merge@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@75lb/deep-merge/-/deep-merge-1.1.1.tgz#3b06155b90d34f5f8cc2107d796f1853ba02fd6d" + integrity sha512-xvgv6pkMGBA6GwdyJbNAnDmfAIR/DfWhrj9jgWh3TY7gRm3KO46x/GPjRg6wJ0nOepwqrNxFfojebh0Df4h4Tw== + dependencies: + lodash.assignwith "^4.2.0" + typical "^7.1.1" + "@algolia/autocomplete-core@1.5.2": version "1.5.2" resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.5.2.tgz#ec0178e07b44fd74a057728ac157291b26cecf37" @@ -145,6 +153,14 @@ dependencies: "@babel/highlight" "^7.16.7" +"@babel/code-frame@^7.12.11": + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.10.tgz#1c20e612b768fefa75f6e90d6ecb86329247f0a3" + integrity sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA== + dependencies: + "@babel/highlight" "^7.22.10" + chalk "^2.4.2" + "@babel/compat-data@^7.13.11", "@babel/compat-data@^7.17.10": version "7.17.10" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab" @@ -394,6 +410,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== +"@babel/helper-validator-identifier@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" + integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== + "@babel/helper-validator-option@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" @@ -427,6 +448,15 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.22.10": + version "7.22.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.10.tgz#02a3f6d8c1cb4521b2fd0ab0da8f4739936137d7" + integrity sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ== + dependencies: + "@babel/helper-validator-identifier" "^7.22.5" + chalk "^2.4.2" + js-tokens "^4.0.0" + "@babel/parser@^7.10.3", "@babel/parser@^7.12.11", "@babel/parser@^7.12.7", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.10", "@babel/parser@^7.18.5", "@babel/parser@^7.4.5": version "7.18.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.5.tgz#337062363436a893a2d22faa60be5bb37091c83c" @@ -1698,6 +1728,13 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" +"@esm-bundle/chai@4.3.4-fix.0": + version "4.3.4-fix.0" + resolved "https://registry.yarnpkg.com/@esm-bundle/chai/-/chai-4.3.4-fix.0.tgz#3084cff7eb46d741749f47f3a48dbbdcbaf30a92" + integrity sha512-26SKdM4uvDWlY8/OOOxSB1AqQWeBosCX3wRYUZO7enTAj03CtVxIiCimYVG2WpULcyV51qapK4qTovwkUr5Mlw== + dependencies: + "@types/chai" "^4.2.12" + "@floating-ui/core@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.0.1.tgz#00e64d74e911602c8533957af0cce5af6b2e93c8" @@ -2176,6 +2213,11 @@ resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe" integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + "@jridgewell/set-array@^1.0.0": version "1.1.1" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea" @@ -2194,6 +2236,19 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c" integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w== +"@jridgewell/sourcemap-codec@^1.4.13", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.12": + version "0.3.19" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811" + integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@jridgewell/trace-mapping@^0.3.7", "@jridgewell/trace-mapping@^0.3.9": version "0.3.13" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz#dcfe3e95f224c8fe97a87a5235defec999aa92ea" @@ -3516,19 +3571,46 @@ os-homedir "^1.0.1" regexpu-core "^4.5.4" -"@playwright/test@^1.25.2": - version "1.25.2" - resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.25.2.tgz#e726cf4844f096315c3954fdb3abf295cede43ba" - integrity sha512-6qPznIR4Fw02OMbqXUPMG6bFFg1hDVNEdihKy0t9K0dmRbus1DyP5Q5XFQhGwEHQkLG5hrSfBuu9CW/foqhQHQ== +"@playwright/test@~1.37.1": + version "1.37.1" + resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.37.1.tgz#e7f44ae0faf1be52d6360c6bbf689fd0057d9b6f" + integrity sha512-bq9zTli3vWJo8S3LwB91U0qDNQDpEXnw7knhxLM0nwDvexQAwx9tO8iKDZSqqneVq+URd/WIoz+BALMqUTgdSg== dependencies: "@types/node" "*" - playwright-core "1.25.2" + playwright-core "1.37.1" + optionalDependencies: + fsevents "2.3.2" "@polka/url@^1.0.0-next.20": version "1.0.0-next.21" resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== +"@puppeteer/browsers@1.4.6": + version "1.4.6" + resolved "https://registry.yarnpkg.com/@puppeteer/browsers/-/browsers-1.4.6.tgz#1f70fd23d5d2ccce9d29b038e5039d7a1049ca77" + integrity sha512-x4BEjr2SjOPowNeiguzjozQbsc6h437ovD/wu+JpaenxVLm3jkgzHY2xOslMTp50HoTvQreMjiexiGQw1sqZlQ== + dependencies: + debug "4.3.4" + extract-zip "2.0.1" + progress "2.0.3" + proxy-agent "6.3.0" + tar-fs "3.0.4" + unbzip2-stream "1.4.3" + yargs "17.7.1" + +"@rollup/plugin-commonjs@~25.0.4": + version "25.0.4" + resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.4.tgz#a7547a0c4ec3fa79818eb313e1de0023e548f4e6" + integrity sha512-L92Vz9WUZXDnlQQl3EwbypJR4+DM2EbsO+/KOcEkP4Mc6Ct453EeDB2uH9lgRwj4w5yflgNpq9pHOiY8aoUXBQ== + dependencies: + "@rollup/pluginutils" "^5.0.1" + commondir "^1.0.1" + estree-walker "^2.0.2" + glob "^8.0.3" + is-reference "1.2.1" + magic-string "^0.27.0" + "@rollup/plugin-json@^4.1.0": version "4.1.0" resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3" @@ -3548,6 +3630,26 @@ is-module "^1.0.0" resolve "^1.19.0" +"@rollup/plugin-node-resolve@^15.0.1", "@rollup/plugin-node-resolve@~15.2.1": + version "15.2.1" + resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.1.tgz#a15b14fb7969229e26a30feff2816d39eff503f0" + integrity sha512-nsbUg588+GDSu8/NS8T4UAshO6xeaOfINNuXeVHcKV02LJtoRaM1SiOacClw4kws1SFiNhdLGxlbMY9ga/zs/w== + dependencies: + "@rollup/pluginutils" "^5.0.1" + "@types/resolve" "1.20.2" + deepmerge "^4.2.2" + is-builtin-module "^3.2.1" + is-module "^1.0.0" + resolve "^1.22.1" + +"@rollup/plugin-replace@~5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@rollup/plugin-replace/-/plugin-replace-5.0.2.tgz#45f53501b16311feded2485e98419acb8448c61d" + integrity sha512-M9YXNekv/C/iHHK+cvORzfRYfPbq0RDD8r0G+bMiTXjNGKulPnCT9O3Ss46WfhI6ZOCgApOP7xAdmCQJ+U2LAA== + dependencies: + "@rollup/pluginutils" "^5.0.1" + magic-string "^0.27.0" + "@rollup/plugin-typescript@^8.3.2": version "8.3.2" resolved "https://registry.yarnpkg.com/@rollup/plugin-typescript/-/plugin-typescript-8.3.2.tgz#e1b719e2ed3e752bbc092001656c48378f2d15f0" @@ -3565,6 +3667,15 @@ estree-walker "^1.0.1" picomatch "^2.2.2" +"@rollup/pluginutils@^5.0.1": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.0.3.tgz#183126d69aeb1cfa23401d5a71cb4b8c16c4a4e0" + integrity sha512-hfllNN4a80rwNQ9QCxhxuHCGHMAvabXqxNdaChUSSadMre7t4iEUI6fFAhBOn/eIYTgYVhBv7vCLsAJ4u3lf3g== + dependencies: + "@types/estree" "^1.0.0" + estree-walker "^2.0.2" + picomatch "^2.3.1" + "@rushstack/node-core-library@3.24.1": version "3.24.1" resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.24.1.tgz#4da7d59e9555c633f4cfdd4e4f097e5348891eb7" @@ -3657,6 +3768,41 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f" integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw== +"@sinonjs/commons@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" + integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== + dependencies: + type-detect "4.0.8" + +"@sinonjs/commons@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72" + integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^10.0.2", "@sinonjs/fake-timers@^10.3.0": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" + integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== + dependencies: + "@sinonjs/commons" "^3.0.0" + +"@sinonjs/samsam@^8.0.0": + version "8.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-8.0.0.tgz#0d488c91efb3fa1442e26abea81759dfc8b5ac60" + integrity sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew== + dependencies: + "@sinonjs/commons" "^2.0.0" + lodash.get "^4.4.2" + type-detect "^4.0.8" + +"@sinonjs/text-encoding@^0.7.1": + version "0.7.2" + resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz#5981a8db18b56ba38ef0efb7d995b12aa7b51918" + integrity sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ== + "@slorber/static-site-generator-webpack-plugin@^4.0.4": version "4.0.4" resolved "https://registry.yarnpkg.com/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.4.tgz#2bf4a2545e027830d2aa5eb950437c26a289b0f1" @@ -3667,11 +3813,6 @@ eval "^0.1.8" webpack-sources "^1.4.3" -"@socket.io/component-emitter@~3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553" - integrity sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg== - "@storybook/addon-actions@6.5.10": version "6.5.10" resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.5.10.tgz#83ec807a899e0412cf98037647f256c45cc32bf5" @@ -4672,16 +4813,33 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== +"@tootallnate/quickjs-emscripten@^0.23.0": + version "0.23.0" + resolved "https://registry.yarnpkg.com/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz#db4ecfd499a9765ab24002c3b696d02e6d32a12c" + integrity sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA== + "@trysound/sax@0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== +"@types/accepts@*": + version "1.3.5" + resolved "https://registry.yarnpkg.com/@types/accepts/-/accepts-1.3.5.tgz#c34bec115cfc746e04fe5a059df4ce7e7b391575" + integrity sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ== + dependencies: + "@types/node" "*" + "@types/argparse@1.0.38": version "1.0.38" resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-1.0.38.tgz#a81fd8606d481f873a3800c6ebae4f1d768a56a9" integrity sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA== +"@types/babel__code-frame@^7.0.2": + version "7.0.3" + resolved "https://registry.yarnpkg.com/@types/babel__code-frame/-/babel__code-frame-7.0.3.tgz#eda94e1b7c9326700a4b69c485ebbc9498a0b63f" + integrity sha512-2TN6oiwtNjOezilFVl77zwdNPwQWaDBBCCWWxyo1ctiO3vAtd7H/aB/CBJdw9+kqq3+latD0SXoedIuHySSZWw== + "@types/babel__generator@^7.6.1": version "7.6.4" resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" @@ -4714,17 +4872,23 @@ "@types/node" "*" "@types/responselike" "*" -"@types/chai-spies@^1.0.3": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@types/chai-spies/-/chai-spies-1.0.3.tgz#a52dc61af3853ec9b80965040811d15dfd401542" - integrity sha512-RBZjhVuK7vrg4rWMt04UF5zHYwfHnpk5mIWu3nQvU3AKGDixXzSjZ6v0zke6pBcaJqMv3IBZ5ibLWPMRDL0sLw== +"@types/chai@^4.2.12": + version "4.3.5" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.5.tgz#ae69bcbb1bebb68c4ac0b11e9d8ed04526b3562b" + integrity sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng== + +"@types/co-body@^6.1.0": + version "6.1.0" + resolved "https://registry.yarnpkg.com/@types/co-body/-/co-body-6.1.0.tgz#b52625390eb0d113c9b697ea92c3ffae7740cdb9" + integrity sha512-3e0q2jyDAnx/DSZi0z2H0yoZ2wt5yRDZ+P7ymcMObvq0ufWRT4tsajyO+Q1VwVWiv9PRR4W3YEjEzBjeZlhF+w== dependencies: - "@types/chai" "*" + "@types/node" "*" + "@types/qs" "*" -"@types/chai@*", "@types/chai@^4.2.11": - version "4.3.1" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.1.tgz#e2c6e73e0bdeb2521d00756d099218e9f5d90a04" - integrity sha512-/zPMqDkzSZ8t3VtxOa4KPq7uzzW978M9Tvh+j7GHKuo6k6GTLxPJ4J5gE5cjfJ26pnXst0N5Hax8Sr0T2Mi9zQ== +"@types/command-line-args@^5.0.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@types/command-line-args/-/command-line-args-5.2.0.tgz#adbb77980a1cc376bb208e3f4142e907410430f6" + integrity sha512-UuKzKpJJ/Ief6ufIaIzr3A/0XnluX7RvFgwkV89Yzvm77wCh1kFaFmqN8XEnGcN62EuHdedQjEMb8mYxFLGPyA== "@types/connect-history-api-fallback@^1.3.5": version "1.3.5" @@ -4741,15 +4905,30 @@ dependencies: "@types/node" "*" -"@types/cookie@^0.4.1": - version "0.4.1" - resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.1.tgz#bfd02c1f2224567676c1545199f87c3a861d878d" - integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== +"@types/content-disposition@*": + version "0.5.5" + resolved "https://registry.yarnpkg.com/@types/content-disposition/-/content-disposition-0.5.5.tgz#650820e95de346e1f84e30667d168c8fd25aa6e3" + integrity sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA== + +"@types/convert-source-map@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/convert-source-map/-/convert-source-map-2.0.0.tgz#a36c2d21963caa18fe32de6cdec3d21a7d2c92b3" + integrity sha512-QUm4YOC/ENo0VjPVl2o8HGyTbHHQGDOw8PCg3rXBucYHKyZN/XjXRbPFAV1tB2FvM0/wyFoDct4cTIctzKrQFg== + +"@types/cookies@*": + version "0.7.7" + resolved "https://registry.yarnpkg.com/@types/cookies/-/cookies-0.7.7.tgz#7a92453d1d16389c05a5301eef566f34946cfd81" + integrity sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA== + dependencies: + "@types/connect" "*" + "@types/express" "*" + "@types/keygrip" "*" + "@types/node" "*" -"@types/cors@^2.8.12": - version "2.8.12" - resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.12.tgz#6b2c510a7ad7039e98e7b8d3d6598f4359e5c080" - integrity sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw== +"@types/debounce@^1.2.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/debounce/-/debounce-1.2.1.tgz#79b65710bc8b6d44094d286aecf38e44f9627852" + integrity sha512-epMsEE85fi4lfmJUH/89/iV/LI+F5CvNIvmgs5g5jYFPfhO2S/ae8WSsLOKWdwtoaZw9Q2IhJ4tQ5tFCcS/4HA== "@types/debug@^4.0.0": version "4.1.7" @@ -4784,6 +4963,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== +"@types/estree@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194" + integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA== + "@types/execa@^0.9.0": version "0.9.0" resolved "https://registry.yarnpkg.com/@types/execa/-/execa-0.9.0.tgz#9b025d2755f17e80beaf9368c3f4f319d8b0fb93" @@ -4847,11 +5031,21 @@ resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== +"@types/http-assert@*": + version "1.5.3" + resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.5.3.tgz#ef8e3d1a8d46c387f04ab0f2e8ab8cb0c5078661" + integrity sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA== + "@types/http-cache-semantics@*": version "4.0.1" resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812" integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ== +"@types/http-errors@*": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.1.tgz#20172f9578b225f6c7da63446f56d4ce108d5a65" + integrity sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ== + "@types/http-proxy@^1.17.8": version "1.17.9" resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.9.tgz#7f0e7931343761efde1e2bf48c40f02f3f75705a" @@ -4864,7 +5058,7 @@ resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.1.tgz#2d024eace950c836d9e3335a66b97960ae41d022" integrity sha512-A79HEEiwXTFtfY+Bcbo58M2GRYzCr9itHWzbzHVFNEYCcoU/MMGwYYf721gBrnhpj1s6RGVVha/IgNFnR0Iw/Q== -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1", "@types/istanbul-lib-coverage@^2.0.3": version "2.0.4" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== @@ -4922,6 +5116,11 @@ "@types/node" "*" log4js "^6.4.1" +"@types/keygrip@*": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@types/keygrip/-/keygrip-1.0.2.tgz#513abfd256d7ad0bf1ee1873606317b33b1b2a72" + integrity sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw== + "@types/keyv@*": version "3.1.4" resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.4.tgz#3ccdb1c6751b0c7e52300bcdacd5bcbf8faa75b6" @@ -4929,6 +5128,27 @@ dependencies: "@types/node" "*" +"@types/koa-compose@*": + version "3.2.5" + resolved "https://registry.yarnpkg.com/@types/koa-compose/-/koa-compose-3.2.5.tgz#85eb2e80ac50be95f37ccf8c407c09bbe3468e9d" + integrity sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ== + dependencies: + "@types/koa" "*" + +"@types/koa@*", "@types/koa@^2.11.6": + version "2.13.8" + resolved "https://registry.yarnpkg.com/@types/koa/-/koa-2.13.8.tgz#4302d2f2712348aadb6c0b03eb614f30afde486b" + integrity sha512-Ugmxmgk/yPRW3ptBTh9VjOLwsKWJuGbymo1uGX0qdaqqL18uJiiG1ZoV0rxCOYSaDGhvEp5Ece02Amx0iwaxQQ== + dependencies: + "@types/accepts" "*" + "@types/content-disposition" "*" + "@types/cookies" "*" + "@types/http-assert" "*" + "@types/http-errors" "*" + "@types/keygrip" "*" + "@types/koa-compose" "*" + "@types/node" "*" + "@types/lodash-es@^4.17.4": version "4.17.6" resolved "https://registry.yarnpkg.com/@types/lodash-es/-/lodash-es-4.17.6.tgz#c2ed4c8320ffa6f11b43eb89e9eaeec65966a0a0" @@ -4963,6 +5183,11 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== +"@types/mocha@10.0.1", "@types/mocha@^10.0.1": + version "10.0.1" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-10.0.1.tgz#2f4f65bb08bc368ac39c96da7b2f09140b26851b" + integrity sha512-/fvYntiO1GeICvqbQ3doGDIP97vWmvFt83GKguJ6prmQM2iXZfFcq6YE8KteFyRtX2/h5Hf91BYvPodJKFYv5Q== + "@types/mocha@^7.0.2": version "7.0.2" resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-7.0.2.tgz#b17f16cf933597e10d6d78eae3251e692ce8b0ce" @@ -4986,7 +5211,7 @@ "@types/node" "*" form-data "^3.0.0" -"@types/node@*", "@types/node@>=10.0.0": +"@types/node@*": version "18.7.23" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.7.23.tgz#75c580983846181ebe5f4abc40fe9dfb2d65665f" integrity sha512-DWNcCHolDq0ZKGizjx2DZjR/PqsYwAcYUJmfMWqtVU2MBMG5Mo+xFZrhGId5r/O5HOuMPyQEcM6KUBp5lBZZBg== @@ -5046,6 +5271,11 @@ resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== +"@types/parse5@^6.0.1": + version "6.0.3" + resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-6.0.3.tgz#705bb349e789efa06f43f128cef51240753424cb" + integrity sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g== + "@types/pretty-hrtime@^1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/@types/pretty-hrtime/-/pretty-hrtime-1.0.1.tgz#72a26101dc567b0d68fd956cf42314556e42d601" @@ -5115,6 +5345,11 @@ dependencies: "@types/node" "*" +"@types/resolve@1.20.2": + version "1.20.2" + resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.20.2.tgz#97d26e00cd4a0423b4af620abecf3e6f442b7975" + integrity sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q== + "@types/responselike@*", "@types/responselike@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29" @@ -5154,6 +5389,18 @@ "@types/mime" "^1" "@types/node" "*" +"@types/sinon@10.0.17": + version "10.0.17" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.17.tgz#97592d7c73ded11907f9121a2837f5ab5f9ccaa0" + integrity sha512-+6ILpcixQ0Ma3dHMTLv4rSycbDXkDljgKL+E0nI2RUxxhYTFyPSjt6RVMxh7jUshvyVcBvicb0Ktj+lAJcjgeA== + dependencies: + "@types/sinonjs__fake-timers" "*" + +"@types/sinonjs__fake-timers@*": + version "8.1.3" + resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.3.tgz#575789c5cf6d410cb288b0b4affaf7e6da44ca51" + integrity sha512-4g+2YyWe0Ve+LBh+WUm1697PD0Kdi6coG1eU0YjQbwx61AZ8XbEpL1zIT6WjuUKrCMCROpEaYQPDjBnDouBVAQ== + "@types/sockjs@^0.3.33": version "0.3.33" resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.33.tgz#570d3a0b99ac995360e3136fd6045113b1bd236f" @@ -5214,6 +5461,13 @@ anymatch "^3.0.0" source-map "^0.6.0" +"@types/ws@^7.4.0": + version "7.4.7" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.7.tgz#f7c390a36f7a0679aa69de2d501319f4f8d9b702" + integrity sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww== + dependencies: + "@types/node" "*" + "@types/ws@^8.5.1": version "8.5.3" resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.3.tgz#7d25a1ffbecd3c4f2d35068d0b283c037003274d" @@ -5240,6 +5494,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/yauzl@^2.9.1": + version "2.10.0" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.0.tgz#b3248295276cf8c6f153ebe6a9aba0c988cb2599" + integrity sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw== + dependencies: + "@types/node" "*" + "@typescript-eslint/eslint-plugin@^5.0.0": version "5.35.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.35.1.tgz#0d822bfea7469904dfc1bb8f13cabd362b967c93" @@ -5359,6 +5620,13 @@ resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== +"@web/browser-logs@^0.3.2", "@web/browser-logs@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@web/browser-logs/-/browser-logs-0.3.3.tgz#121e5b662db2707c4b8cd1628d86903f059f5031" + integrity sha512-wt8arj0x7ghXbnipgCvLR+xQ90cFg16ae23cFbInCrJvAxvyI22bAtT24W4XOXMPXwWLBVUJwBgBcXo3oKIvDw== + dependencies: + errorstacks "^2.2.0" + "@web/config-loader@0.1.3": version "0.1.3" resolved "https://registry.yarnpkg.com/@web/config-loader/-/config-loader-0.1.3.tgz#8325ea54f75ef2ee7166783e64e66936db25bff7" @@ -5366,6 +5634,178 @@ dependencies: semver "^7.3.4" +"@web/config-loader@^0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@web/config-loader/-/config-loader-0.2.1.tgz#a5ff416922994d698e1df8c3613715bde47ecf79" + integrity sha512-cQvTYA5lWLyyO8/R2aOReiudLa8r0LFHvMNYCwSAjzvrghb+AHxaW3BJWP9ORx6OaDcI7g5X8OATA81LSJce4A== + dependencies: + semver "^7.3.4" + +"@web/dev-server-core@^0.5.0", "@web/dev-server-core@^0.5.1": + version "0.5.2" + resolved "https://registry.yarnpkg.com/@web/dev-server-core/-/dev-server-core-0.5.2.tgz#27fe5448e587a87272b556b44ce84c6453655cdb" + integrity sha512-7YjWmwzM+K5fPvBCXldUIMTK4EnEufi1aWQWinQE81oW1CqzEwmyUNCtnWV9fcPA4kJC4qrpcjWNGF4YDWxuSg== + dependencies: + "@types/koa" "^2.11.6" + "@types/ws" "^7.4.0" + "@web/parse5-utils" "^2.0.0" + chokidar "^3.4.3" + clone "^2.1.2" + es-module-lexer "^1.0.0" + get-stream "^6.0.0" + is-stream "^2.0.0" + isbinaryfile "^5.0.0" + koa "^2.13.0" + koa-etag "^4.0.0" + koa-send "^5.0.1" + koa-static "^5.0.0" + lru-cache "^8.0.4" + mime-types "^2.1.27" + parse5 "^6.0.1" + picomatch "^2.2.2" + ws "^7.4.2" + +"@web/dev-server-rollup@^0.5.1", "@web/dev-server-rollup@~0.5.2": + version "0.5.2" + resolved "https://registry.yarnpkg.com/@web/dev-server-rollup/-/dev-server-rollup-0.5.2.tgz#5a6a9138cd57f32f7ae0e5caab69099c1428bd15" + integrity sha512-R1heFIOmbExKJn2auDcOcF0EPoLQotZF1HE8Bpqq4TfLRkc7w+JClLdwkOMr/+Ip608cRw8VMkc7teYDFkvSXw== + dependencies: + "@rollup/plugin-node-resolve" "^15.0.1" + "@web/dev-server-core" "^0.5.0" + nanocolors "^0.2.1" + parse5 "^6.0.1" + rollup "^3.15.0" + whatwg-url "^11.0.0" + +"@web/dev-server@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@web/dev-server/-/dev-server-0.3.0.tgz#9818bc2c8b88b61761b70081a8ac2afedfb4d308" + integrity sha512-QlKiWrf8MAUIXAhMSGuBepXyZFNOi3GDPQGsnf5ZAnFXUAOT3LCXiKSBMSKfXIrPpFQ7AzyJwT+KIZ7LvnMJcg== + dependencies: + "@babel/code-frame" "^7.12.11" + "@types/command-line-args" "^5.0.0" + "@web/config-loader" "^0.2.1" + "@web/dev-server-core" "^0.5.1" + "@web/dev-server-rollup" "^0.5.1" + camelcase "^6.2.0" + command-line-args "^5.1.1" + command-line-usage "^7.0.1" + debounce "^1.2.0" + deepmerge "^4.2.2" + ip "^1.1.5" + nanocolors "^0.2.1" + open "^8.0.2" + portfinder "^1.0.32" + +"@web/parse5-utils@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@web/parse5-utils/-/parse5-utils-2.0.1.tgz#11b91417165a838954dcf228383cfd8e1bdaf914" + integrity sha512-FQI72BU5CXhpp7gLRskOQGGCcwvagLZnMnDwAfjrxo3pm1KOQzr8Vl+438IGpHV62xvjNdF1pjXwXcf7eekWGw== + dependencies: + "@types/parse5" "^6.0.1" + parse5 "^6.0.1" + +"@web/test-runner-chrome@^0.14.0": + version "0.14.1" + resolved "https://registry.yarnpkg.com/@web/test-runner-chrome/-/test-runner-chrome-0.14.1.tgz#ca95de63b75bdf4480a337061d6b0035c8d3f9c3" + integrity sha512-snyQN5xyiTFVXQ1bmJ1T5dqgnCXofngTv2aevv5gW4FumKo96aFF7kBr+SRQnEd3yary+xJsGFT+50A6/mJ+1A== + dependencies: + "@web/test-runner-core" "^0.11.2" + "@web/test-runner-coverage-v8" "^0.7.0" + async-mutex "0.4.0" + chrome-launcher "^0.15.0" + puppeteer-core "^20.0.0" + +"@web/test-runner-commands@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@web/test-runner-commands/-/test-runner-commands-0.8.0.tgz#8c4dfdfdf1a6e9b4e1e9f2fe398fce07af3aef70" + integrity sha512-R40Rz+Tf3Y3Z4Ka9ey0DQcwYz3BflkyaoL2TNc7CR33iN6zv9pzRkRrtt4M/cSQfOPBTEsLlVAi1FsbvXsCKuQ== + dependencies: + "@web/test-runner-core" "^0.11.1" + mkdirp "^1.0.4" + +"@web/test-runner-core@^0.11.0", "@web/test-runner-core@^0.11.1", "@web/test-runner-core@^0.11.2": + version "0.11.4" + resolved "https://registry.yarnpkg.com/@web/test-runner-core/-/test-runner-core-0.11.4.tgz#590994c3fc69337e2c5411bf11c293dd061cc07a" + integrity sha512-E7BsKAP8FAAEsfj4viASjmuaYfOw4UlKP9IFqo4W20eVyd1nbUWU3Amq4Jksh7W/j811qh3VaFNjDfCwklQXMg== + dependencies: + "@babel/code-frame" "^7.12.11" + "@types/babel__code-frame" "^7.0.2" + "@types/co-body" "^6.1.0" + "@types/convert-source-map" "^2.0.0" + "@types/debounce" "^1.2.0" + "@types/istanbul-lib-coverage" "^2.0.3" + "@types/istanbul-reports" "^3.0.0" + "@web/browser-logs" "^0.3.2" + "@web/dev-server-core" "^0.5.1" + chokidar "^3.4.3" + cli-cursor "^3.1.0" + co-body "^6.1.0" + convert-source-map "^2.0.0" + debounce "^1.2.0" + dependency-graph "^0.11.0" + globby "^11.0.1" + ip "^1.1.5" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-report "^3.0.1" + istanbul-reports "^3.0.2" + log-update "^4.0.0" + nanocolors "^0.2.1" + nanoid "^3.1.25" + open "^8.0.2" + picomatch "^2.2.2" + source-map "^0.7.3" + +"@web/test-runner-coverage-v8@^0.7.0": + version "0.7.1" + resolved "https://registry.yarnpkg.com/@web/test-runner-coverage-v8/-/test-runner-coverage-v8-0.7.1.tgz#b09c73f3e49ef6256cb589a5d7b09d1e28aef9b2" + integrity sha512-R0laTOxbLg7kVKHCBILEmja3w1ihlwkB+eRc7J06/ByyZoQVWxkM9SrTAUx7qCFI6o738Jj24a6TfIDbu3CwSA== + dependencies: + "@web/test-runner-core" "^0.11.0" + istanbul-lib-coverage "^3.0.0" + lru-cache "^8.0.4" + picomatch "^2.2.2" + v8-to-istanbul "^9.0.1" + +"@web/test-runner-mocha@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@web/test-runner-mocha/-/test-runner-mocha-0.8.1.tgz#ef5744064bd9619c562cfa01c0b642e52757e4f7" + integrity sha512-CfYNZBbUSBiPNKkbF/dhxayecLCYZnu3g4cfgpfgmvLewlVOO6gNxaPt2c1/QhZutzTvXcMlsmaoWyk08F+V6A== + dependencies: + "@types/mocha" "^10.0.1" + "@web/test-runner-core" "^0.11.1" + +"@web/test-runner-playwright@0.10.1": + version "0.10.1" + resolved "https://registry.yarnpkg.com/@web/test-runner-playwright/-/test-runner-playwright-0.10.1.tgz#f9fc29dbd771bcb65dcebe826b257d10fb8a8ec5" + integrity sha512-/sEfuKc60UT0gXdn7M6lFddh+nCepO73gLPe2Og7jfoFv2tDkkk41RYBG75jx11RMVOJ6+i1peluLZSVxLlcEg== + dependencies: + "@web/test-runner-core" "^0.11.0" + "@web/test-runner-coverage-v8" "^0.7.0" + playwright "^1.22.2" + +"@web/test-runner@0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@web/test-runner/-/test-runner-0.17.0.tgz#d795e72fefd54f32142e723d9e34b3b16f15d59b" + integrity sha512-wt2auPsy8ZChqqiCrRdS4DInCAUnEOYZfpPV9Shx/6/UKqhg8MTgPJQ53wDRsCjzxxgZLhVeBpGKP3jmZriFxw== + dependencies: + "@web/browser-logs" "^0.3.3" + "@web/config-loader" "^0.2.1" + "@web/dev-server" "^0.3.0" + "@web/test-runner-chrome" "^0.14.0" + "@web/test-runner-commands" "^0.8.0" + "@web/test-runner-core" "^0.11.1" + "@web/test-runner-mocha" "^0.8.1" + camelcase "^6.2.0" + command-line-args "^5.1.1" + command-line-usage "^7.0.1" + convert-source-map "^2.0.0" + diff "^5.0.0" + globby "^11.0.1" + nanocolors "^0.2.1" + portfinder "^1.0.32" + source-map "^0.7.3" + "@webassemblyjs/ast@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" @@ -5687,7 +6127,7 @@ JSONStream@^1.0.4: jsonparse "^1.2.0" through ">=2.2.7 <3" -abab@^2.0.3, abab@^2.0.5: +abab@^2.0.5: version "2.0.6" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== @@ -5697,11 +6137,6 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -abbrev@1.0.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" - integrity sha1-kbR5JYinc4wl813W9jdSovh3YTU= - accepts@^1.3.5, accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -5720,14 +6155,6 @@ acorn-dynamic-import@^4.0.0: resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw== -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - acorn-import-assertions@^1.7.6: version "1.8.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" @@ -5738,11 +6165,6 @@ acorn-jsx@^5.0.1, acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - acorn-walk@^8.0.0: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" @@ -5753,12 +6175,7 @@ acorn@^6.1.1, acorn@^6.4.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.0.4, acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.8.0: +acorn@^8.0.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.8.0: version "8.8.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8" integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== @@ -5780,6 +6197,13 @@ agent-base@6, agent-base@^6.0.2: dependencies: debug "4" +agent-base@^7.0.1, agent-base@^7.0.2, agent-base@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.0.tgz#536802b76bc0b34aa50195eb2442276d613e3434" + integrity sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg== + dependencies: + debug "^4.3.4" + agentkeepalive@^4.1.3, agentkeepalive@^4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" @@ -5844,16 +6268,6 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^5.0.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@~6.12.6: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -5901,11 +6315,6 @@ algoliasearch@^4.0.0, algoliasearch@^4.13.0: "@algolia/requester-node-http" "4.13.0" "@algolia/transporter" "4.13.0" -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= - anafanafo@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anafanafo/-/anafanafo-2.0.0.tgz#43f56274680bc553dd67a9625a920f88d0057b5c" @@ -5979,11 +6388,6 @@ ansi-regex@^6.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -6265,16 +6669,18 @@ assert@^1.1.1: object-assign "^4.1.1" util "0.10.3" -assertion-error@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" - integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== - assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= +ast-types@^0.13.4: + version "0.13.4" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" + integrity sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w== + dependencies: + tslib "^2.0.1" + astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" @@ -6285,12 +6691,14 @@ async-each@^1.0.1: resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== -async@1.x: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= +async-mutex@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/async-mutex/-/async-mutex-0.4.0.tgz#ae8048cd4d04ace94347507504b3cf15e631c25f" + integrity sha512-eJFZ1YhRR8UN8eBLoNzcDPcy/jqjsg6I1AP+KvWQX80BqOSW1oJPJXDylPUEeMr2ZQvHgnQ//Lp6f3RQ1zI7HA== + dependencies: + tslib "^2.4.0" -async@^2.5.0: +async@^2.5.0, async@^2.6.4: version "2.6.4" resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA== @@ -6344,28 +6752,10 @@ axios@^0.25.0: dependencies: follow-redirects "^1.14.7" -babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-generator@^6.18.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" +b4a@^1.6.4: + version "1.6.4" + resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.4.tgz#ef1c1422cae5ce6535ec191baeed7567443f36c9" + integrity sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw== babel-loader@^8.0.0, babel-loader@^8.2.5: version "8.2.5" @@ -6377,13 +6767,6 @@ babel-loader@^8.0.0, babel-loader@^8.2.5: make-dir "^3.1.0" schema-utils "^2.6.5" -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - babel-plugin-apply-mdx-type-prop@1.6.22: version "1.6.22" resolved "https://registry.yarnpkg.com/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz#d216e8fd0de91de3f1478ef3231e05446bc8705b" @@ -6470,55 +6853,6 @@ babel-plugin-polyfill-regenerator@^0.3.0: dependencies: "@babel/helper-define-polyfill-provider" "^0.3.1" -babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.18.0, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.18.0, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - badge-maker@^3.2.0: version "3.3.1" resolved "https://registry.yarnpkg.com/badge-maker/-/badge-maker-3.3.1.tgz#df1cb2d5943f25740672f37a95598d9ba2b109c9" @@ -6547,11 +6881,6 @@ base64-js@^1.0.2, base64-js@^1.3.1: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -base64id@2.0.0, base64id@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" - integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== - base@^0.11.1: version "0.11.2" resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" @@ -6565,6 +6894,11 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +basic-ftp@^5.0.2: + version "5.0.3" + resolved "https://registry.yarnpkg.com/basic-ftp/-/basic-ftp-5.0.3.tgz#b14c0fe8111ce001ec913686434fe0c2fb461228" + integrity sha512-QHX8HLlncOLpy54mh+k/sWIFd0ThmRqwe9ZjELybGZK+tZ8rUb9VO0saKJUROTbE+KhzDUT7xziGpGrW8Kmd+g== + batch@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" @@ -6678,7 +7012,7 @@ bn.js@^5.0.0, bn.js@^5.1.1: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -body-parser@1.20.0, body-parser@^1.19.0: +body-parser@1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" integrity sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg== @@ -6801,11 +7135,6 @@ browser-assert@^1.2.1: resolved "https://registry.yarnpkg.com/browser-assert/-/browser-assert-1.2.1.tgz#9aaa5a2a8c74685c2ae05bfe46efd606f068c200" integrity sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ== -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - browser-stdout@1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" @@ -6914,6 +7243,11 @@ buffer-alloc@^1.1.0: buffer-alloc-unsafe "^1.1.0" buffer-fill "^1.0.0" +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" @@ -6948,7 +7282,7 @@ buffer@^4.3.0: ieee754 "^1.1.4" isarray "^1.0.0" -buffer@^5.2.0, buffer@^5.5.0: +buffer@^5.2.0, buffer@^5.2.1, buffer@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== @@ -6961,6 +7295,11 @@ builtin-modules@^3.0.0: resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== +builtin-modules@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" + integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== + builtin-status-codes@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" @@ -7216,23 +7555,12 @@ ccount@^2.0.0: resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== -chai-spies@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chai-spies/-/chai-spies-1.0.0.tgz#d16b39336fb316d03abf8c375feb23c0c8bb163d" - integrity sha512-elF2ZUczBsFoP07qCfMO/zeggs8pqCf3fZGyK5+2X4AndS8jycZYID91ztD9oQ7d/0tnS963dPkd0frQEThDsg== - -chai@^4.2.0: - version "4.3.6" - resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.6.tgz#ffe4ba2d9fa9d6680cc0b370adae709ec9011e9c" - integrity sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q== - dependencies: - assertion-error "^1.1.0" - check-error "^1.0.2" - deep-eql "^3.0.1" - get-func-name "^2.0.0" - loupe "^2.3.1" - pathval "^1.1.1" - type-detect "^4.0.5" +chalk-template@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/chalk-template/-/chalk-template-0.4.0.tgz#692c034d0ed62436b9062c1707fadcd0f753204b" + integrity sha512-/ghrgmhfY8RaSdeo43hNXxpoHAtxdbskUHjPpfqUWGttFgycUhYPGx3YZBCnUCvOa7Doivn1IZec3DEGFoMgLg== + dependencies: + chalk "^4.1.2" chalk@4.1.0: version "4.1.0" @@ -7242,18 +7570,7 @@ chalk@4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -7320,11 +7637,6 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -check-error@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" - integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= - cheerio-select@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-1.6.0.tgz#489f36604112c722afa147dedd0d4609c09e1696" @@ -7426,6 +7738,21 @@ chokidar@3.5.2: optionalDependencies: fsevents "~2.3.2" +chokidar@3.5.3, chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.4.3, chokidar@^3.5.1, chokidar@^3.5.2, chokidar@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + chokidar@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -7445,21 +7772,6 @@ chokidar@^2.1.8: optionalDependencies: fsevents "^1.2.7" -chokidar@^3.4.1, chokidar@^3.4.2, chokidar@^3.5.1, chokidar@^3.5.2, chokidar@^3.5.3: - version "3.5.3" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" - chownr@^1.1.1: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" @@ -7470,11 +7782,28 @@ chownr@^2.0.0: resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== +chrome-launcher@^0.15.0: + version "0.15.2" + resolved "https://registry.yarnpkg.com/chrome-launcher/-/chrome-launcher-0.15.2.tgz#4e6404e32200095fdce7f6a1e1004f9bd36fa5da" + integrity sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ== + dependencies: + "@types/node" "*" + escape-string-regexp "^4.0.0" + is-wsl "^2.2.0" + lighthouse-logger "^1.0.0" + chrome-trace-event@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== +chromium-bidi@0.4.16: + version "0.4.16" + resolved "https://registry.yarnpkg.com/chromium-bidi/-/chromium-bidi-0.4.16.tgz#8a67bfdf6bb8804efc22765a82859d20724b46ab" + integrity sha512-7ZbXdWERxRxSwo3txsBjjmc/NLxqb1Bk30mRb0BMS4YIaiV6zvKZqL/UAH+DdqcDYayDWk2n/y8klkBDODrPvA== + dependencies: + mitt "3.0.0" + ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" @@ -7589,6 +7918,15 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" @@ -7646,7 +7984,7 @@ cmd-shim@^5.0.0: dependencies: mkdirp-infer-owner "^2.0.0" -co-body@^6.0.0: +co-body@^6.0.0, co-body@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/co-body/-/co-body-6.1.0.tgz#d87a8efc3564f9bfe3aced8ef5cd04c7a8766547" integrity sha512-m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ== @@ -7789,7 +8127,7 @@ command-line-args@5.1.2: lodash.camelcase "^4.3.0" typical "^4.0.0" -command-line-args@^5.0.2: +command-line-args@^5.0.2, command-line-args@^5.1.1, command-line-args@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e" integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg== @@ -7809,6 +8147,16 @@ command-line-usage@^6.1.0: table-layout "^1.0.2" typical "^5.2.0" +command-line-usage@^7.0.0, command-line-usage@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-7.0.1.tgz#e540afef4a4f3bc501b124ffde33956309100655" + integrity sha512-NCyznE//MuTjwi3y84QVUGEOT+P5oto1e1Pk/jFPVdPPfsG03qpTIl3yw6etR+v73d0lXsoojRpvbru2sqePxQ== + dependencies: + array-back "^6.2.2" + chalk-template "^0.4.0" + table-layout "^3.0.0" + typical "^7.1.1" + commander@2, commander@^2.20.0, commander@^2.20.3, commander@^2.7.1: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -7994,16 +8342,6 @@ connect-history-api-fallback@^1.6.0: resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== -connect@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" - integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== - dependencies: - debug "2.6.9" - finalhandler "1.1.2" - parseurl "~1.3.3" - utils-merge "1.0.1" - consola@^2.15.3: version "2.15.3" resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" @@ -8123,13 +8461,23 @@ conventional-recommended-bump@^6.1.0: meow "^8.0.0" q "^1.5.1" -convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: +convert-source-map@^1.4.0, convert-source-map@^1.7.0: version "1.8.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== dependencies: safe-buffer "~5.1.1" +convert-source-map@^1.6.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== + cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" @@ -8140,11 +8488,6 @@ cookie@0.5.0: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== -cookie@~0.4.1: - version "0.4.2" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" - integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== - cookies@~0.8.0: version "0.8.0" resolved "https://registry.yarnpkg.com/cookies/-/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90" @@ -8218,7 +8561,7 @@ core-js-pure@^3.20.2: resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.22.4.tgz#a992210f4cad8b32786b8654563776c56b0e0d0a" integrity sha512-4iF+QZkpzIz0prAFuepmxwJ2h5t4agvE8WPYqs2mjLJMNNwJOnpch76w2Q7bUfCPEv/V7wpvOfog0w273M+ZSw== -core-js@^2.4.0, core-js@^2.4.1: +core-js@^2.4.1: version "2.6.12" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== @@ -8233,14 +8576,6 @@ core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== -cors@~2.8.5: - version "2.8.5" - resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" - integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== - dependencies: - object-assign "^4" - vary "^1" - cosmiconfig@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" @@ -8319,6 +8654,13 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: safe-buffer "^5.0.1" sha.js "^2.4.8" +cross-fetch@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-4.0.0.tgz#f037aef1580bb3a1a35164ea2a848ba81b445983" + integrity sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g== + dependencies: + node-fetch "^2.6.12" + cross-fetch@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.5.tgz#e1389f44d9e7ba767907f7af8454787952ab534f" @@ -8545,23 +8887,6 @@ csso@^4.2.0: dependencies: css-tree "^1.1.2" -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - csstype@^2.5.8: version "2.6.20" resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda" @@ -8589,11 +8914,6 @@ custom-elements-manifest@1.0.0: resolved "https://registry.yarnpkg.com/custom-elements-manifest/-/custom-elements-manifest-1.0.0.tgz#b35c2129076a1dc9f95d720c6f7b5b71a857274b" integrity sha512-j59k0ExGCKA8T6Mzaq+7axc+KVHwpEphEERU7VZ99260npu/p/9kd+Db+I3cGKxHkM5y6q5gnlXn00mzRQkX2A== -custom-event@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" - integrity sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU= - cyclist@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" @@ -9109,14 +9429,10 @@ dargs@^7.0.0: resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" +data-uri-to-buffer@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-5.0.1.tgz#db89a9e279c2ffe74f50637a59a32fb23b3e4d7c" + integrity sha512-a9l6T1qqDogvvnw0nKlfZzqsyikEBZBClF39V3TFoKhDtGBqHu2HkuomJc02j5zft8zrUaXEuoicLeW54RkzPg== date-fns@^2.16.1: version "2.28.0" @@ -9133,12 +9449,12 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -debounce@1.2.1: +debounce@1.2.1, debounce@^1.2.0: version "1.2.1" resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -9152,7 +9468,7 @@ debug@3.2.6: dependencies: ms "^2.1.1" -debug@4, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: +debug@4, debug@4.3.4, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -9196,11 +9512,6 @@ decamelize@^4.0.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== -decimal.js@^10.2.1: - version "10.3.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" - integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== - decode-named-character-reference@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.0.1.tgz#57b2bd9112659cacbc449d3577d7dadb8e1f3d1b" @@ -9239,13 +9550,6 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= -deep-eql@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" - integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== - dependencies: - type-detect "^4.0.0" - deep-equal@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" @@ -9256,7 +9560,7 @@ deep-extend@^0.6.0, deep-extend@~0.6.0: resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== -deep-is@^0.1.3, deep-is@~0.1.3: +deep-is@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== @@ -9334,6 +9638,15 @@ define-property@^2.0.2: is-descriptor "^1.0.2" isobject "^3.0.1" +degenerator@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-5.0.1.tgz#9403bf297c6dad9a1ece409b37db27954f91f2f5" + integrity sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ== + dependencies: + ast-types "^0.13.4" + escodegen "^2.1.0" + esprima "^4.0.1" + del@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz#9e8f117222ea44a31ff3a156c049b99052a9f0b4" @@ -9388,6 +9701,11 @@ depd@^1.1.2, depd@~1.1.2: resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= +dependency-graph@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.11.0.tgz#ac0ce7ed68a54da22165a85e97a01d53f5eb2e27" + integrity sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg== + deprecation@^2.0.0, deprecation@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" @@ -9418,13 +9736,6 @@ detab@2.0.4: dependencies: repeat-string "^1.5.4" -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - detect-indent@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" @@ -9468,6 +9779,11 @@ detect-port@^1.3.0: address "^1.0.1" debug "^2.6.0" +devtools-protocol@0.0.1147663: + version "0.0.1147663" + resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz#4ec5610b39a6250d1f87e6b9c7e16688ed0ac78e" + integrity sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ== + dezalgo@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" @@ -9476,11 +9792,6 @@ dezalgo@^1.0.0: asap "^2.0.0" wrappy "1" -di@^0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" - integrity sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw= - diff-sequences@^25.2.6: version "25.2.6" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" @@ -9506,6 +9817,11 @@ diff@^4.0.1: resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== +diff@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" + integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw== + diffie-hellman@^5.0.0: version "5.0.3" resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" @@ -9579,16 +9895,6 @@ dom-iterator@^1.0.0: component-props "1.1.1" component-xor "0.0.4" -dom-serialize@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/dom-serialize/-/dom-serialize-2.2.1.tgz#562ae8999f44be5ea3076f5419dcd59eb43ac95b" - integrity sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs= - dependencies: - custom-event "~1.0.0" - ent "~2.2.0" - extend "^3.0.0" - void-elements "^2.0.0" - dom-serializer@0: version "0.2.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" @@ -9634,13 +9940,6 @@ domelementtype@^2.0.1, domelementtype@^2.2.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - domhandler@^2.3.0: version "2.4.2" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" @@ -9830,27 +10129,6 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1: dependencies: once "^1.4.0" -engine.io-parser@~5.0.3: - version "5.0.4" - resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-5.0.4.tgz#0b13f704fa9271b3ec4f33112410d8f3f41d0fc0" - integrity sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg== - -engine.io@~6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-6.2.0.tgz#003bec48f6815926f2b1b17873e576acd54f41d0" - integrity sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg== - dependencies: - "@types/cookie" "^0.4.1" - "@types/cors" "^2.8.12" - "@types/node" ">=10.0.0" - accepts "~1.3.4" - base64id "2.0.0" - cookie "~0.4.1" - cors "~2.8.5" - debug "~4.3.1" - engine.io-parser "~5.0.3" - ws "~8.2.3" - enhanced-resolve@^4.0.0, enhanced-resolve@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" @@ -9875,11 +10153,6 @@ enquirer@^2.3.6, enquirer@~2.3.6: dependencies: ansi-colors "^4.1.1" -ent@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" - integrity sha1-6WQhkyWiHQX0RGai9obtbOX13R0= - entities@^1.1.1, entities@~1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" @@ -9929,6 +10202,11 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +errorstacks@^2.2.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/errorstacks/-/errorstacks-2.4.0.tgz#2155674dd9e741aacda3f3b8b967d9c40a4a0baf" + integrity sha512-5ecWhU5gt0a5G05nmQcgCxP5HperSMxLDzvWlT5U+ZSKkuDK0rJ3dbCQny6/vSCIXjwrhwSecXBbw1alr295hQ== + es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5, es-abstract@^1.20.1: version "1.20.1" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" @@ -9982,6 +10260,11 @@ es-module-lexer@^0.9.0: resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== +es-module-lexer@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.3.0.tgz#6be9c9e0b4543a60cd166ff6f8b4e9dae0b0c16f" + integrity sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA== + es-shim-unscopables@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241" @@ -10023,7 +10306,7 @@ escape-html@^1.0.3, escape-html@~1.0.3: resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= @@ -10043,27 +10326,14 @@ escape-string-regexp@^5.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== -escodegen@1.8.x: - version "1.8.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" - integrity sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg= - dependencies: - esprima "^2.7.1" - estraverse "^1.9.1" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.2.0" - -escodegen@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" - integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== +escodegen@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" + integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== dependencies: esprima "^4.0.1" estraverse "^5.2.0" esutils "^2.0.2" - optionator "^0.8.1" optionalDependencies: source-map "~0.6.1" @@ -10225,11 +10495,6 @@ espree@^9.4.0: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.3.0" -esprima@2.7.x, esprima@^2.7.1: - version "2.7.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" - integrity sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE= - esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" @@ -10249,11 +10514,6 @@ esrecurse@^4.1.0, esrecurse@^4.3.0: dependencies: estraverse "^5.2.0" -estraverse@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" - integrity sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q= - estraverse@^4.1.1: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" @@ -10269,6 +10529,11 @@ estree-walker@^1.0.1: resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== +estree-walker@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -10279,7 +10544,7 @@ eta@^1.12.3: resolved "https://registry.yarnpkg.com/eta/-/eta-1.12.3.tgz#2982d08adfbef39f9fa50e2fbd42d7337e7338b1" integrity sha512-qHixwbDLtekO/d51Yr4glcaUJCIjGVJyTzuqV4GPlgZo1YpgOKG+avQynErZIYrfM6JIJdtiG2Kox8tbb+DoGg== -etag@~1.8.1: +etag@^1.8.1, etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= @@ -10477,16 +10742,27 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= +extract-zip@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-fifo@^1.1.0, fast-fifo@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" + integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== + fast-glob@3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" @@ -10526,7 +10802,7 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -10615,6 +10891,13 @@ fbjs@^3.0.0, fbjs@^3.0.1: setimmediate "^1.0.5" ua-parser-js "^0.7.30" +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + feed@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.2.tgz#865783ef6ed12579e2c44bbef3c9113bc4956a7e" @@ -10704,19 +10987,6 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -finalhandler@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.3" - statuses "~1.5.0" - unpipe "~1.0.0" - finalhandler@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" @@ -11004,6 +11274,11 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= +fsevents@2.3.2, fsevents@^2.1.2, fsevents@~2.3.1, fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + fsevents@^1.2.7: version "1.2.13" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" @@ -11012,11 +11287,6 @@ fsevents@^1.2.7: bindings "^1.5.0" nan "^2.12.1" -fsevents@^2.1.2, fsevents@~2.3.1, fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - fsevents@~2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" @@ -11100,11 +11370,6 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-func-name@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= - get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" @@ -11184,6 +11449,16 @@ get-symbol-description@^1.0.0: call-bind "^1.0.2" get-intrinsic "^1.1.1" +get-uri@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-6.0.1.tgz#cff2ba8d456c3513a04b70c45de4dbcca5b1527c" + integrity sha512-7ZqONUVqaabogsYNWlYj0t3YZaL6dhuEueZXGF+/YVmf6dHmaFg8/6psJKqhx9QykIDKzpGcy2cn4oV4YC7V/Q== + dependencies: + basic-ftp "^5.0.2" + data-uri-to-buffer "^5.0.1" + debug "^4.3.4" + fs-extra "^8.1.0" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -11316,18 +11591,19 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^5.0.15: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - integrity sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E= +glob@7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: + fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "2 || 3" + minimatch "^3.0.4" once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -11350,6 +11626,17 @@ glob@^8.0.1: minimatch "^5.0.1" once "^1.3.0" +glob@^8.0.3: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + global-dirs@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686" @@ -11393,11 +11680,6 @@ globals@^13.15.0: dependencies: type-fest "^0.20.2" -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - globalthis@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" @@ -11551,7 +11833,7 @@ handle-thing@^2.0.0: resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== -handlebars@^4.0.1, handlebars@^4.7.7: +handlebars@^4.7.7: version "4.7.7" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== @@ -11568,23 +11850,11 @@ hard-rejection@^2.1.0: resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - has-bigints@^1.0.1, has-bigints@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -11844,13 +12114,6 @@ hpack.js@^2.1.6: readable-stream "^2.0.1" wbuf "^1.1.0" -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - html-entities@^2.1.0, html-entities@^2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" @@ -12038,6 +12301,14 @@ http-proxy-agent@^5.0.0: agent-base "6" debug "4" +http-proxy-agent@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz#e9096c5afd071a3fce56e6252bb321583c124673" + integrity sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ== + dependencies: + agent-base "^7.1.0" + debug "^4.3.4" + http-proxy-middleware@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz#e1a4dd6979572c7ab5a4e4b55095d1f32a74963f" @@ -12079,6 +12350,14 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" +https-proxy-agent@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.1.tgz#0277e28f13a07d45c663633841e20a40aaafe0ab" + integrity sha512-Eun8zV0kcYS1g19r78osiQLEFIRspRUDd9tIfBCTBPBeMieF/EsJNL8VI3xOIdYRDEkjQnqOYPsZ2DsWsVsFwQ== + dependencies: + agent-base "^7.0.2" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" @@ -12367,14 +12646,14 @@ interpret@^2.2.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== -invariant@^2.2.2, invariant@^2.2.4: +invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== dependencies: loose-envify "^1.0.0" -ip@^1.1.0, ip@^1.1.5: +ip@^1.1.0, ip@^1.1.5, ip@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg== @@ -12490,6 +12769,13 @@ is-builtin-module@^3.1.0: dependencies: builtin-modules "^3.0.0" +is-builtin-module@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169" + integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A== + dependencies: + builtin-modules "^3.3.0" + is-callable@^1.1.4, is-callable@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" @@ -12509,6 +12795,13 @@ is-core-module@^2.1.0, is-core-module@^2.5.0, is-core-module@^2.8.1: dependencies: has "^1.0.3" +is-core-module@^2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db" + integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ== + dependencies: + has "^1.0.3" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -12759,10 +13052,12 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== +is-reference@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" + integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== + dependencies: + "@types/estree" "*" is-regex@^1.1.2, is-regex@^1.1.4: version "1.1.4" @@ -12913,10 +13208,10 @@ isarray@^2.0.5: resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== -isbinaryfile@^4.0.8: - version "4.0.10" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" - integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== +isbinaryfile@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-5.0.0.tgz#034b7e54989dab8986598cbcea41f66663c65234" + integrity sha512-UDdnyGvMajJUWCkib7Cei/dvyJrrvo4FIrsvSFWdPpXSUorzXrDJ0S+X5Q4ZlasfPjca4yqCNNsjbCeiy8FFeg== isexe@^2.0.0: version "2.0.0" @@ -12948,45 +13243,12 @@ isomorphic-unfetch@^3.1.0: node-fetch "^2.6.1" unfetch "^4.2.0" -istanbul-instrumenter-loader@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.1.tgz#9957bd59252b373fae5c52b7b5188e6fde2a0949" - integrity sha512-a5SPObZgS0jB/ixaKSMdn6n/gXSrK2S6q/UfRJBT3e6gQmVjwZROTODQsYW5ZNwOu78hG62Y3fWlebaVOL0C+w== - dependencies: - convert-source-map "^1.5.0" - istanbul-lib-instrument "^1.7.3" - loader-utils "^1.1.0" - schema-utils "^0.3.0" - -istanbul-lib-coverage@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" - integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== - -istanbul-lib-coverage@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" - integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== - istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^1.7.3: - version "1.10.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" - integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== - dependencies: - babel-generator "^6.18.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" - babylon "^6.18.0" - istanbul-lib-coverage "^1.2.1" - semver "^5.3.0" - -istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: +istanbul-lib-instrument@^5.0.4: version "5.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f" integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A== @@ -13006,27 +13268,16 @@ istanbul-lib-report@^3.0.0: make-dir "^3.0.0" supports-color "^7.1.0" -istanbul-lib-source-maps@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" - integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - rimraf "^2.6.3" - source-map "^0.6.1" - -istanbul-lib-source-maps@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" - integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== +istanbul-lib-report@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== dependencies: - debug "^4.1.1" istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" + make-dir "^4.0.0" + supports-color "^7.1.0" -istanbul-reports@^3.0.2, istanbul-reports@^3.0.5: +istanbul-reports@^3.0.2: version "3.1.4" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== @@ -13034,26 +13285,6 @@ istanbul-reports@^3.0.2, istanbul-reports@^3.0.5: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -istanbul@^0.4.5: - version "0.4.5" - resolved "https://registry.yarnpkg.com/istanbul/-/istanbul-0.4.5.tgz#65c7d73d4c4da84d4f3ac310b918fb0b8033733b" - integrity sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs= - dependencies: - abbrev "1.0.x" - async "1.x" - escodegen "1.8.x" - esprima "2.7.x" - glob "^5.0.15" - handlebars "^4.0.1" - js-yaml "3.x" - mkdirp "0.5.x" - nopt "3.x" - once "1.x" - resolve "1.1.x" - supports-color "^3.1.0" - which "^1.1.1" - wordwrap "^1.0.0" - iterate-iterator@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/iterate-iterator/-/iterate-iterator-1.0.2.tgz#551b804c9eaa15b847ea6a7cdc2f5bf1ec150f91" @@ -13261,12 +13492,7 @@ js-string-escape@^1.0.1: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@3.13.1, js-yaml@3.x, js-yaml@4.0.0, js-yaml@4.1.0, js-yaml@^3.10.0, js-yaml@^3.13.1, js-yaml@^4.1.0, js-yaml@~3.13.1: +js-yaml@3.13.1, js-yaml@4.0.0, js-yaml@4.1.0, js-yaml@^3.10.0, js-yaml@^3.13.1, js-yaml@^4.1.0, js-yaml@~3.13.1: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== @@ -13274,49 +13500,6 @@ js-yaml@3.13.1, js-yaml@3.x, js-yaml@4.0.0, js-yaml@4.1.0, js-yaml@^3.10.0, js-y argparse "^1.0.7" esprima "^4.0.0" -jsdom-global@3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/jsdom-global/-/jsdom-global-3.0.2.tgz#6bd299c13b0c4626b2da2c0393cd4385d606acb9" - integrity sha1-a9KZwTsMRiay2iwDk81DhdYGrLk= - -jsdom@^16.2.2: - version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== - dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -13347,11 +13530,6 @@ json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= - json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -13471,6 +13649,11 @@ just-diff@^5.0.1: resolved "https://registry.yarnpkg.com/just-diff/-/just-diff-5.1.1.tgz#8da6414342a5ed6d02ccd64f5586cbbed3146202" integrity sha512-u8HXJ3HlNrTzY7zrYYKjNEfBlyjqhdBkoyTVdjtn7p02RJD5NvR8rIClzeGA7t+UYP1/7eAkWNLU0+P3QrEqKQ== +just-extend@^4.0.2: + version "4.2.1" + resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.2.1.tgz#ef5e589afb61e5d66b24eca749409a8939a8c744" + integrity sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg== + jwa@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" @@ -13488,113 +13671,6 @@ jws@^3.2.2: jwa "^1.4.1" safe-buffer "^5.0.1" -karma-chrome-launcher@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz#baca9cc071b1562a1db241827257bfe5cab597ea" - integrity sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ== - dependencies: - which "^1.2.1" - -karma-coverage-istanbul-reporter@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-3.0.3.tgz#f3b5303553aadc8e681d40d360dfdc19bc7e9fe9" - integrity sha512-wE4VFhG/QZv2Y4CdAYWDbMmcAHeS926ZIji4z+FkB2aF/EposRb6DP6G5ncT/wXhqUfAb/d7kZrNKPonbvsATw== - dependencies: - istanbul-lib-coverage "^3.0.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^3.0.6" - istanbul-reports "^3.0.2" - minimatch "^3.0.4" - -karma-coverage@^2.0.2: - version "2.2.0" - resolved "https://registry.yarnpkg.com/karma-coverage/-/karma-coverage-2.2.0.tgz#64f838b66b71327802e7f6f6c39d569b7024e40c" - integrity sha512-gPVdoZBNDZ08UCzdMHHhEImKrw1+PAOQOIiffv1YsvxFhBjqvo/SVXNk4tqn1SYqX0BJZT6S/59zgxiBe+9OuA== - dependencies: - istanbul-lib-coverage "^3.2.0" - istanbul-lib-instrument "^5.1.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.1" - istanbul-reports "^3.0.5" - minimatch "^3.0.4" - -karma-firefox-launcher@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/karma-firefox-launcher/-/karma-firefox-launcher-2.1.2.tgz#9a38cc783c579a50f3ed2a82b7386186385cfc2d" - integrity sha512-VV9xDQU1QIboTrjtGVD4NCfzIH7n01ZXqy/qpBhnOeGVOkG5JYPEm8kuSd7psHE6WouZaQ9Ool92g8LFweSNMA== - dependencies: - is-wsl "^2.2.0" - which "^2.0.1" - -karma-mocha-reporter@^2.2.5: - version "2.2.5" - resolved "https://registry.yarnpkg.com/karma-mocha-reporter/-/karma-mocha-reporter-2.2.5.tgz#15120095e8ed819186e47a0b012f3cd741895560" - integrity sha1-FRIAlejtgZGG5HoLAS8810GJVWA= - dependencies: - chalk "^2.1.0" - log-symbols "^2.1.0" - strip-ansi "^4.0.0" - -karma-mocha@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/karma-mocha/-/karma-mocha-2.0.1.tgz#4b0254a18dfee71bdbe6188d9a6861bf86b0cd7d" - integrity sha512-Tzd5HBjm8his2OA4bouAsATYEpZrp9vC7z5E5j4C5Of5Rrs1jY67RAwXNcVmd/Bnk1wgvQRou0zGVLey44G4tQ== - dependencies: - minimist "^1.2.3" - -karma-source-map-support@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz#58526ceccf7e8730e56effd97a4de8d712ac0d6b" - integrity sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A== - dependencies: - source-map-support "^0.5.5" - -karma-sourcemap-loader@^0.3.7: - version "0.3.8" - resolved "https://registry.yarnpkg.com/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.8.tgz#d4bae72fb7a8397328a62b75013d2df937bdcf9c" - integrity sha512-zorxyAakYZuBcHRJE+vbrK2o2JXLFWK8VVjiT/6P+ltLBUGUvqTEkUiQ119MGdOrK7mrmxXHZF1/pfT6GgIZ6g== - dependencies: - graceful-fs "^4.1.2" - -karma-webpack@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/karma-webpack/-/karma-webpack-5.0.0.tgz#2a2c7b80163fe7ffd1010f83f5507f95ef39f840" - integrity sha512-+54i/cd3/piZuP3dr54+NcFeKOPnys5QeM1IY+0SPASwrtHsliXUiCL50iW+K9WWA7RvamC4macvvQ86l3KtaA== - dependencies: - glob "^7.1.3" - minimatch "^3.0.4" - webpack-merge "^4.1.5" - -karma@^6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/karma/-/karma-6.4.1.tgz#f2253716dd3a41aaa813fa9f54b6ee047e1127d9" - integrity sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA== - dependencies: - "@colors/colors" "1.5.0" - body-parser "^1.19.0" - braces "^3.0.2" - chokidar "^3.5.1" - connect "^3.7.0" - di "^0.0.1" - dom-serialize "^2.2.1" - glob "^7.1.7" - graceful-fs "^4.2.6" - http-proxy "^1.18.1" - isbinaryfile "^4.0.8" - lodash "^4.17.21" - log4js "^6.4.1" - mime "^2.5.2" - minimatch "^3.0.4" - mkdirp "^0.5.5" - qjobs "^1.2.0" - range-parser "^1.2.1" - rimraf "^3.0.2" - socket.io "^4.4.1" - source-map "^0.6.1" - tmp "^0.2.1" - ua-parser-js "^0.7.30" - yargs "^16.1.1" - keygrip@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/keygrip/-/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226" @@ -13682,6 +13758,13 @@ koa-convert@^2.0.0: co "^4.6.0" koa-compose "^4.1.0" +koa-etag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/koa-etag/-/koa-etag-4.0.0.tgz#2c2bb7ae69ca1ac6ced09ba28dcb78523c810414" + integrity sha512-1cSdezCkBWlyuB9l6c/IFoe1ANCDdPBxkDkRiaIup40xpUub6U/wwRXoKBZw/O5BifX9OlqAjYnDyzM6+l+TAg== + dependencies: + etag "^1.8.1" + koa-mount@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/koa-mount/-/koa-mount-4.0.0.tgz#e0265e58198e1a14ef889514c607254ff386329c" @@ -13704,7 +13787,7 @@ koa-node-resolve@^1.0.0-pre.8: parse5 "^5.1.0" resolve "^1.11.0" -koa-send@^5.0.0: +koa-send@^5.0.0, koa-send@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/koa-send/-/koa-send-5.0.1.tgz#39dceebfafb395d0d60beaffba3a70b4f543fe79" integrity sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ== @@ -13750,6 +13833,35 @@ koa@^2.11.0: type-is "^1.6.16" vary "^1.1.2" +koa@^2.13.0: + version "2.14.2" + resolved "https://registry.yarnpkg.com/koa/-/koa-2.14.2.tgz#a57f925c03931c2b4d94b19d2ebf76d3244863fc" + integrity sha512-VFI2bpJaodz6P7x2uyLiX6RLYpZmOJqNmoCst/Yyd7hQlszyPwG/I9CQJ63nOtKSxpt5M7NH67V6nJL2BwCl7g== + dependencies: + accepts "^1.3.5" + cache-content-type "^1.0.0" + content-disposition "~0.5.2" + content-type "^1.0.4" + cookies "~0.8.0" + debug "^4.3.2" + delegates "^1.0.0" + depd "^2.0.0" + destroy "^1.0.4" + encodeurl "^1.0.2" + escape-html "^1.0.3" + fresh "~0.5.2" + http-assert "^1.3.0" + http-errors "^1.6.3" + is-generator-function "^1.0.7" + koa-compose "^4.1.0" + koa-convert "^2.0.0" + on-finished "^2.3.0" + only "~0.0.2" + parseurl "^1.3.2" + statuses "^1.5.0" + type-is "^1.6.16" + vary "^1.1.2" + latest-version@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" @@ -13807,14 +13919,6 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - libnpmaccess@^6.0.3: version "6.0.4" resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-6.0.4.tgz#2dd158bd8a071817e2207d3b201d37cf1ad6ae6b" @@ -13843,6 +13947,14 @@ lie@~3.3.0: dependencies: immediate "~3.0.5" +lighthouse-logger@^1.0.0: + version "1.4.2" + resolved "https://registry.yarnpkg.com/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz#aef90f9e97cd81db367c7634292ee22079280aaa" + integrity sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g== + dependencies: + debug "^2.6.9" + marky "^1.2.2" + lilconfig@^2.0.3: version "2.0.5" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.5.tgz#19e57fd06ccc3848fd1891655b5a447092225b25" @@ -14015,6 +14127,11 @@ lodash.assignin@^4.0.9: resolved "https://registry.yarnpkg.com/lodash.assignin/-/lodash.assignin-4.2.0.tgz#ba8df5fb841eb0a3e8044232b0e263a8dc6a28a2" integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI= +lodash.assignwith@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz#127a97f02adc41751a954d24b0de17e100e038eb" + integrity sha512-ZznplvbvtjK2gMvnQ1BR/zqPFZmS6jbK4p+6Up4xcRYA7yMIwxHCfbTcrYxXKzzqLsQ05eJPVznEW3tuwV7k1g== + lodash.bind@^4.1.4: version "4.2.1" resolved "https://registry.yarnpkg.com/lodash.bind/-/lodash.bind-4.2.1.tgz#7ae3017e939622ac31b7d7d7dcb1b34db1690d35" @@ -14165,7 +14282,7 @@ lodash.uniq@4.5.0, lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0, lodash@~4.17.15: +lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@~4.17.15: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -14182,16 +14299,9 @@ log-symbols@4.0.0: resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== dependencies: - chalk "^4.0.0" - -log-symbols@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" - integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== - dependencies: - chalk "^2.0.1" + chalk "^4.0.0" -log-symbols@^4.0.0, log-symbols@^4.1.0: +log-symbols@4.1.0, log-symbols@^4.0.0, log-symbols@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== @@ -14245,13 +14355,6 @@ loud-rejection@^1.0.0: currently-unhandled "^0.4.1" signal-exit "^3.0.0" -loupe@^2.3.1: - version "2.3.4" - resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.4.tgz#7e0b9bffc76f148f9be769cb1321d3dcf3cb25f3" - integrity sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ== - dependencies: - get-func-name "^2.0.0" - lower-case@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" @@ -14288,11 +14391,21 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^7.14.1: + version "7.18.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" + integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== + lru-cache@^7.4.4, lru-cache@^7.5.1, lru-cache@^7.7.1: version "7.14.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.14.0.tgz#21be64954a4680e303a09e9468f880b98a0b3c7f" integrity sha512-EIRtP1GrSJny0dqb50QXRUNBxHJhcpxHC++M5tD7RYbvLLn5KVWKsbyswSSqDuU15UFi3bgTQIY8nhDMeF6aDQ== +lru-cache@^8.0.4: + version "8.0.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-8.0.5.tgz#983fe337f3e176667f8e567cfcce7cb064ea214e" + integrity sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA== + magic-string@^0.25.1, magic-string@^0.25.2: version "0.25.9" resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" @@ -14300,6 +14413,13 @@ magic-string@^0.25.1, magic-string@^0.25.2: dependencies: sourcemap-codec "^1.4.8" +magic-string@^0.27.0: + version "0.27.0" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.27.0.tgz#e4a3413b4bab6d98d2becffd48b4a257effdbbf3" + integrity sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.13" + make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -14315,6 +14435,13 @@ make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: dependencies: semver "^6.0.0" +make-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== + dependencies: + semver "^7.5.3" + make-error@^1.1.1: version "1.3.6" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" @@ -14433,6 +14560,11 @@ markdown-table@^3.0.0: resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.2.tgz#9b59eb2c1b22fe71954a65ff512887065a7bb57c" integrity sha512-y8j3a5/DkJCmS5x4dMCQL+OR0+2EAq3DOtio1COSHsmW2BGXnNCK3v12hJt1LrUz5iZH5g0LmuYOjDdI+czghA== +marky@^1.2.2: + version "1.2.5" + resolved "https://registry.yarnpkg.com/marky/-/marky-1.2.5.tgz#55796b688cbd72390d2d399eaaf1832c9413e3c0" + integrity sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q== + md5.js@^1.3.4: version "1.3.5" resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" @@ -15083,7 +15215,7 @@ mime@1.6.0, mime@^1.3.4: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.4.4, mime@^2.5.2: +mime@^2.4.4: version "2.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== @@ -15150,13 +15282,6 @@ minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== -"minimatch@2 || 3", minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - minimatch@3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -15171,13 +15296,20 @@ minimatch@3.0.5: dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1: +minimatch@5.0.1, minimatch@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== dependencies: brace-expansion "^2.0.1" +minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -15281,6 +15413,11 @@ mississippi@^3.0.0: stream-each "^1.1.0" through2 "^2.0.0" +mitt@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mitt/-/mitt-3.0.0.tgz#69ef9bd5c80ff6f57473e8d89326d01c414be0bd" + integrity sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ== + mixin-deep@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" @@ -15310,7 +15447,7 @@ mkdirp@0.5.5: dependencies: minimist "^1.2.5" -mkdirp@0.5.x, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5: +mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== @@ -15322,6 +15459,33 @@ mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== +mocha@10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.2.0.tgz#1fd4a7c32ba5ac372e03a17eef435bd00e5c68b8" + integrity sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg== + dependencies: + ansi-colors "4.1.1" + browser-stdout "1.3.1" + chokidar "3.5.3" + debug "4.3.4" + diff "5.0.0" + escape-string-regexp "4.0.0" + find-up "5.0.0" + glob "7.2.0" + he "1.2.0" + js-yaml "4.1.0" + log-symbols "4.1.0" + minimatch "5.0.1" + ms "2.1.3" + nanoid "3.3.3" + serialize-javascript "6.0.0" + strip-json-comments "3.1.1" + supports-color "8.1.1" + workerpool "6.2.1" + yargs "16.2.0" + yargs-parser "20.2.4" + yargs-unparser "2.0.0" + mocha@^7.1.2: version "7.2.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.2.0.tgz#01cc227b00d875ab1eed03a75106689cfed5a604" @@ -15464,7 +15628,12 @@ nan@^2.12.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916" integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA== -nanoid@3.1.20, nanoid@^3.1.31, nanoid@^3.3.1, nanoid@^3.3.4: +nanocolors@^0.2.1: + version "0.2.13" + resolved "https://registry.yarnpkg.com/nanocolors/-/nanocolors-0.2.13.tgz#dfd1ed0bfab05e9fe540eb6874525f0a1684099b" + integrity sha512-0n3mSAQLPpGLV9ORXT5+C/D4mwew7Ebws69Hx4E2sgz2ZA5+32Q80B9tL8PbL7XHnRDiAxH/pnrUJ9a4fkTNTA== + +nanoid@3.1.20, nanoid@3.3.3, nanoid@^3.1.25, nanoid@^3.1.31, nanoid@^3.3.1, nanoid@^3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== @@ -15511,11 +15680,27 @@ nested-error-stacks@^2.0.0, nested-error-stacks@^2.1.0: resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz#26c8a3cee6cc05fbcf1e333cd2fc3e003326c0b5" integrity sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw== +netmask@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" + integrity sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg== + nice-try@^1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +nise@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/nise/-/nise-5.1.4.tgz#491ce7e7307d4ec546f5a659b2efe94a18b4bbc0" + integrity sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg== + dependencies: + "@sinonjs/commons" "^2.0.0" + "@sinonjs/fake-timers" "^10.0.2" + "@sinonjs/text-encoding" "^0.7.1" + just-extend "^4.0.2" + path-to-regexp "^1.7.0" + no-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" @@ -15558,6 +15743,13 @@ node-fetch@2.6.7, node-fetch@^2.6.1, node-fetch@^2.6.7: dependencies: whatwg-url "^5.0.0" +node-fetch@^2.6.12: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + node-forge@^1: version "1.3.1" resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" @@ -15643,13 +15835,6 @@ noms@0.0.0: inherits "^2.0.1" readable-stream "~1.0.31" -nopt@3.x: - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= - dependencies: - abbrev "1" - nopt@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" @@ -15911,11 +16096,6 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= -nwsapi@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" - integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== - nx@14.7.17, "nx@>=14.6.1 < 16": version "14.7.17" resolved "https://registry.yarnpkg.com/nx/-/nx-14.7.17.tgz#54a78b6fa9b36caa31981ca5f0c87b740e0ebdf6" @@ -15956,7 +16136,7 @@ nx@14.7.17, "nx@>=14.6.1 < 16": yargs "^17.4.0" yargs-parser "21.0.1" -object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= @@ -16073,19 +16253,12 @@ on-finished@2.4.1, on-finished@^2.3.0: dependencies: ee-first "1.1.1" -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - on-headers@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== -once@1.x, once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= @@ -16112,6 +16285,15 @@ open@^7.0.3: is-docker "^2.0.0" is-wsl "^2.1.1" +open@^8.0.2: + version "8.4.2" + resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" + integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" + open@^8.0.9, open@^8.4.0: version "8.4.0" resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" @@ -16131,18 +16313,6 @@ opener@^1.5.2: resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== -optionator@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" - optionator@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" @@ -16363,6 +16533,29 @@ p-waterfall@^2.1.1: dependencies: p-reduce "^2.0.0" +pac-proxy-agent@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-7.0.0.tgz#db42120c64292685dafaf2bd921e223c56bfb13b" + integrity sha512-t4tRAMx0uphnZrio0S0Jw9zg3oDbz1zVhQ/Vy18FjLfP1XOLNUEjaVxYCYRI6NS+BsMBXKIzV6cTLOkO9AtywA== + dependencies: + "@tootallnate/quickjs-emscripten" "^0.23.0" + agent-base "^7.0.2" + debug "^4.3.4" + get-uri "^6.0.1" + http-proxy-agent "^7.0.0" + https-proxy-agent "^7.0.0" + pac-resolver "^7.0.0" + socks-proxy-agent "^8.0.1" + +pac-resolver@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-7.0.0.tgz#79376f1ca26baf245b96b34c339d79bff25e900c" + integrity sha512-Fd9lT9vJbHYRACT8OhCbZBbxr6KRSawSovFpy8nDGshaK99S/EBhVIHp9+crhxrsZOuvLpgL1n23iyPg6Rl2hg== + dependencies: + degenerator "^5.0.0" + ip "^1.1.8" + netmask "^2.0.2" + package-json@^6.3.0: version "6.5.0" resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" @@ -16567,16 +16760,16 @@ parse5-htmlparser2-tree-adapter@^6.0.1: dependencies: parse5 "^6.0.1" -parse5@6.0.1, parse5@^6.0.0, parse5@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - parse5@^5.0.0, parse5@^5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== +parse5@^6.0.0, parse5@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + parseurl@^1.3.2, parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -16690,11 +16883,6 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pathval@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" - integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== - pbkdf2@^3.0.3: version "3.1.2" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" @@ -16706,6 +16894,11 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== + phin@^2.9.1: version "2.9.3" resolved "https://registry.yarnpkg.com/phin/-/phin-2.9.3.tgz#f9b6ac10a035636fb65dfc576aaaa17b8743125c" @@ -16814,10 +17007,17 @@ pkg-up@^4.0.0: dependencies: find-up "^6.2.0" -playwright-core@1.25.2: - version "1.25.2" - resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.25.2.tgz#ea4baa398a4d45fcdfe48799482b599e3d0f033f" - integrity sha512-0yTbUE9lIddkEpLHL3u8PoCL+pWiZtj5A/j3U7YoNjcmKKDGBnCrgHJMzwd2J5vy6l28q4ki3JIuz7McLHhl1A== +playwright-core@1.37.1: + version "1.37.1" + resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.37.1.tgz#cb517d52e2e8cb4fa71957639f1cd105d1683126" + integrity sha512-17EuQxlSIYCmEMwzMqusJ2ztDgJePjrbttaefgdsiqeLWidjYz9BxXaTaZWxH1J95SHGk6tjE+dwgWILJoUZfA== + +playwright@^1.22.2: + version "1.37.1" + resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.37.1.tgz#6e488d82d7d98b9127c5db9c701f9c956ab47e76" + integrity sha512-bgUXRrQKhT48zHdxDYQTpf//0xDfDd5hLeEhjuSw8rXEGoT9YeElpfvs/izonTNY21IQZ7d3s22jLxYaAnubbQ== + dependencies: + playwright-core "1.37.1" please-upgrade-node@^3.2.0: version "3.2.0" @@ -16845,6 +17045,15 @@ polished@^4.2.2: dependencies: "@babel/runtime" "^7.17.8" +portfinder@^1.0.32: + version "1.0.32" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.32.tgz#2fe1b9e58389712429dc2bea5beb2146146c7f81" + integrity sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg== + dependencies: + async "^2.6.4" + debug "^3.2.7" + mkdirp "^0.5.6" + posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" @@ -17223,11 +17432,6 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" @@ -17313,7 +17517,7 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= -progress@^2.0.3: +progress@2.0.3, progress@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== @@ -17418,16 +17622,30 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" +proxy-agent@6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-6.3.0.tgz#72f7bb20eb06049db79f7f86c49342c34f9ba08d" + integrity sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og== + dependencies: + agent-base "^7.0.2" + debug "^4.3.4" + http-proxy-agent "^7.0.0" + https-proxy-agent "^7.0.0" + lru-cache "^7.14.1" + pac-proxy-agent "^7.0.0" + proxy-from-env "^1.1.0" + socks-proxy-agent "^8.0.1" + +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= -psl@^1.1.33: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== - public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -17487,6 +17705,18 @@ pupa@^2.1.1: dependencies: escape-goat "^2.0.0" +puppeteer-core@^20.0.0: + version "20.9.0" + resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-20.9.0.tgz#6f4b420001b64419deab38d398a4d9cd071040e6" + integrity sha512-H9fYZQzMTRrkboEfPmf7m3CLDN6JvbxXA3qTtS+dFt27tR+CsFHzPsT6pzp6lYL6bJbAPaR0HaPO6uSi+F94Pg== + dependencies: + "@puppeteer/browsers" "1.4.6" + chromium-bidi "0.4.16" + cross-fetch "4.0.0" + debug "4.3.4" + devtools-protocol "0.0.1147663" + ws "8.13.0" + pure-color@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/pure-color/-/pure-color-1.3.0.tgz#1fe064fb0ac851f0de61320a8bf796836422f33e" @@ -17497,11 +17727,6 @@ q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qjobs@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/qjobs/-/qjobs-1.2.0.tgz#c45e9c61800bd087ef88d7e256423bdd49e5d071" - integrity sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg== - qs@6.10.3: version "6.10.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" @@ -17536,6 +17761,11 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +queue-tick@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/queue-tick/-/queue-tick-1.0.1.tgz#f6f07ac82c1fd60f82e098b417a80e52f1f4c142" + integrity sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag== + queue@6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/queue/-/queue-6.0.1.tgz#abd5a5b0376912f070a25729e0b6a7d565683791" @@ -18023,11 +18253,6 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.7: version "0.13.9" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" @@ -18372,11 +18597,6 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@1.1.x: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.3.2, resolve@^1.9.0: version "1.22.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" @@ -18386,6 +18606,15 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.14.2, resolve@^1.17 path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +resolve@^1.22.1: + version "1.22.4" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34" + integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + resolve@~1.17.0: version "1.17.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" @@ -18515,6 +18744,13 @@ rollup@^2.71.1: optionalDependencies: fsevents "~2.3.2" +rollup@^3.15.0: + version "3.28.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.28.1.tgz#fb44aa6d5e65c7e13fd5bcfff266d0c4ea9ba433" + integrity sha512-R9OMQmIHJm9znrU3m3cpE8uhN0fGdXiawME7aZIpQqvpS/85+Vt1Hq1/yVIcYfOmaQiHjvXkQAoJukvLpau6Yw== + optionalDependencies: + fsevents "~2.3.2" + rsvp@^4.8.4: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" @@ -18634,13 +18870,6 @@ sax@>=0.6.0, sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - scheduler@^0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" @@ -18658,13 +18887,6 @@ schema-utils@2.7.0: ajv "^6.12.2" ajv-keywords "^3.4.1" -schema-utils@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" - integrity sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8= - dependencies: - ajv "^5.0.0" - schema-utils@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" @@ -18748,7 +18970,7 @@ semver-regex@^3.1.2: resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-3.1.4.tgz#13053c0d4aa11d070a2f2872b6b1e3ae1e1971b4" integrity sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA== -"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: +"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -18777,6 +18999,13 @@ semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semve dependencies: lru-cache "^6.0.0" +semver@^7.5.3: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" @@ -18808,6 +19037,13 @@ serialize-javascript@5.0.1, serialize-javascript@^5.0.1: dependencies: randombytes "^2.1.0" +serialize-javascript@6.0.0, serialize-javascript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== + dependencies: + randombytes "^2.1.0" + serialize-javascript@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" @@ -18815,13 +19051,6 @@ serialize-javascript@^4.0.0: dependencies: randombytes "^2.1.0" -serialize-javascript@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" - integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== - dependencies: - randombytes "^2.1.0" - serve-favicon@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.5.0.tgz#935d240cdfe0f5805307fdfe967d88942a2cbcf0" @@ -19017,6 +19246,18 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" +sinon@~16.0.0: + version "16.0.0" + resolved "https://registry.yarnpkg.com/sinon/-/sinon-16.0.0.tgz#06da4e63624b946c9d7e67cce21c2f67f40f23a9" + integrity sha512-B8AaZZm9CT5pqe4l4uWJztfD/mOTa7dL8Qo0W4+s+t74xECOgSZDDQCBjNgIK3+n4kyxQrSTv2V5ul8K25qkiQ== + dependencies: + "@sinonjs/commons" "^3.0.0" + "@sinonjs/fake-timers" "^10.3.0" + "@sinonjs/samsam" "^8.0.0" + diff "^5.1.0" + nise "^5.1.4" + supports-color "^7.2.0" + sirv@^1.0.7: version "1.0.19" resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.19.tgz#1d73979b38c7fe91fcba49c85280daa9c2363b49" @@ -19109,31 +19350,6 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -socket.io-adapter@~2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz#b50a4a9ecdd00c34d4c8c808224daa1a786152a6" - integrity sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg== - -socket.io-parser@~4.2.0: - version "4.2.4" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.2.4.tgz#c806966cf7270601e47469ddeec30fbdfda44c83" - integrity sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew== - dependencies: - "@socket.io/component-emitter" "~3.1.0" - debug "~4.3.1" - -socket.io@^4.4.1: - version "4.5.2" - resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-4.5.2.tgz#1eb25fd380ab3d63470aa8279f8e48d922d443ac" - integrity sha512-6fCnk4ARMPZN448+SQcnn1u8OHUC72puJcNtSgg2xS34Cu7br1gQ09YKkO1PFfDn/wyUE9ZgMAwosJed003+NQ== - dependencies: - accepts "~1.3.4" - base64id "~2.0.0" - debug "~4.3.2" - engine.io "~6.2.0" - socket.io-adapter "~2.4.0" - socket.io-parser "~4.2.0" - sockjs@^0.3.24: version "0.3.24" resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" @@ -19161,6 +19377,15 @@ socks-proxy-agent@^7.0.0: debug "^4.3.3" socks "^2.6.2" +socks-proxy-agent@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-8.0.1.tgz#ffc5859a66dac89b0c4dab90253b96705f3e7120" + integrity sha512-59EjPbbgg8U3x62hhKOFVAmySQUcfRQ4C7Q/D5sEHnZTQRrQlNKINks44DMR1gwXp0p4LaVIeccX2KHTTcHVqQ== + dependencies: + agent-base "^7.0.1" + debug "^4.3.4" + socks "^2.7.1" + socks@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" @@ -19169,6 +19394,14 @@ socks@^2.6.2: ip "^1.1.5" smart-buffer "^4.2.0" +socks@^2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.7.1.tgz#d8e651247178fde79c0663043e07240196857d55" + integrity sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ== + dependencies: + ip "^2.0.0" + smart-buffer "^4.2.0" + sort-css-media-queries@2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/sort-css-media-queries/-/sort-css-media-queries-2.0.4.tgz#b2badfa519cb4a938acbc6d3aaa913d4949dc908" @@ -19226,7 +19459,7 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.16, source-map-support@^0.5.17, source-map-support@^0.5.5, source-map-support@~0.5.12, source-map-support@~0.5.20: +source-map-support@^0.5.16, source-map-support@^0.5.17, source-map-support@~0.5.12, source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -19239,7 +19472,7 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== -source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: +source-map@^0.5.0, source-map@^0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= @@ -19254,13 +19487,6 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== -source-map@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" - integrity sha1-2rc/vPwrqBm03gO9b26qSBZLP50= - dependencies: - amdefine ">=0.0.4" - sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" @@ -19402,7 +19628,7 @@ statuses@2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0, statuses@~1.5.0: +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= @@ -19444,6 +19670,11 @@ stream-http@^2.7.2: to-arraybuffer "^1.0.0" xtend "^4.0.0" +stream-read-all@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/stream-read-all/-/stream-read-all-3.0.1.tgz#60762ae45e61d93ba0978cda7f3913790052ad96" + integrity sha512-EWZT9XOceBPlVJRrYcykW8jyRSZYbkb/0ZK36uLEmoWVO5gxBOnntNTseNzfREsqxqdfEGQrD8SXQ3QWbBmq8A== + stream-shift@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" @@ -19458,6 +19689,14 @@ streamroller@^3.1.2: debug "^4.3.4" fs-extra "^8.1.0" +streamx@^2.15.0: + version "2.15.1" + resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.15.1.tgz#396ad286d8bc3eeef8f5cea3f029e81237c024c6" + integrity sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA== + dependencies: + fast-fifo "^1.1.0" + queue-tick "^1.0.1" + string-argv@0.3.1, string-argv@~0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" @@ -19740,18 +19979,6 @@ supports-color@8.1.1, supports-color@^8.0.0, supports-color@^8.1.0: dependencies: has-flag "^4.0.0" -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^3.1.0: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= - dependencies: - has-flag "^1.0.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -19759,7 +19986,7 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0, supports-color@^7.1.0: +supports-color@^7.0.0, supports-color@^7.1.0, supports-color@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -19798,11 +20025,6 @@ svgo@^2.5.0, svgo@^2.7.0: picocolors "^1.0.0" stable "^0.1.8" -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - symbol.prototype.description@^1.0.0: version "1.0.5" resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.5.tgz#d30e01263b6020fbbd2d2884a6276ce4d49ab568" @@ -19838,6 +20060,19 @@ table-layout@^1.0.2: typical "^5.2.0" wordwrapjs "^4.0.0" +table-layout@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-3.0.2.tgz#69c2be44388a5139b48c59cf21e73b488021769a" + integrity sha512-rpyNZYRw+/C+dYkcQ3Pr+rLxW4CfHpXjPDnG7lYhdRoUcZTUt+KEsX+94RGp/aVp/MQU35JCITv2T/beY4m+hw== + dependencies: + "@75lb/deep-merge" "^1.1.1" + array-back "^6.2.2" + command-line-args "^5.2.1" + command-line-usage "^7.0.0" + stream-read-all "^3.0.1" + typical "^7.1.1" + wordwrapjs "^5.1.0" + table@^6.0.7: version "6.8.0" resolved "https://registry.yarnpkg.com/table/-/table-6.8.0.tgz#87e28f14fa4321c3377ba286f07b79b281a3b3ca" @@ -19892,6 +20127,15 @@ tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== +tar-fs@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-3.0.4.tgz#a21dc60a2d5d9f55e0089ccd78124f1d3771dbbf" + integrity sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w== + dependencies: + mkdirp-classic "^0.5.2" + pump "^3.0.0" + tar-stream "^3.1.5" + tar-fs@^2.0.0, tar-fs@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" @@ -19913,6 +20157,15 @@ tar-stream@^2.1.4, tar-stream@~2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" +tar-stream@^3.1.5: + version "3.1.6" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-3.1.6.tgz#6520607b55a06f4a2e2e04db360ba7d338cc5bab" + integrity sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg== + dependencies: + b4a "^1.6.4" + fast-fifo "^1.2.0" + streamx "^2.15.0" + tar@^6.0.2, tar@^6.1.0, tar@^6.1.11, tar@^6.1.2: version "6.1.11" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" @@ -20104,11 +20357,6 @@ to-arraybuffer@^1.0.0: resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA== -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -20177,19 +20425,10 @@ totalist@^1.0.0: resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== -tough-cookie@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" - integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.1.2" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== +tr46@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" + integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== dependencies: punycode "^2.1.1" @@ -20213,11 +20452,6 @@ trim-newlines@^1.0.0, trim-newlines@^3.0.0, trim-newlines@^4.0.2: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-4.0.2.tgz#d6aaaf6a0df1b4b536d183879a6b939489808c7c" integrity sha512-GJtWyq9InR/2HRiLZgpIKv+ufIKrVrvjQWEj7PxAXNc5dwbNJkqhAUoAGgzRmULAnoOM5EIpveYd3J2VeSAIew== -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - trim-trailing-lines@^1.0.0: version "1.1.4" resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz#bd4abbec7cc880462f10b2c8b5ce1d8d1ec7c2c0" @@ -20313,6 +20547,11 @@ tslib@^1.13.0, tslib@^1.8.1, tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== +tslib@^2.0.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + tslib@^2.0.3, tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.0, tslib@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" @@ -20349,14 +20588,7 @@ type-check@^0.4.0, type-check@~0.4.0: dependencies: prelude-ls "^1.2.1" -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - -type-detect@^4.0.0, type-detect@^4.0.5: +type-detect@4.0.8, type-detect@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== @@ -20431,6 +20663,11 @@ typical@^5.2.0: resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066" integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg== +typical@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/typical/-/typical-7.1.1.tgz#ba177ab7ab103b78534463ffa4c0c9754523ac1f" + integrity sha512-T+tKVNs6Wu7IWiAce5BgMd7OZfNYUndHwc5MknN+UHOudi7sGZzuHdCadllRuqJ3fPtgFtIH9+lt9qRv6lmpfA== + ua-parser-js@^0.7.28, ua-parser-js@^0.7.30, ua-parser-js@^1.0.2: version "0.7.33" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.33.tgz#1d04acb4ccef9293df6f70f2c3d22f3030d8b532" @@ -20456,6 +20693,14 @@ unbox-primitive@^1.0.2: has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" +unbzip2-stream@1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz#b0da04c4371311df771cdc215e87f2130991ace7" + integrity sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg== + dependencies: + buffer "^5.2.1" + through "^2.3.8" + unescape@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/unescape/-/unescape-1.0.1.tgz#956e430f61cad8a4d57d82c518f5e6cc5d0dda96" @@ -20679,7 +20924,7 @@ universal-user-agent@^6.0.0: resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== -universalify@^0.1.0, universalify@^0.1.2: +universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== @@ -20899,6 +21144,15 @@ v8-compile-cache@2.3.0: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== +v8-to-istanbul@^9.0.1: + version "9.1.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265" + integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA== + dependencies: + "@jridgewell/trace-mapping" "^0.3.12" + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -20936,7 +21190,7 @@ value-equal@^1.0.1: resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== -vary@^1, vary@^1.1.2, vary@~1.1.2: +vary@^1.1.2, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= @@ -20986,11 +21240,6 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -void-elements@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" - integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w= - vscode-html-languageservice@^3.1.3: version "3.2.0" resolved "https://registry.yarnpkg.com/vscode-html-languageservice/-/vscode-html-languageservice-3.2.0.tgz#e92269a04097d87bd23431e3a4e491a27b5447b9" @@ -21026,20 +21275,6 @@ vscode-web-custom-data@^0.3.5: resolved "https://registry.yarnpkg.com/vscode-web-custom-data/-/vscode-web-custom-data-0.3.6.tgz#7ff374bd39ee4a7c05c77c997d9410520e1d02bc" integrity sha512-9r2DOv4YMXL/WBTBB6zxde93hmg6AM7thr7GMR6c5LvPxXe/lwD8gsrJGe0tha4CUvoz86ElUieThGVpM+4PLg== -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - wait-on@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/wait-on/-/wait-on-6.0.1.tgz#16bbc4d1e4ebdd41c5b4e63a2e16dbd1f4e5601e" @@ -21113,15 +21348,10 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== +webidl-conversions@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" + integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== webpack-bundle-analyzer@^4.5.0: version "4.5.0" @@ -21248,13 +21478,6 @@ webpack-log@^2.0.0: ansi-colors "^3.0.0" uuid "^3.3.2" -webpack-merge@^4.1.5: - version "4.2.2" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.2.tgz#a27c52ea783d1398afd2087f547d7b9d2f43634d" - integrity sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g== - dependencies: - lodash "^4.17.15" - webpack-merge@^5.7.3, webpack-merge@^5.8.0: version "5.8.0" resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" @@ -21371,17 +21594,13 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== +whatwg-url@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" + integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== dependencies: - iconv-lite "0.4.24" - -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + tr46 "^3.0.0" + webidl-conversions "^7.0.0" whatwg-url@^5.0.0: version "5.0.0" @@ -21391,15 +21610,6 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -21421,7 +21631,7 @@ which-pm-runs@^1.0.0: resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.1.0.tgz#35ccf7b1a0fce87bd8b92a478c9d045785d3bf35" integrity sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA== -which@1.3.1, which@^1.1.1, which@^1.2.1, which@^1.2.9, which@^1.3.1: +which@1.3.1, which@^1.2.9, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -21468,7 +21678,7 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== -word-wrap@^1.2.3, word-wrap@~1.2.3: +word-wrap@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -21486,6 +21696,11 @@ wordwrapjs@^4.0.0: reduce-flatten "^2.0.0" typical "^5.2.0" +wordwrapjs@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-5.1.0.tgz#4c4d20446dcc670b14fa115ef4f8fd9947af2b3a" + integrity sha512-JNjcULU2e4KJwUNv6CHgI46UvDGitb6dGryHajXTDiLgg1/RiGoPSDw4kZfYnwGtEXf2ZMeIewDQgFGzkCB2Sg== + worker-farm@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" @@ -21505,6 +21720,11 @@ workerpool@6.1.0: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.1.0.tgz#a8e038b4c94569596852de7a8ea4228eefdeb37b" integrity sha512-toV7q9rWNYha963Pl/qyeZ6wG+3nnsyvolaNUS8+R5Wtw6qJPTxIlOP1ZSvcGhEJw+l3HMMmtiNo9Gl61G4GVg== +workerpool@6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" + integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== + workspace-tools@^0.27.0: version "0.27.0" resolved "https://registry.yarnpkg.com/workspace-tools/-/workspace-tools-0.27.0.tgz#11e8f1ec2cb4c80d1cefcf92da2d0154dc001aa8" @@ -21618,20 +21838,25 @@ write-pkg@^4.0.0: type-fest "^0.4.1" write-json-file "^3.2.0" +ws@8.13.0: + version "8.13.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" + integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA== + ws@>=7.4.6, ws@^8.2.3, ws@^8.4.2: version "8.8.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.8.0.tgz#8e71c75e2f6348dbf8d78005107297056cb77769" integrity sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ== -ws@^7.3.1, ws@^7.4.6: +ws@^7.3.1: version "7.5.7" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== -ws@~8.2.3: - version "8.2.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba" - integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA== +ws@^7.4.2: + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== x-default-browser@^0.4.0: version "0.4.0" @@ -21662,11 +21887,6 @@ xml-js@^1.6.11: dependencies: sax "^1.2.4" -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - xml-parse-from-string@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz#a9029e929d3dbcded169f3c6e28238d95a5d5a28" @@ -21685,11 +21905,6 @@ xmlbuilder@~11.0.0: resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - xmlhttprequest-ssl@^1.6.2: version "1.6.3" resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz#03b713873b01659dfa2c1c5d056065b27ddc2de6" @@ -21748,7 +21963,7 @@ yargs-parser@^20.2.2, yargs-parser@^20.2.3: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-parser@^21.0.0: +yargs-parser@^21.0.0, yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== @@ -21788,7 +22003,7 @@ yargs@13.3.2, yargs@^13.3.0: y18n "^4.0.0" yargs-parser "^13.1.2" -yargs@16.2.0, yargs@^16.1.0, yargs@^16.1.1, yargs@^16.2.0: +yargs@16.2.0, yargs@^16.1.0, yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -21801,6 +22016,19 @@ yargs@16.2.0, yargs@^16.1.0, yargs@^16.1.1, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yargs@17.7.1: + version "17.7.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.1.tgz#34a77645201d1a8fc5213ace787c220eabbd0967" + integrity sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw== + dependencies: + cliui "^8.0.1" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.3" + y18n "^5.0.5" + yargs-parser "^21.1.1" + yargs@^17.3.1, yargs@^17.4.0: version "17.5.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.5.1.tgz#e109900cab6fcb7fd44b1d8249166feb0b36e58e" @@ -21814,6 +22042,14 @@ yargs@^17.3.1, yargs@^17.4.0: y18n "^5.0.5" yargs-parser "^21.0.0" +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + ylru@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/ylru/-/ylru-1.3.2.tgz#0de48017473275a4cbdfc83a1eaf67c01af8a785"