From 1d2407cb94debea89fa55bf242e470b2307f3484 Mon Sep 17 00:00:00 2001 From: Martyn Janes Date: Fri, 1 Dec 2023 13:00:53 +0200 Subject: [PATCH 1/6] Add e2e testing to wps (#634) --- .gitignore | 3 +- .../register-with-home-js/package.json | 8 +- .../register-with-home-ts/package.json | 6 +- .../register-with-store-js/package.json | 6 +- .../automation-testing/selenium/package.json | 4 +- how-to/automation-testing/wdio/package.json | 14 +- how-to/customize-home-templates/package.json | 2 +- .../integrate-with-ms365-basic/package.json | 2 +- how-to/integrate-with-ms365/package.json | 2 +- .../workspace-platform-starter/CHANGELOG.md | 3 +- how-to/workspace-platform-starter/README.md | 1 + .../docs/assets/e2e-test-shell.png | Bin 0 -> 215499 bytes .../docs/how-to-test-your-ui.md | 28 + .../e2e/jest.config.js | 5 + .../e2e/tests/platform.spec.ts | 24 + .../e2e/tsconfig.json | 5 + .../workspace-platform-starter/jest.config.js | 3 +- .../workspace-platform-starter/package.json | 6 +- package-lock.json | 2912 ++++++++--------- package.json | 2 +- 20 files changed, 1462 insertions(+), 1574 deletions(-) create mode 100644 how-to/workspace-platform-starter/docs/assets/e2e-test-shell.png create mode 100644 how-to/workspace-platform-starter/docs/how-to-test-your-ui.md create mode 100644 how-to/workspace-platform-starter/e2e/jest.config.js create mode 100644 how-to/workspace-platform-starter/e2e/tests/platform.spec.ts create mode 100644 how-to/workspace-platform-starter/e2e/tsconfig.json diff --git a/.gitignore b/.gitignore index edeabf1590..9836495c95 100644 --- a/.gitignore +++ b/.gitignore @@ -12,4 +12,5 @@ how-to/integrate-with-salesforce-basic/public/js/preload.js **/build ./public*/ updatable-packages.txt -public-github \ No newline at end of file +public-github +chromedriver* \ No newline at end of file diff --git a/how-to/automation-testing/register-with-home-js/package.json b/how-to/automation-testing/register-with-home-js/package.json index 63aedf46c9..b17cd6f53d 100644 --- a/how-to/automation-testing/register-with-home-js/package.json +++ b/how-to/automation-testing/register-with-home-js/package.json @@ -17,12 +17,12 @@ "author": "martyn.janes@openfin.co", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-cli": "^1.1.11", - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "chai": "4.3.10", "jasmine-pretty-html-reporter": "0.2.5", - "jest-html-reporters": "3.1.4", + "jest-html-reporters": "3.1.5", "mochawesome": "7.1.3" } } diff --git a/how-to/automation-testing/register-with-home-ts/package.json b/how-to/automation-testing/register-with-home-ts/package.json index 7a9a0d39c8..ed2df72635 100644 --- a/how-to/automation-testing/register-with-home-ts/package.json +++ b/how-to/automation-testing/register-with-home-ts/package.json @@ -17,9 +17,9 @@ "author": "martyn.janes@openfin.co", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-cli": "^1.1.11", - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "@types/chai": "4.3.11", "chai": "4.3.10" } diff --git a/how-to/automation-testing/register-with-store-js/package.json b/how-to/automation-testing/register-with-store-js/package.json index c44d25beae..2d77de0483 100644 --- a/how-to/automation-testing/register-with-store-js/package.json +++ b/how-to/automation-testing/register-with-store-js/package.json @@ -15,9 +15,9 @@ "author": "martyn.janes@openfin.co", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-cli": "^1.1.11", - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "chai": "4.3.10" } } diff --git a/how-to/automation-testing/selenium/package.json b/how-to/automation-testing/selenium/package.json index 59f9ae68f8..8487d6bffd 100644 --- a/how-to/automation-testing/selenium/package.json +++ b/how-to/automation-testing/selenium/package.json @@ -11,8 +11,8 @@ "author": "martyn.janes@openfin.co", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "chai": "4.3.10", "chromedriver": "116.0.0", "fkill": "7.2.1", diff --git a/how-to/automation-testing/wdio/package.json b/how-to/automation-testing/wdio/package.json index 372549f279..b49c36f4fd 100644 --- a/how-to/automation-testing/wdio/package.json +++ b/how-to/automation-testing/wdio/package.json @@ -8,13 +8,13 @@ "kill": "fkill -f -s OpenFin.exe OpenFinRVM.exe chromedriver.exe OpenFin OpenFinRVM chromedriver" }, "devDependencies": { - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", - "@wdio/cli": "8.23.3", - "@wdio/local-runner": "8.23.3", - "@wdio/mocha-framework": "8.23.1", - "@wdio/shared-store-service": "8.23.3", - "@wdio/spec-reporter": "8.23.1", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", + "@wdio/cli": "8.24.6", + "@wdio/local-runner": "8.24.6", + "@wdio/mocha-framework": "8.24.6", + "@wdio/shared-store-service": "8.24.6", + "@wdio/spec-reporter": "8.24.2", "chai": "4.3.10", "chromedriver": "116.0.0", "fkill": "7.2.1", diff --git a/how-to/customize-home-templates/package.json b/how-to/customize-home-templates/package.json index fef55836c5..4fc36dcdb0 100644 --- a/how-to/customize-home-templates/package.json +++ b/how-to/customize-home-templates/package.json @@ -33,7 +33,7 @@ "devDependencies": { "@openfin/core": "33.77.11", "@openfin/node-adapter": "33.77.11", - "@types/luxon": "^3.3.4", + "@types/luxon": "^3.3.6", "@types/node-emoji": "^1.8.2", "eslint": "8.54.0", "eslint-config-airbnb": "19.0.4", diff --git a/how-to/integrate-with-ms365-basic/package.json b/how-to/integrate-with-ms365-basic/package.json index 32d85e0525..a1e4326614 100644 --- a/how-to/integrate-with-ms365-basic/package.json +++ b/how-to/integrate-with-ms365-basic/package.json @@ -20,7 +20,7 @@ "author": "martyn.janes@openfin.co", "license": "SEE LICENSE IN LICENSE.MD", "dependencies": { - "@microsoft/microsoft-graph-types": "^2.38.0", + "@microsoft/microsoft-graph-types": "^2.40.0", "@openfin/microsoft365": "1.0.1", "@openfin/workspace": "16.0.6", "@openfin/workspace-platform": "16.0.6" diff --git a/how-to/integrate-with-ms365/package.json b/how-to/integrate-with-ms365/package.json index 9c35c998ef..8ed142380a 100644 --- a/how-to/integrate-with-ms365/package.json +++ b/how-to/integrate-with-ms365/package.json @@ -21,7 +21,7 @@ "license": "SEE LICENSE IN LICENSE.MD", "dependencies": { "@finos/fdc3": "^2.0.3", - "@microsoft/microsoft-graph-types": "^2.38.0", + "@microsoft/microsoft-graph-types": "^2.40.0", "@openfin/microsoft365": "1.0.1", "@openfin/workspace": "16.0.6", "@openfin/workspace-platform": "16.0.6", diff --git a/how-to/workspace-platform-starter/CHANGELOG.md b/how-to/workspace-platform-starter/CHANGELOG.md index 490757c86a..d86ca8bc3f 100644 --- a/how-to/workspace-platform-starter/CHANGELOG.md +++ b/how-to/workspace-platform-starter/CHANGELOG.md @@ -35,7 +35,8 @@ - Improved platform now starts correctly when no customSettings are provided in manifest - Fixed dock shows correct workspace buttons to match those configured when restoring from saved config - InitOptions handlers now have the calling context passed to them, so they know if they were called from `launch` or already `running` -- Added unit testing script `npm run unit-test` tests can be found in ./test folder, for more information see [How to Test Your Platform](./docs/how-to-test-your-platform-code.md) +- Added unit testing script `npm run test` tests can be found in ./test folder, for more information see [How to Test Your Platform Code](./docs/how-to-test-your-platform-code.md) +- Added e2e testing script `npm run e2e` tests can be found in ./e2e folder, for more information see [How to Test Your Platform UI](./docs/how-to-test-your-platform-ui.md) ## v15 diff --git a/how-to/workspace-platform-starter/README.md b/how-to/workspace-platform-starter/README.md index cf5bcf1d5a..35e112d914 100644 --- a/how-to/workspace-platform-starter/README.md +++ b/how-to/workspace-platform-starter/README.md @@ -75,5 +75,6 @@ The information below provides information related to configuring and using the | [Deploy Your Platform](./docs/how-to-deploy-your-platform.md) | How can you deploy your platform? | | [Manage Environments](./docs/how-to-manage-environments.md) | How would you support local, dev, uat, staging, pre-prod and prod environments for your platform? | | [Testing Your Platform Code](./docs/how-to-test-your-platform-code.md) | How would you test the code for your platform? | +| [Testing Your Platform UI](./docs/how-to-test-your-platform-ui.md) | How would you test the UI for your platform? | ### Read more about [working with Workspace](https://developers.openfin.co/of-docs/docs/overview-of-workspace) on the OpenFin Website diff --git a/how-to/workspace-platform-starter/docs/assets/e2e-test-shell.png b/how-to/workspace-platform-starter/docs/assets/e2e-test-shell.png new file mode 100644 index 0000000000000000000000000000000000000000..24ce977aa328981f7c1fc46127ccd8dd38ab4f89 GIT binary patch literal 215499 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�D?=t&bPUt<#AIU314N`*(cB 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ⅅ;abET_|zV_-2c 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 literal 0 HcmV?d00001 diff --git a/how-to/workspace-platform-starter/docs/how-to-test-your-ui.md b/how-to/workspace-platform-starter/docs/how-to-test-your-ui.md new file mode 100644 index 0000000000..19554a4074 --- /dev/null +++ b/how-to/workspace-platform-starter/docs/how-to-test-your-ui.md @@ -0,0 +1,28 @@ +> **_:information_source: OpenFin Workspace:_** [OpenFin Workspace](https://www.openfin.co/workspace/) is a commercial product and this repo is for evaluation purposes (See [LICENSE.MD](../LICENSE.MD)). Use of the OpenFin Container and OpenFin Workspace components is only granted pursuant to a license from OpenFin (see [manifest](../public/manifest.fin.json)). Please [**contact us**](https://www.openfin.co/workspace/poc/) if you would like to request a developer evaluation key or to discuss a production license. + +[<- Back to Table Of Contents](../README.md) + +# How To Test Your UI + +Testing your OpenFin platform UI can be achieved using the OpenFin Automation tools. + +For more information on the OpenFin automation tools see the following packages. + +- [@openfin/automation-cli](https://www.npmjs.com/package/@openfin/automation-cli) +- [@openfin/automation-helpers](https://www.npmjs.com/package/@openfin/automation-helpers) + +There is an npm command which will execute the included e2e tests. + +```shell +npm run e2e +``` + +You must first make sure the local web server is serving the manifest for the application using the `npm run start` script. + +The tests are executed using Jest as the test runner, the example tests are in the [../e2e](../e2e/) folder. + +Example output from running the tests using the npm command: + +![How to Test in Shell](./assets/e2e-test-shell.png) + +[<- Back to Table Of Contents](../README.md) diff --git a/how-to/workspace-platform-starter/e2e/jest.config.js b/how-to/workspace-platform-starter/e2e/jest.config.js new file mode 100644 index 0000000000..3eefe366fe --- /dev/null +++ b/how-to/workspace-platform-starter/e2e/jest.config.js @@ -0,0 +1,5 @@ +module.exports = { + transform: { + '^.+\\.(ts|tsx)?$': ['ts-jest', { diagnostics: { ignoreCodes: ['TS151001'] } }] + } +}; diff --git a/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts b/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts new file mode 100644 index 0000000000..4cf2033fc0 --- /dev/null +++ b/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts @@ -0,0 +1,24 @@ +import { OpenFinProxy, OpenFinSystem, OpenFinHome, WebDriver } from "@openfin/automation-helpers"; + +describe("Platform", () => { + it("The runtime is ready", async () => { + const isReady = await OpenFinSystem.waitForReady(10000); + expect(isReady).toEqual(true); + }); + + it("The title should be set", async () => { + const title = await WebDriver.getTitle(); + expect(title).toEqual("Platform Provider"); + }); + + it("The runtime version should be set", async () => { + const fin = await OpenFinProxy.fin(); + const version = await fin.System.getVersion(); + expect(version).toEqual("33.116.77.11"); + }); + + it("Can open the home window", async () => { + const isShown = await OpenFinHome.show(20000); + expect(isShown).toEqual(true); + }); +}); diff --git a/how-to/workspace-platform-starter/e2e/tsconfig.json b/how-to/workspace-platform-starter/e2e/tsconfig.json new file mode 100644 index 0000000000..c546112d21 --- /dev/null +++ b/how-to/workspace-platform-starter/e2e/tsconfig.json @@ -0,0 +1,5 @@ +{ + "compilerOptions": { + "esModuleInterop": true + } +} diff --git a/how-to/workspace-platform-starter/jest.config.js b/how-to/workspace-platform-starter/jest.config.js index 0b94c4d4f2..b423706da1 100644 --- a/how-to/workspace-platform-starter/jest.config.js +++ b/how-to/workspace-platform-starter/jest.config.js @@ -9,5 +9,6 @@ module.exports = { verbose: true, collectCoverage: true, coverageReporters: ['text-summary'], - setupFilesAfterEnv: ['/test/setup.ts'] + setupFilesAfterEnv: ['/test/setup.ts'], + roots: ['/test'] }; diff --git a/how-to/workspace-platform-starter/package.json b/how-to/workspace-platform-starter/package.json index 9cf101dcb1..fff382285c 100644 --- a/how-to/workspace-platform-starter/package.json +++ b/how-to/workspace-platform-starter/package.json @@ -37,7 +37,8 @@ "eslint": "eslint . --ext .js,.mjs,.ts", "markdownlint": "markdownlint **/*.md --ignore **/node_modules/**", "validate": "npm run prettier && npm run eslint && npm run markdownlint", - "test": "jest --config ./jest.config.js" + "test": "jest --config ./jest.config.js", + "e2e": "of-automation http://localhost:8080/manifest.fin.json ./e2e/**/*.spec.ts --workspace 16.0.6 --testFailCount 1 --framework jest --storageFolder ./e2e/storage" }, "author": "john.mandia@openfin.co", "contributors": [ @@ -56,6 +57,9 @@ "node-emoji": "^1.11.0" }, "devDependencies": { + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "@openfin/core": "33.77.11", "@openfin/node-adapter": "33.77.11", "@types/express": "^4.17.21", diff --git a/package-lock.json b/package-lock.json index b136933df1..e8a387e555 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ ], "devDependencies": { "fast-glob": "3.3.2", - "fs-extra": "11.1.1", + "fs-extra": "11.2.0", "replace-in-file": "7.0.2", "yargs": "17.7.2" } @@ -24,23 +24,92 @@ "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-cli": "^1.1.11", - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "chai": "4.3.10", "jasmine-pretty-html-reporter": "0.2.5", - "jest-html-reporters": "3.1.4", + "jest-html-reporters": "3.1.5", "mochawesome": "7.1.3" } }, + "how-to/automation-testing/register-with-home-js/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "how-to/automation-testing/register-with-home-js/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "how-to/automation-testing/register-with-home-js/node_modules/jasmine": { + "version": "2.99.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.99.0.tgz", + "integrity": "sha512-kmuDC+6c9tA8BAZGd7wmucWKrM/aCCBSzCJEqRghvw9lKValw+pg88aN/BFIikmZwRTD57QmHamQ2wRpKb3FDQ==", + "dev": true, + "peer": true, + "dependencies": { + "exit": "^0.1.2", + "glob": "^7.0.6", + "jasmine-core": "~2.99.0" + }, + "bin": { + "jasmine": "bin/jasmine.js" + } + }, + "how-to/automation-testing/register-with-home-js/node_modules/jasmine-pretty-html-reporter": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/jasmine-pretty-html-reporter/-/jasmine-pretty-html-reporter-0.2.5.tgz", + "integrity": "sha512-Fnd0FZHn+Bu8zk8heaWzloX6Ok+CFMvmCFkNmffD/8Szww2CTIHYOGRxUHYlnQYMsXyTKpo999tmrKIhml3AGA==", + "dev": true, + "peerDependencies": { + "jasmine": "^2.4.1" + } + }, + "how-to/automation-testing/register-with-home-js/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "how-to/automation-testing/register-with-home-ts": { "name": "automation-testing-register-with-home", "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-cli": "^1.1.11", - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "@types/chai": "4.3.11", "chai": "4.3.10" } @@ -50,9 +119,9 @@ "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-cli": "^1.1.11", - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "chai": "4.3.10" } }, @@ -61,8 +130,8 @@ "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "chai": "4.3.10", "chromedriver": "116.0.0", "fkill": "7.2.1", @@ -75,13 +144,13 @@ "name": "automation-testing-wdio", "version": "16.0.0", "devDependencies": { - "@openfin/automation-helpers": "^1.1.11", - "@openfin/automation-native": "^1.1.11", - "@wdio/cli": "8.23.3", - "@wdio/local-runner": "8.23.3", - "@wdio/mocha-framework": "8.23.1", - "@wdio/shared-store-service": "8.23.3", - "@wdio/spec-reporter": "8.23.1", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", + "@wdio/cli": "8.24.6", + "@wdio/local-runner": "8.24.6", + "@wdio/mocha-framework": "8.24.6", + "@wdio/shared-store-service": "8.24.6", + "@wdio/spec-reporter": "8.24.2", "chai": "4.3.10", "chromedriver": "116.0.0", "fkill": "7.2.1", @@ -104,7 +173,7 @@ "devDependencies": { "@openfin/core": "33.77.11", "@openfin/node-adapter": "33.77.11", - "@types/luxon": "^3.3.4", + "@types/luxon": "^3.3.6", "@types/node-emoji": "^1.8.2", "eslint": "8.54.0", "eslint-config-airbnb": "19.0.4", @@ -125,6 +194,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/customize-home-templates/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/customize-home-templates/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-server-authentication": { "name": "openfin-workspace--integrate-server-authentication", "version": "16.0.0", @@ -159,6 +249,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-server-authentication/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-server-authentication/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-bloomberg-basic": { "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", @@ -189,6 +300,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-bloomberg-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-bloomberg-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-excel": { "name": "openfin-workspace--integrate-with-excel", "version": "16.0.0", @@ -220,13 +352,34 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-excel/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-excel/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-ms365": { "name": "openfin-workspace--integrate-with-ms365", "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", "dependencies": { "@finos/fdc3": "^2.0.3", - "@microsoft/microsoft-graph-types": "^2.38.0", + "@microsoft/microsoft-graph-types": "^2.40.0", "@openfin/microsoft365": "1.0.1", "@openfin/workspace": "16.0.6", "@openfin/workspace-platform": "16.0.6", @@ -259,7 +412,7 @@ "version": "16.0.0", "license": "SEE LICENSE IN LICENSE.MD", "dependencies": { - "@microsoft/microsoft-graph-types": "^2.38.0", + "@microsoft/microsoft-graph-types": "^2.40.0", "@openfin/microsoft365": "1.0.1", "@openfin/workspace": "16.0.6", "@openfin/workspace-platform": "16.0.6" @@ -286,6 +439,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-ms365-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-ms365-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-ms365-low-code": { "name": "openfin-workspace--integrate-with-ms365-low-code", "version": "16.0.0", @@ -346,6 +520,69 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-ms365-low-code-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-ms365-low-code-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/integrate-with-ms365-low-code/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-ms365-low-code/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/integrate-with-ms365/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-ms365/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-openid-connect": { "name": "openfin-workspace--integrate-with-openid-connect", "version": "16.0.0", @@ -377,6 +614,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-openid-connect/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-openid-connect/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-rss": { "name": "openfin-workspace--integrate-with-rss", "version": "16.0.0", @@ -410,6 +668,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-rss/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-rss/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-salesforce": { "name": "openfin-workspace--integrate-with-salesforce", "version": "16.0.0", @@ -474,6 +753,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-salesforce-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-salesforce-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/integrate-with-salesforce/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-salesforce/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-servicenow": { "name": "openfin-workspace--integrate-with-servicenow", "version": "16.0.0", @@ -537,6 +858,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-servicenow-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-servicenow-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/integrate-with-servicenow/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-servicenow/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/integrate-with-snap": { "name": "openfin-workspace--integrate-with-snap", "version": "16.0.0", @@ -599,6 +962,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/integrate-with-snap-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-snap-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/integrate-with-snap/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/integrate-with-snap/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/register-with-browser": { "name": "openfin-workspace--register-with-browser", "version": "16.0.0", @@ -629,6 +1034,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/register-with-browser/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-browser/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/register-with-dock": { "name": "openfin-workspace--register-with-dock", "version": "16.0.0", @@ -689,6 +1115,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/register-with-dock-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-dock-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/register-with-dock/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-dock/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/register-with-home": { "name": "openfin-workspace--register-with-home", "version": "16.0.0", @@ -749,6 +1217,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/register-with-home-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-home-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/register-with-home/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-home/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/register-with-platform-windows": { "name": "openfin-workspace--register-with-platform-windows", "version": "16.0.0", @@ -779,6 +1289,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/register-with-platform-windows/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-platform-windows/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/register-with-store": { "name": "openfin-workspace--register-with-store", "version": "16.0.0", @@ -839,6 +1370,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/register-with-store-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-store-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/register-with-store/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/register-with-store/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/support-context-and-intents": { "name": "openfin-workspace--support-context-and-intents", "version": "16.0.0", @@ -869,6 +1442,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/support-context-and-intents/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/support-context-and-intents/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/use-notifications": { "name": "openfin-workspace--use-notifications", "version": "16.0.0", @@ -899,6 +1493,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/use-notifications/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/use-notifications/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/use-theming": { "name": "openfin-workspace--use-theming", "version": "16.0.0", @@ -958,6 +1573,48 @@ "webpack-cli": "^5.1.4" } }, + "how-to/use-theming-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/use-theming-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/use-theming/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/use-theming/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/workspace-native-window-integration": { "name": "openfin-workspace--workspace-native-window-integration", "version": "16.0.0", @@ -990,6 +1647,27 @@ "webpack-cli": "^5.1.4" } }, + "how-to/workspace-native-window-integration/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/workspace-native-window-integration/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "how-to/workspace-platform-starter": { "name": "openfin-workspace--workspace-platform-starter", "version": "16.0.0", @@ -1004,6 +1682,9 @@ "node-emoji": "^1.11.0" }, "devDependencies": { + "@openfin/automation-cli": "^1.2.0", + "@openfin/automation-helpers": "^1.2.0", + "@openfin/automation-native": "^1.2.0", "@openfin/core": "33.77.11", "@openfin/node-adapter": "33.77.11", "@types/express": "^4.17.21", @@ -1064,32 +1745,48 @@ "webpack-cli": "^5.1.4" } }, - "how-to/workspace-platform-starter/node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "how-to/workspace-platform-starter-basic/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], "dev": true, "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" + } + }, + "how-to/workspace-platform-starter-basic/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, + "how-to/workspace-platform-starter/node_modules/@openfin/node-adapter": { + "version": "33.77.11", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", + "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "bundleDependencies": [ + "openfin-adapter" + ], + "dev": true, + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "openfin-adapter": "file:../../../js-adapter", + "ws": "^7.3.0" } }, + "how-to/workspace-platform-starter/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true + }, "node_modules/@aashutoshrathi/word-wrap": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", @@ -1767,6 +2464,7 @@ "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "dev": true, + "peer": true, "dependencies": { "@jridgewell/trace-mapping": "0.3.9" }, @@ -1779,6 +2477,7 @@ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "dev": true, + "peer": true, "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" @@ -1909,9 +2608,9 @@ "integrity": "sha512-sq+iGbjU6yRl7xHhp62nB1tV4biFaHZgUAInzPTJvzXWl9xjZMmXvvbeZW6WGZaCSvjQhJPSrmWs+4z2c73T+g==" }, "node_modules/@floating-ui/core": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz", - "integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.1.tgz", + "integrity": "sha512-QgcKYwzcc8vvZ4n/5uklchy8KVdjJwcOeI+HnnTNclJjs2nYsy23DOCf+sSV1kBwD9yDAoVKCkv/gEPzgQU3Pw==", "dependencies": { "@floating-ui/utils": "^0.1.3" } @@ -2534,6 +3233,7 @@ "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.16.13.tgz", "integrity": "sha512-9edAxu7N2FX7vzkdl5Jo1BbACfycUtBQX+XBMcHA2bk62P8R0otgkHg798frgAk/WxQIzwxqOH6wMiCwrlAzdQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2548,6 +3248,7 @@ "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.16.13.tgz", "integrity": "sha512-qXpA1tzTnlkTku9yqtuRtS/wVntvE6f3m3GNxdTdtmc+O+Wcg9Xo2ABPMh7Nc0AHbMKzwvwgB2JnjZmlmJEObg==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2581,6 +3282,7 @@ "url": "https://feross.org/support" } ], + "peer": true, "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" @@ -2591,6 +3293,7 @@ "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.16.13.tgz", "integrity": "sha512-LTATglVUPGkPf15zX1wTMlZ0+AU7cGEGF6ekVF1crA8eHUWsGjrYTB+Ht4E3HTrCok8weQG+K01rJndCp/l4XA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/core": "^0.16.13" @@ -2601,6 +3304,7 @@ "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.16.13.tgz", "integrity": "sha512-yFAMZGv3o+YcjXilMWWwS/bv1iSqykFahFMSO169uVMtfQVfa90kt4/kDwrXNR6Q9i6VHpFiGZMlF2UnHClBvg==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2616,6 +3320,7 @@ "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.16.13.tgz", "integrity": "sha512-BJHlDxzTlCqP2ThqP8J0eDrbBfod7npWCbJAcfkKqdQuFk0zBPaZ6KKaQKyKxmWJ87Z6ohANZoMKEbtvrwz1AA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2630,6 +3335,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.16.13.tgz", "integrity": "sha512-8Z1k96ZFxlhK2bgrY1JNWNwvaBeI/bciLM0yDOni2+aZwfIIiC7Y6PeWHTAvjHNjphz+XCt01WQmOYWCn0ML6g==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2643,6 +3349,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.16.13.tgz", "integrity": "sha512-PvLrfa8vkej3qinlebyhLpksJgCF5aiysDMSVhOZqwH5nQLLtDE9WYbnsofGw4r0VVpyw3H/ANCIzYTyCtP9Cg==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2656,6 +3363,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.16.13.tgz", "integrity": "sha512-RNave7EFgZrb5V5EpdvJGAEHMnDAJuwv05hKscNfIYxf0kR3KhViBTDy+MoTnMlIvaKFULfwIgaZWzyhuINMzA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2669,6 +3377,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.16.13.tgz", "integrity": "sha512-xW+9BtEvoIkkH/Wde9ql4nAFbYLkVINhpgAE7VcBUsuuB34WUbcBl/taOuUYQrPEFQJ4jfXiAJZ2H/rvKjCVnQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2683,6 +3392,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.16.13.tgz", "integrity": "sha512-QayTXw4tXMwU6q6acNTQrTTFTXpNRBe+MgTGMDU0lk+23PjlFCO/9sacflelG8lsp7vNHhAxFeHptDMAksEYzg==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2699,6 +3409,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.16.13.tgz", "integrity": "sha512-BSsP71GTNaqWRcvkbWuIVH+zK7b3TSNebbhDkFK0fVaUTzHuKMS/mgY4hDZIEVt7Rf5FjadAYtsujHN9w0iSYA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2715,6 +3426,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.16.13.tgz", "integrity": "sha512-WEl2tPVYwzYL8OKme6Go2xqiWgKsgxlMwyHabdAU4tXaRwOCnOI7v4021gCcBb9zn/oWwguHuKHmK30Fw2Z/PA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2728,6 +3440,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.16.13.tgz", "integrity": "sha512-qt9WKq8vWrcjySa9DyQ0x/RBMHQeiVjdVSY1SJsMjssPUf0pS74qorcuAkGi89biN3YoGUgPkpqECnAWnYwgGA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2741,6 +3454,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.16.13.tgz", "integrity": "sha512-5/N3yJggbWQTlGZHQYJPmQXEwR52qaXjEzkp1yRBbtdaekXE3BG/suo0fqeoV/csf8ooI78sJzYmIrxNoWVtgQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2754,6 +3468,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.16.13.tgz", "integrity": "sha512-2rZmTdFbT/cF9lEZIkXCYO0TsT114Q27AX5IAo0Sju6jVQbvIk1dFUTnwLDadTo8wkJlFzGqMQ24Cs8cHWOliA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2767,6 +3482,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.16.13.tgz", "integrity": "sha512-EmcgAA74FTc5u7Z+hUO/sRjWwfPPLuOQP5O64x5g4j0T12Bd29IgsYZxoutZo/rb3579+JNa/3wsSEmyVv1EpA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2781,6 +3497,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.16.13.tgz", "integrity": "sha512-A1XKfGQD0iDdIiKqFYi8nZMv4dDVYdxbrmgR7y/CzUHhSYdcmoljLIIsZZM3Iks/Wa353W3vtvkWLuDbQbch1w==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2794,6 +3511,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.16.13.tgz", "integrity": "sha512-xFMrIn7czEZbdbMzZWuaZFnlLGJDVJ82y5vlsKsXRTG2kcxRsMPXvZRWHV57nSs1YFsNqXSbrC8B98n0E32njQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2807,6 +3525,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.16.13.tgz", "integrity": "sha512-wLRYKVBXql2GAYgt6FkTnCfE+q5NomM7Dlh0oIPGAoMBWDyTx0eYutRK6PlUrRK2yMHuroAJCglICTbxqGzowQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2820,6 +3539,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.16.13.tgz", "integrity": "sha512-3tfad0n9soRna4IfW9NzQdQ2Z3ijkmo21DREHbE6CGcMIxOSvfRdSvf1qQPApxjTSo8LTU4MCi/fidx/NZ0GqQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2833,6 +3553,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.16.13.tgz", "integrity": "sha512-0m6i3p01PGRkGAK9r53hDYrkyMq+tlhLOIbsSTmZyh6HLshUKlTB7eXskF5OpVd5ZUHoltlNc6R+ggvKIzxRFw==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2848,6 +3569,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.16.13.tgz", "integrity": "sha512-qoqtN8LDknm3fJm9nuPygJv30O3vGhSBD2TxrsCnhtOsxKAqVPJtFVdGd/qVuZ8nqQANQmTlfqTiK9mVWQ7MiQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2861,6 +3583,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.16.13.tgz", "integrity": "sha512-Ev+Jjmj1nHYw897z9C3R9dYsPv7S2/nxdgfFb/h8hOwK0Ovd1k/+yYS46A0uj/JCKK0pQk8wOslYBkPwdnLorw==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2877,6 +3600,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.16.13.tgz", "integrity": "sha512-05POQaEJVucjTiSGMoH68ZiELc7QqpIpuQlZ2JBbhCV+WCbPFUBcGSmE7w4Jd0E2GvCho/NoMODLwgcVGQA97A==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2891,6 +3615,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.16.13.tgz", "integrity": "sha512-nmu5VSZ9hsB1JchTKhnnCY+paRBnwzSyK5fhkhtQHHoFD5ArBQ/5wU8y6tCr7k/GQhhGq1OrixsECeMjPoc8Zw==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2906,6 +3631,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.16.13.tgz", "integrity": "sha512-+3zArBH0OE3Rhjm4HyAokMsZlIq5gpQec33CncyoSwxtRBM2WAhUVmCUKuBo+Lr/2/4ISoY4BWpHKhMLDix6cA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13" @@ -2921,6 +3647,7 @@ "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.16.13.tgz", "integrity": "sha512-CJLdqODEhEVs4MgWCxpWL5l95sCBlkuSLz65cxEm56X5akIsn4LOlwnKoSEZioYcZUBvHhCheH67AyPTudfnQQ==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/plugin-blit": "^0.16.13", @@ -2955,6 +3682,7 @@ "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.16.13.tgz", "integrity": "sha512-8cGqINvbWJf1G0Her9zbq9I80roEX0A+U45xFby3tDWfzn+Zz8XKDF1Nv9VUwVx0N3zpcG1RPs9hfheG4Cq2kg==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/utils": "^0.16.13", @@ -2969,6 +3697,7 @@ "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.16.13.tgz", "integrity": "sha512-oJY8d9u95SwW00VPHuCNxPap6Q1+E/xM5QThb9Hu+P6EGuu6lIeLaNBMmFZyblwFbwrH+WBOZlvIzDhi4Dm/6Q==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "utif": "^2.0.1" @@ -2982,6 +3711,7 @@ "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.16.13.tgz", "integrity": "sha512-mC0yVNUobFDjoYLg4hoUwzMKgNlxynzwt3cDXzumGvRJ7Kb8qQGOWJQjQFo5OxmGExqzPphkirdbBF88RVLBCg==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/bmp": "^0.16.13", @@ -3000,6 +3730,7 @@ "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.16.13.tgz", "integrity": "sha512-VyCpkZzFTHXtKgVO35iKN0sYR10psGpV6SkcSeV4oF7eSYlR8Bl6aQLCzVeFjvESF7mxTmIiI3/XrMobVrtxDA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "regenerator-runtime": "^0.13.3" @@ -3009,7 +3740,8 @@ "version": "0.13.11", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.3", @@ -3383,6 +4115,7 @@ "resolved": "https://registry.npmjs.org/@nut-tree/libnut/-/libnut-2.5.2.tgz", "integrity": "sha512-IwlGgalGQjjCrbPq52HTLtsR6MRsGJ6c4GhgHmgwJPD/yBVCzsU5EA2rwDgjKSgK+jiLOpykySDZQ+owhyd1zw==", "dev": true, + "peer": true, "dependencies": { "@nut-tree/libnut-darwin": "2.5.2", "@nut-tree/libnut-linux": "2.5.2", @@ -3406,6 +4139,7 @@ "linux", "win32" ], + "peer": true, "dependencies": { "bindings": "1.5.0" }, @@ -3430,6 +4164,7 @@ "linux", "win32" ], + "peer": true, "dependencies": { "bindings": "1.5.0" }, @@ -3454,6 +4189,7 @@ "linux", "win32" ], + "peer": true, "dependencies": { "bindings": "1.5.0" }, @@ -3473,6 +4209,7 @@ "os": [ "darwin" ], + "peer": true, "dependencies": { "bindings": "1.5.0", "node-addon-api": "5.0.0" @@ -3492,6 +4229,7 @@ "darwin", "win32" ], + "peer": true, "dependencies": { "@nut-tree/libnut": "2.5.2", "clipboardy": "2.3.0", @@ -3500,43 +4238,46 @@ } }, "node_modules/@openfin/automation-cli": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@openfin/automation-cli/-/automation-cli-1.1.11.tgz", - "integrity": "sha512-Gs9V4P2MPHW+ABLLttCXSvmFw7qGJdAaYmYy1CjrE8TNkxY483NBQJQ/68TgxdhaBx6uX9h4xQwui6WvKM+9IQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@openfin/automation-cli/-/automation-cli-1.2.0.tgz", + "integrity": "sha512-vcaUEaqXlGPrCcb/fhePPBS3HIyrgnYbuE4gFuYJC8RKdsI+LtLhslcKfjGpyW2r9X6MHDKHcgLJp8szv7cdmg==", "dev": true, "dependencies": { - "@openfin/automation-helpers": "1.1.11", + "@openfin/automation-helpers": "1.2.0", "chalk": "4.1.2", - "commander": "11.0.0", - "glob": "10.3.3", - "jasmine": "5.1.0", - "jasmine-spec-reporter": "7.0.0", - "jest": "29.6.2", + "commander": "11.1.0", + "glob": "10.3.10", "jszip": "3.10.1", - "mocha": "10.2.0", - "ts-jest": "29.1.1", - "ts-node": "10.9.1", - "webdriver": "8.13.13", "xml2js": "0.6.2" }, "bin": { "of-automation": "bin/index.js" + }, + "peerDependencies": { + "jasmine": "5.x", + "jasmine-spec-reporter": "7.x", + "jest": "29.x", + "jest-environment-node": "29.x", + "mocha": "10.x", + "ts-jest": "29.x", + "ts-node": "10.x", + "webdriver": "8.x" } }, "node_modules/@openfin/automation-cli/node_modules/glob": { - "version": "10.3.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.3.tgz", - "integrity": "sha512-92vPiMb/iqpmEgsOoIDvTjc50wf9CCCvMzsi6W0JLPeUKE8TWP1a73PgqSrqy7iAZxaSD1YdzU7QZR5LF51MJw==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", + "jackspeak": "^2.3.5", "minimatch": "^9.0.1", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", "path-scurry": "^1.10.1" }, "bin": { - "glob": "dist/cjs/src/bin.js" + "glob": "dist/esm/bin.mjs" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -3545,25 +4286,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@openfin/automation-cli/node_modules/jasmine": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-5.1.0.tgz", - "integrity": "sha512-prmJlC1dbLhti4nE4XAPDWmfJesYO15sjGXVp7Cs7Ym5I9Xtwa/hUHxxJXjnpfLO72+ySttA0Ztf8g/RiVnUKw==", - "dev": true, - "dependencies": { - "glob": "^10.2.2", - "jasmine-core": "~5.1.0" - }, - "bin": { - "jasmine": "bin/jasmine.js" - } - }, - "node_modules/@openfin/automation-cli/node_modules/jasmine-core": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-5.1.1.tgz", - "integrity": "sha512-UrzO3fL7nnxlQXlvTynNAenL+21oUQRlzqQFsA2U11ryb4+NLOCOePZ70PTojEaUKhiFugh7dG0Q+I58xlPdWg==", - "dev": true - }, "node_modules/@openfin/automation-cli/node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", @@ -3580,75 +4302,28 @@ } }, "node_modules/@openfin/automation-helpers": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@openfin/automation-helpers/-/automation-helpers-1.1.11.tgz", - "integrity": "sha512-0cjOESP2IxEMNVIcYaNH/sEqEq51P+Z/46wPKdHRMFaKOTTzUIshFChKMwziXeYVJ73zI5iU7QrtSSjALoGcJA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@openfin/automation-helpers/-/automation-helpers-1.2.0.tgz", + "integrity": "sha512-O6MQLVK95k5oQ7ZSVsRRErXS1sBoGjYPIy2TBfbZR7kCSnZebt/t6grbrg1GX6a3whbFq0pLf0+XIWQYY16mfw==", "dev": true, - "dependencies": { - "csstype": "3.1.2", - "openfin-adapter": "32.76.10", - "selenium-webdriver": "4.10.0", - "webdriver": "8.13.13" - }, "peerDependencies": { - "@openfin/core": "*" - } - }, - "node_modules/@openfin/automation-helpers/node_modules/selenium-webdriver": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.10.0.tgz", - "integrity": "sha512-hSQPw6jgc+ej/UEcdQPG/iBwwMeCEgZr9HByY/J8ToyXztEqXzU9aLsIyrlj1BywBcStO4JQK/zMUWWrV8+riA==", - "dev": true, - "dependencies": { - "jszip": "^3.10.1", - "tmp": "^0.2.1", - "ws": ">=8.13.0" - }, - "engines": { - "node": ">= 14.20.0" + "@openfin/core": "*", + "@openfin/node-adapter": "*", + "csstype": "3.x", + "selenium-webdriver": "4.x", + "webdriver": "8.x" } }, - "node_modules/@openfin/automation-helpers/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "node_modules/@openfin/automation-native": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@openfin/automation-native/-/automation-native-1.2.0.tgz", + "integrity": "sha512-AqhfmN4geVnmPr+BuojnDw34z4JkXGMCvoC4xl6uozATtr86O5SYHS+uGzpqymh2eFv9WOyBevA0RqeVzXMuqA==", "dev": true, "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/@openfin/automation-helpers/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "dev": true, - "engines": { - "node": ">=10.0.0" + "@openfin/automation-helpers": "1.2.0" }, "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/@openfin/automation-native": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/@openfin/automation-native/-/automation-native-1.1.11.tgz", - "integrity": "sha512-uQQceajpm32k45pvu82CpG5vqEoQsf7g/QvCYRSS9W8rDDr+p8762nuXEmLB/6FgS8/5mbwKclXP2QscM2m1dA==", - "dev": true, - "dependencies": { - "@nut-tree/nut-js": "^3.1.2", - "@openfin/automation-helpers": "1.1.11" + "@nut-tree/nut-js": "3.x" } }, "node_modules/@openfin/bloomberg": { @@ -3674,9 +4349,9 @@ } }, "node_modules/@openfin/core/node_modules/@types/node": { - "version": "16.18.65", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.65.tgz", - "integrity": "sha512-5E9WgTy95B7i90oISjui9U5Zu7iExUPfU4ygtv4yXEy6zJFE3oQYHCnh5H1jZRPkjphJt2Ml3oQW6M0qtK534A==" + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==" }, "node_modules/@openfin/excel": { "version": "1.4.1", @@ -3720,31 +4395,15 @@ "openfin-adapter": "^21.61.12" } }, - "node_modules/@openfin/native-window-integration-client/node_modules/@types/node": { - "version": "10.17.60", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", - "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" - }, - "node_modules/@openfin/native-window-integration-client/node_modules/openfin-adapter": { - "version": "21.65.4", - "resolved": "https://registry.npmjs.org/openfin-adapter/-/openfin-adapter-21.65.4.tgz", - "integrity": "sha512-Gfer32WO5wwoOsvVbCzxa6MtpRDZsnEa4pZLRZovlH5xNCnJvuYBqNscZ3FEUyP1Mkk/mJDR5+wZLz0HGIfBuQ==", - "deprecated": "openfin-adapter is no longer being updated. Please use @openfin/node-adapter or @openfin/core instead. See https://developers.openfin.co/of-docs/docs/openfin-end-of-life-services-message#openfinnode-adapter-npm-package-replaces-openfin-adapter-package.", - "dependencies": { - "@types/node": "^10.17.19", - "lodash": "^4.17.21", - "underscore": "^1.8.3", - "ws": "^7.3.0" - } - }, "node_modules/@openfin/node-adapter": { - "version": "33.77.11", - "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-33.77.11.tgz", - "integrity": "sha512-fNEHgFKPlqGQhq5LoNDwsY+ixs+Z2CJzKnkyw1lgGofKuCwzJ1Mtm4JShrOVRFaQqU9bT7RMn+YlW3A1Uod7oA==", + "version": "34.78.65", + "resolved": "https://registry.npmjs.org/@openfin/node-adapter/-/node-adapter-34.78.65.tgz", + "integrity": "sha512-JHIXORMfD37VH+mpo/K/w4Y2FXCeP0P+GwQ+AajJvteIT+fQbL1hPbihuucACAJ6tlVVYwH3eODoyD2Bq4klwg==", "bundleDependencies": [ "openfin-adapter" ], "dev": true, + "peer": true, "dependencies": { "@types/node": "^16.0.0", "lodash": "^4.17.21", @@ -3753,10 +4412,11 @@ } }, "node_modules/@openfin/node-adapter/node_modules/@types/node": { - "version": "16.18.65", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.65.tgz", - "integrity": "sha512-5E9WgTy95B7i90oISjui9U5Zu7iExUPfU4ygtv4yXEy6zJFE3oQYHCnh5H1jZRPkjphJt2Ml3oQW6M0qtK534A==", - "dev": true + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==", + "dev": true, + "peer": true }, "node_modules/@openfin/openid-connect": { "version": "1.0.0", @@ -4525,53 +5185,53 @@ } }, "node_modules/@sentry-internal/tracing": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.83.0.tgz", - "integrity": "sha512-fY1ZyOiQaaUTuoq5rO+G4/5Ov3n8BnfNK7ck97yAGxy3w+E1CwhVZkXHEvTngNfdYV3ArxvlrtPRb9STFRqXvQ==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.84.0.tgz", + "integrity": "sha512-y9bGYA0OM6PEREfd+nk4UURZy29tpIw+7vQwpxWfEVs2fqq0/5TBFX/tKFb8AKUI9lVM8v0bcF0bNSCnuPQZHQ==", "dependencies": { - "@sentry/core": "7.83.0", - "@sentry/types": "7.83.0", - "@sentry/utils": "7.83.0" + "@sentry/core": "7.84.0", + "@sentry/types": "7.84.0", + "@sentry/utils": "7.84.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/browser": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.83.0.tgz", - "integrity": "sha512-8v7QEaC/fVAHn8pi59ZlJznr7ZdOQIgtz8DAOJeJsC2vHTAxQ9nVkoMkJWjTp/qaDHUjSe5ob6eqaChuhi6t2g==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.84.0.tgz", + "integrity": "sha512-X50TlTKY9WzAnHsYc4FYrCWgm+CdVo0h02ggmodVBUpRLUBjj+cs5Q1plov/v/XeorSwmorNEMUu/n+XZNSsrA==", "dependencies": { - "@sentry-internal/tracing": "7.83.0", - "@sentry/core": "7.83.0", - "@sentry/replay": "7.83.0", - "@sentry/types": "7.83.0", - "@sentry/utils": "7.83.0" + "@sentry-internal/tracing": "7.84.0", + "@sentry/core": "7.84.0", + "@sentry/replay": "7.84.0", + "@sentry/types": "7.84.0", + "@sentry/utils": "7.84.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/core": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.83.0.tgz", - "integrity": "sha512-fglvpw8aWM6nWXzCjAVXIMTiTEAQ9G9b85IpDd/7L8fuwaFTPQAUSJXupF2PfbpQ3FUYbJt80dxshbERVJG8vQ==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.84.0.tgz", + "integrity": "sha512-tbuwunbBx2kSex15IHCqHDnrMfIlqPc6w/76fwkGqokz3oh9GSEGlLICwmBWL8AypWimUg13IDtFpD0TJTriWA==", "dependencies": { - "@sentry/types": "7.83.0", - "@sentry/utils": "7.83.0" + "@sentry/types": "7.84.0", + "@sentry/utils": "7.84.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/react": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.83.0.tgz", - "integrity": "sha512-8GjKRXkZH+FkmO0LaGEVOrTC9g6Csn7VnTVIqtnfX2hVxbdHnqyjhHDgnCbmW7JRb0X6//QK4CuLCWu8uApLBw==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.84.0.tgz", + "integrity": "sha512-VQZrEHwPKCYTSbRYXD2ohXcQg99G1Hgs8eevRUuRpdChmA2e3z/RvT00NlaSNNZrS86wPyKpAK6kickB/eSYrw==", "dependencies": { - "@sentry/browser": "7.83.0", - "@sentry/types": "7.83.0", - "@sentry/utils": "7.83.0", + "@sentry/browser": "7.84.0", + "@sentry/types": "7.84.0", + "@sentry/utils": "7.84.0", "hoist-non-react-statics": "^3.3.2" }, "engines": { @@ -4582,33 +5242,33 @@ } }, "node_modules/@sentry/replay": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.83.0.tgz", - "integrity": "sha512-B/rzmjmQ3ZWE68m4Z9rHIN3Fa/wkfVVTK+iSQtqErFflyMETMNwtWRNd6P9FhXnphEINZEbcn/UZF5w5xu/DfA==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.84.0.tgz", + "integrity": "sha512-c4PxT0ZpvkR9zXNfmAk3ojkm6eZ9+NlDze09RFBOCNo69QwIN90hnvbjXFC1+vRIJsfgo78Zr0ya/Wzb3Rog7Q==", "dependencies": { - "@sentry-internal/tracing": "7.83.0", - "@sentry/core": "7.83.0", - "@sentry/types": "7.83.0", - "@sentry/utils": "7.83.0" + "@sentry-internal/tracing": "7.84.0", + "@sentry/core": "7.84.0", + "@sentry/types": "7.84.0", + "@sentry/utils": "7.84.0" }, "engines": { "node": ">=12" } }, "node_modules/@sentry/types": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.83.0.tgz", - "integrity": "sha512-Bd+zJcy8p1VgCfQqUprmUaw0QPWUV+GmCt6zJRHrHTb2pwLahXv6sHJvQ8F8Va6S7Keuy088U+kHzUFGQLMZMQ==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.84.0.tgz", + "integrity": "sha512-VqGLIF3JOUrk7yIXjLXJvAORkZL1e3dDX0Q1okRehwyt/5CRE+mdUTeJZkBo9P9mBwgMyvtwklzOGGrzjb4eMA==", "engines": { "node": ">=8" } }, "node_modules/@sentry/utils": { - "version": "7.83.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.83.0.tgz", - "integrity": "sha512-7SrZtgAn3pHFBqSSvV/VL0CWTBQ7VenJjok4+WGWd6/FhP3fKrEEd9rjVTUb2Pzq9WLJJYzdvxAG8RlggG+H4g==", + "version": "7.84.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.84.0.tgz", + "integrity": "sha512-qdUVuxnRBvaf05AU+28R+xYtZmi/Ymf8os3Njq9g4XuA+QEkZLbzmIpRK5W9Ja7vUtjOeg29Xgg43A8znde9LQ==", "dependencies": { - "@sentry/types": "7.83.0" + "@sentry/types": "7.84.0" }, "engines": { "node": ">=8" @@ -4680,7 +5340,8 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@tootallnate/once": { "version": "2.0.0", @@ -4701,25 +5362,29 @@ "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@tsconfig/node16": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@types/babel__core": { "version": "7.20.5", @@ -4797,9 +5462,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.44.7", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.7.tgz", - "integrity": "sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==", + "version": "8.44.8", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.8.tgz", + "integrity": "sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw==", "dependencies": { "@types/estree": "*", "@types/json-schema": "*" @@ -4935,9 +5600,9 @@ "integrity": "sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==" }, "node_modules/@types/luxon": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.3.5.tgz", - "integrity": "sha512-1cyf6Ge/94zlaWIZA2ei1pE6SZ8xpad2hXaYa5JEFiaUH0YS494CZwyi4MXNpXD9oEuv6ZH0Bmh0e7F9sPhmZA==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.3.6.tgz", + "integrity": "sha512-LblarKeI26YsMLxHDIQ0295wPSLjkl98eNwDcVhz3zbo1H+kfnkzR01H5Ai5LBzSeddX0ZJSpGwKEZihGb5diw==", "dev": true }, "node_modules/@types/mime": { @@ -4958,9 +5623,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.10.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.0.tgz", - "integrity": "sha512-D0WfRmU9TQ8I9PFx9Yc+EBHw+vSpIub4IDvQivcp26PtPrdMGAq5SDcpXEo/epqa/DXotVpekHiLNTg3iaKXBQ==", + "version": "20.10.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.1.tgz", + "integrity": "sha512-T2qwhjWwGH81vUEx4EXmBKsTJRXFXNZTL4v0gi01+zyBmCwzE6TyHszqX01m+QHTEq+EZNo13NeJIdEqf+Myrg==", "dependencies": { "undici-types": "~5.26.4" } @@ -5309,18 +5974,18 @@ "dev": true }, "node_modules/@wdio/cli": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.23.3.tgz", - "integrity": "sha512-iD4s8994u/nR1hZBcVY6yWBKqcyfVbwOtbjEcPoti4KcH5hs2u0ec0CpAh841NDx24fimDuPSh1znOsbrzvELw==", + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.24.6.tgz", + "integrity": "sha512-QXRiP1FeGaSmUO24pFhyzP6lZY/FsZAhXyofl3r6TGwTlnw9i4S7C4Te2qQcccgAQq03rdSK058YURPwbiKhmg==", "dev": true, "dependencies": { "@types/node": "^20.1.1", - "@wdio/config": "8.23.1", - "@wdio/globals": "8.23.3", + "@wdio/config": "8.24.6", + "@wdio/globals": "8.24.6", "@wdio/logger": "8.16.17", "@wdio/protocols": "8.23.0", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", + "@wdio/types": "8.24.2", + "@wdio/utils": "8.24.6", "async-exit-hook": "^2.0.1", "chalk": "^5.2.0", "chokidar": "^3.5.3", @@ -5336,7 +6001,7 @@ "lodash.union": "^4.6.0", "read-pkg-up": "^10.0.0", "recursive-readdir": "^2.2.3", - "webdriverio": "8.23.3", + "webdriverio": "8.24.6", "yargs": "^17.7.2" }, "bin": { @@ -5358,151 +6023,38 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@wdio/cli/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "node_modules/@wdio/config": { + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.24.6.tgz", + "integrity": "sha512-ZFmd6rB1kgL4k/SjLXbtFTCxvxSf1qzdt/losiTqkqFBYznkTRUBGSoGaVTlkMtHAReiVSK92sICc15JWaCdEA==", "dev": true, - "engines": { - "node": ">=12" + "dependencies": { + "@wdio/logger": "8.16.17", + "@wdio/types": "8.24.2", + "@wdio/utils": "8.24.6", + "decamelize": "^6.0.0", + "deepmerge-ts": "^5.0.0", + "glob": "^10.2.2", + "import-meta-resolve": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^16.13 || >=18" } }, - "node_modules/@wdio/cli/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/@wdio/config/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@wdio/cli/node_modules/webdriver": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.23.1.tgz", - "integrity": "sha512-0PLN6cqP5cSorZBU2OBk2XKhxKpWWKzvClHBiGCqZIuofZ3kPTq7uYFapej0c4xFmKXHEiLIN7Qkt4H3gWTs8g==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@types/ws": "^8.5.3", - "@wdio/config": "8.23.1", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "deepmerge-ts": "^5.1.0", - "got": "^ 12.6.1", - "ky": "^0.33.0", - "ws": "^8.8.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/cli/node_modules/webdriverio": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.23.3.tgz", - "integrity": "sha512-kH+GAQrC6GfrF0LDX5odqn3CVvVrdIeTAYsQtji9tmb2YTJMIx57GNL1NIXhV4MFtalcEc9UjhZCwekLMemEOg==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@wdio/config": "8.23.1", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/repl": "8.23.1", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "archiver": "^6.0.0", - "aria-query": "^5.0.0", - "css-shorthand-properties": "^1.1.1", - "css-value": "^0.0.1", - "devtools-protocol": "^0.0.1213968", - "grapheme-splitter": "^1.0.2", - "import-meta-resolve": "^3.0.0", - "is-plain-obj": "^4.1.0", - "lodash.clonedeep": "^4.5.0", - "lodash.zip": "^4.2.0", - "minimatch": "^9.0.0", - "puppeteer-core": "^20.9.0", - "query-selector-shadow-dom": "^1.0.0", - "resq": "^1.9.1", - "rgb2hex": "0.2.5", - "serialize-error": "^11.0.1", - "webdriver": "8.23.1" - }, - "engines": { - "node": "^16.13 || >=18" - }, - "peerDependencies": { - "devtools": "^8.14.0" - }, - "peerDependenciesMeta": { - "devtools": { - "optional": true - } - } - }, - "node_modules/@wdio/cli/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/@wdio/config": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.23.1.tgz", - "integrity": "sha512-MljMBvMr+QYoy4/FytFHWorFE3CrBdEWuroOaGzC/0gkVOcHRO4nOy2rKahdcPXJAuxFwJNqqHhBPj+4tWiz9w==", - "dev": true, - "dependencies": { - "@wdio/logger": "8.16.17", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "decamelize": "^6.0.0", - "deepmerge-ts": "^5.0.0", - "glob": "^10.2.2", - "import-meta-resolve": "^3.0.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/config/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -5527,533 +6079,189 @@ } }, "node_modules/@wdio/globals": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.23.3.tgz", - "integrity": "sha512-pmsR82CvbQu2zonwsIblsvNv+wOL0hCm4eJmCzLEMQ9WBB36kO28im8B/itsh/XKzqvQ1aidhCUdSSHFwFwZsQ==", + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.24.6.tgz", + "integrity": "sha512-v5Sjyix9ddrxPM8DCf0vADUxr21Fx7nWVYS6Z/gkTEhuQbi5svjs6EGjMmErO6tp3CY4SNTUiz+ZFJw9YH4Swg==", "dev": true, "engines": { "node": "^16.13 || >=18" }, "optionalDependencies": { - "expect-webdriverio": "^4.5.1", - "webdriverio": "8.23.3" - } - }, - "node_modules/@wdio/globals/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@wdio/globals/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "optional": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@wdio/globals/node_modules/webdriver": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.23.1.tgz", - "integrity": "sha512-0PLN6cqP5cSorZBU2OBk2XKhxKpWWKzvClHBiGCqZIuofZ3kPTq7uYFapej0c4xFmKXHEiLIN7Qkt4H3gWTs8g==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "^20.1.0", - "@types/ws": "^8.5.3", - "@wdio/config": "8.23.1", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "deepmerge-ts": "^5.1.0", - "got": "^ 12.6.1", - "ky": "^0.33.0", - "ws": "^8.8.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/globals/node_modules/webdriverio": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.23.3.tgz", - "integrity": "sha512-kH+GAQrC6GfrF0LDX5odqn3CVvVrdIeTAYsQtji9tmb2YTJMIx57GNL1NIXhV4MFtalcEc9UjhZCwekLMemEOg==", - "dev": true, - "optional": true, - "dependencies": { - "@types/node": "^20.1.0", - "@wdio/config": "8.23.1", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/repl": "8.23.1", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "archiver": "^6.0.0", - "aria-query": "^5.0.0", - "css-shorthand-properties": "^1.1.1", - "css-value": "^0.0.1", - "devtools-protocol": "^0.0.1213968", - "grapheme-splitter": "^1.0.2", - "import-meta-resolve": "^3.0.0", - "is-plain-obj": "^4.1.0", - "lodash.clonedeep": "^4.5.0", - "lodash.zip": "^4.2.0", - "minimatch": "^9.0.0", - "puppeteer-core": "^20.9.0", - "query-selector-shadow-dom": "^1.0.0", - "resq": "^1.9.1", - "rgb2hex": "0.2.5", - "serialize-error": "^11.0.1", - "webdriver": "8.23.1" - }, - "engines": { - "node": "^16.13 || >=18" - }, - "peerDependencies": { - "devtools": "^8.14.0" - }, - "peerDependenciesMeta": { - "devtools": { - "optional": true - } - } - }, - "node_modules/@wdio/globals/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "expect-webdriverio": "^4.6.1", + "webdriverio": "8.24.6" } }, "node_modules/@wdio/local-runner": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/@wdio/local-runner/-/local-runner-8.23.3.tgz", - "integrity": "sha512-ELiD+zWR7PxvV+kIjnlIh2pUZ2dWSld7c6XeKff/e+YLnhc3AG7+/b3ml+JhLrtQqFt6X43V9IV9lfbNRiHWoQ==", + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/local-runner/-/local-runner-8.24.6.tgz", + "integrity": "sha512-fd91CxlVpOpSxg+QuqgdFl66kEtY7R/ohdKBXNhdMXtXFb4EQIGp/igiMBvuTHcHUMHOw3N8KaHfe6YXo+6Qyw==", "dev": true, "dependencies": { "@types/node": "^20.1.0", "@wdio/logger": "8.16.17", "@wdio/repl": "8.23.1", - "@wdio/runner": "8.23.3", - "@wdio/types": "8.23.1", + "@wdio/runner": "8.24.6", + "@wdio/types": "8.24.2", "async-exit-hook": "^2.0.1", - "split2": "^4.1.0", - "stream-buffers": "^3.0.2" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/logger": { - "version": "8.16.17", - "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.16.17.tgz", - "integrity": "sha512-zeQ41z3T+b4IsrriZZipayXxLNDuGsm7TdExaviNGojPVrIsQUCSd/FvlLHM32b7ZrMyInHenu/zx1cjAZO71g==", - "dev": true, - "dependencies": { - "chalk": "^5.1.2", - "loglevel": "^1.6.0", - "loglevel-plugin-prefix": "^0.8.4", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/logger/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@wdio/logger/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@wdio/logger/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@wdio/mocha-framework": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/mocha-framework/-/mocha-framework-8.23.1.tgz", - "integrity": "sha512-6PbALck8MuLnKhW5JGjCQrtfBivlX1fKqdin6clppVEI6LTqOxj5w8wmLhBbDV5oy68MzaSgc6hP141caWptuQ==", - "dev": true, - "dependencies": { - "@types/mocha": "^10.0.0", - "@types/node": "^20.1.0", - "@wdio/logger": "8.16.17", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "mocha": "^10.0.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/protocols": { - "version": "8.23.0", - "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-8.23.0.tgz", - "integrity": "sha512-2XTzD+lqQP3g8BWn+Bn5BTFzjHqzZNwq7DjlYrb27Bq8nOA+1DEcj3WzQ6V6CktTnKI/LAYKA1IFAF//Azrp/Q==", - "dev": true - }, - "node_modules/@wdio/repl": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/repl/-/repl-8.23.1.tgz", - "integrity": "sha512-u6zG2cgBm67V5/WlQzadWqLGXs3moH8MOsgoljULQncelSBBZGZ5DyLB4p7jKcUAsKtMjgmFQmIvpQoqmyvdfg==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/reporter": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/reporter/-/reporter-8.23.1.tgz", - "integrity": "sha512-MQKImrjRZdiJC1n0mw+OjgroX7SZdFApJTPijAT3mJ0KLeIf5PA+jnW3TZueMcWvG1NB7ZTAzL8BTWInOoZtgA==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@wdio/logger": "8.16.17", - "@wdio/types": "8.23.1", - "diff": "^5.0.0", - "object-inspect": "^1.12.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/runner": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/@wdio/runner/-/runner-8.23.3.tgz", - "integrity": "sha512-vbSNfEvgMcDdWgBoRSo2GRiV8ccsh5QJYP8b5FfRoHBAvC4OZV6ZVx9Xzh7QsEfSaXXA9G/vaUGX0PPrS0gmgQ==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@wdio/config": "8.23.1", - "@wdio/globals": "8.23.3", - "@wdio/logger": "8.16.17", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "deepmerge-ts": "^5.0.0", - "expect-webdriverio": "^4.5.1", - "gaze": "^1.1.2", - "webdriver": "8.23.1", - "webdriverio": "8.23.3" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/runner/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@wdio/runner/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@wdio/runner/node_modules/webdriver": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.23.1.tgz", - "integrity": "sha512-0PLN6cqP5cSorZBU2OBk2XKhxKpWWKzvClHBiGCqZIuofZ3kPTq7uYFapej0c4xFmKXHEiLIN7Qkt4H3gWTs8g==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@types/ws": "^8.5.3", - "@wdio/config": "8.23.1", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "deepmerge-ts": "^5.1.0", - "got": "^ 12.6.1", - "ky": "^0.33.0", - "ws": "^8.8.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/@wdio/runner/node_modules/webdriverio": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.23.3.tgz", - "integrity": "sha512-kH+GAQrC6GfrF0LDX5odqn3CVvVrdIeTAYsQtji9tmb2YTJMIx57GNL1NIXhV4MFtalcEc9UjhZCwekLMemEOg==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@wdio/config": "8.23.1", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/repl": "8.23.1", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "archiver": "^6.0.0", - "aria-query": "^5.0.0", - "css-shorthand-properties": "^1.1.1", - "css-value": "^0.0.1", - "devtools-protocol": "^0.0.1213968", - "grapheme-splitter": "^1.0.2", - "import-meta-resolve": "^3.0.0", - "is-plain-obj": "^4.1.0", - "lodash.clonedeep": "^4.5.0", - "lodash.zip": "^4.2.0", - "minimatch": "^9.0.0", - "puppeteer-core": "^20.9.0", - "query-selector-shadow-dom": "^1.0.0", - "resq": "^1.9.1", - "rgb2hex": "0.2.5", - "serialize-error": "^11.0.1", - "webdriver": "8.23.1" - }, - "engines": { - "node": "^16.13 || >=18" - }, - "peerDependencies": { - "devtools": "^8.14.0" - }, - "peerDependenciesMeta": { - "devtools": { - "optional": true - } - } - }, - "node_modules/@wdio/runner/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" + "split2": "^4.1.0", + "stream-buffers": "^3.0.2" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": "^16.13 || >=18" } }, - "node_modules/@wdio/shared-store-service": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/@wdio/shared-store-service/-/shared-store-service-8.23.3.tgz", - "integrity": "sha512-CUzOm5TlYdPJQDbHGeztjJIYCJmAvaNovr5l/qqcJSIC8P23szAkQ+kR5JhdIWiACGzuVPto3LGTyD78RdNqsw==", + "node_modules/@wdio/logger": { + "version": "8.16.17", + "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.16.17.tgz", + "integrity": "sha512-zeQ41z3T+b4IsrriZZipayXxLNDuGsm7TdExaviNGojPVrIsQUCSd/FvlLHM32b7ZrMyInHenu/zx1cjAZO71g==", "dev": true, "dependencies": { - "@polka/parse": "^1.0.0-next.0", - "@wdio/logger": "8.16.17", - "@wdio/types": "8.23.1", - "got": "^ 12.6.1", - "polka": "^0.5.2", - "webdriverio": "8.23.3" + "chalk": "^5.1.2", + "loglevel": "^1.6.0", + "loglevel-plugin-prefix": "^0.8.4", + "strip-ansi": "^7.1.0" }, "engines": { "node": "^16.13 || >=18" } }, - "node_modules/@wdio/shared-store-service/node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "node_modules/@wdio/logger/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/@wdio/shared-store-service/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "node_modules/@wdio/logger/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@wdio/logger/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/@wdio/shared-store-service/node_modules/webdriver": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.23.1.tgz", - "integrity": "sha512-0PLN6cqP5cSorZBU2OBk2XKhxKpWWKzvClHBiGCqZIuofZ3kPTq7uYFapej0c4xFmKXHEiLIN7Qkt4H3gWTs8g==", + "node_modules/@wdio/mocha-framework": { + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/mocha-framework/-/mocha-framework-8.24.6.tgz", + "integrity": "sha512-qTRU7trzPJKjdlO6r4+YnyauEQ/cTvCJYRl5t2jqsG8y2OoCRsw4qUydzGTxX3YEkmgZjSN845hMNtyWuZUjcg==", "dev": true, "dependencies": { + "@types/mocha": "^10.0.0", "@types/node": "^20.1.0", - "@types/ws": "^8.5.3", - "@wdio/config": "8.23.1", "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "deepmerge-ts": "^5.1.0", - "got": "^ 12.6.1", - "ky": "^0.33.0", - "ws": "^8.8.0" + "@wdio/types": "8.24.2", + "@wdio/utils": "8.24.6", + "mocha": "^10.0.0" + }, + "engines": { + "node": "^16.13 || >=18" + } + }, + "node_modules/@wdio/protocols": { + "version": "8.23.0", + "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-8.23.0.tgz", + "integrity": "sha512-2XTzD+lqQP3g8BWn+Bn5BTFzjHqzZNwq7DjlYrb27Bq8nOA+1DEcj3WzQ6V6CktTnKI/LAYKA1IFAF//Azrp/Q==", + "dev": true + }, + "node_modules/@wdio/repl": { + "version": "8.23.1", + "resolved": "https://registry.npmjs.org/@wdio/repl/-/repl-8.23.1.tgz", + "integrity": "sha512-u6zG2cgBm67V5/WlQzadWqLGXs3moH8MOsgoljULQncelSBBZGZ5DyLB4p7jKcUAsKtMjgmFQmIvpQoqmyvdfg==", + "dev": true, + "dependencies": { + "@types/node": "^20.1.0" }, "engines": { "node": "^16.13 || >=18" } }, - "node_modules/@wdio/shared-store-service/node_modules/webdriverio": { - "version": "8.23.3", - "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.23.3.tgz", - "integrity": "sha512-kH+GAQrC6GfrF0LDX5odqn3CVvVrdIeTAYsQtji9tmb2YTJMIx57GNL1NIXhV4MFtalcEc9UjhZCwekLMemEOg==", + "node_modules/@wdio/reporter": { + "version": "8.24.2", + "resolved": "https://registry.npmjs.org/@wdio/reporter/-/reporter-8.24.2.tgz", + "integrity": "sha512-10hTEk4JIIXW8hnwyxTNgby1ZxoJAbXH9d/eMbkEoAwxx/eqaM+ghPs1GSrzOIjjZ3lwz369POEYfJcLkw3g2w==", "dev": true, "dependencies": { "@types/node": "^20.1.0", - "@wdio/config": "8.23.1", "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/repl": "8.23.1", - "@wdio/types": "8.23.1", - "@wdio/utils": "8.23.1", - "archiver": "^6.0.0", - "aria-query": "^5.0.0", - "css-shorthand-properties": "^1.1.1", - "css-value": "^0.0.1", - "devtools-protocol": "^0.0.1213968", - "grapheme-splitter": "^1.0.2", - "import-meta-resolve": "^3.0.0", - "is-plain-obj": "^4.1.0", - "lodash.clonedeep": "^4.5.0", - "lodash.zip": "^4.2.0", - "minimatch": "^9.0.0", - "puppeteer-core": "^20.9.0", - "query-selector-shadow-dom": "^1.0.0", - "resq": "^1.9.1", - "rgb2hex": "0.2.5", - "serialize-error": "^11.0.1", - "webdriver": "8.23.1" + "@wdio/types": "8.24.2", + "diff": "^5.0.0", + "object-inspect": "^1.12.0" }, "engines": { "node": "^16.13 || >=18" - }, - "peerDependencies": { - "devtools": "^8.14.0" - }, - "peerDependenciesMeta": { - "devtools": { - "optional": true - } } }, - "node_modules/@wdio/shared-store-service/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", + "node_modules/@wdio/runner": { + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/runner/-/runner-8.24.6.tgz", + "integrity": "sha512-2dt5F9scy0klYwB/E4JztLo04OaPsqcuZP9WKn+NSIBNug0UrgUcBv5ARJEuE3iUyPWpTeczWkU3UtcdMmjagQ==", "dev": true, - "engines": { - "node": ">=10.0.0" + "dependencies": { + "@types/node": "^20.1.0", + "@wdio/config": "8.24.6", + "@wdio/globals": "8.24.6", + "@wdio/logger": "8.16.17", + "@wdio/types": "8.24.2", + "@wdio/utils": "8.24.6", + "deepmerge-ts": "^5.0.0", + "expect-webdriverio": "^4.6.1", + "gaze": "^1.1.2", + "webdriver": "8.24.6", + "webdriverio": "8.24.6" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" + "engines": { + "node": "^16.13 || >=18" + } + }, + "node_modules/@wdio/shared-store-service": { + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/shared-store-service/-/shared-store-service-8.24.6.tgz", + "integrity": "sha512-Qu6uvhZkShEdBvQ2to2S0gak/e5Clfwje7z0WgFzmOe0p4Swf6Yx7u+Tig1lDTiEwCY8rwjMl9R0syHnrNXrIQ==", + "dev": true, + "dependencies": { + "@polka/parse": "^1.0.0-next.0", + "@wdio/logger": "8.16.17", + "@wdio/types": "8.24.2", + "got": "^ 12.6.1", + "polka": "^0.5.2", + "webdriverio": "8.24.6" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": "^16.13 || >=18" } }, "node_modules/@wdio/spec-reporter": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/spec-reporter/-/spec-reporter-8.23.1.tgz", - "integrity": "sha512-Igc/vsa58xbklwz8vJ1He3tyuxeEP9TQvlT23HizG1QziBvvU1b6V5qnM9BPiDvTg+n3SByJI0Ce0jyn4J2wYQ==", + "version": "8.24.2", + "resolved": "https://registry.npmjs.org/@wdio/spec-reporter/-/spec-reporter-8.24.2.tgz", + "integrity": "sha512-FJ1+/kgxlw4ong+5PJJcOzLf8B/TzPL9hGeOF2xoWkk2uMsmNBJN2r27pjtfFxA41lw4q+Oav0Vb/RhdCB601Q==", "dev": true, "dependencies": { - "@wdio/reporter": "8.23.1", - "@wdio/types": "8.23.1", + "@wdio/reporter": "8.24.2", + "@wdio/types": "8.24.2", "chalk": "^5.1.2", "easy-table": "^1.2.0", "pretty-ms": "^7.0.0" @@ -6075,9 +6283,9 @@ } }, "node_modules/@wdio/types": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/types/-/types-8.23.1.tgz", - "integrity": "sha512-ym3tWSUGvmKwQ9vNPQfcKvJwGNK/Fh3e5WloNj3zoaUTKgD0aJeFQ0+Dz6KGlNowA0j5VkcqTTXo+UZ3l4Cx9A==", + "version": "8.24.2", + "resolved": "https://registry.npmjs.org/@wdio/types/-/types-8.24.2.tgz", + "integrity": "sha512-x7iWF5NM8NfVxziGwLdQ+3sstgSxRoqfmmFEDTDps0oFrN5CgkqcoLkqXJ5u166gvpxpEq0gxZwxkbPC/Lp0cw==", "dev": true, "dependencies": { "@types/node": "^20.1.0" @@ -6087,14 +6295,14 @@ } }, "node_modules/@wdio/utils": { - "version": "8.23.1", - "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.23.1.tgz", - "integrity": "sha512-VA47MOpt+7svHj3W9r+DUl3t73tJbjF7+ZXL0Lk7QLe79xevd+mPk+YmuTEepn+0MljJWAuqRCEKFG/HK77RNw==", + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.24.6.tgz", + "integrity": "sha512-qwcshLH9iKnhK0jXoXjPw3G02UhyShT0I+ljC0hMybJEBsra92TYFa47Cp6n1fdvM3+/BTuhsgtzRz0anObicQ==", "dev": true, "dependencies": { "@puppeteer/browsers": "^1.6.0", "@wdio/logger": "8.16.17", - "@wdio/types": "8.23.1", + "@wdio/types": "8.24.2", "decamelize": "^6.0.0", "deepmerge-ts": "^5.1.0", "edgedriver": "^5.3.5", @@ -6562,7 +6770,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz", "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==", - "dev": true + "dev": true, + "peer": true }, "node_modules/anymatch": { "version": "3.1.3", @@ -6595,7 +6804,8 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "peer": true }, "node_modules/archiver": { "version": "6.0.1", @@ -6673,7 +6883,8 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/argparse": { "version": "2.0.1", @@ -6920,9 +7131,9 @@ } }, "node_modules/aws-sdk": { - "version": "2.1506.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1506.0.tgz", - "integrity": "sha512-jSBbofvPa7HJykyM7Xph9psMcWPl6UgdiKjG2E7fHJb6psW+BZN9ZvSGOBvRIlT8Y6+JGzI0qkouS1OLK9slhg==", + "version": "2.1509.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1509.0.tgz", + "integrity": "sha512-5h27GXv5/M1Cfgw5StYqTyCesnqscez3QOsKGnShCXP6saGkSEvV3TUHTXQBqdfsrBmz5hVCa8doqP3r3yJD/w==", "dependencies": { "buffer": "4.9.2", "events": "1.1.1", @@ -7203,6 +7414,7 @@ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, + "peer": true, "dependencies": { "file-uri-to-path": "1.0.0" } @@ -7266,7 +7478,8 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz", "integrity": "sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/body-parser": { "version": "1.20.1", @@ -7437,6 +7650,7 @@ "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==", "dev": true, + "peer": true, "engines": { "node": ">=0.4.0" } @@ -7952,6 +8166,7 @@ "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz", "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==", "dev": true, + "peer": true, "dependencies": { "arch": "^2.1.1", "execa": "^1.0.0", @@ -7966,6 +8181,7 @@ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, + "peer": true, "dependencies": { "nice-try": "^1.0.4", "path-key": "^2.0.1", @@ -7982,6 +8198,7 @@ "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", "dev": true, + "peer": true, "dependencies": { "cross-spawn": "^6.0.0", "get-stream": "^4.0.0", @@ -8000,6 +8217,7 @@ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, + "peer": true, "dependencies": { "pump": "^3.0.0" }, @@ -8012,6 +8230,7 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -8021,6 +8240,7 @@ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", "dev": true, + "peer": true, "dependencies": { "path-key": "^2.0.0" }, @@ -8033,6 +8253,7 @@ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, + "peer": true, "engines": { "node": ">=4" } @@ -8042,6 +8263,7 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "peer": true, "bin": { "semver": "bin/semver" } @@ -8051,6 +8273,7 @@ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, + "peer": true, "dependencies": { "shebang-regex": "^1.0.0" }, @@ -8063,6 +8286,7 @@ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -8071,13 +8295,15 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/clipboardy/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, + "peer": true, "dependencies": { "isexe": "^2.0.0" }, @@ -8167,6 +8393,7 @@ "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true, + "peer": true, "engines": { "node": ">=0.1.90" } @@ -8184,9 +8411,9 @@ } }, "node_modules/commander": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.0.0.tgz", - "integrity": "sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", "dev": true, "engines": { "node": ">=16" @@ -8443,7 +8670,8 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/cross-env": { "version": "7.0.3", @@ -8492,6 +8720,28 @@ } } }, + "node_modules/cross-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/cross-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/cross-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -8571,59 +8821,25 @@ "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", "dev": true, "peer": true - }, - "node_modules/data-uri-to-buffer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", - "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", - "dev": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/data-urls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", - "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", - "dev": true, - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/data-urls/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/data-urls/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", "dev": true, "engines": { - "node": ">=12" + "node": ">= 12" } }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "node_modules/data-urls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", "dev": true, "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" }, "engines": { "node": ">=12" @@ -9212,7 +9428,8 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", - "dev": true + "dev": true, + "peer": true }, "node_modules/domexception": { "version": "4.0.0", @@ -9227,15 +9444,6 @@ "node": ">=12" } }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/dotenv": { "version": "16.3.1", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", @@ -9355,9 +9563,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.596", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.596.tgz", - "integrity": "sha512-zW3zbZ40Icb2BCWjm47nxwcFGYlIgdXkAx85XDO7cyky9J4QQfq8t0W19/TLZqq3JPQXtlv8BPIGmfa9Jb4scg==" + "version": "1.4.600", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.600.tgz", + "integrity": "sha512-KD6CWjf1BnQG+NsXuyiTDDT1eV13sKuYsOUioXkQweYTQIbgHkXPry9K7M+7cKtYHnSUPitVaLrXYB1jTkkYrw==" }, "node_modules/emittery": { "version": "0.13.1", @@ -10497,7 +10705,8 @@ "version": "0.1.12", "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", "integrity": "sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/exit": { "version": "0.1.2", @@ -10863,6 +11072,7 @@ "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", "dev": true, + "peer": true, "dependencies": { "readable-web-to-node-stream": "^3.0.0", "strtok3": "^6.2.4", @@ -10879,7 +11089,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/filelist": { "version": "1.0.4", @@ -11666,9 +11877,9 @@ } }, "node_modules/fs-extra": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", - "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", "dev": true, "dependencies": { "graceful-fs": "^4.2.0", @@ -12064,6 +12275,7 @@ "resolved": "https://registry.npmjs.org/gifwrap/-/gifwrap-0.9.4.tgz", "integrity": "sha512-MDMwbhASQuVeD4JKd1fKgNgCRL3fGqMM4WaqpNhWO0JiMOAjbQdumbs4BbBZEy9/M00EHEjKN3HieVhCUlwjeQ==", "dev": true, + "peer": true, "dependencies": { "image-q": "^4.0.0", "omggif": "^1.0.10" @@ -12110,6 +12322,7 @@ "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", "dev": true, + "peer": true, "dependencies": { "min-document": "^2.19.0", "process": "^0.11.10" @@ -12580,6 +12793,7 @@ "resolved": "https://registry.npmjs.org/image-q/-/image-q-4.0.0.tgz", "integrity": "sha512-PfJGVgIfKQJuq3s0tTDOKtztksibuUEbJQIYT3by6wctQo+Rdlh7ef4evJ5NCdxY4CfMbvFkocEwbl4BF8RlJw==", "dev": true, + "peer": true, "dependencies": { "@types/node": "16.9.1" } @@ -12588,7 +12802,8 @@ "version": "16.9.1", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.9.1.tgz", "integrity": "sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==", - "dev": true + "dev": true, + "peer": true }, "node_modules/immediate": { "version": "3.0.6", @@ -12999,7 +13214,8 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/is-generator-fn": { "version": "2.1.0", @@ -13497,15 +13713,14 @@ } }, "node_modules/jasmine": { - "version": "2.99.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.99.0.tgz", - "integrity": "sha512-kmuDC+6c9tA8BAZGd7wmucWKrM/aCCBSzCJEqRghvw9lKValw+pg88aN/BFIikmZwRTD57QmHamQ2wRpKb3FDQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-5.1.0.tgz", + "integrity": "sha512-prmJlC1dbLhti4nE4XAPDWmfJesYO15sjGXVp7Cs7Ym5I9Xtwa/hUHxxJXjnpfLO72+ySttA0Ztf8g/RiVnUKw==", "dev": true, "peer": true, "dependencies": { - "exit": "^0.1.2", - "glob": "^7.0.6", - "jasmine-core": "~2.99.0" + "glob": "^10.2.2", + "jasmine-core": "~5.1.0" }, "bin": { "jasmine": "bin/jasmine.js" @@ -13518,79 +13733,72 @@ "dev": true, "peer": true }, - "node_modules/jasmine-pretty-html-reporter": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/jasmine-pretty-html-reporter/-/jasmine-pretty-html-reporter-0.2.5.tgz", - "integrity": "sha512-Fnd0FZHn+Bu8zk8heaWzloX6Ok+CFMvmCFkNmffD/8Szww2CTIHYOGRxUHYlnQYMsXyTKpo999tmrKIhml3AGA==", - "dev": true, - "peerDependencies": { - "jasmine": "^2.4.1" - } - }, "node_modules/jasmine-spec-reporter": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-7.0.0.tgz", "integrity": "sha512-OtC7JRasiTcjsaCBPtMO0Tl8glCejM4J4/dNuOJdA8lBjz4PmWjYQ6pzb0uzpBNAWJMDudYuj9OdXJWqM2QTJg==", "dev": true, - "dependencies": { - "colors": "1.4.0" - } - }, - "node_modules/jasmine/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "peer": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "colors": "1.4.0" } }, "node_modules/jasmine/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "peer": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/jasmine/node_modules/jasmine-core": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-5.1.1.tgz", + "integrity": "sha512-UrzO3fL7nnxlQXlvTynNAenL+21oUQRlzqQFsA2U11ryb4+NLOCOePZ70PTojEaUKhiFugh7dG0Q+I58xlPdWg==", + "dev": true, + "peer": true + }, "node_modules/jasmine/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "peer": true, "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/jest": { - "version": "29.6.2", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.6.2.tgz", - "integrity": "sha512-8eQg2mqFbaP7CwfsTpCxQ+sHzw1WuNWL5UUvjnWP4hx2riGz9fPSzYOaU5q8/GqWn1TfgZIVTqYJygbGbWAANg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, "dependencies": { - "@jest/core": "^29.6.2", - "@jest/types": "^29.6.1", + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", "import-local": "^3.0.2", - "jest-cli": "^29.6.2" + "jest-cli": "^29.7.0" }, "bin": { "jest": "bin/jest.js" @@ -14001,9 +14209,9 @@ } }, "node_modules/jest-html-reporters": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/jest-html-reporters/-/jest-html-reporters-3.1.4.tgz", - "integrity": "sha512-7lLrKDKDNBNDprd5lP241HRx2mRXb/XQOuYFxX/MxydgHtYRE/lEtK2+J5XLiNTs9JL/rUjWsWhIBOBs9j3wcg==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/jest-html-reporters/-/jest-html-reporters-3.1.5.tgz", + "integrity": "sha512-uw5w9j8nqxrki3VfXkHwz1bU0coyHuNNOmSSzJK8hLvImYNvIy4SHhTs9pPcI8E0nEnbqIXKxdRUb6qsHZUNIw==", "dev": true, "dependencies": { "fs-extra": "^10.0.0", @@ -14383,6 +14591,7 @@ "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.16.13.tgz", "integrity": "sha512-Bxz8q7V4rnCky9A0ktTNGA9SkNFVWRHodddI/DaAWZJzF7sVUlFYKQ60y9JGqrKpi48ECA/TnfMzzc5C70VByA==", "dev": true, + "peer": true, "dependencies": { "@babel/runtime": "^7.7.2", "@jimp/custom": "^0.16.13", @@ -14395,7 +14604,8 @@ "version": "0.13.11", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true + "dev": true, + "peer": true }, "node_modules/jmespath": { "version": "0.16.0", @@ -14417,7 +14627,8 @@ "version": "0.4.4", "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==", - "dev": true + "dev": true, + "peer": true }, "node_modules/js-sha3": { "version": "0.8.0", @@ -14521,40 +14732,6 @@ "node": ">= 6" } }, - "node_modules/jsdom/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/jsdom/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/jsdom/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/jsdom/node_modules/ws": { "version": "8.14.2", "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", @@ -14798,6 +14975,7 @@ "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz", "integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==", "dev": true, + "peer": true, "dependencies": { "buffer-equal": "0.0.1", "mime": "^1.3.4", @@ -15214,6 +15392,15 @@ "node": ">=16" } }, + "node_modules/markdownlint-cli/node_modules/commander": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.0.0.tgz", + "integrity": "sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==", + "dev": true, + "engines": { + "node": ">=16" + } + }, "node_modules/markdownlint-cli/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -15523,6 +15710,7 @@ "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", "dev": true, + "peer": true, "dependencies": { "dom-walk": "^0.1.0" } @@ -15978,20 +16166,23 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/node-abort-controller": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-2.0.0.tgz", "integrity": "sha512-L8RfEgjBTHAISTuagw51PprVAqNZoG6KSB6LQ6H1bskMVkFs5E71IyjauLBv3XbuomJlguWF/VnRHdJ1gqiAqA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/node-addon-api": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.0.0.tgz", "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==", "dev": true, - "optional": true + "optional": true, + "peer": true }, "node_modules/node-domexception": { "version": "1.0.0", @@ -16045,9 +16236,9 @@ "dev": true }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==" + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, "node_modules/normalize-package-data": { "version": "3.0.3", @@ -16162,13 +16353,13 @@ } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -16251,7 +16442,8 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz", "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/on-finished": { "version": "2.4.1", @@ -16315,23 +16507,21 @@ } }, "node_modules/openfin-adapter": { - "version": "32.76.10", - "resolved": "https://registry.npmjs.org/openfin-adapter/-/openfin-adapter-32.76.10.tgz", - "integrity": "sha512-CCWIi1BsEuLUCiQB1PRGHITBufuTDbOzMsGNTOnDwhu05tuu2B9hrEr+CAJo7EfCNTzxG0G0JT9pHABUG/Q6IQ==", + "version": "21.65.4", + "resolved": "https://registry.npmjs.org/openfin-adapter/-/openfin-adapter-21.65.4.tgz", + "integrity": "sha512-Gfer32WO5wwoOsvVbCzxa6MtpRDZsnEa4pZLRZovlH5xNCnJvuYBqNscZ3FEUyP1Mkk/mJDR5+wZLz0HGIfBuQ==", "deprecated": "openfin-adapter is no longer being updated. Please use @openfin/node-adapter or @openfin/core instead. See https://developers.openfin.co/of-docs/docs/openfin-end-of-life-services-message#openfinnode-adapter-npm-package-replaces-openfin-adapter-package.", "dependencies": { - "@types/node": "^16.0.0", + "@types/node": "^10.17.19", "lodash": "^4.17.21", + "underscore": "^1.8.3", "ws": "^7.3.0" - }, - "engines": { - "node": ">=16.10.0" } }, "node_modules/openfin-adapter/node_modules/@types/node": { - "version": "16.18.65", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.65.tgz", - "integrity": "sha512-5E9WgTy95B7i90oISjui9U5Zu7iExUPfU4ygtv4yXEy6zJFE3oQYHCnh5H1jZRPkjphJt2Ml3oQW6M0qtK534A==" + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" }, "node_modules/openfin-notifications": { "version": "2.1.2", @@ -16371,6 +16561,11 @@ "@openfin/core": "33.77.11" } }, + "node_modules/openfin-notifications/node_modules/@types/node": { + "version": "16.18.66", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.18.66.tgz", + "integrity": "sha512-sePmD/imfKvC4re/Wwos1NEcXYm6O96CAG5gQVY53nmDb8ePQ4qPku6uruN7n6TJ0t5FhcoUc2+yvE2/UZVDZw==" + }, "node_modules/openfin-notifications/node_modules/ajv": { "version": "8.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", @@ -16544,6 +16739,20 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/openfin-notifications/node_modules/openfin-adapter": { + "version": "32.76.10", + "resolved": "https://registry.npmjs.org/openfin-adapter/-/openfin-adapter-32.76.10.tgz", + "integrity": "sha512-CCWIi1BsEuLUCiQB1PRGHITBufuTDbOzMsGNTOnDwhu05tuu2B9hrEr+CAJo7EfCNTzxG0G0JT9pHABUG/Q6IQ==", + "deprecated": "openfin-adapter is no longer being updated. Please use @openfin/node-adapter or @openfin/core instead. See https://developers.openfin.co/of-docs/docs/openfin-end-of-life-services-message#openfinnode-adapter-npm-package-replaces-openfin-adapter-package.", + "dependencies": { + "@types/node": "^16.0.0", + "lodash": "^4.17.21", + "ws": "^7.3.0" + }, + "engines": { + "node": ">=16.10.0" + } + }, "node_modules/openfin-notifications/node_modules/p-limit": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", @@ -16937,6 +17146,7 @@ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", "dev": true, + "peer": true, "engines": { "node": ">=4" } @@ -17048,19 +17258,22 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", "integrity": "sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/parse-bmfont-binary": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", "integrity": "sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/parse-bmfont-xml": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz", "integrity": "sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==", "dev": true, + "peer": true, "dependencies": { "xml-parse-from-string": "^1.0.0", "xml2js": "^0.4.5" @@ -17071,6 +17284,7 @@ "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", "dev": true, + "peer": true, "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" @@ -17083,7 +17297,8 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/parse-json": { "version": "5.2.0", @@ -17230,6 +17445,7 @@ "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", "dev": true, + "peer": true, "engines": { "node": ">=8" }, @@ -17248,7 +17464,8 @@ "version": "2.9.3", "resolved": "https://registry.npmjs.org/phin/-/phin-2.9.3.tgz", "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/picocolors": { "version": "1.0.0", @@ -17402,6 +17619,7 @@ "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz", "integrity": "sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==", "dev": true, + "peer": true, "dependencies": { "pngjs": "^3.0.0" }, @@ -17487,6 +17705,7 @@ "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", "dev": true, + "peer": true, "engines": { "node": ">=4.0.0" } @@ -18585,6 +18804,7 @@ "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", "dev": true, + "peer": true, "dependencies": { "readable-stream": "^3.6.0" }, @@ -18601,6 +18821,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -19772,9 +19993,9 @@ "dev": true }, "node_modules/sortablejs": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", - "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.1.tgz", + "integrity": "sha512-P5Cjvb0UG1ZVNiDPj/n4V+DinttXG6K8n7vM/HQf0C25K3YKQTQY6fsr/sEGsJGpQ9exmPxluHxKBc0mLKU1lQ==" }, "node_modules/source-map": { "version": "0.6.1", @@ -20056,6 +20277,7 @@ "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -20106,6 +20328,7 @@ "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", "dev": true, + "peer": true, "dependencies": { "@tokenizer/token": "^0.3.0", "peek-readable": "^4.1.0" @@ -20636,7 +20859,8 @@ "version": "1.7.1", "resolved": "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz", "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/tiny-invariant": { "version": "1.3.1", @@ -20733,6 +20957,7 @@ "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", "dev": true, + "peer": true, "dependencies": { "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" @@ -20763,7 +20988,8 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "peer": true }, "node_modules/toposort": { "version": "2.0.2", @@ -20791,15 +21017,21 @@ "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", "dev": true, "engines": { - "node": ">= 4.0.0" + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, "node_modules/traverse": { "version": "0.3.9", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", @@ -20922,6 +21154,7 @@ "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", "dev": true, + "peer": true, "dependencies": { "@cspotcode/source-map-support": "^0.8.0", "@tsconfig/node10": "^1.0.7", @@ -20965,6 +21198,7 @@ "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true, + "peer": true, "engines": { "node": ">=0.3.1" } @@ -21373,6 +21607,7 @@ "resolved": "https://registry.npmjs.org/utif/-/utif-2.0.1.tgz", "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", "dev": true, + "peer": true, "dependencies": { "pako": "^1.0.5" } @@ -21416,7 +21651,8 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true + "dev": true, + "peer": true }, "node_modules/v8-to-istanbul": { "version": "9.2.0", @@ -21516,341 +21752,82 @@ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "dependencies": { - "defaults": "^1.0.3" - } - }, - "node_modules/wdio-chromedriver-service": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/wdio-chromedriver-service/-/wdio-chromedriver-service-8.1.1.tgz", - "integrity": "sha512-pN3GiOkTIMnalfq4PJAHdX95pDp1orHnTY8W1fIbd6ok81ba97UjerTgS7lUDRUh1p0MAm35Ww0uc0/9wzB7SA==", - "dev": true, - "dependencies": { - "@wdio/logger": "^8.1.0", - "fs-extra": "^11.1.0", - "split2": "^4.1.0", - "tcp-port-used": "^1.0.2" - }, - "engines": { - "node": "^16.13 || >=18" - }, - "peerDependencies": { - "@wdio/types": "^7.0.0 || ^8.0.0-alpha.219", - "chromedriver": "*", - "webdriverio": "^7.0.0 || ^8.0.0-alpha.219" - }, - "peerDependenciesMeta": { - "@wdio/types": { - "optional": true - }, - "chromedriver": { - "optional": true - }, - "webdriverio": { - "optional": false - } - } - }, - "node_modules/web-streams-polyfill": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", - "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/webdriver": { - "version": "8.13.13", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.13.13.tgz", - "integrity": "sha512-CEwOWSQFV2/xj59fO9DOC4FCy49DpsTf7uyDHFH3v0w90bmiq2Fjq2sGrlJNF6U0YiWHRVWQQqCLUav3M/rqOg==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@types/ws": "^8.5.3", - "@wdio/config": "8.13.13", - "@wdio/logger": "8.11.0", - "@wdio/protocols": "8.11.0", - "@wdio/types": "8.10.4", - "@wdio/utils": "8.13.13", - "deepmerge-ts": "^5.0.0", - "got": "^ 12.6.1", - "ky": "^0.33.0", - "ws": "^8.8.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriver/node_modules/@wdio/config": { - "version": "8.13.13", - "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.13.13.tgz", - "integrity": "sha512-tYTlblk8ykbzKRWC7j1MSjvDQwUnh/agSBEbcuVSZUFRAaIOu3HRqWeDKJreEuV1VkrmS8+X6rxXpTYGnNEGzw==", - "dev": true, - "dependencies": { - "@wdio/logger": "8.11.0", - "@wdio/types": "8.10.4", - "@wdio/utils": "8.13.13", - "decamelize": "^6.0.0", - "deepmerge-ts": "^5.0.0", - "glob": "^10.2.2", - "import-meta-resolve": "^3.0.0", - "read-pkg-up": "^9.1.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriver/node_modules/@wdio/logger": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.11.0.tgz", - "integrity": "sha512-IsuKSaYi7NKEdgA57h8muzlN/MVp1dQG+V4C//7g4m03YJUnNQLvDhJzLjdeNTfvZy61U7foQSyt+3ktNzZkXA==", - "dev": true, - "dependencies": { - "chalk": "^5.1.2", - "loglevel": "^1.6.0", - "loglevel-plugin-prefix": "^0.8.4", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriver/node_modules/@wdio/protocols": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-8.11.0.tgz", - "integrity": "sha512-eXTMYt/XoaX53H/Q2qmsn1uWthIC5aSTGtX9YyXD/AkagG2hXeX3lLmzNWBaSIvKR+vWXRYbg3Y/7IvL2s25Wg==", - "dev": true - }, - "node_modules/webdriver/node_modules/@wdio/types": { - "version": "8.10.4", - "resolved": "https://registry.npmjs.org/@wdio/types/-/types-8.10.4.tgz", - "integrity": "sha512-aLJ1QQW+hhALeRK3bvMLjIrlUVyhOs3Od+91pR4Z4pLwyeNG1bJZCJRD5bAJK/mm7CnFa0NsdixPS9jJxZcRrw==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriver/node_modules/@wdio/utils": { - "version": "8.13.13", - "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.13.13.tgz", - "integrity": "sha512-Bg6Xe+PqueDoDhHDxF63mBclWJ2pj9PMVLtZyHJ8dZjZ37JR1WNM4OUgcVBmYjpukZkF3mdESsXDL7lmY4JNYA==", - "dev": true, - "dependencies": { - "@wdio/logger": "8.11.0", - "@wdio/types": "8.10.4", - "import-meta-resolve": "^3.0.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriver/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/webdriver/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/webdriver/node_modules/find-up": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", - "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", - "dev": true, - "dependencies": { - "locate-path": "^7.1.0", - "path-exists": "^5.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/webdriver/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/webdriver/node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/webdriver/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/webdriver/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/webdriver/node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/webdriver/node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/webdriver/node_modules/read-pkg": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-7.1.0.tgz", - "integrity": "sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==", - "dev": true, - "dependencies": { - "@types/normalize-package-data": "^2.4.1", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^2.0.0" + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" }, "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10.13.0" } }, - "node_modules/webdriver/node_modules/read-pkg-up": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-9.1.0.tgz", - "integrity": "sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==", + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, "dependencies": { - "find-up": "^6.3.0", - "read-pkg": "^7.1.0", - "type-fest": "^2.5.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "defaults": "^1.0.3" } }, - "node_modules/webdriver/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "node_modules/wdio-chromedriver-service": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/wdio-chromedriver-service/-/wdio-chromedriver-service-8.1.1.tgz", + "integrity": "sha512-pN3GiOkTIMnalfq4PJAHdX95pDp1orHnTY8W1fIbd6ok81ba97UjerTgS7lUDRUh1p0MAm35Ww0uc0/9wzB7SA==", "dev": true, "dependencies": { - "ansi-regex": "^6.0.1" + "@wdio/logger": "^8.1.0", + "fs-extra": "^11.1.0", + "split2": "^4.1.0", + "tcp-port-used": "^1.0.2" }, "engines": { - "node": ">=12" + "node": "^16.13 || >=18" }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "peerDependencies": { + "@wdio/types": "^7.0.0 || ^8.0.0-alpha.219", + "chromedriver": "*", + "webdriverio": "^7.0.0 || ^8.0.0-alpha.219" + }, + "peerDependenciesMeta": { + "@wdio/types": { + "optional": true + }, + "chromedriver": { + "optional": true + }, + "webdriverio": { + "optional": false + } } }, - "node_modules/webdriver/node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "node_modules/web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", "dev": true, "engines": { - "node": ">=12.20" + "node": ">= 8" + } + }, + "node_modules/webdriver": { + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.24.6.tgz", + "integrity": "sha512-k5XI2/SHd/14h4ElPQH8EzSUXujZIGbBEi+3dTS2H457KFR5Q8QYfIazDs/YnEdooOp8b6Oe9N7qI99LP8K6bQ==", + "dev": true, + "dependencies": { + "@types/node": "^20.1.0", + "@types/ws": "^8.5.3", + "@wdio/config": "8.24.6", + "@wdio/logger": "8.16.17", + "@wdio/protocols": "8.23.0", + "@wdio/types": "8.24.2", + "@wdio/utils": "8.24.6", + "deepmerge-ts": "^5.1.0", + "got": "^ 12.6.1", + "ky": "^0.33.0", + "ws": "^8.8.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^16.13 || >=18" } }, "node_modules/webdriver/node_modules/ws": { @@ -21874,31 +21851,19 @@ } } }, - "node_modules/webdriver/node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/webdriverio": { - "version": "8.24.3", - "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.24.3.tgz", - "integrity": "sha512-c0IkkGkJtxxpuO53DfeN9UlHmEKSeKCWCREJBzEkpHrjveVlfhh8cQBacLdUzJwE61xByNDH1cu1RVXKL+ZEJw==", + "version": "8.24.6", + "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.24.6.tgz", + "integrity": "sha512-gJMAJiErbXe/oFJbV+H9lXp9GPxnUgHrbtxkG6SCKQlk1zPFho9FZ3fQWl/ty84w5n9ZMhAdnQIfZM9aytxIBQ==", "dev": true, "dependencies": { "@types/node": "^20.1.0", - "@wdio/config": "8.24.3", + "@wdio/config": "8.24.6", "@wdio/logger": "8.16.17", "@wdio/protocols": "8.23.0", "@wdio/repl": "8.23.1", "@wdio/types": "8.24.2", - "@wdio/utils": "8.24.3", + "@wdio/utils": "8.24.6", "archiver": "^6.0.0", "aria-query": "^5.0.0", "css-shorthand-properties": "^1.1.1", @@ -21915,7 +21880,7 @@ "resq": "^1.9.1", "rgb2hex": "0.2.5", "serialize-error": "^11.0.1", - "webdriver": "8.24.3" + "webdriver": "8.24.6" }, "engines": { "node": "^16.13 || >=18" @@ -21929,120 +21894,6 @@ } } }, - "node_modules/webdriverio/node_modules/@wdio/config": { - "version": "8.24.3", - "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.24.3.tgz", - "integrity": "sha512-KXJ3qKJTTOa0nwwPtCxxgYBMfqGghij8bEg7DTGkydyuqVvBTSc0py7tXmSI4Uoh7ZdpZxZ6Q9C+Y3CVQhaiWQ==", - "dev": true, - "dependencies": { - "@wdio/logger": "8.16.17", - "@wdio/types": "8.24.2", - "@wdio/utils": "8.24.3", - "decamelize": "^6.0.0", - "deepmerge-ts": "^5.0.0", - "glob": "^10.2.2", - "import-meta-resolve": "^3.0.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriverio/node_modules/@wdio/types": { - "version": "8.24.2", - "resolved": "https://registry.npmjs.org/@wdio/types/-/types-8.24.2.tgz", - "integrity": "sha512-x7iWF5NM8NfVxziGwLdQ+3sstgSxRoqfmmFEDTDps0oFrN5CgkqcoLkqXJ5u166gvpxpEq0gxZwxkbPC/Lp0cw==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriverio/node_modules/@wdio/utils": { - "version": "8.24.3", - "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.24.3.tgz", - "integrity": "sha512-/thr+f2pn7z5wUWiyiFp7/JoJ30oHatyfuxKpcIBcjkv+YZbph0bbEBVv641UlmZxUMVVeXGvWMNdlWH7rMo7g==", - "dev": true, - "dependencies": { - "@puppeteer/browsers": "^1.6.0", - "@wdio/logger": "8.16.17", - "@wdio/types": "8.24.2", - "decamelize": "^6.0.0", - "deepmerge-ts": "^5.1.0", - "edgedriver": "^5.3.5", - "geckodriver": "^4.2.0", - "get-port": "^7.0.0", - "got": "^13.0.0", - "import-meta-resolve": "^3.0.0", - "locate-app": "^2.1.0", - "safaridriver": "^0.1.0", - "split2": "^4.2.0", - "wait-port": "^1.0.4" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriverio/node_modules/@wdio/utils/node_modules/got": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/got/-/got-13.0.0.tgz", - "integrity": "sha512-XfBk1CxOOScDcMr9O1yKkNaQyy865NbYs+F7dr4H0LZMVgCj2Le59k6PqbNHoL5ToeaEQUYh6c6yMfVcc6SJxA==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^5.2.0", - "@szmarczak/http-timer": "^5.0.1", - "cacheable-lookup": "^7.0.0", - "cacheable-request": "^10.2.8", - "decompress-response": "^6.0.0", - "form-data-encoder": "^2.1.2", - "get-stream": "^6.0.1", - "http2-wrapper": "^2.1.10", - "lowercase-keys": "^3.0.0", - "p-cancelable": "^3.0.0", - "responselike": "^3.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, - "node_modules/webdriverio/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/webdriverio/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/webdriverio/node_modules/is-plain-obj": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", @@ -22070,55 +21921,15 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/webdriverio/node_modules/webdriver": { - "version": "8.24.3", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.24.3.tgz", - "integrity": "sha512-GbD1X7WzSh2ssb/U52K5RyChKgcPjNDZft5RmHJa1ieT2biTEHAqZycHxNBcpExAlwGlw91hmpoNbwPfdFORRw==", - "dev": true, - "dependencies": { - "@types/node": "^20.1.0", - "@types/ws": "^8.5.3", - "@wdio/config": "8.24.3", - "@wdio/logger": "8.16.17", - "@wdio/protocols": "8.23.0", - "@wdio/types": "8.24.2", - "@wdio/utils": "8.24.3", - "deepmerge-ts": "^5.1.0", - "got": "^ 12.6.1", - "ky": "^0.33.0", - "ws": "^8.8.0" - }, - "engines": { - "node": "^16.13 || >=18" - } - }, - "node_modules/webdriverio/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", "dev": true, "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "node": ">=12" } }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, "node_modules/webpack": { "version": "5.89.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", @@ -22312,13 +22123,16 @@ } }, "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "dev": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/which": { @@ -22516,6 +22330,7 @@ "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", "dev": true, + "peer": true, "dependencies": { "global": "~4.4.0", "is-function": "^1.0.1", @@ -22536,7 +22351,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", "integrity": "sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==", - "dev": true + "dev": true, + "peer": true }, "node_modules/xml2js": { "version": "0.6.2", @@ -22570,6 +22386,7 @@ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, + "peer": true, "engines": { "node": ">=0.4" } @@ -22677,6 +22494,7 @@ "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", "dev": true, + "peer": true, "engines": { "node": ">=6" } diff --git a/package.json b/package.json index 468514919e..a03d2d889a 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "license": "SEE LICENSE IN LICENSE.MD", "devDependencies": { "fast-glob": "3.3.2", - "fs-extra": "11.1.1", + "fs-extra": "11.2.0", "replace-in-file": "7.0.2", "yargs": "17.7.2" }, From 636bb14e52d68f54b18a972998a57fe0e66bd980 Mon Sep 17 00:00:00 2001 From: Martyn Janes Date: Fri, 1 Dec 2023 13:53:57 +0200 Subject: [PATCH 2/6] Consistent GitHub Actions --- .../workflows/automation-testing-full.yaml | 31 ++++++++++++++--- .github/workflows/automation-testing.yaml | 23 ++++++++++--- .github/workflows/e2e.yml | 34 +++++++++++++++++++ .github/workflows/publish-HOWTOs.yml | 16 ++++----- .github/workflows/publish-NPM.yaml | 30 ++++++++++++---- .github/workflows/test.yml | 2 +- .../e2e/tests/platform.spec.ts | 8 +++-- 7 files changed, 116 insertions(+), 28 deletions(-) create mode 100644 .github/workflows/e2e.yml diff --git a/.github/workflows/automation-testing-full.yaml b/.github/workflows/automation-testing-full.yaml index 7a89c330e8..f07f6c0841 100644 --- a/.github/workflows/automation-testing-full.yaml +++ b/.github/workflows/automation-testing-full.yaml @@ -12,47 +12,68 @@ jobs: steps: - name: Checkout Repo uses: actions/checkout@v3 - - name: Setup Node 16 + + - name: Setup Node 18 uses: actions/setup-node@v3 with: - node-version: 16 - - name: Install Packages - run: | - npm install + node-version: 18 + registry-url: https://registry.npmjs.org + scope: '@openfin' + + - name: Restore root node_modules from cache + id: node-cache + uses: actions/cache@v3 + with: + path: node_modules + key: node-modules-${{ hashFiles('package-lock.json') }} + + - name: Install dependencies + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npm ci + - name: Run JavaScript Tests with Mocha run: | npx fkill-cli OpenFin OpenFinRVM --force --silent npm run test-remote-mocha --prefix how-to/automation-testing/register-with-home-js + - name: Run WDIO tests run: | npm run kill --prefix how-to/automation-testing/wdio npm run dos --prefix how-to/automation-testing/wdio npm run test --prefix how-to/automation-testing/wdio + - name: Run Selenium tests run: | npm run kill --prefix how-to/automation-testing/selenium npm run dos --prefix how-to/automation-testing/selenium npm run test --prefix how-to/automation-testing/selenium + - name: Run JavaScript Tests with Jasmine run: | npx fkill-cli OpenFin OpenFinRVM --force --silent npm run test-remote-jasmine --prefix how-to/automation-testing/register-with-home-js + - name: Run JavaScript Tests with Jest run: | npx fkill-cli OpenFin OpenFinRVM --force --silent npm run test-remote-jest --prefix how-to/automation-testing/register-with-home-js + - name: Run TypeScript Tests with Mocha run: | npx fkill-cli OpenFin OpenFinRVM --force --silent npm run test-remote-mocha --prefix how-to/automation-testing/register-with-home-ts + - name: Run TypeScript Tests with Jasmine run: | npx fkill-cli OpenFin OpenFinRVM --force --silent npm run test-remote-jasmine --prefix how-to/automation-testing/register-with-home-ts + - name: Run TypeScript Tests with Jest run: | npx fkill-cli OpenFin OpenFinRVM --force --silent npm run test-remote-jest --prefix how-to/automation-testing/register-with-home-ts + - name: Run JavaScript Tests with Mocha for Store run: | npx fkill-cli OpenFin OpenFinRVM --force --silent diff --git a/.github/workflows/automation-testing.yaml b/.github/workflows/automation-testing.yaml index 7667bce898..5991066e50 100644 --- a/.github/workflows/automation-testing.yaml +++ b/.github/workflows/automation-testing.yaml @@ -12,13 +12,26 @@ jobs: steps: - name: Checkout Repo uses: actions/checkout@v3 - - name: Setup Node 16 + + - name: Setup Node 18 uses: actions/setup-node@v3 with: - node-version: 16 - - name: Install Packages - run: | - npm install + node-version: 18 + registry-url: https://registry.npmjs.org + scope: '@openfin' + + - name: Restore root node_modules from cache + id: node-cache + uses: actions/cache@v3 + with: + path: node_modules + key: node-modules-${{ hashFiles('package-lock.json') }} + + - name: Install dependencies + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npm ci + - name: Run JavaScript Tests with Mocha run: | npx fkill-cli OpenFin OpenFinRVM --force --silent diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml new file mode 100644 index 0000000000..3b5bfc2c00 --- /dev/null +++ b/.github/workflows/e2e.yml @@ -0,0 +1,34 @@ +name: Workspace Platform Starter - E2E Tests + +on: workflow_dispatch + +jobs: + build: + runs-on: windows-latest + + steps: + - name: Checkout Repo + uses: actions/checkout@v3 + + - name: Setup Node 18 + uses: actions/setup-node@v3 + with: + node-version: 18 + registry-url: https://registry.npmjs.org + scope: '@openfin' + + - name: Restore root node_modules from cache + id: node-cache + uses: actions/cache@v3 + with: + path: node_modules + key: node-modules-${{ hashFiles('package-lock.json') }} + + - name: Install dependencies + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npm ci + + - name: Run Workspace Platform Starter E2E Tests + working-directory: ./how-to/workspace-platform-starter + run: npm run e2e diff --git a/.github/workflows/publish-HOWTOs.yml b/.github/workflows/publish-HOWTOs.yml index 4b0c703970..2c1214ab4f 100644 --- a/.github/workflows/publish-HOWTOs.yml +++ b/.github/workflows/publish-HOWTOs.yml @@ -17,24 +17,24 @@ jobs: - name: Checkout repository uses: actions/checkout@v3 - - name: Setup Node.js + - name: Setup Node 18 uses: actions/setup-node@v3 with: - node-version: 16 + node-version: 18 registry-url: https://registry.npmjs.org scope: '@openfin' - - name: Install dependencies - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - run: npm ci - - name: Restore root node_modules from cache id: node-cache uses: actions/cache@v3 with: path: node_modules - key: node-modules-${{ hashFiles('package-lock.json') }} + key: node-modules-${{ hashFiles('package-lock.json') }} + + - name: Install dependencies + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npm ci - name: Build packages run: npm run build diff --git a/.github/workflows/publish-NPM.yaml b/.github/workflows/publish-NPM.yaml index 23e5b66e8f..a58503824e 100644 --- a/.github/workflows/publish-NPM.yaml +++ b/.github/workflows/publish-NPM.yaml @@ -4,16 +4,34 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - # Setup .npmrc file to publish to npm - - uses: actions/setup-node@v3 + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Setup Node 18 + uses: actions/setup-node@v3 with: - node-version: '19' - registry-url: 'https://registry.npmjs.org' - - run: npm run setup + node-version: 18 + registry-url: https://registry.npmjs.org + scope: '@openfin' + + - name: Restore root node_modules from cache + id: node-cache + uses: actions/cache@v3 + with: + path: node_modules + key: node-modules-${{ hashFiles('package-lock.json') }} + + - name: Install dependencies + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npm ci + + - run: npm run build working-directory: ./how-to/workspace-platform-starter + - run: NAME=@openfin/default-workspace-platform npm run prepare-package working-directory: ./how-to/workspace-platform-starter + - run: npm publish --access restricted working-directory: ./how-to/workspace-platform-starter/packaged env: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2846266617..7ab40721a7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,4 +1,4 @@ -name: Check Tests run +name: Workspace Platform Starter - Unit Tests on: pull_request: diff --git a/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts b/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts index 4cf2033fc0..f23a6244f5 100644 --- a/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts +++ b/how-to/workspace-platform-starter/e2e/tests/platform.spec.ts @@ -6,9 +6,11 @@ describe("Platform", () => { expect(isReady).toEqual(true); }); - it("The title should be set", async () => { - const title = await WebDriver.getTitle(); - expect(title).toEqual("Platform Provider"); + it("The platform title should be set", async () => { + const windows = await WebDriver.getWindows(); + expect(windows.length).toBeGreaterThan(0); + const titles = windows.map((w) => w.title); + expect(titles).toContain("Platform Provider"); }); it("The runtime version should be set", async () => { From b426ce04022c7c96dd14eb1d643902578ca5c343 Mon Sep 17 00:00:00 2001 From: Martyn Janes Date: Fri, 1 Dec 2023 13:57:29 +0200 Subject: [PATCH 3/6] Add push trigger --- .github/workflows/e2e.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 3b5bfc2c00..2732f6f2ee 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -1,6 +1,8 @@ name: Workspace Platform Starter - E2E Tests -on: workflow_dispatch +on: + workflow_dispatch: + push: jobs: build: From d126c85df674f4571cffd0b1f70b015c0dd8b8ab Mon Sep 17 00:00:00 2001 From: Martyn Janes Date: Fri, 1 Dec 2023 13:58:00 +0200 Subject: [PATCH 4/6] Remove push trigger --- .github/workflows/e2e.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 2732f6f2ee..6d38da042d 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -2,7 +2,6 @@ name: Workspace Platform Starter - E2E Tests on: workflow_dispatch: - push: jobs: build: From 6d5df2f899385cc549c0f8ed994b101aa906d0a0 Mon Sep 17 00:00:00 2001 From: Martyn Janes Date: Fri, 1 Dec 2023 14:03:11 +0200 Subject: [PATCH 5/6] E2e start the server --- .github/workflows/e2e.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 6d38da042d..a681d469d2 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -2,6 +2,7 @@ name: Workspace Platform Starter - E2E Tests on: workflow_dispatch: + push: jobs: build: @@ -32,4 +33,4 @@ jobs: - name: Run Workspace Platform Starter E2E Tests working-directory: ./how-to/workspace-platform-starter - run: npm run e2e + run: npm run start && npm run e2e From 154537589cac83867d538703cc124bd1cb807229 Mon Sep 17 00:00:00 2001 From: Martyn Janes Date: Fri, 1 Dec 2023 14:07:10 +0200 Subject: [PATCH 6/6] Add build step for e2e --- .github/workflows/automation-testing-full.yaml | 2 +- .github/workflows/automation-testing.yaml | 2 +- .github/workflows/e2e.yml | 6 ++++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/automation-testing-full.yaml b/.github/workflows/automation-testing-full.yaml index f07f6c0841..f76f7d30aa 100644 --- a/.github/workflows/automation-testing-full.yaml +++ b/.github/workflows/automation-testing-full.yaml @@ -6,7 +6,7 @@ concurrency: cancel-in-progress: true jobs: - build: + e2e: runs-on: windows-latest steps: diff --git a/.github/workflows/automation-testing.yaml b/.github/workflows/automation-testing.yaml index 5991066e50..cfcb6abbe5 100644 --- a/.github/workflows/automation-testing.yaml +++ b/.github/workflows/automation-testing.yaml @@ -6,7 +6,7 @@ concurrency: cancel-in-progress: true jobs: - build: + e2e: runs-on: windows-latest steps: diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index a681d469d2..319f90b15b 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -5,7 +5,7 @@ on: push: jobs: - build: + e2e: runs-on: windows-latest steps: @@ -33,4 +33,6 @@ jobs: - name: Run Workspace Platform Starter E2E Tests working-directory: ./how-to/workspace-platform-starter - run: npm run start && npm run e2e + run: | + npm run build + npm run start & npm run e2e