Repository: stateful/vscode-runme
Pull request #640 (2023-06-26 12:07:35)

Bump tar-fs from 3.0.2 to 3.0.3
Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 3.0.2 to 3.0.3.
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/mafintosh/tar-fs/commit/7e10a5b416f2b65152a102db16a50f492234b406"><code>7e10a5b</code></a> 3.0.3</li>
<li><a href="https://github.com/mafintosh/tar-fs/commit/f032a58514f0b89dce91d06fc17e94e8204aa555"><code>f032a58</code></a> emit error if one of the main entries is missing</li>
<li>See full diff in <a href="https://github.com/mafintosh/tar-fs/compare/v3.0.2...v3.0.3">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tar-fs&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>


Patch:
diff --git a/package-lock.json b/package-lock.json
index 5f89316f..778794d9 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4811,15 +4811,15 @@
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.7.tgz",
-      "integrity": "sha512-BL+jYxUFIbuYwy+4fF86k5vdT9lT0CNJ6HtwrIvGh0PhH8s0yy5rjaKH2fDCrz5ITHy07WCzVGNvAmjJh4IJFA==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.60.0.tgz",
+      "integrity": "sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==",
       "dev": true,
       "dependencies": {
         "@eslint-community/regexpp": "^4.4.0",
-        "@typescript-eslint/scope-manager": "5.59.7",
-        "@typescript-eslint/type-utils": "5.59.7",
-        "@typescript-eslint/utils": "5.59.7",
+        "@typescript-eslint/scope-manager": "5.60.0",
+        "@typescript-eslint/type-utils": "5.60.0",
+        "@typescript-eslint/utils": "5.60.0",
         "debug": "^4.3.4",
         "grapheme-splitter": "^1.0.4",
         "ignore": "^5.2.0",
@@ -4845,13 +4845,13 @@
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.7.tgz",
-      "integrity": "sha512-FL6hkYWK9zBGdxT2wWEd2W8ocXMu3K94i3gvMrjXpx+koFYdYV7KprKfirpgY34vTGzEPPuKoERpP8kD5h7vZQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.60.0.tgz",
+      "integrity": "sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
-        "@typescript-eslint/visitor-keys": "5.59.7"
+        "@typescript-eslint/types": "5.60.0",
+        "@typescript-eslint/visitor-keys": "5.60.0"
       },
       "engines": {
         "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -4862,9 +4862,9 @@
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.7.tgz",
-      "integrity": "sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz",
+      "integrity": "sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==",
       "dev": true,
       "engines": {
         "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -4875,12 +4875,12 @@
       }
     },
     "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.7.tgz",
-      "integrity": "sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz",
+      "integrity": "sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
+        "@typescript-eslint/types": "5.60.0",
         "eslint-visitor-keys": "^3.3.0"
       },
       "engines": {
@@ -4936,13 +4936,13 @@
       }
     },
     "node_modules/@typescript-eslint/type-utils": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.7.tgz",
-      "integrity": "sha512-ozuz/GILuYG7osdY5O5yg0QxXUAEoI4Go3Do5xeu+ERH9PorHBPSdvD3Tjp2NN2bNLh1NJQSsQu2TPu/Ly+HaQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.60.0.tgz",
+      "integrity": "sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/typescript-estree": "5.59.7",
-        "@typescript-eslint/utils": "5.59.7",
+        "@typescript-eslint/typescript-estree": "5.60.0",
+        "@typescript-eslint/utils": "5.60.0",
         "debug": "^4.3.4",
         "tsutils": "^3.21.0"
       },
@@ -4963,9 +4963,9 @@
       }
     },
     "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.7.tgz",
-      "integrity": "sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz",
+      "integrity": "sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==",
       "dev": true,
       "engines": {
         "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -4976,13 +4976,13 @@
       }
     },
     "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.7.tgz",
-      "integrity": "sha512-4A1NtZ1I3wMN2UGDkU9HMBL+TIQfbrh4uS0WDMMpf3xMRursDbqEf1ahh6vAAe3mObt8k3ZATnezwG4pdtWuUQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.0.tgz",
+      "integrity": "sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
-        "@typescript-eslint/visitor-keys": "5.59.7",
+        "@typescript-eslint/types": "5.60.0",
+        "@typescript-eslint/visitor-keys": "5.60.0",
         "debug": "^4.3.4",
         "globby": "^11.1.0",
         "is-glob": "^4.0.3",
@@ -5003,12 +5003,12 @@
       }
     },
     "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.7.tgz",
-      "integrity": "sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz",
+      "integrity": "sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
+        "@typescript-eslint/types": "5.60.0",
         "eslint-visitor-keys": "^3.3.0"
       },
       "engines": {
@@ -5060,17 +5060,17 @@
       }
     },
     "node_modules/@typescript-eslint/utils": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.7.tgz",
-      "integrity": "sha512-yCX9WpdQKaLufz5luG4aJbOpdXf/fjwGMcLFXZVPUz3QqLirG5QcwwnIHNf8cjLjxK4qtzTO8udUtMQSAToQnQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.60.0.tgz",
+      "integrity": "sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==",
       "dev": true,
       "dependencies": {
         "@eslint-community/eslint-utils": "^4.2.0",
         "@types/json-schema": "^7.0.9",
         "@types/semver": "^7.3.12",
-        "@typescript-eslint/scope-manager": "5.59.7",
-        "@typescript-eslint/types": "5.59.7",
-        "@typescript-eslint/typescript-estree": "5.59.7",
+        "@typescript-eslint/scope-manager": "5.60.0",
+        "@typescript-eslint/types": "5.60.0",
+        "@typescript-eslint/typescript-estree": "5.60.0",
         "eslint-scope": "^5.1.1",
         "semver": "^7.3.7"
       },
@@ -5086,13 +5086,13 @@
       }
     },
     "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.7.tgz",
-      "integrity": "sha512-FL6hkYWK9zBGdxT2wWEd2W8ocXMu3K94i3gvMrjXpx+koFYdYV7KprKfirpgY34vTGzEPPuKoERpP8kD5h7vZQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.60.0.tgz",
+      "integrity": "sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
-        "@typescript-eslint/visitor-keys": "5.59.7"
+        "@typescript-eslint/types": "5.60.0",
+        "@typescript-eslint/visitor-keys": "5.60.0"
       },
       "engines": {
         "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -5103,9 +5103,9 @@
       }
     },
     "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.7.tgz",
-      "integrity": "sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz",
+      "integrity": "sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==",
       "dev": true,
       "engines": {
         "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -5116,13 +5116,13 @@
       }
     },
     "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.7.tgz",
-      "integrity": "sha512-4A1NtZ1I3wMN2UGDkU9HMBL+TIQfbrh4uS0WDMMpf3xMRursDbqEf1ahh6vAAe3mObt8k3ZATnezwG4pdtWuUQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.0.tgz",
+      "integrity": "sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
-        "@typescript-eslint/visitor-keys": "5.59.7",
+        "@typescript-eslint/types": "5.60.0",
+        "@typescript-eslint/visitor-keys": "5.60.0",
         "debug": "^4.3.4",
         "globby": "^11.1.0",
         "is-glob": "^4.0.3",
@@ -5143,12 +5143,12 @@
       }
     },
     "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.7.tgz",
-      "integrity": "sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz",
+      "integrity": "sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==",
       "dev": true,
       "dependencies": {
-        "@typescript-eslint/types": "5.59.7",
+        "@typescript-eslint/types": "5.60.0",
         "eslint-visitor-keys": "^3.3.0"
       },
       "engines": {
@@ -6194,18 +6194,18 @@
       }
     },
     "node_modules/@wdio/cli": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.10.7.tgz",
-      "integrity": "sha512-HYKRxtdmjKXzO/ePpMWyG40jb4kuoR66xaIPXN0NOso3x2p27hxYHEb/teEYaxPTG3d6Rpk2PldGIX6qYA4wbg==",
+      "version": "8.11.2",
+      "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.11.2.tgz",
+      "integrity": "sha512-g1vuq+v1Ko//QQFDQsdf3Qs1BkON82NNGYN/ehUVZrvAcKwiIyfOG3WkzLxi8V4tPWbD+vsLbLQs/FRG+4gTag==",
       "dev": true,
       "dependencies": {
         "@types/node": "^20.1.1",
-        "@wdio/config": "8.10.7",
-        "@wdio/globals": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
+        "@wdio/config": "8.11.0",
+        "@wdio/globals": "8.11.2",
+        "@wdio/logger": "8.11.0",
+        "@wdio/protocols": "8.11.0",
         "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
+        "@wdio/utils": "8.11.0",
         "async-exit-hook": "^2.0.1",
         "chalk": "^5.2.0",
         "chokidar": "^3.5.3",
@@ -6213,13 +6213,13 @@
         "ejs": "^3.1.9",
         "execa": "^7.1.1",
         "import-meta-resolve": "^3.0.0",
-        "inquirer": "9.2.6",
+        "inquirer": "9.2.7",
         "lodash.flattendeep": "^4.4.0",
         "lodash.pickby": "^4.6.0",
         "lodash.union": "^4.6.0",
         "read-pkg-up": "9.1.0",
         "recursive-readdir": "^2.2.3",
-        "webdriverio": "8.10.7",
+        "webdriverio": "8.11.2",
         "yargs": "^17.7.2",
         "yarn-install": "^1.0.0"
       },
@@ -6230,147 +6230,38 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/cli/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/@wdio/cli/node_modules/devtools": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/devtools/-/devtools-8.10.7.tgz",
-      "integrity": "sha512-picJDxsjpaOW7gnQjcQVGDXvxuP1RZ4VNJpvJ+qiy86Gf3l4FGLKYkpJJFAMsIugL0XPs89bIVhjbtIv5NGL1w==",
+    "node_modules/@wdio/cli/node_modules/@wdio/config": {
+      "version": "8.11.0",
+      "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.11.0.tgz",
+      "integrity": "sha512-nBQXsXbPCjddtI/3rAK5yFs3eD3f0T3lZMivweTkLLR7GKBxGjiFoBjXtfqUrHJYa+2uwfXrwxo6y+dA6fVbuw==",
       "dev": true,
       "dependencies": {
-        "@types/node": "^20.1.0",
-        "@wdio/config": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
+        "@wdio/logger": "8.11.0",
         "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "chrome-launcher": "^0.15.0",
-        "edge-paths": "^3.0.5",
+        "@wdio/utils": "8.11.0",
+        "decamelize": "^6.0.0",
+        "deepmerge-ts": "^5.0.0",
+        "glob": "^10.2.2",
         "import-meta-resolve": "^3.0.0",
-        "puppeteer-core": "20.3.0",
-        "query-selector-shadow-dom": "^1.0.0",
-        "ua-parser-js": "^1.0.1",
-        "uuid": "^9.0.0",
-        "which": "^3.0.0"
+        "read-pkg-up": "^9.1.0"
       },
       "engines": {
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/cli/node_modules/devtools-protocol": {
-      "version": "0.0.1149535",
-      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1149535.tgz",
-      "integrity": "sha512-vpM8tGaYz2nrN9n8rvUEhQCgU05ocejO5WIJySsftEHxUahQ/fWuNyPxXuQNBEmaISYyMZkxCunhjtSEyBl/Dg==",
-      "dev": true
-    },
-    "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==",
-      "dev": true,
-      "engines": {
-        "node": ">=12"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/@wdio/cli/node_modules/minimatch": {
-      "version": "9.0.1",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
-      "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
+    "node_modules/@wdio/cli/node_modules/chalk": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
+      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
       "dev": true,
-      "dependencies": {
-        "brace-expansion": "^2.0.1"
-      },
       "engines": {
-        "node": ">=16 || 14 >=14.17"
+        "node": "^12.17.0 || ^14.13 || >=16.0.0"
       },
       "funding": {
-        "url": "https://github.com/sponsors/isaacs"
-      }
-    },
-    "node_modules/@wdio/cli/node_modules/webdriverio": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.10.7.tgz",
-      "integrity": "sha512-TkkPE3zBxdLRdcsNLqHct2OARnfMYB9/A0ri4sccmc3C3dVFiW99NAstN88nzD1SYzXAbxALRuITVd5oswqqhg==",
-      "dev": true,
-      "dependencies": {
-        "@types/node": "^20.1.0",
-        "@wdio/config": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
-        "@wdio/repl": "8.10.1",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "archiver": "^5.0.0",
-        "aria-query": "^5.0.0",
-        "css-shorthand-properties": "^1.1.1",
-        "css-value": "^0.0.1",
-        "devtools": "8.10.7",
-        "devtools-protocol": "^0.0.1149535",
-        "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.3.0",
-        "query-selector-shadow-dom": "^1.0.0",
-        "resq": "^1.9.1",
-        "rgb2hex": "0.2.5",
-        "serialize-error": "^8.0.0",
-        "webdriver": "8.10.7"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/@wdio/cli/node_modules/which": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
-      "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
-      "dev": true,
-      "dependencies": {
-        "isexe": "^2.0.0"
-      },
-      "bin": {
-        "node-which": "bin/which.js"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
-      }
-    },
-    "node_modules/@wdio/config": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.10.7.tgz",
-      "integrity": "sha512-m7JX9X/RPM+4KZQkSUhPHXeS3PJJky0UB62ZLh28TYCzVxEKNq1gFb6Cvqfn+w6Ym/UCFBaZzDrRLLXUAgUifw==",
-      "dev": true,
-      "dependencies": {
-        "@wdio/logger": "8.10.6",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "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"
+        "url": "https://github.com/chalk/chalk?sponsor=1"
       }
     },
-    "node_modules/@wdio/config/node_modules/foreground-child": {
+    "node_modules/@wdio/cli/node_modules/foreground-child": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
       "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
@@ -6386,10 +6277,10 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@wdio/config/node_modules/glob": {
-      "version": "10.2.6",
-      "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz",
-      "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==",
+    "node_modules/@wdio/cli/node_modules/glob": {
+      "version": "10.3.0",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz",
+      "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==",
       "dev": true,
       "dependencies": {
         "foreground-child": "^3.1.0",
@@ -6408,10 +6299,10 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@wdio/config/node_modules/minimatch": {
-      "version": "9.0.1",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
-      "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
+    "node_modules/@wdio/cli/node_modules/minimatch": {
+      "version": "9.0.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz",
+      "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==",
       "dev": true,
       "dependencies": {
         "brace-expansion": "^2.0.1"
@@ -6423,7 +6314,7 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@wdio/config/node_modules/minipass": {
+    "node_modules/@wdio/cli/node_modules/minipass": {
       "version": "6.0.2",
       "resolved": "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz",
       "integrity": "sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==",
@@ -6432,7 +6323,7 @@
         "node": ">=16 || 14 >=14.17"
       }
     },
-    "node_modules/@wdio/config/node_modules/signal-exit": {
+    "node_modules/@wdio/cli/node_modules/signal-exit": {
       "version": "4.0.2",
       "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
       "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
@@ -6445,131 +6336,16 @@
       }
     },
     "node_modules/@wdio/globals": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.10.7.tgz",
-      "integrity": "sha512-f+oBuQjJAOXoWwUffjbQk26gNGqQ4d8dnB6fVW7C/WwhuButKwm4pyBEp0RpU5G3a5pYn0bQP95cziuozTU1rg==",
+      "version": "8.11.2",
+      "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.11.2.tgz",
+      "integrity": "sha512-oaPyGLmWOHQLYtT6Jn3mtZBSYyWxau6ncBDLPJDUwOxufi3tfT9DOen+65OGBK55GfjrCAZOSGAJ13mN/swIQQ==",
       "dev": true,
       "engines": {
         "node": "^16.13 || >=18"
       },
       "optionalDependencies": {
-        "expect-webdriverio": "^4.0.1",
-        "webdriverio": "8.10.7"
-      }
-    },
-    "node_modules/@wdio/globals/node_modules/devtools": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/devtools/-/devtools-8.10.7.tgz",
-      "integrity": "sha512-picJDxsjpaOW7gnQjcQVGDXvxuP1RZ4VNJpvJ+qiy86Gf3l4FGLKYkpJJFAMsIugL0XPs89bIVhjbtIv5NGL1w==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "@types/node": "^20.1.0",
-        "@wdio/config": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "chrome-launcher": "^0.15.0",
-        "edge-paths": "^3.0.5",
-        "import-meta-resolve": "^3.0.0",
-        "puppeteer-core": "20.3.0",
-        "query-selector-shadow-dom": "^1.0.0",
-        "ua-parser-js": "^1.0.1",
-        "uuid": "^9.0.0",
-        "which": "^3.0.0"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/@wdio/globals/node_modules/devtools-protocol": {
-      "version": "0.0.1149535",
-      "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1149535.tgz",
-      "integrity": "sha512-vpM8tGaYz2nrN9n8rvUEhQCgU05ocejO5WIJySsftEHxUahQ/fWuNyPxXuQNBEmaISYyMZkxCunhjtSEyBl/Dg==",
-      "dev": true,
-      "optional": true
-    },
-    "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.1",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
-      "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
-      "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/webdriverio": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.10.7.tgz",
-      "integrity": "sha512-TkkPE3zBxdLRdcsNLqHct2OARnfMYB9/A0ri4sccmc3C3dVFiW99NAstN88nzD1SYzXAbxALRuITVd5oswqqhg==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "@types/node": "^20.1.0",
-        "@wdio/config": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
-        "@wdio/repl": "8.10.1",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "archiver": "^5.0.0",
-        "aria-query": "^5.0.0",
-        "css-shorthand-properties": "^1.1.1",
-        "css-value": "^0.0.1",
-        "devtools": "8.10.7",
-        "devtools-protocol": "^0.0.1149535",
-        "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.3.0",
-        "query-selector-shadow-dom": "^1.0.0",
-        "resq": "^1.9.1",
-        "rgb2hex": "0.2.5",
-        "serialize-error": "^8.0.0",
-        "webdriver": "8.10.7"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/@wdio/globals/node_modules/which": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
-      "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
-      "dev": true,
-      "optional": true,
-      "dependencies": {
-        "isexe": "^2.0.0"
-      },
-      "bin": {
-        "node-which": "bin/which.js"
-      },
-      "engines": {
-        "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+        "expect-webdriverio": "^4.2.5",
+        "webdriverio": "8.11.2"
       }
     },
     "node_modules/@wdio/local-runner": {
@@ -6591,7 +6367,7 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/local-runner/node_modules/@wdio/logger": {
+    "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==",
@@ -6606,60 +6382,6 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/local-runner/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/local-runner/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/@wdio/local-runner/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/logger": {
-      "version": "8.10.6",
-      "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.10.6.tgz",
-      "integrity": "sha512-pJYKecNYS0vu0FxDaii6MYQlYkORDLGdRWi70hrihH20sMZofzMA1tvzRMRk1VTrsUUE4TLJXKdmT2JRMN+OPw==",
-      "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",
@@ -6716,79 +6438,10 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/mocha-framework/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/@wdio/mocha-framework/node_modules/@wdio/utils": {
-      "version": "8.11.0",
-      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-      "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-      "dev": true,
-      "dependencies": {
-        "@wdio/logger": "8.11.0",
-        "@wdio/types": "8.10.4",
-        "import-meta-resolve": "^3.0.0",
-        "p-iteration": "^1.1.8"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/@wdio/mocha-framework/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/mocha-framework/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/@wdio/mocha-framework/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/protocols": {
-      "version": "8.10.2",
-      "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-8.10.2.tgz",
-      "integrity": "sha512-Iv7Nqq6YsMQR9qvOM2mswUcKwx7bdx3cWVSmbMc8hwGJuNCBI+BP1fzmD9OidUftd1CQNvfugsG8Vq8vQWRyGg==",
+      "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/@wdio/repl": {
@@ -6820,60 +6473,6 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/reporter/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/@wdio/reporter/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/reporter/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
-    "node_modules/@wdio/reporter/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/runner": {
       "version": "8.11.2",
       "resolved": "https://registry.npmjs.org/@wdio/runner/-/runner-8.11.2.tgz",
@@ -6915,79 +6514,6 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/@wdio/runner/node_modules/@wdio/globals": {
-      "version": "8.11.2",
-      "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.11.2.tgz",
-      "integrity": "sha512-oaPyGLmWOHQLYtT6Jn3mtZBSYyWxau6ncBDLPJDUwOxufi3tfT9DOen+65OGBK55GfjrCAZOSGAJ13mN/swIQQ==",
-      "dev": true,
-      "engines": {
-        "node": "^16.13 || >=18"
-      },
-      "optionalDependencies": {
-        "expect-webdriverio": "^4.2.5",
-        "webdriverio": "8.11.2"
-      }
-    },
-    "node_modules/@wdio/runner/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/@wdio/runner/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/@wdio/runner/node_modules/@wdio/utils": {
-      "version": "8.11.0",
-      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-      "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-      "dev": true,
-      "dependencies": {
-        "@wdio/logger": "8.11.0",
-        "@wdio/types": "8.10.4",
-        "import-meta-resolve": "^3.0.0",
-        "p-iteration": "^1.1.8"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/@wdio/runner/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/runner/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
     "node_modules/@wdio/runner/node_modules/foreground-child": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -7062,21 +6588,6 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/@wdio/runner/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/runner/node_modules/webdriver": {
       "version": "8.11.1",
       "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.11.1.tgz",
@@ -7140,12 +6651,12 @@
       }
     },
     "node_modules/@wdio/utils": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.10.7.tgz",
-      "integrity": "sha512-G9r/bQl4J25WPKeW0e+27gqNvG+x7MyZEOICl6SwyBe0SqO7JBFOBARx4oUEp2zQYmnCRNtCrHa7yM/O4OPuKA==",
+      "version": "8.11.0",
+      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
+      "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
       "dev": true,
       "dependencies": {
-        "@wdio/logger": "8.10.6",
+        "@wdio/logger": "8.11.0",
         "@wdio/types": "8.10.4",
         "import-meta-resolve": "^3.0.0",
         "p-iteration": "^1.1.8"
@@ -10365,66 +9876,6 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/devtools/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/devtools/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/devtools/node_modules/@wdio/utils": {
-      "version": "8.11.0",
-      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-      "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-      "dev": true,
-      "dependencies": {
-        "@wdio/logger": "8.11.0",
-        "@wdio/types": "8.10.4",
-        "import-meta-resolve": "^3.0.0",
-        "p-iteration": "^1.1.8"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/devtools/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/devtools/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
     "node_modules/devtools/node_modules/foreground-child": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -10499,21 +9950,6 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/devtools/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/devtools/node_modules/which": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
@@ -14602,9 +14038,9 @@
       "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
     },
     "node_modules/inquirer": {
-      "version": "9.2.6",
-      "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.6.tgz",
-      "integrity": "sha512-y71l237eJJKS4rl7sQcEUiMhrR0pB/ZnRMMTxLpjJhWL4hdWCT03a6jJnC1w6qIPSRZWEozuieGt3v7XaEJYFw==",
+      "version": "9.2.7",
+      "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.7.tgz",
+      "integrity": "sha512-Bf52lnfvNxGPJPltiNO2tLBp3zC339KNlGMqOkW+dsvNikBhcVDK5kqU2lVX2FTPzuXUFX5WJDlsw//w3ZwoTw==",
       "dev": true,
       "dependencies": {
         "ansi-escapes": "^4.3.2",
@@ -21864,9 +21300,9 @@
       }
     },
     "node_modules/tar-fs": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.2.tgz",
-      "integrity": "sha512-mLQ5iTTCv2tt3a4BwvD8QX1YFVBL/94/Nd+U2il38wt2+zaJSusp1VwJSNkBmB48FeTdOqptf1DAUIosXQBRrQ==",
+      "version": "3.0.3",
+      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.3.tgz",
+      "integrity": "sha512-ZK36riGYnFI6LujIBfBRoDfeaaWUkStIFKwtPjnDWCKnsDE9kuQthG09aQjLjpzoRtVElEMZ/AIAURNb7N9mkA==",
       "dev": true,
       "dependencies": {
         "mkdirp-classic": "^0.5.2",
@@ -24013,28 +23449,6 @@
       "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.2.0.tgz",
       "integrity": "sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA=="
     },
-    "node_modules/webdriver": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.10.7.tgz",
-      "integrity": "sha512-pBy29S9e8IYKYHfS0gp91Jp9SUvXJQckJKJdj+VNLNL9toSFo10N7xRpv8W1f7HkniXrgESi9GHYNyc1J/5lLA==",
-      "dev": true,
-      "dependencies": {
-        "@types/node": "^20.1.0",
-        "@types/ws": "^8.5.3",
-        "@wdio/config": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "deepmerge-ts": "^5.0.0",
-        "got": "^ 12.6.1",
-        "ky": "^0.33.0",
-        "ws": "^8.8.0"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
     "node_modules/webdriverio": {
       "version": "8.11.2",
       "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.11.2.tgz",
@@ -24090,66 +23504,6 @@
         "node": "^16.13 || >=18"
       }
     },
-    "node_modules/webdriverio/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/webdriverio/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/webdriverio/node_modules/@wdio/utils": {
-      "version": "8.11.0",
-      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-      "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-      "dev": true,
-      "dependencies": {
-        "@wdio/logger": "8.11.0",
-        "@wdio/types": "8.10.4",
-        "import-meta-resolve": "^3.0.0",
-        "p-iteration": "^1.1.8"
-      },
-      "engines": {
-        "node": "^16.13 || >=18"
-      }
-    },
-    "node_modules/webdriverio/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/webdriverio/node_modules/chalk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-      "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-      "dev": true,
-      "engines": {
-        "node": "^12.17.0 || ^14.13 || >=16.0.0"
-      },
-      "funding": {
-        "url": "https://github.com/chalk/chalk?sponsor=1"
-      }
-    },
     "node_modules/webdriverio/node_modules/foreground-child": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -24236,21 +23590,6 @@
         "url": "https://github.com/sponsors/isaacs"
       }
     },
-    "node_modules/webdriverio/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/webdriverio/node_modules/webdriver": {
       "version": "8.11.1",
       "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.11.1.tgz",
@@ -24279,9 +23618,9 @@
       "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
     },
     "node_modules/webpack": {
-      "version": "5.87.0",
-      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.87.0.tgz",
-      "integrity": "sha512-GOu1tNbQ7p1bDEoFRs2YPcfyGs8xq52yyPBZ3m2VGnXGtV9MxjrkABHm4V9Ia280OefsSLzvbVoXcfLxjKY/Iw==",
+      "version": "5.88.0",
+      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.0.tgz",
+      "integrity": "sha512-O3jDhG5e44qIBSi/P6KpcCcH7HD+nYIHVBhdWFxcLOcIGN8zGo5nqF3BjyNCxIh4p1vFdNnreZv2h2KkoAw3lw==",
       "dev": true,
       "dependencies": {
         "@types/eslint-scope": "^3.7.3",
@@ -28819,15 +28158,15 @@
       }
     },
     "@typescript-eslint/eslint-plugin": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.7.tgz",
-      "integrity": "sha512-BL+jYxUFIbuYwy+4fF86k5vdT9lT0CNJ6HtwrIvGh0PhH8s0yy5rjaKH2fDCrz5ITHy07WCzVGNvAmjJh4IJFA==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.60.0.tgz",
+      "integrity": "sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==",
       "dev": true,
       "requires": {
         "@eslint-community/regexpp": "^4.4.0",
-        "@typescript-eslint/scope-manager": "5.59.7",
-        "@typescript-eslint/type-utils": "5.59.7",
-        "@typescript-eslint/utils": "5.59.7",
+        "@typescript-eslint/scope-manager": "5.60.0",
+        "@typescript-eslint/type-utils": "5.60.0",
+        "@typescript-eslint/utils": "5.60.0",
         "debug": "^4.3.4",
         "grapheme-splitter": "^1.0.4",
         "ignore": "^5.2.0",
@@ -28837,28 +28176,28 @@
       },
       "dependencies": {
         "@typescript-eslint/scope-manager": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.7.tgz",
-          "integrity": "sha512-FL6hkYWK9zBGdxT2wWEd2W8ocXMu3K94i3gvMrjXpx+koFYdYV7KprKfirpgY34vTGzEPPuKoERpP8kD5h7vZQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.60.0.tgz",
+          "integrity": "sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
-            "@typescript-eslint/visitor-keys": "5.59.7"
+            "@typescript-eslint/types": "5.60.0",
+            "@typescript-eslint/visitor-keys": "5.60.0"
           }
         },
         "@typescript-eslint/types": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.7.tgz",
-          "integrity": "sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz",
+          "integrity": "sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==",
           "dev": true
         },
         "@typescript-eslint/visitor-keys": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.7.tgz",
-          "integrity": "sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz",
+          "integrity": "sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
+            "@typescript-eslint/types": "5.60.0",
             "eslint-visitor-keys": "^3.3.0"
           }
         }
@@ -28887,31 +28226,31 @@
       }
     },
     "@typescript-eslint/type-utils": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.7.tgz",
-      "integrity": "sha512-ozuz/GILuYG7osdY5O5yg0QxXUAEoI4Go3Do5xeu+ERH9PorHBPSdvD3Tjp2NN2bNLh1NJQSsQu2TPu/Ly+HaQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.60.0.tgz",
+      "integrity": "sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/typescript-estree": "5.59.7",
-        "@typescript-eslint/utils": "5.59.7",
+        "@typescript-eslint/typescript-estree": "5.60.0",
+        "@typescript-eslint/utils": "5.60.0",
         "debug": "^4.3.4",
         "tsutils": "^3.21.0"
       },
       "dependencies": {
         "@typescript-eslint/types": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.7.tgz",
-          "integrity": "sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz",
+          "integrity": "sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==",
           "dev": true
         },
         "@typescript-eslint/typescript-estree": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.7.tgz",
-          "integrity": "sha512-4A1NtZ1I3wMN2UGDkU9HMBL+TIQfbrh4uS0WDMMpf3xMRursDbqEf1ahh6vAAe3mObt8k3ZATnezwG4pdtWuUQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.0.tgz",
+          "integrity": "sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
-            "@typescript-eslint/visitor-keys": "5.59.7",
+            "@typescript-eslint/types": "5.60.0",
+            "@typescript-eslint/visitor-keys": "5.60.0",
             "debug": "^4.3.4",
             "globby": "^11.1.0",
             "is-glob": "^4.0.3",
@@ -28920,12 +28259,12 @@
           }
         },
         "@typescript-eslint/visitor-keys": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.7.tgz",
-          "integrity": "sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz",
+          "integrity": "sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
+            "@typescript-eslint/types": "5.60.0",
             "eslint-visitor-keys": "^3.3.0"
           }
         }
@@ -28953,45 +28292,45 @@
       }
     },
     "@typescript-eslint/utils": {
-      "version": "5.59.7",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.7.tgz",
-      "integrity": "sha512-yCX9WpdQKaLufz5luG4aJbOpdXf/fjwGMcLFXZVPUz3QqLirG5QcwwnIHNf8cjLjxK4qtzTO8udUtMQSAToQnQ==",
+      "version": "5.60.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.60.0.tgz",
+      "integrity": "sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==",
       "dev": true,
       "requires": {
         "@eslint-community/eslint-utils": "^4.2.0",
         "@types/json-schema": "^7.0.9",
         "@types/semver": "^7.3.12",
-        "@typescript-eslint/scope-manager": "5.59.7",
-        "@typescript-eslint/types": "5.59.7",
-        "@typescript-eslint/typescript-estree": "5.59.7",
+        "@typescript-eslint/scope-manager": "5.60.0",
+        "@typescript-eslint/types": "5.60.0",
+        "@typescript-eslint/typescript-estree": "5.60.0",
         "eslint-scope": "^5.1.1",
         "semver": "^7.3.7"
       },
       "dependencies": {
         "@typescript-eslint/scope-manager": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.7.tgz",
-          "integrity": "sha512-FL6hkYWK9zBGdxT2wWEd2W8ocXMu3K94i3gvMrjXpx+koFYdYV7KprKfirpgY34vTGzEPPuKoERpP8kD5h7vZQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.60.0.tgz",
+          "integrity": "sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
-            "@typescript-eslint/visitor-keys": "5.59.7"
+            "@typescript-eslint/types": "5.60.0",
+            "@typescript-eslint/visitor-keys": "5.60.0"
           }
         },
         "@typescript-eslint/types": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.7.tgz",
-          "integrity": "sha512-UnVS2MRRg6p7xOSATscWkKjlf/NDKuqo5TdbWck6rIRZbmKpVNTLALzNvcjIfHBE7736kZOFc/4Z3VcZwuOM/A==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz",
+          "integrity": "sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==",
           "dev": true
         },
         "@typescript-eslint/typescript-estree": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.7.tgz",
-          "integrity": "sha512-4A1NtZ1I3wMN2UGDkU9HMBL+TIQfbrh4uS0WDMMpf3xMRursDbqEf1ahh6vAAe3mObt8k3ZATnezwG4pdtWuUQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.0.tgz",
+          "integrity": "sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
-            "@typescript-eslint/visitor-keys": "5.59.7",
+            "@typescript-eslint/types": "5.60.0",
+            "@typescript-eslint/visitor-keys": "5.60.0",
             "debug": "^4.3.4",
             "globby": "^11.1.0",
             "is-glob": "^4.0.3",
@@ -29000,12 +28339,12 @@
           }
         },
         "@typescript-eslint/visitor-keys": {
-          "version": "5.59.7",
-          "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.7.tgz",
-          "integrity": "sha512-tyN+X2jvMslUszIiYbF0ZleP+RqQsFVpGrKI6e0Eet1w8WmhsAtmzaqm8oM8WJQ1ysLwhnsK/4hYHJjOgJVfQQ==",
+          "version": "5.60.0",
+          "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz",
+          "integrity": "sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==",
           "dev": true,
           "requires": {
-            "@typescript-eslint/types": "5.59.7",
+            "@typescript-eslint/types": "5.60.0",
             "eslint-visitor-keys": "^3.3.0"
           }
         }
@@ -29866,18 +29205,18 @@
       }
     },
     "@wdio/cli": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.10.7.tgz",
-      "integrity": "sha512-HYKRxtdmjKXzO/ePpMWyG40jb4kuoR66xaIPXN0NOso3x2p27hxYHEb/teEYaxPTG3d6Rpk2PldGIX6qYA4wbg==",
+      "version": "8.11.2",
+      "resolved": "https://registry.npmjs.org/@wdio/cli/-/cli-8.11.2.tgz",
+      "integrity": "sha512-g1vuq+v1Ko//QQFDQsdf3Qs1BkON82NNGYN/ehUVZrvAcKwiIyfOG3WkzLxi8V4tPWbD+vsLbLQs/FRG+4gTag==",
       "dev": true,
       "requires": {
         "@types/node": "^20.1.1",
-        "@wdio/config": "8.10.7",
-        "@wdio/globals": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
+        "@wdio/config": "8.11.0",
+        "@wdio/globals": "8.11.2",
+        "@wdio/logger": "8.11.0",
+        "@wdio/protocols": "8.11.0",
         "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
+        "@wdio/utils": "8.11.0",
         "async-exit-hook": "^2.0.1",
         "chalk": "^5.2.0",
         "chokidar": "^3.5.3",
@@ -29885,126 +29224,39 @@
         "ejs": "^3.1.9",
         "execa": "^7.1.1",
         "import-meta-resolve": "^3.0.0",
-        "inquirer": "9.2.6",
+        "inquirer": "9.2.7",
         "lodash.flattendeep": "^4.4.0",
         "lodash.pickby": "^4.6.0",
         "lodash.union": "^4.6.0",
         "read-pkg-up": "9.1.0",
         "recursive-readdir": "^2.2.3",
-        "webdriverio": "8.10.7",
+        "webdriverio": "8.11.2",
         "yargs": "^17.7.2",
         "yarn-install": "^1.0.0"
       },
       "dependencies": {
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
-        "devtools": {
-          "version": "8.10.7",
-          "resolved": "https://registry.npmjs.org/devtools/-/devtools-8.10.7.tgz",
-          "integrity": "sha512-picJDxsjpaOW7gnQjcQVGDXvxuP1RZ4VNJpvJ+qiy86Gf3l4FGLKYkpJJFAMsIugL0XPs89bIVhjbtIv5NGL1w==",
+        "@wdio/config": {
+          "version": "8.11.0",
+          "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.11.0.tgz",
+          "integrity": "sha512-nBQXsXbPCjddtI/3rAK5yFs3eD3f0T3lZMivweTkLLR7GKBxGjiFoBjXtfqUrHJYa+2uwfXrwxo6y+dA6fVbuw==",
           "dev": true,
           "requires": {
-            "@types/node": "^20.1.0",
-            "@wdio/config": "8.10.7",
-            "@wdio/logger": "8.10.6",
-            "@wdio/protocols": "8.10.2",
+            "@wdio/logger": "8.11.0",
             "@wdio/types": "8.10.4",
-            "@wdio/utils": "8.10.7",
-            "chrome-launcher": "^0.15.0",
-            "edge-paths": "^3.0.5",
+            "@wdio/utils": "8.11.0",
+            "decamelize": "^6.0.0",
+            "deepmerge-ts": "^5.0.0",
+            "glob": "^10.2.2",
             "import-meta-resolve": "^3.0.0",
-            "puppeteer-core": "20.3.0",
-            "query-selector-shadow-dom": "^1.0.0",
-            "ua-parser-js": "^1.0.1",
-            "uuid": "^9.0.0",
-            "which": "^3.0.0"
+            "read-pkg-up": "^9.1.0"
           }
         },
-        "devtools-protocol": {
-          "version": "0.0.1149535",
-          "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1149535.tgz",
-          "integrity": "sha512-vpM8tGaYz2nrN9n8rvUEhQCgU05ocejO5WIJySsftEHxUahQ/fWuNyPxXuQNBEmaISYyMZkxCunhjtSEyBl/Dg==",
-          "dev": true
-        },
-        "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==",
+        "chalk": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
+          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
           "dev": true
         },
-        "minimatch": {
-          "version": "9.0.1",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
-          "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "^2.0.1"
-          }
-        },
-        "webdriverio": {
-          "version": "8.10.7",
-          "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.10.7.tgz",
-          "integrity": "sha512-TkkPE3zBxdLRdcsNLqHct2OARnfMYB9/A0ri4sccmc3C3dVFiW99NAstN88nzD1SYzXAbxALRuITVd5oswqqhg==",
-          "dev": true,
-          "requires": {
-            "@types/node": "^20.1.0",
-            "@wdio/config": "8.10.7",
-            "@wdio/logger": "8.10.6",
-            "@wdio/protocols": "8.10.2",
-            "@wdio/repl": "8.10.1",
-            "@wdio/types": "8.10.4",
-            "@wdio/utils": "8.10.7",
-            "archiver": "^5.0.0",
-            "aria-query": "^5.0.0",
-            "css-shorthand-properties": "^1.1.1",
-            "css-value": "^0.0.1",
-            "devtools": "8.10.7",
-            "devtools-protocol": "^0.0.1149535",
-            "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.3.0",
-            "query-selector-shadow-dom": "^1.0.0",
-            "resq": "^1.9.1",
-            "rgb2hex": "0.2.5",
-            "serialize-error": "^8.0.0",
-            "webdriver": "8.10.7"
-          }
-        },
-        "which": {
-          "version": "3.0.1",
-          "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
-          "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
-          "dev": true,
-          "requires": {
-            "isexe": "^2.0.0"
-          }
-        }
-      }
-    },
-    "@wdio/config": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.10.7.tgz",
-      "integrity": "sha512-m7JX9X/RPM+4KZQkSUhPHXeS3PJJky0UB62ZLh28TYCzVxEKNq1gFb6Cvqfn+w6Ym/UCFBaZzDrRLLXUAgUifw==",
-      "dev": true,
-      "requires": {
-        "@wdio/logger": "8.10.6",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "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"
-      },
-      "dependencies": {
         "foreground-child": {
           "version": "3.1.1",
           "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -30016,9 +29268,9 @@
           }
         },
         "glob": {
-          "version": "10.2.6",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.6.tgz",
-          "integrity": "sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==",
+          "version": "10.3.0",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz",
+          "integrity": "sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==",
           "dev": true,
           "requires": {
             "foreground-child": "^3.1.0",
@@ -30029,9 +29281,9 @@
           }
         },
         "minimatch": {
-          "version": "9.0.1",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
-          "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
+          "version": "9.0.2",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz",
+          "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==",
           "dev": true,
           "requires": {
             "brace-expansion": "^2.0.1"
@@ -30052,106 +29304,13 @@
       }
     },
     "@wdio/globals": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.10.7.tgz",
-      "integrity": "sha512-f+oBuQjJAOXoWwUffjbQk26gNGqQ4d8dnB6fVW7C/WwhuButKwm4pyBEp0RpU5G3a5pYn0bQP95cziuozTU1rg==",
+      "version": "8.11.2",
+      "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.11.2.tgz",
+      "integrity": "sha512-oaPyGLmWOHQLYtT6Jn3mtZBSYyWxau6ncBDLPJDUwOxufi3tfT9DOen+65OGBK55GfjrCAZOSGAJ13mN/swIQQ==",
       "dev": true,
       "requires": {
-        "expect-webdriverio": "^4.0.1",
-        "webdriverio": "8.10.7"
-      },
-      "dependencies": {
-        "devtools": {
-          "version": "8.10.7",
-          "resolved": "https://registry.npmjs.org/devtools/-/devtools-8.10.7.tgz",
-          "integrity": "sha512-picJDxsjpaOW7gnQjcQVGDXvxuP1RZ4VNJpvJ+qiy86Gf3l4FGLKYkpJJFAMsIugL0XPs89bIVhjbtIv5NGL1w==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "@types/node": "^20.1.0",
-            "@wdio/config": "8.10.7",
-            "@wdio/logger": "8.10.6",
-            "@wdio/protocols": "8.10.2",
-            "@wdio/types": "8.10.4",
-            "@wdio/utils": "8.10.7",
-            "chrome-launcher": "^0.15.0",
-            "edge-paths": "^3.0.5",
-            "import-meta-resolve": "^3.0.0",
-            "puppeteer-core": "20.3.0",
-            "query-selector-shadow-dom": "^1.0.0",
-            "ua-parser-js": "^1.0.1",
-            "uuid": "^9.0.0",
-            "which": "^3.0.0"
-          }
-        },
-        "devtools-protocol": {
-          "version": "0.0.1149535",
-          "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1149535.tgz",
-          "integrity": "sha512-vpM8tGaYz2nrN9n8rvUEhQCgU05ocejO5WIJySsftEHxUahQ/fWuNyPxXuQNBEmaISYyMZkxCunhjtSEyBl/Dg==",
-          "dev": true,
-          "optional": true
-        },
-        "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
-        },
-        "minimatch": {
-          "version": "9.0.1",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz",
-          "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "brace-expansion": "^2.0.1"
-          }
-        },
-        "webdriverio": {
-          "version": "8.10.7",
-          "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.10.7.tgz",
-          "integrity": "sha512-TkkPE3zBxdLRdcsNLqHct2OARnfMYB9/A0ri4sccmc3C3dVFiW99NAstN88nzD1SYzXAbxALRuITVd5oswqqhg==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "@types/node": "^20.1.0",
-            "@wdio/config": "8.10.7",
-            "@wdio/logger": "8.10.6",
-            "@wdio/protocols": "8.10.2",
-            "@wdio/repl": "8.10.1",
-            "@wdio/types": "8.10.4",
-            "@wdio/utils": "8.10.7",
-            "archiver": "^5.0.0",
-            "aria-query": "^5.0.0",
-            "css-shorthand-properties": "^1.1.1",
-            "css-value": "^0.0.1",
-            "devtools": "8.10.7",
-            "devtools-protocol": "^0.0.1149535",
-            "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.3.0",
-            "query-selector-shadow-dom": "^1.0.0",
-            "resq": "^1.9.1",
-            "rgb2hex": "0.2.5",
-            "serialize-error": "^8.0.0",
-            "webdriver": "8.10.7"
-          }
-        },
-        "which": {
-          "version": "3.0.1",
-          "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
-          "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "isexe": "^2.0.0"
-          }
-        }
+        "expect-webdriverio": "^4.2.5",
+        "webdriverio": "8.11.2"
       }
     },
     "@wdio/local-runner": {
@@ -30168,47 +29327,12 @@
         "async-exit-hook": "^2.0.1",
         "split2": "^4.1.0",
         "stream-buffers": "^3.0.2"
-      },
-      "dependencies": {
-        "@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,
-          "requires": {
-            "chalk": "^5.1.2",
-            "loglevel": "^1.6.0",
-            "loglevel-plugin-prefix": "^0.8.4",
-            "strip-ansi": "^7.1.0"
-          }
-        },
-        "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
-        },
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
-        "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,
-          "requires": {
-            "ansi-regex": "^6.0.1"
-          }
-        }
       }
     },
     "@wdio/logger": {
-      "version": "8.10.6",
-      "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.10.6.tgz",
-      "integrity": "sha512-pJYKecNYS0vu0FxDaii6MYQlYkORDLGdRWi70hrihH20sMZofzMA1tvzRMRk1VTrsUUE4TLJXKdmT2JRMN+OPw==",
+      "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,
       "requires": {
         "chalk": "^5.1.2",
@@ -30252,59 +29376,12 @@
         "@wdio/types": "8.10.4",
         "@wdio/utils": "8.11.0",
         "mocha": "^10.0.0"
-      },
-      "dependencies": {
-        "@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,
-          "requires": {
-            "chalk": "^5.1.2",
-            "loglevel": "^1.6.0",
-            "loglevel-plugin-prefix": "^0.8.4",
-            "strip-ansi": "^7.1.0"
-          }
-        },
-        "@wdio/utils": {
-          "version": "8.11.0",
-          "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-          "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-          "dev": true,
-          "requires": {
-            "@wdio/logger": "8.11.0",
-            "@wdio/types": "8.10.4",
-            "import-meta-resolve": "^3.0.0",
-            "p-iteration": "^1.1.8"
-          }
-        },
-        "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
-        },
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
-        "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,
-          "requires": {
-            "ansi-regex": "^6.0.1"
-          }
-        }
       }
     },
     "@wdio/protocols": {
-      "version": "8.10.2",
-      "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-8.10.2.tgz",
-      "integrity": "sha512-Iv7Nqq6YsMQR9qvOM2mswUcKwx7bdx3cWVSmbMc8hwGJuNCBI+BP1fzmD9OidUftd1CQNvfugsG8Vq8vQWRyGg==",
+      "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
     },
     "@wdio/repl": {
@@ -30328,41 +29405,6 @@
         "diff": "^5.0.0",
         "object-inspect": "^1.12.0",
         "supports-color": "9.3.1"
-      },
-      "dependencies": {
-        "@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,
-          "requires": {
-            "chalk": "^5.1.2",
-            "loglevel": "^1.6.0",
-            "loglevel-plugin-prefix": "^0.8.4",
-            "strip-ansi": "^7.1.0"
-          }
-        },
-        "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
-        },
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
-        "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,
-          "requires": {
-            "ansi-regex": "^6.0.1"
-          }
-        }
       }
     },
     "@wdio/runner": {
@@ -30400,58 +29442,6 @@
             "read-pkg-up": "^9.1.0"
           }
         },
-        "@wdio/globals": {
-          "version": "8.11.2",
-          "resolved": "https://registry.npmjs.org/@wdio/globals/-/globals-8.11.2.tgz",
-          "integrity": "sha512-oaPyGLmWOHQLYtT6Jn3mtZBSYyWxau6ncBDLPJDUwOxufi3tfT9DOen+65OGBK55GfjrCAZOSGAJ13mN/swIQQ==",
-          "dev": true,
-          "requires": {
-            "expect-webdriverio": "^4.2.5",
-            "webdriverio": "8.11.2"
-          }
-        },
-        "@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,
-          "requires": {
-            "chalk": "^5.1.2",
-            "loglevel": "^1.6.0",
-            "loglevel-plugin-prefix": "^0.8.4",
-            "strip-ansi": "^7.1.0"
-          }
-        },
-        "@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
-        },
-        "@wdio/utils": {
-          "version": "8.11.0",
-          "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-          "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-          "dev": true,
-          "requires": {
-            "@wdio/logger": "8.11.0",
-            "@wdio/types": "8.10.4",
-            "import-meta-resolve": "^3.0.0",
-            "p-iteration": "^1.1.8"
-          }
-        },
-        "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
-        },
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
         "foreground-child": {
           "version": "3.1.1",
           "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -30496,15 +29486,6 @@
           "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
           "dev": true
         },
-        "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,
-          "requires": {
-            "ansi-regex": "^6.0.1"
-          }
-        },
         "webdriver": {
           "version": "8.11.1",
           "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.11.1.tgz",
@@ -30557,12 +29538,12 @@
       }
     },
     "@wdio/utils": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.10.7.tgz",
-      "integrity": "sha512-G9r/bQl4J25WPKeW0e+27gqNvG+x7MyZEOICl6SwyBe0SqO7JBFOBARx4oUEp2zQYmnCRNtCrHa7yM/O4OPuKA==",
+      "version": "8.11.0",
+      "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
+      "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
       "dev": true,
       "requires": {
-        "@wdio/logger": "8.10.6",
+        "@wdio/logger": "8.11.0",
         "@wdio/types": "8.10.4",
         "import-meta-resolve": "^3.0.0",
         "p-iteration": "^1.1.8"
@@ -33005,48 +31986,6 @@
             "read-pkg-up": "^9.1.0"
           }
         },
-        "@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,
-          "requires": {
-            "chalk": "^5.1.2",
-            "loglevel": "^1.6.0",
-            "loglevel-plugin-prefix": "^0.8.4",
-            "strip-ansi": "^7.1.0"
-          }
-        },
-        "@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
-        },
-        "@wdio/utils": {
-          "version": "8.11.0",
-          "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-          "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-          "dev": true,
-          "requires": {
-            "@wdio/logger": "8.11.0",
-            "@wdio/types": "8.10.4",
-            "import-meta-resolve": "^3.0.0",
-            "p-iteration": "^1.1.8"
-          }
-        },
-        "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
-        },
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
         "foreground-child": {
           "version": "3.1.1",
           "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -33091,15 +32030,6 @@
           "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
           "dev": true
         },
-        "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,
-          "requires": {
-            "ansi-regex": "^6.0.1"
-          }
-        },
         "which": {
           "version": "3.0.1",
           "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
@@ -36129,9 +35059,9 @@
       "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
     },
     "inquirer": {
-      "version": "9.2.6",
-      "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.6.tgz",
-      "integrity": "sha512-y71l237eJJKS4rl7sQcEUiMhrR0pB/ZnRMMTxLpjJhWL4hdWCT03a6jJnC1w6qIPSRZWEozuieGt3v7XaEJYFw==",
+      "version": "9.2.7",
+      "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.7.tgz",
+      "integrity": "sha512-Bf52lnfvNxGPJPltiNO2tLBp3zC339KNlGMqOkW+dsvNikBhcVDK5kqU2lVX2FTPzuXUFX5WJDlsw//w3ZwoTw==",
       "dev": true,
       "requires": {
         "ansi-escapes": "^4.3.2",
@@ -41486,9 +40416,9 @@
       }
     },
     "tar-fs": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.2.tgz",
-      "integrity": "sha512-mLQ5iTTCv2tt3a4BwvD8QX1YFVBL/94/Nd+U2il38wt2+zaJSusp1VwJSNkBmB48FeTdOqptf1DAUIosXQBRrQ==",
+      "version": "3.0.3",
+      "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.3.tgz",
+      "integrity": "sha512-ZK36riGYnFI6LujIBfBRoDfeaaWUkStIFKwtPjnDWCKnsDE9kuQthG09aQjLjpzoRtVElEMZ/AIAURNb7N9mkA==",
       "dev": true,
       "requires": {
         "mkdirp-classic": "^0.5.2",
@@ -42909,25 +41839,6 @@
       "resolved": "https://registry.npmjs.org/web-worker/-/web-worker-1.2.0.tgz",
       "integrity": "sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA=="
     },
-    "webdriver": {
-      "version": "8.10.7",
-      "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.10.7.tgz",
-      "integrity": "sha512-pBy29S9e8IYKYHfS0gp91Jp9SUvXJQckJKJdj+VNLNL9toSFo10N7xRpv8W1f7HkniXrgESi9GHYNyc1J/5lLA==",
-      "dev": true,
-      "requires": {
-        "@types/node": "^20.1.0",
-        "@types/ws": "^8.5.3",
-        "@wdio/config": "8.10.7",
-        "@wdio/logger": "8.10.6",
-        "@wdio/protocols": "8.10.2",
-        "@wdio/types": "8.10.4",
-        "@wdio/utils": "8.10.7",
-        "deepmerge-ts": "^5.0.0",
-        "got": "^ 12.6.1",
-        "ky": "^0.33.0",
-        "ws": "^8.8.0"
-      }
-    },
     "webdriverio": {
       "version": "8.11.2",
       "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.11.2.tgz",
@@ -42977,48 +41888,6 @@
             "read-pkg-up": "^9.1.0"
           }
         },
-        "@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,
-          "requires": {
-            "chalk": "^5.1.2",
-            "loglevel": "^1.6.0",
-            "loglevel-plugin-prefix": "^0.8.4",
-            "strip-ansi": "^7.1.0"
-          }
-        },
-        "@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
-        },
-        "@wdio/utils": {
-          "version": "8.11.0",
-          "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.11.0.tgz",
-          "integrity": "sha512-XBl1zalk5UPu8QKZ7LZIA82Ad363fpNHZHP5uI5OxUFnk4ZPWgY9eCWpeD+4f9a0DS0w2Dro15E4PORNX84pIw==",
-          "dev": true,
-          "requires": {
-            "@wdio/logger": "8.11.0",
-            "@wdio/types": "8.10.4",
-            "import-meta-resolve": "^3.0.0",
-            "p-iteration": "^1.1.8"
-          }
-        },
-        "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
-        },
-        "chalk": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz",
-          "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==",
-          "dev": true
-        },
         "foreground-child": {
           "version": "3.1.1",
           "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
@@ -43069,15 +41938,6 @@
           "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
           "dev": true
         },
-        "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,
-          "requires": {
-            "ansi-regex": "^6.0.1"
-          }
-        },
         "webdriver": {
           "version": "8.11.1",
           "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.11.1.tgz",
@@ -43105,9 +41965,9 @@
       "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
     },
     "webpack": {
-      "version": "5.87.0",
-      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.87.0.tgz",
-      "integrity": "sha512-GOu1tNbQ7p1bDEoFRs2YPcfyGs8xq52yyPBZ3m2VGnXGtV9MxjrkABHm4V9Ia280OefsSLzvbVoXcfLxjKY/Iw==",
+      "version": "5.88.0",
+      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.0.tgz",
+      "integrity": "sha512-O3jDhG5e44qIBSi/P6KpcCcH7HD+nYIHVBhdWFxcLOcIGN8zGo5nqF3BjyNCxIh4p1vFdNnreZv2h2KkoAw3lw==",
       "dev": true,
       "requires": {
         "@types/eslint-scope": "^3.7.3",
diff --git a/src/extension/api/client.ts b/src/extension/api/client.ts
index 8145ccdc..331f6930 100644
--- a/src/extension/api/client.ts
+++ b/src/extension/api/client.ts
@@ -1,13 +1,29 @@
 import { ApolloClient, InMemoryCache, HttpLink } from '@apollo/client'
 import fetch from 'cross-fetch'
+import { setContext } from '@apollo/client/link/context'
 
 import { getRunmeApiUrl } from '../../utils/configuration'
 
-export function InitializeClient({ uri }: { uri: string } = { uri: '' }) {
-  const graphQlApiUrl = getRunmeApiUrl()
+export function InitializeClient({
+  uri,
+  runmeToken,
+}: {
+  uri?: string | undefined
+  runmeToken: string
+}) {
+  const authLink = setContext((_, { headers }) => {
+    return {
+      headers: {
+        ...headers,
+        authorization: runmeToken ? `Bearer ${runmeToken}` : '',
+      },
+    }
+  })
+  const link = new HttpLink({ fetch, uri: uri || `${getRunmeApiUrl()}/graphql` })
   const client = new ApolloClient({
     cache: new InMemoryCache(),
-    link: new HttpLink({ fetch, uri: uri || graphQlApiUrl }),
+    credentials: 'include',
+    link: authLink.concat(link),
   })
 
   return client
diff --git a/src/extension/languages.ts b/src/extension/languages.ts
index 1717ff36..955050d1 100644
--- a/src/extension/languages.ts
+++ b/src/extension/languages.ts
@@ -69,8 +69,8 @@ export default class Languages {
         true
       )
     )
-    // if it's tight at the top (< 1% variance) look for execs
-    while (pstdev < 0.01 && !LANGUAGES.get(top[0]?.languageId) && top.shift()) {
+    // if it's narrow at the top (< 5% variance) look for execs
+    while (pstdev < 0.05 && !LANGUAGES.get(top[0]?.languageId) && top.shift()) {
       if (top.length <= 0) {
         top = results
         break
diff --git a/src/extension/messages/cloudApiRequest/saveCellExecution.ts b/src/extension/messages/cloudApiRequest/saveCellExecution.ts
index 35795f70..022b85c1 100644
--- a/src/extension/messages/cloudApiRequest/saveCellExecution.ts
+++ b/src/extension/messages/cloudApiRequest/saveCellExecution.ts
@@ -1,10 +1,14 @@
-import { ClientMessages } from '../../../constants'
+import { authentication } from 'vscode'
+import { TelemetryReporter } from 'vscode-telemetry'
+
+import { AuthenticationProviders, ClientMessages } from '../../../constants'
 import { ClientMessage, IApiMessage } from '../../../types'
 import { InitializeClient } from '../../api/client'
 import { getCellByUuId } from '../../cell'
 import { getAnnotations, getTerminalByCell } from '../../utils'
 import { createCellExecutionQuery } from '../../api/grapql'
 import { postClientMessage } from '../../../utils/messaging'
+import { RunmeService } from '../../services/runme'
 type APIRequestMessage = IApiMessage<ClientMessage<ClientMessages.cloudApiRequest>>
 
 export default async function saveCellExecution(
@@ -13,6 +17,17 @@ export default async function saveCellExecution(
   const { messaging, message, editor } = requestMessage
 
   try {
+    const session = await authentication.getSession(
+      AuthenticationProviders.GitHub,
+      ['user:email'],
+      {
+        createIfNone: true,
+      }
+    )
+
+    if (!session) {
+      throw new Error('You must authenticate with your GitHub account')
+    }
     const cell = await getCellByUuId({ editor, uuid: message.output.uuid })
     if (!cell) {
       throw new Error('Cell not found')
@@ -30,8 +45,12 @@ export default async function saveCellExecution(
       : 0
     const annotations = getAnnotations(cell)
     delete annotations['runme.dev/uuid']
-
-    const graphClient = InitializeClient()
+    const runmeService = new RunmeService({ githubAccessToken: session.accessToken })
+    const runmeTokenResponse = await runmeService.getAccessToken()
+    if (!runmeTokenResponse) {
+      throw new Error('Unable to retrieve an access token')
+    }
+    const graphClient = InitializeClient({ runmeToken: runmeTokenResponse.token })
     const result = await graphClient.mutate({
       mutation: createCellExecutionQuery({
         ...message.output.data,
@@ -45,12 +64,13 @@ export default async function saveCellExecution(
         },
       }),
     })
-
+    TelemetryReporter.sendTelemetryEvent('runme-app-share')
     return postClientMessage(messaging, ClientMessages.cloudApiResponse, {
       data: result,
       uuid: message.output.uuid,
     })
   } catch (error) {
+    TelemetryReporter.sendTelemetryEvent('runme-app-error')
     return postClientMessage(messaging, ClientMessages.cloudApiResponse, {
       data: (error as any).message,
       uuid: message.output.uuid,
diff --git a/src/extension/serializer.ts b/src/extension/serializer.ts
index 3479ffee..06f40398 100644
--- a/src/extension/serializer.ts
+++ b/src/extension/serializer.ts
@@ -1,6 +1,4 @@
 import {
-  window,
-  commands,
   NotebookSerializer,
   ExtensionContext,
   Uri,
@@ -26,7 +24,7 @@ import { DeserializeRequest, SerializeRequest, Notebook } from './grpc/serialize
 import { initParserClient, ParserServiceClient } from './grpc/client'
 import Languages from './languages'
 import { PLATFORM_OS } from './constants'
-import { canEditFile, initWasm } from './utils'
+import { initWasm } from './utils'
 import RunmeServer from './server/runmeServer'
 import { Kernel } from './kernel'
 
@@ -128,8 +126,6 @@ export abstract class SerializerBase implements NotebookSerializer, Disposable {
     // eslint-disable-next-line @typescript-eslint/no-unused-vars
     token: CancellationToken
   ): Promise<Uint8Array> {
-    await this.preSaveCheck()
-
     const transformedCells = data.cells.map((cell) => {
       return {
         ...cell,
@@ -213,34 +209,6 @@ export abstract class SerializerBase implements NotebookSerializer, Disposable {
     return notebookData
   }
 
-  protected async preSaveCheck() {
-    if (!window.activeNotebookEditor) {
-      throw new Error("Could't save notebook as it is not active!")
-    }
-
-    if (!(await canEditFile(window.activeNotebookEditor.notebook))) {
-      const errorMessage =
-        'You are writing to a file that is not version controlled! ' +
-        "Runme's authoring features are in early stages and require hardening. " +
-        "We wouldn't want you to loose important data. Please version track your file first " +
-        'or disable this restriction in the VS Code settings.'
-      window.showErrorMessage(errorMessage, 'Open Runme Settings').then((openSettings) => {
-        if (openSettings) {
-          return commands.executeCommand(
-            'workbench.action.openSettings',
-            'runme.flags.disableSaveRestriction'
-          )
-        }
-      })
-      throw new Error('saving non version controlled notebooks is disabled by default.')
-    }
-
-    const err = await this.ready
-    if (err) {
-      throw err
-    }
-  }
-
   protected static revive(notebook: Serializer.Notebook) {
     return notebook.cells.reduce((accu, elem) => {
       let cell: NotebookCellData
diff --git a/src/extension/services/runme.ts b/src/extension/services/runme.ts
new file mode 100644
index 00000000..8a37ab23
--- /dev/null
+++ b/src/extension/services/runme.ts
@@ -0,0 +1,35 @@
+import fetch from 'cross-fetch'
+
+import { getRunmeApiUrl } from '../../utils/configuration'
+
+export interface IRunmeToken {
+  token: string
+}
+
+export class RunmeService {
+  protected githubAccessToken: string
+  constructor({ githubAccessToken }: { githubAccessToken: string }) {
+    this.githubAccessToken = githubAccessToken
+  }
+  async getAccessToken(): Promise<IRunmeToken | undefined> {
+    try {
+      const response = await fetch(`${getRunmeApiUrl()}/auth/vscode`, {
+        method: 'POST',
+        headers: {
+          'Content-Type': 'application/json',
+        },
+        body: JSON.stringify({
+          access_token: this.githubAccessToken,
+        }),
+      })
+      if (response.status >= 400) {
+        throw new Error('Failed to get an authorization token')
+      }
+      if (response.ok) {
+        return response.json()
+      }
+    } catch (error) {
+      throw new Error((error as any).message)
+    }
+  }
+}
diff --git a/src/extension/utils.ts b/src/extension/utils.ts
index fc0695e2..45b2cbc4 100644
--- a/src/extension/utils.ts
+++ b/src/extension/utils.ts
@@ -8,7 +8,6 @@ import vscode, {
   Uri,
   workspace,
   env,
-  NotebookDocument,
   NotebookCell,
   NotebookCellExecution,
   NotebookCellOutput,
@@ -292,40 +291,6 @@ export async function verifyCheckedInFile(filePath: string) {
   return isCheckedIn
 }
 
-export async function canEditFile(
-  notebook: NotebookDocument,
-  // for testing purposes only
-  verifyCheckedInFileFn = verifyCheckedInFile
-): Promise<boolean> {
-  const config = vscode.workspace.getConfiguration('runme.flags')
-  const disableSaveRestriction = config.get<boolean>('disableSaveRestriction')
-  const currentDocumentPath = notebook.uri.fsPath
-  const isNewFile = notebook.isUntitled && notebook.notebookType === Kernel.type
-
-  /**
-   * allow serializing files if:
-   */
-  if (
-    /**
-     * the user has disabled this restriction
-     */
-    disableSaveRestriction ||
-    /**
-     * the user just created a new file
-     */
-    isNewFile ||
-    /**
-     * the user works on a checked in file
-     */
-    !currentDocumentPath ||
-    (await verifyCheckedInFileFn(currentDocumentPath))
-  ) {
-    return true
-  }
-
-  return false
-}
-
 export async function initWasm(wasmUri: Uri) {
   const go = new globalThis.Go()
   const wasmFile = await workspace.fs.readFile(wasmUri)


Test patch:
diff --git a/tests/extension/languages.test.ts b/tests/extension/languages.test.ts
index 1841a7d4..7d27b640 100644
--- a/tests/extension/languages.test.ts
+++ b/tests/extension/languages.test.ts
@@ -3,18 +3,18 @@ import path from 'node:path'
 import { test, expect } from 'vitest'
 
 import Languages from '../../src/extension/languages'
-import { WasmLib } from '../../src/types'
+import { Serializer } from '../../src/types'
 
 import fixture from './fixtures/document.json'
 
 test('cells', () => {
   // todo(sebastian): tests legacy deserializer
-  expect((fixture as WasmLib.Notebook).cells).toBeTypeOf('object')
+  expect((fixture as Serializer.Notebook).cells).toBeTypeOf('object')
 })
 
 test('languages#run', async () => {
   const langs = new Languages(path.resolve(__dirname, '../..'))
-  const f = fixture as WasmLib.Notebook
+  const f = fixture as Serializer.Notebook
 
   const results = await Promise.all(
     f.cells!
@@ -48,7 +48,7 @@ test('languages#run', async () => {
 
 test('languages#biased', async () => {
   const langs = new Languages(path.resolve(__dirname, '../..'))
-  const f = fixture as WasmLib.Notebook
+  const f = fixture as Serializer.Notebook
 
   const biased = await Promise.all(
     f.cells!
@@ -62,7 +62,7 @@ test('languages#biased', async () => {
 
   expect(biased).toStrictEqual([
     ['bat', 'sh'],
-    ['ini', 'ini'],
+    ['ini', 'sh'],
     ['bat', 'sh'],
     ['bat', 'sh'],
     ['bat', 'sh'],
@@ -76,6 +76,6 @@ test('languages#biased', async () => {
     ['dart', 'sh'],
     ['sh', 'sh'],
     ['bat', 'sh'],
-    ['csv', 'sh'],
+    ['csv', 'sh']
   ])
 })
diff --git a/tests/extension/serializer.test.ts b/tests/extension/serializer.test.ts
index 1e99114d..e7ce4227 100644
--- a/tests/extension/serializer.test.ts
+++ b/tests/extension/serializer.test.ts
@@ -2,7 +2,6 @@ import { NotebookData, NotebookDocument, NotebookEdit, window, workspace } from
 import { expect, vi, it, describe, beforeEach } from 'vitest'
 
 import { SerializerBase, WasmSerializer } from '../../src/extension/serializer'
-import { canEditFile } from '../../src/extension/utils'
 import type { Kernel } from '../../src/extension/kernel'
 import { EventEmitter, Uri } from '../../__mocks__/vscode'
 import { Serializer } from '../../src/types'
@@ -44,7 +43,6 @@ vi.mock('../../src/extension/languages', () => ({
 }))
 
 vi.mock('../../src/extension/utils', () => ({
-    canEditFile: vi.fn().mockResolvedValue(false),
     initWasm: vi.fn()
 }))
 
@@ -163,34 +161,9 @@ describe('WasmSerializer', () => {
     }
 
     describe('serializeNotebook', () => {
-        it('fails when notebook is not active', async () => {
-            const s = new WasmSerializer(context, newKernel())
-            await expect(() => s.serializeNotebook({} as any, {} as any))
-                .rejects.toThrow(/not active/)
-        })
-
-        it('prevents saving if canEditFile returns false', async () => {
-            // @ts-ignore readonly
-            window.activeNotebookEditor = {} as any
-            const s = new WasmSerializer(context, newKernel())
-            await expect(() => s.serializeNotebook({} as any, {} as any))
-                .rejects.toThrow(/saving non version controlled notebooks is disabled/)
-        })
-
-        it('throws if wasm fails to laod', async () => {
-            // @ts-ignore readonly
-            window.activeNotebookEditor = {} as any
-            vi.mocked(canEditFile).mockResolvedValue(true)
-            const s = new WasmSerializer(context, newKernel())
-            // @ts-ignore readonly
-            s['ready'] = Promise.reject('ups')
-            await expect(() => s.serializeNotebook({} as any, {} as any)).rejects.toThrow(/ups/)
-        })
-
         it('uses Runme wasm to save the file', async () => {
             // @ts-ignore readonly
             window.activeNotebookEditor = {} as any
-            vi.mocked(canEditFile).mockResolvedValue(true)
             const s = new WasmSerializer(context, newKernel())
             // @ts-ignore readonly
             s['ready'] = Promise.resolve()
diff --git a/tests/extension/utils.test.ts b/tests/extension/utils.test.ts
index c606913f..f7114de5 100644
--- a/tests/extension/utils.test.ts
+++ b/tests/extension/utils.test.ts
@@ -8,7 +8,6 @@ import {
   getKey,
   getCmdShellSeq,
   normalizeLanguage,
-  canEditFile,
   getAnnotations,
   mapGitIgnoreToGlobFolders,
   hashDocumentUri,
@@ -212,45 +211,6 @@ suite('normalizeLanguage', () => {
   })
 })
 
-suite('canEditFile', () => {
-  const verifyCheckedInFile = vi.fn().mockResolvedValue(false)
-  const notebook: any = {
-    isUntitled: false,
-    notebookType: 'runme',
-    uri: { fsPath: '/foo/bar' }
-  }
-
-  beforeEach(() => {
-    vi.mocked(vscode.workspace.getConfiguration).mockReturnValue({
-      get: vi.fn().mockReturnValue(false)
-    } as any)
-  })
-
-  test('can not edit by default', async () => {
-    expect(await canEditFile(notebook, verifyCheckedInFile)).toBe(false)
-  })
-
-  test('can edit if ignore flag is enabled', async () => {
-    const notebookMock: any = JSON.parse(JSON.stringify(notebook))
-    vi.mocked(vscode.workspace.getConfiguration).mockReturnValue({
-      get: vi.fn().mockReturnValue(true)
-    } as any)
-    expect(await canEditFile(notebookMock, verifyCheckedInFile)).toBe(true)
-  })
-
-  test('can edit file if new', async () => {
-    const notebookMock: any = JSON.parse(JSON.stringify(notebook))
-    notebookMock.isUntitled = true
-    expect(await canEditFile(notebookMock, verifyCheckedInFile)).toBe(true)
-  })
-
-  test('can edit file if checked in', async () => {
-    const notebookMock: any = JSON.parse(JSON.stringify(notebook))
-    verifyCheckedInFile.mockResolvedValue(true)
-    expect(await canEditFile(notebookMock, verifyCheckedInFile)).toBe(true)
-  })
-})
-
 suite('mapGitIgnoreToGlobFolders', () => {
   test('map properly to glob patterns folders', () => {
     const gitIgnoreContents = `