diff --git a/src/ui/.eslintrc.json b/src/ui/.eslintrc.json index d8066bffa7a..acfae96255e 100644 --- a/src/ui/.eslintrc.json +++ b/src/ui/.eslintrc.json @@ -105,6 +105,15 @@ "jest/globals": true } }, + { + "files": [ + "cypress/**/*" + ], + "plugins": ["cypress"], + "env": { + "cypress/globals": true + } + }, { "files": ["./tools/licenses/*.js"], "env": { diff --git a/src/ui/.gitignore b/src/ui/.gitignore index cc76131605f..31e90d5ba7a 100644 --- a/src/ui/.gitignore +++ b/src/ui/.gitignore @@ -4,6 +4,12 @@ dist/* # Coverage results. coverage/ +# Cypress integration/e2e tests +cypress/downloads/ +cypress/screenshots/ +cypress/videos/ +cypress.env.json + # For Jenkins test results. junit.xml diff --git a/src/ui/.pnp.cjs b/src/ui/.pnp.cjs index 624b3bcc6b2..0b1e288e795 100755 --- a/src/ui/.pnp.cjs +++ b/src/ui/.pnp.cjs @@ -87,6 +87,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["concurrently", "npm:6.2.0"], ["cross-fetch", "npm:3.1.4"], ["css-loader", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:5.2.6"], + ["cypress", "npm:9.3.0"], ["d3", "npm:5.16.0"], ["d3-time-format", "npm:2.3.0"], ["date-fns", "npm:1.30.1"], @@ -97,6 +98,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["eslint-config-airbnb-typescript", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:16.1.0"], ["eslint-import-resolver-node", "npm:0.3.6"], ["eslint-import-resolver-typescript", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.5.0"], + ["eslint-plugin-cypress", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.12.1"], ["eslint-plugin-import", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.25.4"], ["eslint-plugin-jest", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:25.3.4"], ["eslint-plugin-react", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:7.28.0"], @@ -4246,6 +4248,44 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["@cypress/request", [ + ["npm:2.88.10", { + "packageLocation": "./.yarn/cache/@cypress-request-npm-2.88.10-44c588c8fc-69c3e3b332.zip/node_modules/@cypress/request/", + "packageDependencies": [ + ["@cypress/request", "npm:2.88.10"], + ["aws-sign2", "npm:0.7.0"], + ["aws4", "npm:1.11.0"], + ["caseless", "npm:0.12.0"], + ["combined-stream", "npm:1.0.8"], + ["extend", "npm:3.0.2"], + ["forever-agent", "npm:0.6.1"], + ["form-data", "npm:2.3.3"], + ["http-signature", "npm:1.3.6"], + ["is-typedarray", "npm:1.0.0"], + ["isstream", "npm:0.1.2"], + ["json-stringify-safe", "npm:5.0.1"], + ["mime-types", "npm:2.1.34"], + ["performance-now", "npm:2.1.0"], + ["qs", "npm:6.5.3"], + ["safe-buffer", "npm:5.2.1"], + ["tough-cookie", "npm:2.5.0"], + ["tunnel-agent", "npm:0.6.0"], + ["uuid", "npm:8.3.2"] + ], + "linkType": "HARD", + }] + ]], + ["@cypress/xvfb", [ + ["npm:1.2.4", { + "packageLocation": "./.yarn/cache/@cypress-xvfb-npm-1.2.4-396a3691f7-7bdcdaeb1b.zip/node_modules/@cypress/xvfb/", + "packageDependencies": [ + ["@cypress/xvfb", "npm:1.2.4"], + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], + ["lodash.once", "npm:4.1.1"] + ], + "linkType": "HARD", + }] + ]], ["@date-io/core", [ ["npm:2.11.0", { "packageLocation": "./.yarn/cache/@date-io-core-npm-2.11.0-b470c05080-ad26af280b.zip/node_modules/@date-io/core/", @@ -6254,6 +6294,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["concurrently", "npm:6.2.0"], ["cross-fetch", "npm:3.1.4"], ["css-loader", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:5.2.6"], + ["cypress", "npm:9.3.0"], ["d3", "npm:5.16.0"], ["d3-time-format", "npm:2.3.0"], ["date-fns", "npm:1.30.1"], @@ -6264,6 +6305,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["eslint-config-airbnb-typescript", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:16.1.0"], ["eslint-import-resolver-node", "npm:0.3.6"], ["eslint-import-resolver-typescript", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.5.0"], + ["eslint-plugin-cypress", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.12.1"], ["eslint-plugin-import", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.25.4"], ["eslint-plugin-jest", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:25.3.4"], ["eslint-plugin-react", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:7.28.0"], @@ -7180,6 +7222,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["@types/node", "npm:14.14.37"] ], "linkType": "HARD", + }], + ["npm:14.18.8", { + "packageLocation": "./.yarn/cache/@types-node-npm-14.18.8-369de1f62f-35c5102950.zip/node_modules/@types/node/", + "packageDependencies": [ + ["@types/node", "npm:14.18.8"] + ], + "linkType": "HARD", }] ]], ["@types/normalize-package-data", [ @@ -7363,6 +7412,24 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["@types/sinonjs__fake-timers", [ + ["npm:8.1.1", { + "packageLocation": "./.yarn/cache/@types-sinonjs__fake-timers-npm-8.1.1-95ac9b59b5-ca09d54d47.zip/node_modules/@types/sinonjs__fake-timers/", + "packageDependencies": [ + ["@types/sinonjs__fake-timers", "npm:8.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["@types/sizzle", [ + ["npm:2.3.3", { + "packageLocation": "./.yarn/cache/@types-sizzle-npm-2.3.3-9403924950-586a9fb1f6.zip/node_modules/@types/sizzle/", + "packageDependencies": [ + ["@types/sizzle", "npm:2.3.3"] + ], + "linkType": "HARD", + }] + ]], ["@types/stack-utils", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/@types-stack-utils-npm-2.0.0-8ded8461bc-b3fbae25b0.zip/node_modules/@types/stack-utils/", @@ -7417,6 +7484,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["@types/yauzl", [ + ["npm:2.9.2", { + "packageLocation": "./.yarn/cache/@types-yauzl-npm-2.9.2-30ac4b7918-dfb49abe82.zip/node_modules/@types/yauzl/", + "packageDependencies": [ + ["@types/yauzl", "npm:2.9.2"], + ["@types/node", "npm:14.14.37"] + ], + "linkType": "HARD", + }] + ]], ["@types/zen-observable", [ ["npm:0.8.2", { "packageLocation": "./.yarn/cache/@types-zen-observable-npm-0.8.2-a15378fb68-558959fc04.zip/node_modules/@types/zen-observable/", @@ -8802,6 +8879,25 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["asn1", [ + ["npm:0.2.6", { + "packageLocation": "./.yarn/cache/asn1-npm-0.2.6-bdd07356c4-39f2ae343b.zip/node_modules/asn1/", + "packageDependencies": [ + ["asn1", "npm:0.2.6"], + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["assert-plus", [ + ["npm:1.0.0", { + "packageLocation": "./.yarn/cache/assert-plus-npm-1.0.0-cac95ef098-19b4340cb8.zip/node_modules/assert-plus/", + "packageDependencies": [ + ["assert-plus", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], ["assets", [ ["link:./assets::locator=%40pixie-labs%2Fui%40workspace%3A.", { "packageLocation": "./assets/", @@ -8821,6 +8917,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["astral-regex", [ + ["npm:2.0.0", { + "packageLocation": "./.yarn/cache/astral-regex-npm-2.0.0-f30d866aab-876231688c.zip/node_modules/astral-regex/", + "packageDependencies": [ + ["astral-regex", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], ["async", [ ["npm:2.6.3", { "packageLocation": "./.yarn/cache/async-npm-2.6.3-2de4150248-5e5561ff8f.zip/node_modules/async/", @@ -8865,6 +8970,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["at-least-node", [ + ["npm:1.0.0", { + "packageLocation": "./.yarn/cache/at-least-node-npm-1.0.0-2b36e661fa-463e2f8e43.zip/node_modules/at-least-node/", + "packageDependencies": [ + ["at-least-node", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], ["atob", [ ["npm:2.1.2", { "packageLocation": "./.yarn/cache/atob-npm-2.1.2-bcb583261e-dfeeeb7009.zip/node_modules/atob/", @@ -8883,6 +8997,24 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["aws-sign2", [ + ["npm:0.7.0", { + "packageLocation": "./.yarn/cache/aws-sign2-npm-0.7.0-656c6cb84d-b148b0bb07.zip/node_modules/aws-sign2/", + "packageDependencies": [ + ["aws-sign2", "npm:0.7.0"] + ], + "linkType": "HARD", + }] + ]], + ["aws4", [ + ["npm:1.11.0", { + "packageLocation": "./.yarn/cache/aws4-npm-1.11.0-283476ad94-5a00d045fd.zip/node_modules/aws4/", + "packageDependencies": [ + ["aws4", "npm:1.11.0"] + ], + "linkType": "HARD", + }] + ]], ["axios", [ ["npm:0.21.4", { "packageLocation": "./.yarn/cache/axios-npm-0.21.4-e278873748-44245f24ac.zip/node_modules/axios/", @@ -9341,6 +9473,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["bcrypt-pbkdf", [ + ["npm:1.0.2", { + "packageLocation": "./.yarn/cache/bcrypt-pbkdf-npm-1.0.2-80db8b16ed-4edfc9fe7d.zip/node_modules/bcrypt-pbkdf/", + "packageDependencies": [ + ["bcrypt-pbkdf", "npm:1.0.2"], + ["tweetnacl", "npm:0.14.5"] + ], + "linkType": "HARD", + }] + ]], ["big.js", [ ["npm:5.2.2", { "packageLocation": "./.yarn/cache/big.js-npm-5.2.2-e147c30820-b89b6e8419.zip/node_modules/big.js/", @@ -9453,6 +9595,24 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["blob-util", [ + ["npm:2.0.2", { + "packageLocation": "./.yarn/cache/blob-util-npm-2.0.2-8026c830fe-d543e6b92e.zip/node_modules/blob-util/", + "packageDependencies": [ + ["blob-util", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["bluebird", [ + ["npm:3.7.2", { + "packageLocation": "./.yarn/cache/bluebird-npm-3.7.2-6a54136ee3-869417503c.zip/node_modules/bluebird/", + "packageDependencies": [ + ["bluebird", "npm:3.7.2"] + ], + "linkType": "HARD", + }] + ]], ["bmp-js", [ ["npm:0.1.0", { "packageLocation": "./.yarn/cache/bmp-js-npm-0.1.0-5c9f284ca3-2f6cf7eeab.zip/node_modules/bmp-js/", @@ -9784,6 +9944,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["cachedir", [ + ["npm:2.3.0", { + "packageLocation": "./.yarn/cache/cachedir-npm-2.3.0-640dc16bbb-ec90cb0f2e.zip/node_modules/cachedir/", + "packageDependencies": [ + ["cachedir", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], ["call-bind", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/call-bind-npm-1.0.2-c957124861-f8e31de9d1.zip/node_modules/call-bind/", @@ -9897,6 +10066,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["caseless", [ + ["npm:0.12.0", { + "packageLocation": "./.yarn/cache/caseless-npm-0.12.0-e83bc5df83-b43bd4c440.zip/node_modules/caseless/", + "packageDependencies": [ + ["caseless", "npm:0.12.0"] + ], + "linkType": "HARD", + }] + ]], ["caw", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/caw-npm-2.0.1-b39744e64f-8be9811b9b.zip/node_modules/caw/", @@ -9961,6 +10139,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["check-more-types", [ + ["npm:2.24.0", { + "packageLocation": "./.yarn/cache/check-more-types-npm-2.24.0-fa2e491b27-b09080ec34.zip/node_modules/check-more-types/", + "packageDependencies": [ + ["check-more-types", "npm:2.24.0"] + ], + "linkType": "HARD", + }] + ]], ["chevrotain", [ ["npm:9.1.0", { "packageLocation": "./.yarn/cache/chevrotain-npm-9.1.0-9280f9d77f-632d0d7c69.zip/node_modules/chevrotain/", @@ -10093,6 +10280,38 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["cli-cursor", [ + ["npm:3.1.0", { + "packageLocation": "./.yarn/cache/cli-cursor-npm-3.1.0-fee1e46b5e-2692784c6c.zip/node_modules/cli-cursor/", + "packageDependencies": [ + ["cli-cursor", "npm:3.1.0"], + ["restore-cursor", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["cli-table3", [ + ["npm:0.6.1", { + "packageLocation": "./.yarn/cache/cli-table3-npm-0.6.1-310df32004-956e175f8e.zip/node_modules/cli-table3/", + "packageDependencies": [ + ["cli-table3", "npm:0.6.1"], + ["colors", "npm:1.4.0"], + ["string-width", "npm:4.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["cli-truncate", [ + ["npm:2.1.0", { + "packageLocation": "./.yarn/cache/cli-truncate-npm-2.1.0-72184d3467-bf1e4e6195.zip/node_modules/cli-truncate/", + "packageDependencies": [ + ["cli-truncate", "npm:2.1.0"], + ["slice-ansi", "npm:3.0.0"], + ["string-width", "npm:4.2.2"] + ], + "linkType": "HARD", + }] + ]], ["client-oauth2", [ ["npm:4.3.3", { "packageLocation": "./.yarn/cache/client-oauth2-npm-4.3.3-22a7a253b8-ee3eb7ecf1.zip/node_modules/client-oauth2/", @@ -10339,6 +10558,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["colorette", "npm:1.2.2"] ], "linkType": "HARD", + }], + ["npm:2.0.16", { + "packageLocation": "./.yarn/cache/colorette-npm-2.0.16-7b996485d7-cd55596a3a.zip/node_modules/colorette/", + "packageDependencies": [ + ["colorette", "npm:2.0.16"] + ], + "linkType": "HARD", }] ]], ["colors", [ @@ -10375,6 +10601,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ], "linkType": "HARD", }], + ["npm:5.1.0", { + "packageLocation": "./.yarn/cache/commander-npm-5.1.0-7e939e7832-0b7fec1712.zip/node_modules/commander/", + "packageDependencies": [ + ["commander", "npm:5.1.0"] + ], + "linkType": "HARD", + }], ["npm:6.2.1", { "packageLocation": "./.yarn/cache/commander-npm-6.2.1-d5b635f237-d7090410c0.zip/node_modules/commander/", "packageDependencies": [ @@ -10390,6 +10623,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["common-tags", [ + ["npm:1.8.2", { + "packageLocation": "./.yarn/cache/common-tags-npm-1.8.2-2c30ba69b3-767a6255a8.zip/node_modules/common-tags/", + "packageDependencies": [ + ["common-tags", "npm:1.8.2"] + ], + "linkType": "HARD", + }] + ]], ["commondir", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/commondir-npm-1.0.1-291b790340-59715f2fc4.zip/node_modules/commondir/", @@ -10913,6 +11155,57 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["cypress", [ + ["npm:9.3.0", { + "packageLocation": "./.yarn/unplugged/cypress-npm-9.3.0-f9acca1595/node_modules/cypress/", + "packageDependencies": [ + ["cypress", "npm:9.3.0"], + ["@cypress/request", "npm:2.88.10"], + ["@cypress/xvfb", "npm:1.2.4"], + ["@types/node", "npm:14.18.8"], + ["@types/sinonjs__fake-timers", "npm:8.1.1"], + ["@types/sizzle", "npm:2.3.3"], + ["arch", "npm:2.2.0"], + ["blob-util", "npm:2.0.2"], + ["bluebird", "npm:3.7.2"], + ["buffer", "npm:5.7.1"], + ["cachedir", "npm:2.3.0"], + ["chalk", "npm:4.1.0"], + ["check-more-types", "npm:2.24.0"], + ["cli-cursor", "npm:3.1.0"], + ["cli-table3", "npm:0.6.1"], + ["commander", "npm:5.1.0"], + ["common-tags", "npm:1.8.2"], + ["dayjs", "npm:1.10.7"], + ["debug", "virtual:f9acca159544f70484cd076f30576145f960122dee249f6f0d14e23ca4c3b2e4c2f2b8a4f10bb5b0bdbb96c138adbe694aad3738bf4584cffe2381d3a92f54fb#npm:4.3.3"], + ["enquirer", "npm:2.3.6"], + ["eventemitter2", "npm:6.4.5"], + ["execa", "npm:4.1.0"], + ["executable", "npm:4.1.1"], + ["extract-zip", "npm:2.0.1"], + ["figures", "npm:3.2.0"], + ["fs-extra", "npm:9.1.0"], + ["getos", "npm:3.2.1"], + ["is-ci", "npm:3.0.1"], + ["is-installed-globally", "npm:0.4.0"], + ["lazy-ass", "npm:1.6.0"], + ["listr2", "virtual:f9acca159544f70484cd076f30576145f960122dee249f6f0d14e23ca4c3b2e4c2f2b8a4f10bb5b0bdbb96c138adbe694aad3738bf4584cffe2381d3a92f54fb#npm:3.14.0"], + ["lodash", "npm:4.17.21"], + ["log-symbols", "npm:4.1.0"], + ["minimist", "npm:1.2.5"], + ["ospath", "npm:1.2.2"], + ["pretty-bytes", "npm:5.6.0"], + ["proxy-from-env", "npm:1.0.0"], + ["request-progress", "npm:3.0.0"], + ["supports-color", "npm:8.1.1"], + ["tmp", "npm:0.2.1"], + ["untildify", "npm:4.0.0"], + ["url", "npm:0.11.0"], + ["yauzl", "npm:2.10.0"] + ], + "linkType": "HARD", + }] + ]], ["d3", [ ["npm:5.16.0", { "packageLocation": "./.yarn/cache/d3-npm-5.16.0-6221254ee6-1462789c42.zip/node_modules/d3/", @@ -11424,6 +11717,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["dashdash", [ + ["npm:1.14.1", { + "packageLocation": "./.yarn/cache/dashdash-npm-1.14.1-be8f10a286-3634c24957.zip/node_modules/dashdash/", + "packageDependencies": [ + ["dashdash", "npm:1.14.1"], + ["assert-plus", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], ["data-urls", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/data-urls-npm-2.0.0-2b80c32b82-97caf828aa.zip/node_modules/data-urls/", @@ -11452,6 +11755,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["dayjs", [ + ["npm:1.10.7", { + "packageLocation": "./.yarn/cache/dayjs-npm-1.10.7-34318a8e39-a0a4ca95ab.zip/node_modules/dayjs/", + "packageDependencies": [ + ["dayjs", "npm:1.10.7"] + ], + "linkType": "HARD", + }] + ]], ["debug", [ ["npm:2.6.9", { "packageLocation": "./.yarn/cache/debug-npm-2.6.9-7d4cb597dc-d2f51589ca.zip/node_modules/debug/", @@ -11502,6 +11814,20 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ], "linkType": "HARD", }], + ["virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7", { + "packageLocation": "./.yarn/__virtual__/debug-virtual-507f12afb6/0/cache/debug-npm-3.2.7-754e818c7a-b3d8c59407.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], + ["@types/supports-color", null], + ["ms", "npm:2.1.3"], + ["supports-color", null] + ], + "packagePeers": [ + "@types/supports-color", + "supports-color" + ], + "linkType": "HARD", + }], ["virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2", { "packageLocation": "./.yarn/__virtual__/debug-virtual-c8b34b81df/0/cache/debug-npm-4.3.2-f0148b6afe-820ea160e2.zip/node_modules/debug/", "packageDependencies": [ @@ -11558,13 +11884,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ], "linkType": "HARD", }], - ["virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7", { - "packageLocation": "./.yarn/__virtual__/debug-virtual-b810fb6338/0/cache/debug-npm-3.2.7-754e818c7a-b3d8c59407.zip/node_modules/debug/", + ["virtual:f9acca159544f70484cd076f30576145f960122dee249f6f0d14e23ca4c3b2e4c2f2b8a4f10bb5b0bdbb96c138adbe694aad3738bf4584cffe2381d3a92f54fb#npm:4.3.3", { + "packageLocation": "./.yarn/__virtual__/debug-virtual-d600515838/0/cache/debug-npm-4.3.3-710fd4cc7f-14472d56fe.zip/node_modules/debug/", "packageDependencies": [ - ["debug", "virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7"], + ["debug", "virtual:f9acca159544f70484cd076f30576145f960122dee249f6f0d14e23ca4c3b2e4c2f2b8a4f10bb5b0bdbb96c138adbe694aad3738bf4584cffe2381d3a92f54fb#npm:4.3.3"], ["@types/supports-color", null], - ["ms", "npm:2.1.3"], - ["supports-color", null] + ["ms", "npm:2.1.2"], + ["supports-color", "npm:8.1.1"] ], "packagePeers": [ "@types/supports-color", @@ -12150,6 +12476,17 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["ecc-jsbn", [ + ["npm:0.1.2", { + "packageLocation": "./.yarn/cache/ecc-jsbn-npm-0.1.2-85b7a7be89-22fef4b620.zip/node_modules/ecc-jsbn/", + "packageDependencies": [ + ["ecc-jsbn", "npm:0.1.2"], + ["jsbn", "npm:0.1.1"], + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], ["ee-first", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/ee-first-npm-1.1.1-33f8535b39-1b4cac778d.zip/node_modules/ee-first/", @@ -12807,7 +13144,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageLocation": "./.yarn/cache/eslint-import-resolver-node-npm-0.3.6-d9426786c6-6266733af1.zip/node_modules/eslint-import-resolver-node/", "packageDependencies": [ ["eslint-import-resolver-node", "npm:0.3.6"], - ["debug", "virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7"], + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], ["resolve", "patch:resolve@npm%3A1.20.0#~builtin::version=1.20.0&hash=07638b"] ], "linkType": "HARD", @@ -12849,12 +13186,35 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageLocation": "./.yarn/cache/eslint-module-utils-npm-2.7.2-eb43175cc1-3e6407461d.zip/node_modules/eslint-module-utils/", "packageDependencies": [ ["eslint-module-utils", "npm:2.7.2"], - ["debug", "virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7"], + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], ["find-up", "npm:2.1.0"] ], "linkType": "HARD", }] ]], + ["eslint-plugin-cypress", [ + ["npm:2.12.1", { + "packageLocation": "./.yarn/cache/eslint-plugin-cypress-npm-2.12.1-6681f582fa-1f1c36e149.zip/node_modules/eslint-plugin-cypress/", + "packageDependencies": [ + ["eslint-plugin-cypress", "npm:2.12.1"] + ], + "linkType": "SOFT", + }], + ["virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.12.1", { + "packageLocation": "./.yarn/__virtual__/eslint-plugin-cypress-virtual-02c4c4feb7/0/cache/eslint-plugin-cypress-npm-2.12.1-6681f582fa-1f1c36e149.zip/node_modules/eslint-plugin-cypress/", + "packageDependencies": [ + ["eslint-plugin-cypress", "virtual:6311d74c16404e62930c4d7ddf2432b83fba5a8a5fd14b35d13dedda522d7da5609bb48a366f2683d417946b3d3869a84044c8f340e07cd8bd784f9c6ffc2918#npm:2.12.1"], + ["@types/eslint", null], + ["eslint", "npm:8.6.0"], + ["globals", "npm:11.12.0"] + ], + "packagePeers": [ + "@types/eslint", + "eslint" + ], + "linkType": "HARD", + }] + ]], ["eslint-plugin-import", [ ["npm:2.25.4", { "packageLocation": "./.yarn/cache/eslint-plugin-import-npm-2.25.4-cd0cf8b05b-0af24f5c7c.zip/node_modules/eslint-plugin-import/", @@ -13136,6 +13496,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["eventemitter2", [ + ["npm:6.4.5", { + "packageLocation": "./.yarn/cache/eventemitter2-npm-6.4.5-6862f231f1-84504f9cf0.zip/node_modules/eventemitter2/", + "packageDependencies": [ + ["eventemitter2", "npm:6.4.5"] + ], + "linkType": "HARD", + }] + ]], ["eventemitter3", [ ["npm:4.0.7", { "packageLocation": "./.yarn/cache/eventemitter3-npm-4.0.7-7afcdd74ae-1875311c42.zip/node_modules/eventemitter3/", @@ -13230,6 +13599,22 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ], "linkType": "HARD", }], + ["npm:4.1.0", { + "packageLocation": "./.yarn/cache/execa-npm-4.1.0-cc675b4189-e30d298934.zip/node_modules/execa/", + "packageDependencies": [ + ["execa", "npm:4.1.0"], + ["cross-spawn", "npm:7.0.3"], + ["get-stream", "npm:5.2.0"], + ["human-signals", "npm:1.1.1"], + ["is-stream", "npm:2.0.0"], + ["merge-stream", "npm:2.0.0"], + ["npm-run-path", "npm:4.0.1"], + ["onetime", "npm:5.1.2"], + ["signal-exit", "npm:3.0.3"], + ["strip-final-newline", "npm:2.0.0"] + ], + "linkType": "HARD", + }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/execa-npm-5.0.0-4ee568fb49-a044367ebd.zip/node_modules/execa/", "packageDependencies": [ @@ -13384,6 +13769,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["extend", [ + ["npm:3.0.2", { + "packageLocation": "./.yarn/cache/extend-npm-3.0.2-e1ca07ac54-a50a8309ca.zip/node_modules/extend/", + "packageDependencies": [ + ["extend", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], ["extend-shallow", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/extend-shallow-npm-2.0.1-e6ef52b29c-8fb58d9d7a.zip/node_modules/extend-shallow/", @@ -13420,6 +13814,35 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["extract-zip", [ + ["npm:2.0.1", { + "packageLocation": "./.yarn/cache/extract-zip-npm-2.0.1-92a28e392b-8cbda9debd.zip/node_modules/extract-zip/", + "packageDependencies": [ + ["extract-zip", "npm:2.0.1"], + ["@types/yauzl", "npm:2.9.2"], + ["debug", "virtual:97196aaf15f8c74fdf1d67111385c00d8fdcce141e9f310c23cedfc5a744fa765ad8c4fae6bf79c6b7c30bc5050c9ee0596af35ec2d2687979be9b84b62ff7d6#npm:4.3.1"], + ["get-stream", "npm:5.2.0"], + ["yauzl", "npm:2.10.0"] + ], + "linkType": "HARD", + }] + ]], + ["extsprintf", [ + ["npm:1.3.0", { + "packageLocation": "./.yarn/cache/extsprintf-npm-1.3.0-61a92b324c-cee7a4a1e3.zip/node_modules/extsprintf/", + "packageDependencies": [ + ["extsprintf", "npm:1.3.0"] + ], + "linkType": "HARD", + }], + ["npm:1.4.1", { + "packageLocation": "./.yarn/cache/extsprintf-npm-1.4.1-140b2f27ab-a2f29b2419.zip/node_modules/extsprintf/", + "packageDependencies": [ + ["extsprintf", "npm:1.4.1"] + ], + "linkType": "HARD", + }] + ]], ["fast-deep-equal", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/fast-deep-equal-npm-2.0.1-9c01e08a62-b701835a87.zip/node_modules/fast-deep-equal/", @@ -13608,6 +14031,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["object-assign", "npm:4.1.1"] ], "linkType": "HARD", + }], + ["npm:3.2.0", { + "packageLocation": "./.yarn/cache/figures-npm-3.2.0-85d357e955-85a6ad29e9.zip/node_modules/figures/", + "packageDependencies": [ + ["figures", "npm:3.2.0"], + ["escape-string-regexp", "npm:1.0.5"] + ], + "linkType": "HARD", }] ]], ["file-entry-cache", [ @@ -13918,7 +14349,26 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["forever-agent", [ + ["npm:0.6.1", { + "packageLocation": "./.yarn/cache/forever-agent-npm-0.6.1-01dae53bf9-766ae6e220.zip/node_modules/forever-agent/", + "packageDependencies": [ + ["forever-agent", "npm:0.6.1"] + ], + "linkType": "HARD", + }] + ]], ["form-data", [ + ["npm:2.3.3", { + "packageLocation": "./.yarn/cache/form-data-npm-2.3.3-c016cc11c0-10c1780fa1.zip/node_modules/form-data/", + "packageDependencies": [ + ["form-data", "npm:2.3.3"], + ["asynckit", "npm:0.4.0"], + ["combined-stream", "npm:1.0.8"], + ["mime-types", "npm:2.1.30"] + ], + "linkType": "HARD", + }], ["npm:3.0.1", { "packageLocation": "./.yarn/cache/form-data-npm-3.0.1-d080d436e0-b019e8d35c.zip/node_modules/form-data/", "packageDependencies": [ @@ -13978,6 +14428,19 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["fs-extra", [ + ["npm:9.1.0", { + "packageLocation": "./.yarn/cache/fs-extra-npm-9.1.0-983c2ddb4c-ba71ba32e0.zip/node_modules/fs-extra/", + "packageDependencies": [ + ["fs-extra", "npm:9.1.0"], + ["at-least-node", "npm:1.0.0"], + ["graceful-fs", "npm:4.2.6"], + ["jsonfile", "npm:6.1.0"], + ["universalify", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], ["fs-minipass", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/fs-minipass-npm-2.1.0-501ef87306-1b8d128dae.zip/node_modules/fs-minipass/", @@ -14177,11 +14640,31 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], - ["get-value", [ - ["npm:2.0.6", { - "packageLocation": "./.yarn/cache/get-value-npm-2.0.6-03cd422e0a-5c3b99cb53.zip/node_modules/get-value/", + ["get-value", [ + ["npm:2.0.6", { + "packageLocation": "./.yarn/cache/get-value-npm-2.0.6-03cd422e0a-5c3b99cb53.zip/node_modules/get-value/", + "packageDependencies": [ + ["get-value", "npm:2.0.6"] + ], + "linkType": "HARD", + }] + ]], + ["getos", [ + ["npm:3.2.1", { + "packageLocation": "./.yarn/cache/getos-npm-3.2.1-620c03aa34-42fd78a66d.zip/node_modules/getos/", + "packageDependencies": [ + ["getos", "npm:3.2.1"], + ["async", "npm:3.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["getpass", [ + ["npm:0.1.7", { + "packageLocation": "./.yarn/cache/getpass-npm-0.1.7-519164a3be-ab18d55661.zip/node_modules/getpass/", "packageDependencies": [ - ["get-value", "npm:2.0.6"] + ["getpass", "npm:0.1.7"], + ["assert-plus", "npm:1.0.0"] ], "linkType": "HARD", }] @@ -14294,6 +14777,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["global-dirs", [ + ["npm:3.0.0", { + "packageLocation": "./.yarn/cache/global-dirs-npm-3.0.0-45faebeb68-953c17cf14.zip/node_modules/global-dirs/", + "packageDependencies": [ + ["global-dirs", "npm:3.0.0"], + ["ini", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], ["globals", [ ["npm:11.12.0", { "packageLocation": "./.yarn/cache/globals-npm-11.12.0-1fa7f41a6c-67051a45ec.zip/node_modules/globals/", @@ -14459,6 +14952,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["graceful-fs", "npm:4.2.6"] ], "linkType": "HARD", + }], + ["npm:4.2.9", { + "packageLocation": "./.yarn/cache/graceful-fs-npm-4.2.9-ee48e00aaa-68ea4e07ff.zip/node_modules/graceful-fs/", + "packageDependencies": [ + ["graceful-fs", "npm:4.2.9"] + ], + "linkType": "HARD", }] ]], ["grapheme-splitter", [ @@ -14947,6 +15447,18 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["http-signature", [ + ["npm:1.3.6", { + "packageLocation": "./.yarn/cache/http-signature-npm-1.3.6-5b2eff4373-10be2af476.zip/node_modules/http-signature/", + "packageDependencies": [ + ["http-signature", "npm:1.3.6"], + ["assert-plus", "npm:1.0.0"], + ["jsprim", "npm:2.0.2"], + ["sshpk", "npm:1.17.0"] + ], + "linkType": "HARD", + }] + ]], ["http2-wrapper", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/http2-wrapper-npm-1.0.3-5b58ade1df-74160b862e.zip/node_modules/http2-wrapper/", @@ -14970,6 +15482,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }] ]], ["human-signals", [ + ["npm:1.1.1", { + "packageLocation": "./.yarn/cache/human-signals-npm-1.1.1-616b2586c2-d587647c9e.zip/node_modules/human-signals/", + "packageDependencies": [ + ["human-signals", "npm:1.1.1"] + ], + "linkType": "HARD", + }], ["npm:2.1.0", { "packageLocation": "./.yarn/cache/human-signals-npm-2.1.0-f75815481d-b87fd89fce.zip/node_modules/human-signals/", "packageDependencies": [ @@ -15320,6 +15839,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["ini", "npm:1.3.8"] ], "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "./.yarn/cache/ini-npm-2.0.0-28f7426761-e7aadc5fb2.zip/node_modules/ini/", + "packageDependencies": [ + ["ini", "npm:2.0.0"] + ], + "linkType": "HARD", }] ]], ["internal-ip", [ @@ -15532,6 +16058,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["ci-info", "npm:2.0.0"] ], "linkType": "HARD", + }], + ["npm:3.0.1", { + "packageLocation": "./.yarn/cache/is-ci-npm-3.0.1-d9aea361e1-192c66dc78.zip/node_modules/is-ci/", + "packageDependencies": [ + ["is-ci", "npm:3.0.1"], + ["ci-info", "npm:3.2.0"] + ], + "linkType": "HARD", }] ]], ["is-core-module", [ @@ -15733,6 +16267,17 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["is-installed-globally", [ + ["npm:0.4.0", { + "packageLocation": "./.yarn/cache/is-installed-globally-npm-0.4.0-a30dd056c7-3359840d59.zip/node_modules/is-installed-globally/", + "packageDependencies": [ + ["is-installed-globally", "npm:0.4.0"], + ["global-dirs", "npm:3.0.0"], + ["is-path-inside", "npm:3.0.3"] + ], + "linkType": "HARD", + }] + ]], ["is-jpg", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/is-jpg-npm-2.0.0-742c41c013-3412b63197.zip/node_modules/is-jpg/", @@ -15831,6 +16376,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["path-is-inside", "npm:1.0.2"] ], "linkType": "HARD", + }], + ["npm:3.0.3", { + "packageLocation": "./.yarn/cache/is-path-inside-npm-3.0.3-2ea0ef44fd-abd50f0618.zip/node_modules/is-path-inside/", + "packageDependencies": [ + ["is-path-inside", "npm:3.0.3"] + ], + "linkType": "HARD", }] ]], ["is-plain-obj", [ @@ -15970,6 +16522,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["is-unicode-supported", [ + ["npm:0.1.0", { + "packageLocation": "./.yarn/cache/is-unicode-supported-npm-0.1.0-0833e1bbfb-a2aab86ee7.zip/node_modules/is-unicode-supported/", + "packageDependencies": [ + ["is-unicode-supported", "npm:0.1.0"] + ], + "linkType": "HARD", + }] + ]], ["is-utf8", [ ["npm:0.2.1", { "packageLocation": "./.yarn/cache/is-utf8-npm-0.2.1-46ab364e2f-167ccd2be8.zip/node_modules/is-utf8/", @@ -16049,6 +16610,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["isstream", [ + ["npm:0.1.2", { + "packageLocation": "./.yarn/cache/isstream-npm-0.1.2-8581c75385-1eb2fe63a7.zip/node_modules/isstream/", + "packageDependencies": [ + ["isstream", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], ["istanbul-lib-coverage", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/istanbul-lib-coverage-npm-3.0.0-654bb0146d-ea57c24288.zip/node_modules/istanbul-lib-coverage/", @@ -16829,6 +17399,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["jsbn", [ + ["npm:0.1.1", { + "packageLocation": "./.yarn/cache/jsbn-npm-0.1.1-0eb7132404-e5ff29c1b8.zip/node_modules/jsbn/", + "packageDependencies": [ + ["jsbn", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], ["jsdom", [ ["npm:16.7.0", { "packageLocation": "./.yarn/cache/jsdom-npm-16.7.0-216c5c4bf9-454b833718.zip/node_modules/jsdom/", @@ -16942,6 +17521,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["json-schema", [ + ["npm:0.4.0", { + "packageLocation": "./.yarn/cache/json-schema-npm-0.4.0-e776313070-66389434c3.zip/node_modules/json-schema/", + "packageDependencies": [ + ["json-schema", "npm:0.4.0"] + ], + "linkType": "HARD", + }] + ]], ["json-schema-traverse", [ ["npm:0.4.1", { "packageLocation": "./.yarn/cache/json-schema-traverse-npm-0.4.1-4759091693-7486074d3b.zip/node_modules/json-schema-traverse/", @@ -16976,6 +17564,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["json-stringify-safe", [ + ["npm:5.0.1", { + "packageLocation": "./.yarn/cache/json-stringify-safe-npm-5.0.1-064ddd6ab4-48ec0adad5.zip/node_modules/json-stringify-safe/", + "packageDependencies": [ + ["json-stringify-safe", "npm:5.0.1"] + ], + "linkType": "HARD", + }] + ]], ["json3", [ ["npm:3.3.3", { "packageLocation": "./.yarn/cache/json3-npm-3.3.3-be4baec3f1-55eda204a4.zip/node_modules/json3/", @@ -17003,6 +17600,17 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["jsonfile", [ + ["npm:6.1.0", { + "packageLocation": "./.yarn/cache/jsonfile-npm-6.1.0-20a4796cee-7af3b8e1ac.zip/node_modules/jsonfile/", + "packageDependencies": [ + ["jsonfile", "npm:6.1.0"], + ["graceful-fs", "npm:4.2.9"], + ["universalify", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], ["jsontoxml", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/jsontoxml-npm-1.0.1-2271184387-ec6e38d876.zip/node_modules/jsontoxml/", @@ -17012,6 +17620,19 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["jsprim", [ + ["npm:2.0.2", { + "packageLocation": "./.yarn/cache/jsprim-npm-2.0.2-8c40f3719c-d175f6b199.zip/node_modules/jsprim/", + "packageDependencies": [ + ["jsprim", "npm:2.0.2"], + ["assert-plus", "npm:1.0.0"], + ["extsprintf", "npm:1.3.0"], + ["json-schema", "npm:0.4.0"], + ["verror", "npm:1.10.0"] + ], + "linkType": "HARD", + }] + ]], ["jss", [ ["npm:10.8.2", { "packageLocation": "./.yarn/cache/jss-npm-10.8.2-7333184df9-b2647e4443.zip/node_modules/jss/", @@ -17255,6 +17876,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["lazy-ass", [ + ["npm:1.6.0", { + "packageLocation": "./.yarn/cache/lazy-ass-npm-1.6.0-5cda93b8cb-5a3ebb1791.zip/node_modules/lazy-ass/", + "packageDependencies": [ + ["lazy-ass", "npm:1.6.0"] + ], + "linkType": "HARD", + }] + ]], ["lazystream", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/lazystream-npm-1.0.0-b2ecb17b90-6cb9352a69.zip/node_modules/lazystream/", @@ -17300,7 +17930,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageDependencies": [ ["license-checker", "npm:25.0.1"], ["chalk", "npm:2.4.2"], - ["debug", "virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7"], + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], ["mkdirp", "npm:0.5.5"], ["nopt", "npm:4.0.3"], ["read-installed", "npm:4.0.3"], @@ -17322,6 +17952,36 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["listr2", [ + ["npm:3.14.0", { + "packageLocation": "./.yarn/cache/listr2-npm-3.14.0-446f504112-fdb8b2d6bd.zip/node_modules/listr2/", + "packageDependencies": [ + ["listr2", "npm:3.14.0"] + ], + "linkType": "SOFT", + }], + ["virtual:f9acca159544f70484cd076f30576145f960122dee249f6f0d14e23ca4c3b2e4c2f2b8a4f10bb5b0bdbb96c138adbe694aad3738bf4584cffe2381d3a92f54fb#npm:3.14.0", { + "packageLocation": "./.yarn/__virtual__/listr2-virtual-09149cbdda/0/cache/listr2-npm-3.14.0-446f504112-fdb8b2d6bd.zip/node_modules/listr2/", + "packageDependencies": [ + ["listr2", "virtual:f9acca159544f70484cd076f30576145f960122dee249f6f0d14e23ca4c3b2e4c2f2b8a4f10bb5b0bdbb96c138adbe694aad3738bf4584cffe2381d3a92f54fb#npm:3.14.0"], + ["@types/enquirer", null], + ["cli-truncate", "npm:2.1.0"], + ["colorette", "npm:2.0.16"], + ["enquirer", "npm:2.3.6"], + ["log-update", "npm:4.0.0"], + ["p-map", "npm:4.0.0"], + ["rfdc", "npm:1.3.0"], + ["rxjs", "npm:7.5.2"], + ["through", "npm:2.3.8"], + ["wrap-ansi", "npm:7.0.0"] + ], + "packagePeers": [ + "@types/enquirer", + "enquirer" + ], + "linkType": "HARD", + }] + ]], ["load-bmfont", [ ["npm:1.4.1", { "packageLocation": "./.yarn/cache/load-bmfont-npm-1.4.1-f3f8c0beeb-688d932fb0.zip/node_modules/load-bmfont/", @@ -17511,6 +18171,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["lodash.once", [ + ["npm:4.1.1", { + "packageLocation": "./.yarn/cache/lodash.once-npm-4.1.1-d8ba329ead-d768fa9f9b.zip/node_modules/lodash.once/", + "packageDependencies": [ + ["lodash.once", "npm:4.1.1"] + ], + "linkType": "HARD", + }] + ]], ["lodash.union", [ ["npm:4.6.0", { "packageLocation": "./.yarn/cache/lodash.union-npm-4.6.0-8c9e2d9292-1514dc6508.zip/node_modules/lodash.union/", @@ -17520,6 +18189,30 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["log-symbols", [ + ["npm:4.1.0", { + "packageLocation": "./.yarn/cache/log-symbols-npm-4.1.0-0a13492d8b-fce1497b31.zip/node_modules/log-symbols/", + "packageDependencies": [ + ["log-symbols", "npm:4.1.0"], + ["chalk", "npm:4.1.0"], + ["is-unicode-supported", "npm:0.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["log-update", [ + ["npm:4.0.0", { + "packageLocation": "./.yarn/cache/log-update-npm-4.0.0-9d0554261c-ae2f85bbab.zip/node_modules/log-update/", + "packageDependencies": [ + ["log-update", "npm:4.0.0"], + ["ansi-escapes", "npm:4.3.2"], + ["cli-cursor", "npm:3.1.0"], + ["slice-ansi", "npm:4.0.0"], + ["wrap-ansi", "npm:6.2.0"] + ], + "linkType": "HARD", + }] + ]], ["logalot", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/logalot-npm-2.1.0-5542ab78ae-6d3c8b25f9.zip/node_modules/logalot/", @@ -17906,6 +18599,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["mime-db", "npm:1.47.0"] ], "linkType": "HARD", + }], + ["npm:1.51.0", { + "packageLocation": "./.yarn/cache/mime-db-npm-1.51.0-d5e42b45ad-613b1ac9d6.zip/node_modules/mime-db/", + "packageDependencies": [ + ["mime-db", "npm:1.51.0"] + ], + "linkType": "HARD", }] ]], ["mime-types", [ @@ -17916,6 +18616,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["mime-db", "npm:1.47.0"] ], "linkType": "HARD", + }], + ["npm:2.1.34", { + "packageLocation": "./.yarn/cache/mime-types-npm-2.1.34-3cd0bb907c-67013de9e9.zip/node_modules/mime-types/", + "packageDependencies": [ + ["mime-types", "npm:2.1.34"], + ["mime-db", "npm:1.51.0"] + ], + "linkType": "HARD", }] ]], ["mimic-fn", [ @@ -19006,6 +19714,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["ospath", [ + ["npm:1.2.2", { + "packageLocation": "./.yarn/cache/ospath-npm-1.2.2-c8f45523a8-505f48a4f4.zip/node_modules/ospath/", + "packageDependencies": [ + ["ospath", "npm:1.2.2"] + ], + "linkType": "HARD", + }] + ]], ["ow", [ ["npm:0.13.2", { "packageLocation": "./.yarn/cache/ow-npm-0.13.2-8e78cf29aa-3b35c5c28f.zip/node_modules/ow/", @@ -19510,6 +20227,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["performance-now", [ + ["npm:2.1.0", { + "packageLocation": "./.yarn/cache/performance-now-npm-2.1.0-45e3ce7e49-534e641aa8.zip/node_modules/performance-now/", + "packageDependencies": [ + ["performance-now", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], ["phin", [ ["npm:2.9.3", { "packageLocation": "./.yarn/cache/phin-npm-2.9.3-8661be52b1-7e2abd7be7.zip/node_modules/phin/", @@ -19813,7 +20539,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageDependencies": [ ["portfinder", "npm:1.0.28"], ["async", "npm:2.6.3"], - ["debug", "virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7"], + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], ["mkdirp", "npm:0.5.5"] ], "linkType": "HARD", @@ -20225,6 +20951,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["proxy-from-env", [ + ["npm:1.0.0", { + "packageLocation": "./.yarn/cache/proxy-from-env-npm-1.0.0-679b82b4ec-292e28d1de.zip/node_modules/proxy-from-env/", + "packageDependencies": [ + ["proxy-from-env", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], ["prr", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/prr-npm-1.0.1-608d442761-3bca2db047.zip/node_modules/prr/", @@ -20289,6 +21024,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }] ]], ["qs", [ + ["npm:6.5.3", { + "packageLocation": "./.yarn/cache/qs-npm-6.5.3-90b2635484-6f20bf08ca.zip/node_modules/qs/", + "packageDependencies": [ + ["qs", "npm:6.5.3"] + ], + "linkType": "HARD", + }], ["npm:6.7.0", { "packageLocation": "./.yarn/cache/qs-npm-6.7.0-15161a344c-dfd5f6adef.zip/node_modules/qs/", "packageDependencies": [ @@ -21380,6 +22122,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["request-progress", [ + ["npm:3.0.0", { + "packageLocation": "./.yarn/cache/request-progress-npm-3.0.0-f79f1c9e67-6ea1761dcc.zip/node_modules/request-progress/", + "packageDependencies": [ + ["request-progress", "npm:3.0.0"], + ["throttleit", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], ["require-directory", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/require-directory-npm-2.1.1-8608aee50b-fb47e70bf0.zip/node_modules/require-directory/", @@ -21533,6 +22285,17 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["restore-cursor", [ + ["npm:3.1.0", { + "packageLocation": "./.yarn/cache/restore-cursor-npm-3.1.0-52c5a4c98f-f877dd8741.zip/node_modules/restore-cursor/", + "packageDependencies": [ + ["restore-cursor", "npm:3.1.0"], + ["onetime", "npm:5.1.2"], + ["signal-exit", "npm:3.0.3"] + ], + "linkType": "HARD", + }] + ]], ["ret", [ ["npm:0.1.15", { "packageLocation": "./.yarn/cache/ret-npm-0.1.15-0d3c19de76-d76a9159eb.zip/node_modules/ret/", @@ -21560,6 +22323,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["rfdc", [ + ["npm:1.3.0", { + "packageLocation": "./.yarn/cache/rfdc-npm-1.3.0-272f288ad8-fb2ba8512e.zip/node_modules/rfdc/", + "packageDependencies": [ + ["rfdc", "npm:1.3.0"] + ], + "linkType": "HARD", + }] + ]], ["rifm", [ ["npm:0.12.0", { "packageLocation": "./.yarn/cache/rifm-npm-0.12.0-b198b9bc6c-8ea4f820f3.zip/node_modules/rifm/", @@ -21636,6 +22408,14 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["tslib", "npm:1.14.1"] ], "linkType": "HARD", + }], + ["npm:7.5.2", { + "packageLocation": "./.yarn/cache/rxjs-npm-7.5.2-3e62ff62c6-daf1fe7289.zip/node_modules/rxjs/", + "packageDependencies": [ + ["rxjs", "npm:7.5.2"], + ["tslib", "npm:2.2.0"] + ], + "linkType": "HARD", }] ]], ["safe-buffer", [ @@ -22126,6 +22906,28 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["slice-ansi", [ + ["npm:3.0.0", { + "packageLocation": "./.yarn/cache/slice-ansi-npm-3.0.0-d9999864af-5ec6d022d1.zip/node_modules/slice-ansi/", + "packageDependencies": [ + ["slice-ansi", "npm:3.0.0"], + ["ansi-styles", "npm:4.3.0"], + ["astral-regex", "npm:2.0.0"], + ["is-fullwidth-code-point", "npm:3.0.0"] + ], + "linkType": "HARD", + }], + ["npm:4.0.0", { + "packageLocation": "./.yarn/cache/slice-ansi-npm-4.0.0-6eeca1d10e-4a82d7f085.zip/node_modules/slice-ansi/", + "packageDependencies": [ + ["slice-ansi", "npm:4.0.0"], + ["ansi-styles", "npm:4.3.0"], + ["astral-regex", "npm:2.0.0"], + ["is-fullwidth-code-point", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], ["slide", [ ["npm:1.1.6", { "packageLocation": "./.yarn/cache/slide-npm-1.1.6-14e4650dea-5768635d22.zip/node_modules/slide/", @@ -22200,7 +23002,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageLocation": "./.yarn/cache/sockjs-client-npm-1.5.1-8c51eedb04-ae963d6fd2.zip/node_modules/sockjs-client/", "packageDependencies": [ ["sockjs-client", "npm:1.5.1"], - ["debug", "virtual:d9426786c635bc4b52511d6cc4b56156f50d780a698c0e20fc6caf10d3be51cbf176e79cff882f4d42a23ff4d0f89fe94222849578214e7fbae0f2754c82af02#npm:3.2.7"], + ["debug", "virtual:396a3691f7b25accf085fe2fff1f56eb7540eff3f2e928a7572ca1de9b831ff8f22136404f236aaed35d90369918dfc34392844d0f822a310563f34746dfb015#npm:3.2.7"], ["eventsource", "npm:1.1.0"], ["faye-websocket", "npm:0.11.3"], ["inherits", "npm:2.0.4"], @@ -22505,6 +23307,24 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["sshpk", [ + ["npm:1.17.0", { + "packageLocation": "./.yarn/cache/sshpk-npm-1.17.0-95f17f597f-ba109f65c8.zip/node_modules/sshpk/", + "packageDependencies": [ + ["sshpk", "npm:1.17.0"], + ["asn1", "npm:0.2.6"], + ["assert-plus", "npm:1.0.0"], + ["bcrypt-pbkdf", "npm:1.0.2"], + ["dashdash", "npm:1.14.1"], + ["ecc-jsbn", "npm:0.1.2"], + ["getpass", "npm:0.1.7"], + ["jsbn", "npm:0.1.1"], + ["safer-buffer", "npm:2.1.2"], + ["tweetnacl", "npm:0.14.5"] + ], + "linkType": "HARD", + }] + ]], ["ssri", [ ["npm:8.0.1", { "packageLocation": "./.yarn/cache/ssri-npm-8.0.1-a369e72ce2-bc447f5af8.zip/node_modules/ssri/", @@ -23200,6 +24020,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["throttleit", [ + ["npm:1.0.0", { + "packageLocation": "./.yarn/cache/throttleit-npm-1.0.0-6cbcfe7b7b-1b2db4d245.zip/node_modules/throttleit/", + "packageDependencies": [ + ["throttleit", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], ["through", [ ["npm:2.3.8", { "packageLocation": "./.yarn/cache/through-npm-2.3.8-df5f72a16e-a38c3e0598.zip/node_modules/through/", @@ -23301,6 +24130,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["tmp", [ + ["npm:0.2.1", { + "packageLocation": "./.yarn/cache/tmp-npm-0.2.1-a9c8d9c0ca-8b12146541.zip/node_modules/tmp/", + "packageDependencies": [ + ["tmp", "npm:0.2.1"], + ["rimraf", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], ["tmpl", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/tmpl-npm-1.0.4-35b37c2875-72c9333504.zip/node_modules/tmpl/", @@ -23413,6 +24252,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }] ]], ["tough-cookie", [ + ["npm:2.5.0", { + "packageLocation": "./.yarn/cache/tough-cookie-npm-2.5.0-79a2fe43fe-16a8cd0902.zip/node_modules/tough-cookie/", + "packageDependencies": [ + ["tough-cookie", "npm:2.5.0"], + ["psl", "npm:1.8.0"], + ["punycode", "npm:2.1.1"] + ], + "linkType": "HARD", + }], ["npm:3.0.1", { "packageLocation": "./.yarn/cache/tough-cookie-npm-3.0.1-09a21f6bd7-796f6239bc.zip/node_modules/tough-cookie/", "packageDependencies": [ @@ -23637,6 +24485,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["tweetnacl", [ + ["npm:0.14.5", { + "packageLocation": "./.yarn/cache/tweetnacl-npm-0.14.5-a3f766c0d1-6061daba17.zip/node_modules/tweetnacl/", + "packageDependencies": [ + ["tweetnacl", "npm:0.14.5"] + ], + "linkType": "HARD", + }] + ]], ["typanion", [ ["npm:3.3.1", { "packageLocation": "./.yarn/cache/typanion-npm-3.3.1-ee9997c7cf-212d2beb55.zip/node_modules/typanion/", @@ -23898,6 +24755,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["universalify", "npm:0.1.2"] ], "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "./.yarn/cache/universalify-npm-2.0.0-03b8b418a8-2406a4edf4.zip/node_modules/universalify/", + "packageDependencies": [ + ["universalify", "npm:2.0.0"] + ], + "linkType": "HARD", }] ]], ["unpipe", [ @@ -23929,6 +24793,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["untildify", [ + ["npm:4.0.0", { + "packageLocation": "./.yarn/cache/untildify-npm-4.0.0-4a8b569825-39ced9c418.zip/node_modules/untildify/", + "packageDependencies": [ + ["untildify", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], ["upath", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/upath-npm-1.2.0-ca00ec3398-4c05c09479.zip/node_modules/upath/", @@ -24726,6 +25599,18 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["verror", [ + ["npm:1.10.0", { + "packageLocation": "./.yarn/cache/verror-npm-1.10.0-c3f839c579-c431df0bed.zip/node_modules/verror/", + "packageDependencies": [ + ["verror", "npm:1.10.0"], + ["assert-plus", "npm:1.0.0"], + ["core-util-is", "npm:1.0.2"], + ["extsprintf", "npm:1.4.1"] + ], + "linkType": "HARD", + }] + ]], ["vinyl", [ ["npm:2.2.1", { "packageLocation": "./.yarn/cache/vinyl-npm-2.2.1-6b14799ad3-1f663973f1.zip/node_modules/vinyl/", @@ -25313,6 +26198,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ], "linkType": "HARD", }], + ["npm:6.2.0", { + "packageLocation": "./.yarn/cache/wrap-ansi-npm-6.2.0-439a7246d8-6cd96a4101.zip/node_modules/wrap-ansi/", + "packageDependencies": [ + ["wrap-ansi", "npm:6.2.0"], + ["ansi-styles", "npm:4.3.0"], + ["string-width", "npm:4.2.2"], + ["strip-ansi", "npm:6.0.0"] + ], + "linkType": "HARD", + }], ["npm:7.0.0", { "packageLocation": "./.yarn/cache/wrap-ansi-npm-7.0.0-ad6e1a0554-a790b846fd.zip/node_modules/wrap-ansi/", "packageDependencies": [ diff --git a/src/ui/cypress.json b/src/ui/cypress.json new file mode 100644 index 00000000000..64316ab4169 --- /dev/null +++ b/src/ui/cypress.json @@ -0,0 +1,3 @@ +{ + "baseUrl": "https://dev.withpixie.dev" +} diff --git a/src/ui/cypress.template.env.json b/src/ui/cypress.template.env.json new file mode 100644 index 00000000000..e6c8a1ee7c3 --- /dev/null +++ b/src/ui/cypress.template.env.json @@ -0,0 +1,4 @@ +{ + "GOOGLE_SESSION_COOKIE_KEY": "default-session5", + "GOOGLE_SESSION_COOKIE": "" +} diff --git a/src/ui/cypress/README.md b/src/ui/cypress/README.md new file mode 100644 index 00000000000..11d6a448144 --- /dev/null +++ b/src/ui/cypress/README.md @@ -0,0 +1,22 @@ +# Running Pixie UI Integration Tests + +These tests use [Cypress][https://docs.cypress.io] to run integration tests in a browser. + +To run them, you need two things: +1. The base URL of a running instance of Pixie's UI. By default, this assumes `dev.withpixie.dev` which comes from the [self-host instructions](https://docs.px.dev/installing-pixie/install-guides/self-hosted-pixie). +2. The Pixie session cookie for a Google-specific login to the Pixie UI you pointed to. + To get this, load the UI, open the dev tools, and look for the `default-sessionSOME_NUMBER` cookie. That is what you'll use to set `CYPRESS_GOOGLE_SESSION_COOKIE`. + The name of that cookie will set `CYPRESS_GOOGLE_SESSION_COOKIE_KEY`. + +Then, run this command: +`CYPRESS_BASE_URL='https://dev.withpixie.dev' CYPRESS_GOOGLE_SESSION_COOKIE_KEY='default-sessionSOME_NUMBER' CYPRESS_GOOGLE_SESSION_COOKIE='paste-your-session-cookie-value-here' yarn cypress:open` + +You can use `... yarn cypress:run` instead if you want to run the tests immediately and headlessly. + +If you don't want to set these environment variables every time, you can override everything except the base URL in `cypress.env.json` (copy from `cypress.template.env.json`): +```json +{ + "GOOGLE_SESSION_COOKIE_KEY": "default-sessionSOME_NUMBER", + "GOOGLE_SESSION_COOKIE": "paste it here" +} +``` diff --git a/src/ui/cypress/fixtures/.gitkeep b/src/ui/cypress/fixtures/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/src/ui/cypress/integration/auth-flow/guards.spec.js b/src/ui/cypress/integration/auth-flow/guards.spec.js new file mode 100644 index 00000000000..cb5d17a50d2 --- /dev/null +++ b/src/ui/cypress/integration/auth-flow/guards.spec.js @@ -0,0 +1,59 @@ +/* + * Copyright 2018- The Pixie Authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +// Tests that authentication is enforced for routes that should do so. +// For example, most pages should redirect to `/login` if the user isn't authorized. +// However, some routes are accessible regardless, such as the auth routes themselves. +describe('Authentication guards', () => { + beforeEach(() => { + // TODO(nick): For later tests, this can be expensive (like refreshing on an expensive script). + // Can `cy.go` (with cy.visit in the before rather than beforeEach) work? + cy.visit('/'); + }); + + it('Loads at all', () => { + cy.get('div#root').should('exist'); + }); + + it('Redirects to login', () => { + cy.location('pathname').should('eq', '/auth/login'); + }); + + it('Can access email/password auth', () => { + const loginButtons = cy.get('.MuiBox-root > button'); + loginButtons.should('have.length', 2); + // TODO: We can't click the buttons (redirect leaves the domain under test, which Cypress doesn't work well with). + // We don't want to do that anyway; what we really want to do is verify our own callback flows with cy.request(). + // See src/ui/cypress/commands/login.command.js for more info. + }); + + describe('Logged in with a Google account', () => { + // Intercepts have to be set up before a test runs. + // Otherwise, the intercept isn't wired until all commands have queued. + before(() => { + cy.loginGoogle(); + }); + + it('Sees us as authenticated', () => { + cy.request({ + url: '/api/authorized', + failOnStatusCode: false, + }).its('status').should('eq', 200); + }); + }); +}); diff --git a/src/ui/cypress/plugins/.gitkeep b/src/ui/cypress/plugins/.gitkeep new file mode 100644 index 00000000000..e69de29bb2d diff --git a/src/ui/cypress/support/commands/index.js b/src/ui/cypress/support/commands/index.js new file mode 100644 index 00000000000..06d4f455fae --- /dev/null +++ b/src/ui/cypress/support/commands/index.js @@ -0,0 +1,19 @@ +/* + * Copyright 2018- The Pixie Authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +import './login.command'; diff --git a/src/ui/cypress/support/commands/login.command.js b/src/ui/cypress/support/commands/login.command.js new file mode 100644 index 00000000000..8d516895651 --- /dev/null +++ b/src/ui/cypress/support/commands/login.command.js @@ -0,0 +1,75 @@ +/* + * Copyright 2018- The Pixie Authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + + +// Note: this works, but relies on a real user's auth session cookies. +// For CI, we'll need test users and to be able to log in as them: +// https://docs.cypress.io/guides/testing-strategies/google-authentication#Setting-Google-app-credentials-in-Cypress +// https://docs.cypress.io/guides/testing-strategies/auth0-authentication +Cypress.Commands.add('loginGoogle', () => { + const GOOGLE_COOKIE_KEY = Cypress.env('GOOGLE_SESSION_COOKIE_KEY'); + + cy.setCookie('user-has-accepted-cookies', 'true'); + cy.setCookie(GOOGLE_COOKIE_KEY, Cypress.env('GOOGLE_SESSION_COOKIE')); + + // For Google auth, this is the only cookie needed to validate a session. + cy.getCookie(GOOGLE_COOKIE_KEY).should('have.property', 'value'); + + // Every request from here on out needs CSRF headers. + cy.intercept(`${Cypress.config().baseUrl}/api/**`, (req) => { + req.headers['x-csrf'] = 'undefined'; + req.headers.Referer = req.headers.origin; + req.continue(); + }); +}); + +// cy.intercept doesn't touch cy.request. +// We always need the CSRF headers even when unauthenticated, +// so we override the request method to always inject them. +// We would do cy.visit as well, but that doesn't need the same headers. +Cypress.Commands.overwrite('request', (originalFn, ...args) => { + const defaults = { + headers: { + 'x-csrf': 'undefined', + 'Referer': Cypress.config().baseUrl, + }, + }; + + // cy.request has several signatures; have to handle them all. + let options = {}; + if (typeof args[0] === 'object' && args[0] !== null) { + options = args[0]; + } else if (args.length === 1) { + [options.url] = args; + } else if (args.length === 2) { + [options.method, options.url] = args; + } else if (args.length === 3) { + [options.method, options.url, options.body] = args; + } + + return originalFn({ + ...defaults, + ...options, + ...{ + headers: { + ...defaults.headers, + ...options.headers, + }, + }, + }); +}); diff --git a/src/ui/cypress/support/index.js b/src/ui/cypress/support/index.js new file mode 100644 index 00000000000..9d25cb1e2fa --- /dev/null +++ b/src/ui/cypress/support/index.js @@ -0,0 +1,19 @@ +/* + * Copyright 2018- The Pixie Authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +import './commands'; diff --git a/src/ui/package.json b/src/ui/package.json index c08a23bc6bf..5f92c062af0 100644 --- a/src/ui/package.json +++ b/src/ui/package.json @@ -41,6 +41,7 @@ "compression-webpack-plugin": "^4.0.0", "concurrently": "^6.2.0", "css-loader": "^5.2.6", + "cypress": "^9.3.0", "esbuild": "^0.13.13", "esbuild-jest": "^0.5.0", "esbuild-loader": "^2.16.0", @@ -48,6 +49,7 @@ "eslint-config-airbnb-typescript": "^16.1.0", "eslint-import-resolver-node": "^0.3.6", "eslint-import-resolver-typescript": "^2.5.0", + "eslint-plugin-cypress": "^2.12.1", "eslint-plugin-import": "^2.25.4", "eslint-plugin-jest": "^25.3.4", "eslint-plugin-react": "^7.28.0", @@ -182,7 +184,9 @@ "coverage_ci": "jest --coverage --maxWorkers=4", "license_check": "yarn pnpify license-checker", "lint": "tsc --noEmit && eslint -c .eslintrc.json .", - "vgspec": "NODE_PATH=./src ts-node --compiler-options '{\"module\":\"commonjs\"}' src/utils/print-vgspec-cli.ts" + "vgspec": "NODE_PATH=./src ts-node --compiler-options '{\"module\":\"commonjs\"}' src/utils/print-vgspec-cli.ts", + "cypress:open": "cypress open", + "cypress:run": "cypress run" }, "resolutions": { "@types/react": "^17.0.2", diff --git a/src/ui/yarn.lock b/src/ui/yarn.lock index 1077a52e021..4d14078cb38 100644 --- a/src/ui/yarn.lock +++ b/src/ui/yarn.lock @@ -2351,6 +2351,42 @@ __metadata: languageName: node linkType: hard +"@cypress/request@npm:^2.88.10": + version: 2.88.10 + resolution: "@cypress/request@npm:2.88.10" + dependencies: + aws-sign2: ~0.7.0 + aws4: ^1.8.0 + caseless: ~0.12.0 + combined-stream: ~1.0.6 + extend: ~3.0.2 + forever-agent: ~0.6.1 + form-data: ~2.3.2 + http-signature: ~1.3.6 + is-typedarray: ~1.0.0 + isstream: ~0.1.2 + json-stringify-safe: ~5.0.1 + mime-types: ~2.1.19 + performance-now: ^2.1.0 + qs: ~6.5.2 + safe-buffer: ^5.1.2 + tough-cookie: ~2.5.0 + tunnel-agent: ^0.6.0 + uuid: ^8.3.2 + checksum: 69c3e3b332e9be4866a900f6bcca5d274d8cea6c99707fbcce061de8dbab11c9b1e39f4c017f6e83e6e682717781d4f6106fd6b7cf9546580fcfac353b6676cf + languageName: node + linkType: hard + +"@cypress/xvfb@npm:^1.2.4": + version: 1.2.4 + resolution: "@cypress/xvfb@npm:1.2.4" + dependencies: + debug: ^3.1.0 + lodash.once: ^4.1.1 + checksum: 7bdcdaeb1bb692ec9d9bf8ec52538aa0bead6764753f4a067a171a511807a43fab016f7285a56bef6a606c2467ff3f1365e1ad2d2d583b81beed849ee1573fd1 + languageName: node + linkType: hard + "@date-io/core@npm:^2.11.0": version: 2.11.0 resolution: "@date-io/core@npm:2.11.0" @@ -3664,6 +3700,7 @@ __metadata: concurrently: ^6.2.0 cross-fetch: ^3.1.4 css-loader: ^5.2.6 + cypress: ^9.3.0 d3: ^5.16.0 d3-time-format: ^2.2.3 date-fns: ^1.30.1 @@ -3674,6 +3711,7 @@ __metadata: eslint-config-airbnb-typescript: ^16.1.0 eslint-import-resolver-node: ^0.3.6 eslint-import-resolver-typescript: ^2.5.0 + eslint-plugin-cypress: ^2.12.1 eslint-plugin-import: ^2.25.4 eslint-plugin-jest: ^25.3.4 eslint-plugin-react: ^7.28.0 @@ -4454,6 +4492,13 @@ __metadata: languageName: node linkType: hard +"@types/node@npm:^14.14.31": + version: 14.18.8 + resolution: "@types/node@npm:14.18.8" + checksum: 35c510295085522e4b6691788b886e7453295922114ad02d7003f23444beb48e5258e804168c4ff45bc6349f2e6c7da643549bcbf53990f43816a2309c3db5bb + languageName: node + linkType: hard + "@types/normalize-package-data@npm:^2.4.0": version: 2.4.0 resolution: "@types/normalize-package-data@npm:2.4.0" @@ -4617,6 +4662,20 @@ __metadata: languageName: node linkType: hard +"@types/sinonjs__fake-timers@npm:8.1.1": + version: 8.1.1 + resolution: "@types/sinonjs__fake-timers@npm:8.1.1" + checksum: ca09d54d47091d87020824a73f026300fa06b17cd9f2f9b9387f28b549364b141ef194ee28db762f6588de71d8febcd17f753163cb7ea116b8387c18e80ebd5c + languageName: node + linkType: hard + +"@types/sizzle@npm:^2.3.2": + version: 2.3.3 + resolution: "@types/sizzle@npm:2.3.3" + checksum: 586a9fb1f6ff3e325e0f2cc1596a460615f0bc8a28f6e276ac9b509401039dd242fa8b34496d3a30c52f5b495873922d09a9e76c50c2ab2bcc70ba3fb9c4e160 + languageName: node + linkType: hard + "@types/stack-utils@npm:^2.0.0": version: 2.0.0 resolution: "@types/stack-utils@npm:2.0.0" @@ -4663,6 +4722,15 @@ __metadata: languageName: node linkType: hard +"@types/yauzl@npm:^2.9.1": + version: 2.9.2 + resolution: "@types/yauzl@npm:2.9.2" + dependencies: + "@types/node": "*" + checksum: dfb49abe82605615712fc694eaa4f7068fe30aa03f38c085e2c2e74408beaad30471d36da9654a811482ece2ea4405575fd99b19c0aa327ed2a9736b554bbf43 + languageName: node + linkType: hard + "@types/zen-observable@npm:^0.8.0": version: 0.8.2 resolution: "@types/zen-observable@npm:0.8.2" @@ -5349,7 +5417,7 @@ __metadata: languageName: node linkType: hard -"ansi-escapes@npm:^4.2.1": +"ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.0": version: 4.3.2 resolution: "ansi-escapes@npm:4.3.2" dependencies: @@ -5497,7 +5565,7 @@ __metadata: languageName: node linkType: hard -"arch@npm:^2.1.0": +"arch@npm:^2.1.0, arch@npm:^2.2.0": version: 2.2.0 resolution: "arch@npm:2.2.0" checksum: e21b7635029fe8e9cdd5a026f9a6c659103e63fff423834323cdf836a1bb240a72d0c39ca8c470f84643385cf581bd8eda2cad8bf493e27e54bd9783abe9101f @@ -5737,6 +5805,22 @@ __metadata: languageName: node linkType: hard +"asn1@npm:~0.2.3": + version: 0.2.6 + resolution: "asn1@npm:0.2.6" + dependencies: + safer-buffer: ~2.1.0 + checksum: 39f2ae343b03c15ad4f238ba561e626602a3de8d94ae536c46a4a93e69578826305366dc09fbb9b56aec39b4982a463682f259c38e59f6fa380cd72cd61e493d + languageName: node + linkType: hard + +"assert-plus@npm:1.0.0, assert-plus@npm:^1.0.0": + version: 1.0.0 + resolution: "assert-plus@npm:1.0.0" + checksum: 19b4340cb8f0e6a981c07225eacac0e9d52c2644c080198765d63398f0075f83bbc0c8e95474d54224e297555ad0d631c1dcd058adb1ddc2437b41a6b424ac64 + languageName: node + linkType: hard + "assets@link:./assets::locator=%40pixie-labs%2Fui%40workspace%3A.": version: 0.0.0-use.local resolution: "assets@link:./assets::locator=%40pixie-labs%2Fui%40workspace%3A." @@ -5750,6 +5834,13 @@ __metadata: languageName: node linkType: hard +"astral-regex@npm:^2.0.0": + version: 2.0.0 + resolution: "astral-regex@npm:2.0.0" + checksum: 876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 + languageName: node + linkType: hard + "async-each@npm:^1.0.1": version: 1.0.3 resolution: "async-each@npm:1.0.3" @@ -5787,6 +5878,13 @@ __metadata: languageName: node linkType: hard +"at-least-node@npm:^1.0.0": + version: 1.0.0 + resolution: "at-least-node@npm:1.0.0" + checksum: 463e2f8e43384f1afb54bc68485c436d7622acec08b6fad269b421cb1d29cebb5af751426793d0961ed243146fe4dc983402f6d5a51b720b277818dbf6f2e49e + languageName: node + linkType: hard + "atob@npm:^2.1.2": version: 2.1.2 resolution: "atob@npm:2.1.2" @@ -5803,6 +5901,20 @@ __metadata: languageName: node linkType: hard +"aws-sign2@npm:~0.7.0": + version: 0.7.0 + resolution: "aws-sign2@npm:0.7.0" + checksum: b148b0bb0778098ad8cf7e5fc619768bcb51236707ca1d3e5b49e41b171166d8be9fdc2ea2ae43d7decf02989d0aaa3a9c4caa6f320af95d684de9b548a71525 + languageName: node + linkType: hard + +"aws4@npm:^1.8.0": + version: 1.11.0 + resolution: "aws4@npm:1.11.0" + checksum: 5a00d045fd0385926d20ebebcfba5ec79d4482fe706f63c27b324d489a04c68edb0db99ed991e19eda09cb8c97dc2452059a34d97545cebf591d7a2b5a10999f + languageName: node + linkType: hard + "axios@npm:^0.21.4": version: 0.21.4 resolution: "axios@npm:0.21.4" @@ -6038,6 +6150,15 @@ __metadata: languageName: node linkType: hard +"bcrypt-pbkdf@npm:^1.0.0": + version: 1.0.2 + resolution: "bcrypt-pbkdf@npm:1.0.2" + dependencies: + tweetnacl: ^0.14.3 + checksum: 4edfc9fe7d07019609ccf797a2af28351736e9d012c8402a07120c4453a3b789a15f2ee1530dc49eee8f7eb9379331a8dd4b3766042b9e502f74a68e7f662291 + languageName: node + linkType: hard + "big.js@npm:^5.2.2": version: 5.2.2 resolution: "big.js@npm:5.2.2" @@ -6140,6 +6261,20 @@ __metadata: languageName: node linkType: hard +"blob-util@npm:^2.0.2": + version: 2.0.2 + resolution: "blob-util@npm:2.0.2" + checksum: d543e6b92e4ca715ca33c78e89a07a2290d43e5b2bc897d7ec588c5c7bbf59df93e45225ac0c9258aa6ce4320358990f99c9288f1c48280f8ec5d7a2e088d19b + languageName: node + linkType: hard + +"bluebird@npm:^3.7.2": + version: 3.7.2 + resolution: "bluebird@npm:3.7.2" + checksum: 869417503c722e7dc54ca46715f70e15f4d9c602a423a02c825570862d12935be59ed9c7ba34a9b31f186c017c23cac6b54e35446f8353059c101da73eac22ef + languageName: node + linkType: hard + "bmp-js@npm:^0.1.0": version: 0.1.0 resolution: "bmp-js@npm:0.1.0" @@ -6336,7 +6471,7 @@ __metadata: languageName: node linkType: hard -"buffer@npm:^5.2.0, buffer@npm:^5.2.1, buffer@npm:^5.5.0": +"buffer@npm:^5.2.0, buffer@npm:^5.2.1, buffer@npm:^5.5.0, buffer@npm:^5.6.0": version: 5.7.1 resolution: "buffer@npm:5.7.1" dependencies: @@ -6446,6 +6581,13 @@ __metadata: languageName: node linkType: hard +"cachedir@npm:^2.3.0": + version: 2.3.0 + resolution: "cachedir@npm:2.3.0" + checksum: ec90cb0f2e6336e266aa748dbadf3da9e0b20e843e43f1591acab7a3f1451337dc2f26cb9dd833ae8cfefeffeeb43ef5b5ff62782a685f4e3c2305dd98482fcb + languageName: node + linkType: hard + "call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": version: 1.0.2 resolution: "call-bind@npm:1.0.2" @@ -6546,6 +6688,13 @@ __metadata: languageName: node linkType: hard +"caseless@npm:~0.12.0": + version: 0.12.0 + resolution: "caseless@npm:0.12.0" + checksum: b43bd4c440aa1e8ee6baefee8063b4850fd0d7b378f6aabc796c9ec8cb26d27fb30b46885350777d9bd079c5256c0e1329ad0dc7c2817e0bb466810ebb353751 + languageName: node + linkType: hard + "caw@npm:^2.0.0, caw@npm:^2.0.1": version: 2.0.1 resolution: "caw@npm:2.0.1" @@ -6609,6 +6758,13 @@ __metadata: languageName: node linkType: hard +"check-more-types@npm:^2.24.0": + version: 2.24.0 + resolution: "check-more-types@npm:2.24.0" + checksum: b09080ec3404d20a4b0ead828994b2e5913236ef44ed3033a27062af0004cf7d2091fbde4b396bf13b7ce02fb018bc9960b48305e6ab2304cd82d73ed7a51ef4 + languageName: node + linkType: hard + "chevrotain@npm:^9.1.0": version: 9.1.0 resolution: "chevrotain@npm:9.1.0" @@ -6729,6 +6885,38 @@ __metadata: languageName: node linkType: hard +"cli-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "cli-cursor@npm:3.1.0" + dependencies: + restore-cursor: ^3.1.0 + checksum: 2692784c6cd2fd85cfdbd11f53aea73a463a6d64a77c3e098b2b4697a20443f430c220629e1ca3b195ea5ac4a97a74c2ee411f3807abf6df2b66211fec0c0a29 + languageName: node + linkType: hard + +"cli-table3@npm:~0.6.1": + version: 0.6.1 + resolution: "cli-table3@npm:0.6.1" + dependencies: + colors: 1.4.0 + string-width: ^4.2.0 + dependenciesMeta: + colors: + optional: true + checksum: 956e175f8eb019c26465b9f1e51121c08d8978e2aab04be7f8520ea8a4e67906fcbd8516dfb77e386ae3730ef0281aa21a65613dffbfa3d62969263252bd25a9 + languageName: node + linkType: hard + +"cli-truncate@npm:^2.1.0": + version: 2.1.0 + resolution: "cli-truncate@npm:2.1.0" + dependencies: + slice-ansi: ^3.0.0 + string-width: ^4.2.0 + checksum: bf1e4e6195392dc718bf9cd71f317b6300dc4a9191d052f31046b8773230ece4fa09458813bf0e3455a5e68c0690d2ea2c197d14a8b85a7b5e01c97f4b5feb5d + languageName: node + linkType: hard + "client-oauth2@npm:^4.3.3": version: 4.3.3 resolution: "client-oauth2@npm:4.3.3" @@ -6941,14 +7129,21 @@ __metadata: languageName: node linkType: hard -"colors@npm:^1.4.0": +"colorette@npm:^2.0.16": + version: 2.0.16 + resolution: "colorette@npm:2.0.16" + checksum: cd55596a3a2d1071c1a28eee7fd8a5387593ff1bd10a3e8d0a6221499311fe34a9f2b9272d77c391e0e003dcdc8934fb2f8d106e7ef1f7516f8060c901d41a27 + languageName: node + linkType: hard + +"colors@npm:1.4.0, colors@npm:^1.4.0": version: 1.4.0 resolution: "colors@npm:1.4.0" checksum: 98aa2c2418ad87dedf25d781be69dc5fc5908e279d9d30c34d8b702e586a0474605b3a189511482b9d5ed0d20c867515d22749537f7bc546256c6014f3ebdcec languageName: node linkType: hard -"combined-stream@npm:^1.0.8": +"combined-stream@npm:^1.0.6, combined-stream@npm:^1.0.8, combined-stream@npm:~1.0.6": version: 1.0.8 resolution: "combined-stream@npm:1.0.8" dependencies: @@ -6971,6 +7166,13 @@ __metadata: languageName: node linkType: hard +"commander@npm:^5.1.0": + version: 5.1.0 + resolution: "commander@npm:5.1.0" + checksum: 0b7fec1712fbcc6230fcb161d8d73b4730fa91a21dc089515489402ad78810547683f058e2a9835929c212fead1d6a6ade70db28bbb03edbc2829a9ab7d69447 + languageName: node + linkType: hard + "commander@npm:^6.2.0": version: 6.2.1 resolution: "commander@npm:6.2.1" @@ -6985,6 +7187,13 @@ __metadata: languageName: node linkType: hard +"common-tags@npm:^1.8.0": + version: 1.8.2 + resolution: "common-tags@npm:1.8.2" + checksum: 767a6255a84bbc47df49a60ab583053bb29a7d9687066a18500a516188a062c4e4cd52de341f22de0b07062e699b1b8fe3cfa1cb55b241cb9301aeb4f45b4dff + languageName: node + linkType: hard + "commondir@npm:^1.0.1": version: 1.0.1 resolution: "commondir@npm:1.0.1" @@ -7191,7 +7400,7 @@ __metadata: languageName: node linkType: hard -"core-util-is@npm:~1.0.0": +"core-util-is@npm:1.0.2, core-util-is@npm:~1.0.0": version: 1.0.2 resolution: "core-util-is@npm:1.0.2" checksum: 7a4c925b497a2c91421e25bf76d6d8190f0b2359a9200dbeed136e63b2931d6294d3b1893eda378883ed363cd950f44a12a401384c609839ea616befb7927dab @@ -7242,7 +7451,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:7.0.3, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:7.0.3, cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" dependencies: @@ -7437,6 +7646,58 @@ __metadata: languageName: node linkType: hard +"cypress@npm:^9.3.0": + version: 9.3.0 + resolution: "cypress@npm:9.3.0" + dependencies: + "@cypress/request": ^2.88.10 + "@cypress/xvfb": ^1.2.4 + "@types/node": ^14.14.31 + "@types/sinonjs__fake-timers": 8.1.1 + "@types/sizzle": ^2.3.2 + arch: ^2.2.0 + blob-util: ^2.0.2 + bluebird: ^3.7.2 + buffer: ^5.6.0 + cachedir: ^2.3.0 + chalk: ^4.1.0 + check-more-types: ^2.24.0 + cli-cursor: ^3.1.0 + cli-table3: ~0.6.1 + commander: ^5.1.0 + common-tags: ^1.8.0 + dayjs: ^1.10.4 + debug: ^4.3.2 + enquirer: ^2.3.6 + eventemitter2: ^6.4.3 + execa: 4.1.0 + executable: ^4.1.1 + extract-zip: 2.0.1 + figures: ^3.2.0 + fs-extra: ^9.1.0 + getos: ^3.2.1 + is-ci: ^3.0.0 + is-installed-globally: ~0.4.0 + lazy-ass: ^1.6.0 + listr2: ^3.8.3 + lodash: ^4.17.21 + log-symbols: ^4.0.0 + minimist: ^1.2.5 + ospath: ^1.2.2 + pretty-bytes: ^5.6.0 + proxy-from-env: 1.0.0 + request-progress: ^3.0.0 + supports-color: ^8.1.1 + tmp: ~0.2.1 + untildify: ^4.0.0 + url: ^0.11.0 + yauzl: ^2.10.0 + bin: + cypress: bin/cypress + checksum: a40009b3dcb4c269f7d935b6c5a9c77feab1bb96e79d59684f153a3a53a1c059af60f5ca117438afb3812006c8914b8890d05541621dce494dfae141217a99ce + languageName: node + linkType: hard + "d3-array@npm:1 - 2, d3-array@npm:>=2.5, d3-array@npm:^2.3.0, d3-array@npm:^2.7.1": version: 2.12.1 resolution: "d3-array@npm:2.12.1" @@ -7932,6 +8193,15 @@ __metadata: languageName: node linkType: hard +"dashdash@npm:^1.12.0": + version: 1.14.1 + resolution: "dashdash@npm:1.14.1" + dependencies: + assert-plus: ^1.0.0 + checksum: 3634c249570f7f34e3d34f866c93f866c5b417f0dd616275decae08147dcdf8fccfaa5947380ccfb0473998ea3a8057c0b4cd90c875740ee685d0624b2983598 + languageName: node + linkType: hard + "data-urls@npm:^2.0.0": version: 2.0.0 resolution: "data-urls@npm:2.0.0" @@ -7957,6 +8227,13 @@ __metadata: languageName: node linkType: hard +"dayjs@npm:^1.10.4": + version: 1.10.7 + resolution: "dayjs@npm:1.10.7" + checksum: a0a4ca95abaa03d0702161dc2c35d16121188e342f5052b9c61cdf784dab68af766f477c04f87f71c6af666fd4d13db9b9853b87265850d6093b7b04e1bb1cd7 + languageName: node + linkType: hard + "debug@npm:2.6.9, debug@npm:^2.2.0, debug@npm:^2.3.3, debug@npm:^2.6.9": version: 2.6.9 resolution: "debug@npm:2.6.9" @@ -8522,6 +8799,16 @@ __metadata: languageName: node linkType: hard +"ecc-jsbn@npm:~0.1.1": + version: 0.1.2 + resolution: "ecc-jsbn@npm:0.1.2" + dependencies: + jsbn: ~0.1.0 + safer-buffer: ^2.1.0 + checksum: 22fef4b6203e5f31d425f5b711eb389e4c6c2723402e389af394f8411b76a488fa414d309d866e2b577ce3e8462d344205545c88a8143cc21752a5172818888a + languageName: node + linkType: hard + "ee-first@npm:1.1.1": version: 1.1.1 resolution: "ee-first@npm:1.1.1" @@ -9086,6 +9373,17 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-cypress@npm:^2.12.1": + version: 2.12.1 + resolution: "eslint-plugin-cypress@npm:2.12.1" + dependencies: + globals: ^11.12.0 + peerDependencies: + eslint: ">= 3.2.1" + checksum: 1f1c36e149304e9a6f58e2292a761abad58274da33b3a48b24ad55ad20cbce3ac7467321f2b6fcb052f9563c89f67004de4766eba2e2bdbcb010a6a0666989cf + languageName: node + linkType: hard + "eslint-plugin-import@npm:^2.25.4": version: 2.25.4 resolution: "eslint-plugin-import@npm:2.25.4" @@ -9340,6 +9638,13 @@ __metadata: languageName: node linkType: hard +"eventemitter2@npm:^6.4.3": + version: 6.4.5 + resolution: "eventemitter2@npm:6.4.5" + checksum: 84504f9cf0cc30205cdd46783fe9df3733435e5097f13070b678023110b5ef07847651808ae280cd94c42cd5976880211c7a40321a8ff8fa56f7c5f9c5c11960 + languageName: node + linkType: hard + "eventemitter3@npm:^4.0.0, eventemitter3@npm:^4.0.4": version: 4.0.7 resolution: "eventemitter3@npm:4.0.7" @@ -9383,6 +9688,23 @@ __metadata: languageName: node linkType: hard +"execa@npm:4.1.0": + version: 4.1.0 + resolution: "execa@npm:4.1.0" + dependencies: + cross-spawn: ^7.0.0 + get-stream: ^5.0.0 + human-signals: ^1.1.1 + is-stream: ^2.0.0 + merge-stream: ^2.0.0 + npm-run-path: ^4.0.0 + onetime: ^5.1.0 + signal-exit: ^3.0.2 + strip-final-newline: ^2.0.0 + checksum: e30d298934d9c52f90f3847704fd8224e849a081ab2b517bbc02f5f7732c24e56a21f14cb96a08256deffeb2d12b2b7cb7e2b014a12fb36f8d3357e06417ed55 + languageName: node + linkType: hard + "execa@npm:^0.10.0": version: 0.10.0 resolution: "execa@npm:0.10.0" @@ -9445,7 +9767,7 @@ __metadata: languageName: node linkType: hard -"executable@npm:^4.1.0": +"executable@npm:^4.1.0, executable@npm:^4.1.1": version: 4.1.1 resolution: "executable@npm:4.1.1" dependencies: @@ -9587,6 +9909,13 @@ __metadata: languageName: node linkType: hard +"extend@npm:~3.0.2": + version: 3.0.2 + resolution: "extend@npm:3.0.2" + checksum: a50a8309ca65ea5d426382ff09f33586527882cf532931cb08ca786ea3146c0553310bda688710ff61d7668eba9f96b923fe1420cdf56a2c3eaf30fcab87b515 + languageName: node + linkType: hard + "extglob@npm:^2.0.4": version: 2.0.4 resolution: "extglob@npm:2.0.4" @@ -9603,6 +9932,37 @@ __metadata: languageName: node linkType: hard +"extract-zip@npm:2.0.1": + version: 2.0.1 + resolution: "extract-zip@npm:2.0.1" + dependencies: + "@types/yauzl": ^2.9.1 + debug: ^4.1.1 + get-stream: ^5.1.0 + yauzl: ^2.10.0 + dependenciesMeta: + "@types/yauzl": + optional: true + bin: + extract-zip: cli.js + checksum: 8cbda9debdd6d6980819cc69734d874ddd71051c9fe5bde1ef307ebcedfe949ba57b004894b585f758b7c9eeeea0e3d87f2dda89b7d25320459c2c9643ebb635 + languageName: node + linkType: hard + +"extsprintf@npm:1.3.0": + version: 1.3.0 + resolution: "extsprintf@npm:1.3.0" + checksum: cee7a4a1e34cffeeec18559109de92c27517e5641991ec6bab849aa64e3081022903dd53084f2080d0d2530803aa5ee84f1e9de642c365452f9e67be8f958ce2 + languageName: node + linkType: hard + +"extsprintf@npm:^1.2.0": + version: 1.4.1 + resolution: "extsprintf@npm:1.4.1" + checksum: a2f29b241914a8d2bad64363de684821b6b1609d06ae68d5b539e4de6b28659715b5bea94a7265201603713b7027d35399d10b0548f09071c5513e65e8323d33 + languageName: node + linkType: hard + "fast-deep-equal@npm:^2.0.1": version: 2.0.1 resolution: "fast-deep-equal@npm:2.0.1" @@ -9767,6 +10127,15 @@ __metadata: languageName: node linkType: hard +"figures@npm:^3.2.0": + version: 3.2.0 + resolution: "figures@npm:3.2.0" + dependencies: + escape-string-regexp: ^1.0.5 + checksum: 85a6ad29e9aca80b49b817e7c89ecc4716ff14e3779d9835af554db91bac41c0f289c418923519392a1e582b4d10482ad282021330cd045bb7b80c84152f2a2b + languageName: node + linkType: hard + "file-entry-cache@npm:^6.0.1": version: 6.0.1 resolution: "file-entry-cache@npm:6.0.1" @@ -10023,6 +10392,13 @@ __metadata: languageName: node linkType: hard +"forever-agent@npm:~0.6.1": + version: 0.6.1 + resolution: "forever-agent@npm:0.6.1" + checksum: 766ae6e220f5fe23676bb4c6a99387cec5b7b62ceb99e10923376e27bfea72f3c3aeec2ba5f45f3f7ba65d6616965aa7c20b15002b6860833bb6e394dea546a8 + languageName: node + linkType: hard + "form-data@npm:^3.0.0": version: 3.0.1 resolution: "form-data@npm:3.0.1" @@ -10034,6 +10410,17 @@ __metadata: languageName: node linkType: hard +"form-data@npm:~2.3.2": + version: 2.3.3 + resolution: "form-data@npm:2.3.3" + dependencies: + asynckit: ^0.4.0 + combined-stream: ^1.0.6 + mime-types: ^2.1.12 + checksum: 10c1780fa13dbe1ff3100114c2ce1f9307f8be10b14bf16e103815356ff567b6be39d70fc4a40f8990b9660012dc24b0f5e1dde1b6426166eb23a445ba068ca3 + languageName: node + linkType: hard + "forwarded@npm:~0.1.2": version: 0.1.2 resolution: "forwarded@npm:0.1.2" @@ -10074,6 +10461,18 @@ __metadata: languageName: node linkType: hard +"fs-extra@npm:^9.1.0": + version: 9.1.0 + resolution: "fs-extra@npm:9.1.0" + dependencies: + at-least-node: ^1.0.0 + graceful-fs: ^4.2.0 + jsonfile: ^6.0.1 + universalify: ^2.0.0 + checksum: ba71ba32e0faa74ab931b7a0031d1523c66a73e225de7426e275e238e312d07313d2da2d33e34a52aa406c8763ade5712eb3ec9ba4d9edce652bcacdc29e6b20 + languageName: node + linkType: hard + "fs-minipass@npm:^2.0.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -10252,7 +10651,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"get-stream@npm:^5.1.0": +"get-stream@npm:^5.0.0, get-stream@npm:^5.1.0": version: 5.2.0 resolution: "get-stream@npm:5.2.0" dependencies: @@ -10285,6 +10684,24 @@ fsevents@^1.2.7: languageName: node linkType: hard +"getos@npm:^3.2.1": + version: 3.2.1 + resolution: "getos@npm:3.2.1" + dependencies: + async: ^3.2.0 + checksum: 42fd78a66d47cebd3e09de5566cc0044e034b08f4a000a310dbd89a77b02c65d8f4002554bfa495ea5bdc4fa9d515f5ac785a7cc474ba45383cc697f865eeaf1 + languageName: node + linkType: hard + +"getpass@npm:^0.1.1": + version: 0.1.7 + resolution: "getpass@npm:0.1.7" + dependencies: + assert-plus: ^1.0.0 + checksum: ab18d55661db264e3eac6012c2d3daeafaab7a501c035ae0ccb193c3c23e9849c6e29b6ac762b9c2adae460266f925d55a3a2a3a3c8b94be2f222df94d70c046 + languageName: node + linkType: hard + "gifsicle@npm:^4.0.0": version: 4.0.1 resolution: "gifsicle@npm:4.0.1" @@ -10379,6 +10796,15 @@ fsevents@^1.2.7: languageName: node linkType: hard +"global-dirs@npm:^3.0.0": + version: 3.0.0 + resolution: "global-dirs@npm:3.0.0" + dependencies: + ini: 2.0.0 + checksum: 953c17cf14bf6ee0e2100ae82a0d779934eed8a3ec5c94a7a4f37c5b3b592c31ea015fb9a15cf32484de13c79f4a814f3015152f3e1d65976cfbe47c1bfe4a88 + languageName: node + linkType: hard + "global@npm:^4.3.0, global@npm:~4.4.0": version: 4.4.0 resolution: "global@npm:4.4.0" @@ -10389,7 +10815,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"globals@npm:^11.1.0": +"globals@npm:^11.1.0, globals@npm:^11.12.0": version: 11.12.0 resolution: "globals@npm:11.12.0" checksum: 67051a45eca3db904aee189dfc7cd53c20c7d881679c93f6146ddd4c9f4ab2268e68a919df740d39c71f4445d2b38ee360fc234428baea1dbdfe68bbcb46979e @@ -10551,6 +10977,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"graceful-fs@npm:^4.1.6": + version: 4.2.9 + resolution: "graceful-fs@npm:4.2.9" + checksum: 68ea4e07ff2c041ada184f9278b830375f8e0b75154e3f080af6b70f66172fabb4108d19b3863a96b53fc068a310b9b6493d86d1291acc5f3861eb4b79d26ad6 + languageName: node + linkType: hard + "grapheme-splitter@npm:^1.0.4": version: 1.0.4 resolution: "grapheme-splitter@npm:1.0.4" @@ -10958,6 +11391,17 @@ fsevents@^1.2.7: languageName: node linkType: hard +"http-signature@npm:~1.3.6": + version: 1.3.6 + resolution: "http-signature@npm:1.3.6" + dependencies: + assert-plus: ^1.0.0 + jsprim: ^2.0.2 + sshpk: ^1.14.1 + checksum: 10be2af4764e71fee0281392937050201ee576ac755c543f570d6d87134ce5e858663fe999a7adb3e4e368e1e356d0d7fec6b9542295b875726ff615188e7a0c + languageName: node + linkType: hard + "http2-wrapper@npm:^1.0.0-beta.5.2": version: 1.0.3 resolution: "http2-wrapper@npm:1.0.3" @@ -10978,6 +11422,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"human-signals@npm:^1.1.1": + version: 1.1.1 + resolution: "human-signals@npm:1.1.1" + checksum: d587647c9e8ec24e02821b6be7de5a0fc37f591f6c4e319b3054b43fd4c35a70a94c46fc74d8c1a43c47fde157d23acd7421f375e1c1365b09a16835b8300205 + languageName: node + linkType: hard + "human-signals@npm:^2.1.0": version: 2.1.0 resolution: "human-signals@npm:2.1.0" @@ -11297,6 +11748,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"ini@npm:2.0.0": + version: 2.0.0 + resolution: "ini@npm:2.0.0" + checksum: e7aadc5fb2e4aefc666d74ee2160c073995a4061556b1b5b4241ecb19ad609243b9cceafe91bae49c219519394bbd31512516cb22a3b1ca6e66d869e0447e84e + languageName: node + linkType: hard + "ini@npm:^1.3.4, ini@npm:~1.3.0": version: 1.3.8 resolution: "ini@npm:1.3.8" @@ -11482,6 +11940,17 @@ fsevents@^1.2.7: languageName: node linkType: hard +"is-ci@npm:^3.0.0": + version: 3.0.1 + resolution: "is-ci@npm:3.0.1" + dependencies: + ci-info: ^3.2.0 + bin: + is-ci: bin.js + checksum: 192c66dc7826d58f803ecae624860dccf1899fc1f3ac5505284c0a5cf5f889046ffeb958fa651e5725d5705c5bcb14f055b79150ea5fcad7456a9569de60260e + languageName: node + linkType: hard + "is-core-module@npm:^2.2.0": version: 2.2.0 resolution: "is-core-module@npm:2.2.0" @@ -11666,6 +12135,16 @@ fsevents@^1.2.7: languageName: node linkType: hard +"is-installed-globally@npm:~0.4.0": + version: 0.4.0 + resolution: "is-installed-globally@npm:0.4.0" + dependencies: + global-dirs: ^3.0.0 + is-path-inside: ^3.0.2 + checksum: 3359840d5982d22e9b350034237b2cda2a12bac1b48a721912e1ab8e0631dd07d45a2797a120b7b87552759a65ba03e819f1bd63f2d7ab8657ec0b44ee0bf399 + languageName: node + linkType: hard + "is-jpg@npm:^2.0.0": version: 2.0.0 resolution: "is-jpg@npm:2.0.0" @@ -11749,6 +12228,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"is-path-inside@npm:^3.0.2": + version: 3.0.3 + resolution: "is-path-inside@npm:3.0.3" + checksum: abd50f06186a052b349c15e55b182326f1936c89a78bf6c8f2b707412517c097ce04bc49a0ca221787bc44e1049f51f09a2ffb63d22899051988d3a618ba13e9 + languageName: node + linkType: hard + "is-plain-obj@npm:^1.0.0, is-plain-obj@npm:^1.1.0": version: 1.1.0 resolution: "is-plain-obj@npm:1.1.0" @@ -11861,13 +12347,20 @@ fsevents@^1.2.7: languageName: node linkType: hard -"is-typedarray@npm:^1.0.0": +"is-typedarray@npm:^1.0.0, is-typedarray@npm:~1.0.0": version: 1.0.0 resolution: "is-typedarray@npm:1.0.0" checksum: 3508c6cd0a9ee2e0df2fa2e9baabcdc89e911c7bd5cf64604586697212feec525aa21050e48affb5ffc3df20f0f5d2e2cf79b08caa64e1ccc9578e251763aef7 languageName: node linkType: hard +"is-unicode-supported@npm:^0.1.0": + version: 0.1.0 + resolution: "is-unicode-supported@npm:0.1.0" + checksum: a2aab86ee7712f5c2f999180daaba5f361bdad1efadc9610ff5b8ab5495b86e4f627839d085c6530363c6d6d4ecbde340fb8e54bdb83da4ba8e0865ed5513c52 + languageName: node + linkType: hard + "is-utf8@npm:^0.2.0": version: 0.2.1 resolution: "is-utf8@npm:0.2.1" @@ -11942,6 +12435,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"isstream@npm:~0.1.2": + version: 0.1.2 + resolution: "isstream@npm:0.1.2" + checksum: 1eb2fe63a729f7bdd8a559ab552c69055f4f48eb5c2f03724430587c6f450783c8f1cd936c1c952d0a927925180fcc892ebd5b174236cf1065d4bd5bdb37e963 + languageName: node + linkType: hard + "istanbul-lib-coverage@npm:^3.0.0": version: 3.0.0 resolution: "istanbul-lib-coverage@npm:3.0.0" @@ -12658,6 +13158,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"jsbn@npm:~0.1.0": + version: 0.1.1 + resolution: "jsbn@npm:0.1.1" + checksum: e5ff29c1b8d965017ef3f9c219dacd6e40ad355c664e277d31246c90545a02e6047018c16c60a00f36d561b3647215c41894f5d869ada6908a2e0ce4200c88f2 + languageName: node + linkType: hard + "jsdom@npm:^16.6.0": version: 16.7.0 resolution: "jsdom@npm:16.7.0" @@ -12764,6 +13271,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"json-schema@npm:0.4.0": + version: 0.4.0 + resolution: "json-schema@npm:0.4.0" + checksum: 66389434c3469e698da0df2e7ac5a3281bcff75e797a5c127db7c5b56270e01ae13d9afa3c03344f76e32e81678337a8c912bdbb75101c62e487dc3778461d72 + languageName: node + linkType: hard + "json-stable-stringify-without-jsonify@npm:^1.0.1": version: 1.0.1 resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" @@ -12785,6 +13299,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"json-stringify-safe@npm:~5.0.1": + version: 5.0.1 + resolution: "json-stringify-safe@npm:5.0.1" + checksum: 48ec0adad5280b8a96bb93f4563aa1667fd7a36334f79149abd42446d0989f2ddc58274b479f4819f1f00617957e6344c886c55d05a4e15ebb4ab931e4a6a8ee + languageName: node + linkType: hard + "json3@npm:^3.3.3": version: 3.3.3 resolution: "json3@npm:3.3.3" @@ -12814,6 +13335,19 @@ fsevents@^1.2.7: languageName: node linkType: hard +"jsonfile@npm:^6.0.1": + version: 6.1.0 + resolution: "jsonfile@npm:6.1.0" + dependencies: + graceful-fs: ^4.1.6 + universalify: ^2.0.0 + dependenciesMeta: + graceful-fs: + optional: true + checksum: 7af3b8e1ac8fe7f1eccc6263c6ca14e1966fcbc74b618d3c78a0a2075579487547b94f72b7a1114e844a1e15bb00d440e5d1720bfc4612d790a6f285d5ea8354 + languageName: node + linkType: hard + "jsontoxml@npm:^1.0.1": version: 1.0.1 resolution: "jsontoxml@npm:1.0.1" @@ -12821,6 +13355,18 @@ fsevents@^1.2.7: languageName: node linkType: hard +"jsprim@npm:^2.0.2": + version: 2.0.2 + resolution: "jsprim@npm:2.0.2" + dependencies: + assert-plus: 1.0.0 + extsprintf: 1.3.0 + json-schema: 0.4.0 + verror: 1.10.0 + checksum: d175f6b1991e160cb0aa39bc857da780e035611986b5492f32395411879fdaf4e513d98677f08f7352dac93a16b66b8361c674b86a3fa406e2e7af6b26321838 + languageName: node + linkType: hard + "jss-plugin-camel-case@npm:^10.8.2": version: 10.8.2 resolution: "jss-plugin-camel-case@npm:10.8.2" @@ -13030,6 +13576,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"lazy-ass@npm:^1.6.0": + version: 1.6.0 + resolution: "lazy-ass@npm:1.6.0" + checksum: 5a3ebb17915b03452320804466345382a6c25ac782ec4874fecdb2385793896cd459be2f187dc7def8899180c32ee0ab9a1aa7fe52193ac3ff3fe29bb0591729 + languageName: node + linkType: hard + "lazystream@npm:^1.0.0": version: 1.0.0 resolution: "lazystream@npm:1.0.0" @@ -13093,6 +13646,27 @@ fsevents@^1.2.7: languageName: node linkType: hard +"listr2@npm:^3.8.3": + version: 3.14.0 + resolution: "listr2@npm:3.14.0" + dependencies: + cli-truncate: ^2.1.0 + colorette: ^2.0.16 + log-update: ^4.0.0 + p-map: ^4.0.0 + rfdc: ^1.3.0 + rxjs: ^7.5.1 + through: ^2.3.8 + wrap-ansi: ^7.0.0 + peerDependencies: + enquirer: ">= 2.3.0 < 3" + peerDependenciesMeta: + enquirer: + optional: true + checksum: fdb8b2d6bdf5df9371ebd5082bee46c6d0ca3d1e5f2b11fbb5a127839855d5f3da9d4968fce94f0a5ec67cac2459766abbb1faeef621065ebb1829b11ef9476d + languageName: node + linkType: hard + "load-bmfont@npm:^1.3.1, load-bmfont@npm:^1.4.0": version: 1.4.1 resolution: "load-bmfont@npm:1.4.1" @@ -13250,6 +13824,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"lodash.once@npm:^4.1.1": + version: 4.1.1 + resolution: "lodash.once@npm:4.1.1" + checksum: d768fa9f9b4e1dc6453be99b753906f58990e0c45e7b2ca5a3b40a33111e5d17f6edf2f768786e2716af90a8e78f8f91431ab8435f761fef00f9b0c256f6d245 + languageName: node + linkType: hard + "lodash.union@npm:^4.6.0": version: 4.6.0 resolution: "lodash.union@npm:4.6.0" @@ -13264,6 +13845,28 @@ fsevents@^1.2.7: languageName: node linkType: hard +"log-symbols@npm:^4.0.0": + version: 4.1.0 + resolution: "log-symbols@npm:4.1.0" + dependencies: + chalk: ^4.1.0 + is-unicode-supported: ^0.1.0 + checksum: fce1497b3135a0198803f9f07464165e9eb83ed02ceb2273930a6f8a508951178d8cf4f0378e9d28300a2ed2bc49050995d2bd5f53ab716bb15ac84d58c6ef74 + languageName: node + linkType: hard + +"log-update@npm:^4.0.0": + version: 4.0.0 + resolution: "log-update@npm:4.0.0" + dependencies: + ansi-escapes: ^4.3.0 + cli-cursor: ^3.1.0 + slice-ansi: ^4.0.0 + wrap-ansi: ^6.2.0 + checksum: ae2f85bbabc1906034154fb7d4c4477c79b3e703d22d78adee8b3862fa913942772e7fa11713e3d96fb46de4e3cabefbf5d0a544344f03b58d3c4bff52aa9eb2 + languageName: node + linkType: hard + "logalot@npm:^2.0.0, logalot@npm:^2.1.0": version: 2.1.0 resolution: "logalot@npm:2.1.0" @@ -13602,6 +14205,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"mime-db@npm:1.51.0": + version: 1.51.0 + resolution: "mime-db@npm:1.51.0" + checksum: 613b1ac9d6e725cc24444600b124a7f1ce6c60b1baa654f39a3e260d0995a6dffc5693190217e271af7e2a5612dae19f2a73f3e316707d797a7391165f7ef423 + languageName: node + linkType: hard + "mime-types@npm:^2.1.12, mime-types@npm:^2.1.27, mime-types@npm:~2.1.17, mime-types@npm:~2.1.24": version: 2.1.30 resolution: "mime-types@npm:2.1.30" @@ -13611,6 +14221,15 @@ fsevents@^1.2.7: languageName: node linkType: hard +"mime-types@npm:~2.1.19": + version: 2.1.34 + resolution: "mime-types@npm:2.1.34" + dependencies: + mime-db: 1.51.0 + checksum: 67013de9e9d6799bde6d669d18785b7e18bcd212e710d3e04a4727f92f67a8ad4e74aee24be28b685adb794944814bde649119b58ee3282ffdbee58f9278d9f3 + languageName: node + linkType: hard + "mime@npm:1.6.0, mime@npm:^1.3.4": version: 1.6.0 resolution: "mime@npm:1.6.0" @@ -14202,7 +14821,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"npm-run-path@npm:^4.0.1": +"npm-run-path@npm:^4.0.0, npm-run-path@npm:^4.0.1": version: 4.0.1 resolution: "npm-run-path@npm:4.0.1" dependencies: @@ -14471,7 +15090,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"onetime@npm:^5.1.2": +"onetime@npm:^5.1.0, onetime@npm:^5.1.2": version: 5.1.2 resolution: "onetime@npm:5.1.2" dependencies: @@ -14591,6 +15210,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"ospath@npm:^1.2.2": + version: 1.2.2 + resolution: "ospath@npm:1.2.2" + checksum: 505f48a4f4f1c557d6c656ec985707726e3714721680139be037613e903aa8c8fa4ddd8d1342006f9b2dc0065e6e20f8b7bea2ee05354f31257044790367b347 + languageName: node + linkType: hard + "ow@npm:^0.13.2": version: 0.13.2 resolution: "ow@npm:0.13.2" @@ -15046,6 +15672,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"performance-now@npm:^2.1.0": + version: 2.1.0 + resolution: "performance-now@npm:2.1.0" + checksum: 534e641aa8f7cba160f0afec0599b6cecefbb516a2e837b512be0adbe6c1da5550e89c78059c7fabc5c9ffdf6627edabe23eb7c518c4500067a898fa65c2b550 + languageName: node + linkType: hard + "phin@npm:^2.9.1": version: 2.9.3 resolution: "phin@npm:2.9.3" @@ -15414,7 +16047,7 @@ fsevents@^1.2.7: languageName: node linkType: hard -"pretty-bytes@npm:^5.1.0": +"pretty-bytes@npm:^5.1.0, pretty-bytes@npm:^5.6.0": version: 5.6.0 resolution: "pretty-bytes@npm:5.6.0" checksum: 9c082500d1e93434b5b291bd651662936b8bd6204ec9fa17d563116a192d6d86b98f6d328526b4e8d783c07d5499e2614a807520249692da9ec81564b2f439cd @@ -15565,6 +16198,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"proxy-from-env@npm:1.0.0": + version: 1.0.0 + resolution: "proxy-from-env@npm:1.0.0" + checksum: 292e28d1de0c315958d71d8315eb546dd3cd8c8cbc2dab7c54eeb9f5c17f421771964ad0b5e1f77011bab2305bdae42e1757ce33bdb1ccc3e87732322a8efcf1 + languageName: node + linkType: hard + "prr@npm:~1.0.1": version: 1.0.1 resolution: "prr@npm:1.0.1" @@ -15624,6 +16264,13 @@ fsevents@^1.2.7: languageName: node linkType: hard +"qs@npm:~6.5.2": + version: 6.5.3 + resolution: "qs@npm:6.5.3" + checksum: 6f20bf08cabd90c458e50855559539a28d00b2f2e7dddcb66082b16a43188418cb3cb77cbd09268bcef6022935650f0534357b8af9eeb29bf0f27ccb17655692 + languageName: node + linkType: hard + "query-string@npm:^5.0.1": version: 5.1.1 resolution: "query-string@npm:5.1.1" @@ -16355,6 +17002,15 @@ fsevents@^1.2.7: languageName: node linkType: hard +"request-progress@npm:^3.0.0": + version: 3.0.0 + resolution: "request-progress@npm:3.0.0" + dependencies: + throttleit: ^1.0.0 + checksum: 6ea1761dcc8a8b7b5894afd478c0286aa31bd69438d7050294bd4fd0d0b3e09b5cde417d38deef9c49809039c337d8744e4bb49d8632b0c3e4ffa5e8a687e0fd + languageName: node + linkType: hard + "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -16511,6 +17167,16 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"restore-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "restore-cursor@npm:3.1.0" + dependencies: + onetime: ^5.1.0 + signal-exit: ^3.0.2 + checksum: f877dd8741796b909f2a82454ec111afb84eb45890eb49ac947d87991379406b3b83ff9673a46012fca0d7844bb989f45cc5b788254cf1a39b6b5a9659de0630 + languageName: node + linkType: hard + "ret@npm:~0.1.10": version: 0.1.15 resolution: "ret@npm:0.1.15" @@ -16532,6 +17198,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"rfdc@npm:^1.3.0": + version: 1.3.0 + resolution: "rfdc@npm:1.3.0" + checksum: fb2ba8512e43519983b4c61bd3fa77c0f410eff6bae68b08614437bc3f35f91362215f7b4a73cbda6f67330b5746ce07db5dd9850ad3edc91271ad6deea0df32 + languageName: node + linkType: hard + "rifm@npm:^0.12.0": version: 0.12.0 resolution: "rifm@npm:0.12.0" @@ -16595,6 +17268,15 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"rxjs@npm:^7.5.1": + version: 7.5.2 + resolution: "rxjs@npm:7.5.2" + dependencies: + tslib: ^2.1.0 + checksum: daf1fe7289de500b25d822fd96cde3c138c7902e8bf0e6aa12a3e70847a5cabeeb4d677f10e19387e1db44b12c5b1be0ff5c79b8cd63ed6ce891d765e566cf4d + languageName: node + linkType: hard + "safe-buffer@npm:5.1.2, safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": version: 5.1.2 resolution: "safe-buffer@npm:5.1.2" @@ -16602,7 +17284,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"safe-buffer@npm:>=5.1.0, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.2.0, safe-buffer@npm:~5.2.0": +"safe-buffer@npm:>=5.1.0, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.0, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 @@ -16618,7 +17300,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2": +"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 @@ -17054,6 +17736,28 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"slice-ansi@npm:^3.0.0": + version: 3.0.0 + resolution: "slice-ansi@npm:3.0.0" + dependencies: + ansi-styles: ^4.0.0 + astral-regex: ^2.0.0 + is-fullwidth-code-point: ^3.0.0 + checksum: 5ec6d022d12e016347e9e3e98a7eb2a592213a43a65f1b61b74d2c78288da0aded781f665807a9f3876b9daa9ad94f64f77d7633a0458876c3a4fdc4eb223f24 + languageName: node + linkType: hard + +"slice-ansi@npm:^4.0.0": + version: 4.0.0 + resolution: "slice-ansi@npm:4.0.0" + dependencies: + ansi-styles: ^4.0.0 + astral-regex: ^2.0.0 + is-fullwidth-code-point: ^3.0.0 + checksum: 4a82d7f085b0e1b070e004941ada3c40d3818563ac44766cca4ceadd2080427d337554f9f99a13aaeb3b4a94d9964d9466c807b3d7b7541d1ec37ee32d308756 + languageName: node + linkType: hard + "slide@npm:~1.1.3": version: 1.1.6 resolution: "slide@npm:1.1.6" @@ -17390,6 +18094,27 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"sshpk@npm:^1.14.1": + version: 1.17.0 + resolution: "sshpk@npm:1.17.0" + dependencies: + asn1: ~0.2.3 + assert-plus: ^1.0.0 + bcrypt-pbkdf: ^1.0.0 + dashdash: ^1.12.0 + ecc-jsbn: ~0.1.1 + getpass: ^0.1.1 + jsbn: ~0.1.0 + safer-buffer: ^2.0.2 + tweetnacl: ~0.14.0 + bin: + sshpk-conv: bin/sshpk-conv + sshpk-sign: bin/sshpk-sign + sshpk-verify: bin/sshpk-verify + checksum: ba109f65c8e6c35133b8e6ed5576abeff8aa8d614824b7275ec3ca308f081fef483607c28d97780c1e235818b0f93ed8c8b56d0a5968d5a23fd6af57718c7597 + languageName: node + linkType: hard + "ssri@npm:^8.0.0, ssri@npm:^8.0.1": version: 8.0.1 resolution: "ssri@npm:8.0.1" @@ -17769,7 +18494,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"supports-color@npm:^8.0.0, supports-color@npm:^8.1.0": +"supports-color@npm:^8.0.0, supports-color@npm:^8.1.0, supports-color@npm:^8.1.1": version: 8.1.1 resolution: "supports-color@npm:8.1.1" dependencies: @@ -18013,6 +18738,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"throttleit@npm:^1.0.0": + version: 1.0.0 + resolution: "throttleit@npm:1.0.0" + checksum: 1b2db4d2454202d589e8236c07a69d2fab838876d370030ebea237c34c0a7d1d9cf11c29f994531ebb00efd31e9728291042b7754f2798a8352ec4463455b659 + languageName: node + linkType: hard + "through2@npm:^4.0.2": version: 4.0.2 resolution: "through2@npm:4.0.2" @@ -18094,6 +18826,15 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"tmp@npm:~0.2.1": + version: 0.2.1 + resolution: "tmp@npm:0.2.1" + dependencies: + rimraf: ^3.0.0 + checksum: 8b1214654182575124498c87ca986ac53dc76ff36e8f0e0b67139a8d221eaecfdec108c0e6ec54d76f49f1f72ab9325500b246f562b926f85bcdfca8bf35df9e + languageName: node + linkType: hard + "tmpl@npm:1.0.x": version: 1.0.4 resolution: "tmpl@npm:1.0.4" @@ -18217,6 +18958,16 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"tough-cookie@npm:~2.5.0": + version: 2.5.0 + resolution: "tough-cookie@npm:2.5.0" + dependencies: + psl: ^1.1.28 + punycode: ^2.1.1 + checksum: 16a8cd090224dd176eee23837cbe7573ca0fa297d7e468ab5e1c02d49a4e9a97bb05fef11320605eac516f91d54c57838a25864e8680e27b069a5231d8264977 + languageName: node + linkType: hard + "tr46@npm:^2.0.2": version: 2.0.2 resolution: "tr46@npm:2.0.2" @@ -18373,6 +19124,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": + version: 0.14.5 + resolution: "tweetnacl@npm:0.14.5" + checksum: 6061daba1724f59473d99a7bb82e13f211cdf6e31315510ae9656fefd4779851cb927adad90f3b488c8ed77c106adc0421ea8055f6f976ff21b27c5c4e918487 + languageName: node + linkType: hard + "typanion@npm:^3.3.1": version: 3.3.1 resolution: "typanion@npm:3.3.1" @@ -18617,6 +19375,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"universalify@npm:^2.0.0": + version: 2.0.0 + resolution: "universalify@npm:2.0.0" + checksum: 2406a4edf4a8830aa6813278bab1f953a8e40f2f63a37873ffa9a3bc8f9745d06cc8e88f3572cb899b7e509013f7f6fcc3e37e8a6d914167a5381d8440518c44 + languageName: node + linkType: hard + "unpipe@npm:1.0.0, unpipe@npm:~1.0.0": version: 1.0.0 resolution: "unpipe@npm:1.0.0" @@ -18641,6 +19406,13 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"untildify@npm:^4.0.0": + version: 4.0.0 + resolution: "untildify@npm:4.0.0" + checksum: 39ced9c418a74f73f0a56e1ba4634b4d959422dff61f4c72a8e39f60b99380c1b45ed776fbaa0a4101b157e4310d873ad7d114e8534ca02609b4916bb4187fb9 + languageName: node + linkType: hard + "upath@npm:^1.1.1": version: 1.2.0 resolution: "upath@npm:1.2.0" @@ -19327,6 +20099,17 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"verror@npm:1.10.0": + version: 1.10.0 + resolution: "verror@npm:1.10.0" + dependencies: + assert-plus: ^1.0.0 + core-util-is: 1.0.2 + extsprintf: ^1.2.0 + checksum: c431df0bedf2088b227a4e051e0ff4ca54df2c114096b0c01e1cbaadb021c30a04d7dd5b41ab277bcd51246ca135bf931d4c4c796ecae7a4fef6d744ecef36ea + languageName: node + linkType: hard + "vinyl@npm:^2.2.1": version: 2.2.1 resolution: "vinyl@npm:2.2.1" @@ -19790,6 +20573,17 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard +"wrap-ansi@npm:^6.2.0": + version: 6.2.0 + resolution: "wrap-ansi@npm:6.2.0" + dependencies: + ansi-styles: ^4.0.0 + string-width: ^4.1.0 + strip-ansi: ^6.0.0 + checksum: 6cd96a410161ff617b63581a08376f0cb9162375adeb7956e10c8cd397821f7eb2a6de24eb22a0b28401300bf228c86e50617cd568209b5f6775b93c97d2fe3a + languageName: node + linkType: hard + "wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" @@ -20023,7 +20817,7 @@ resolve@^2.0.0-next.3: languageName: node linkType: hard -"yauzl@npm:^2.4.2": +"yauzl@npm:^2.10.0, yauzl@npm:^2.4.2": version: 2.10.0 resolution: "yauzl@npm:2.10.0" dependencies: