diff --git a/package-lock.json b/package-lock.json index 802e652..0c7eb66 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,7 @@ "@babel/eslint-parser": "^7.22.9", "@babel/plugin-syntax-import-assertions": "^7.22.5", "@etherspot/contracts": "^2.0.1", - "@etherspot/prime-sdk": "1.3.5", + "@etherspot/prime-sdk": "file:./etherspot-prime-sdk", "@reactivex/rxjs": "^6.6.7", "axios": "^1.4.0", "chai": "^4.3.7", @@ -24,7 +24,6 @@ "eslint-plugin-prettier": "^5.0.0", "ethers": "5.7.0", "mocha": "^10.2.0", - "mocha-retry": "^0.1.0", "mochawesome": "^7.1.3", "mochawesome-report-generator": "^6.2.0", "prettier": "^3.0.0", @@ -36,2986 +35,5623 @@ "eslint": "^8.45.0" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "engines": { - "node": ">=0.10.0" - } + "../etherspot-prime-sdk": { + "extraneous": true }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", - "peer": true, + "../etherspot-prime-sdk/dist/index.js": { + "extraneous": true + }, + "etherspot-prime-sdk": { + "version": "1.3.8", + "license": "MIT", "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@apollo/client": "3.4.0", + "@lifi/sdk": "2.2.3", + "@nerdwallet/apollo-cache-policies": "1.2.1", + "@thehubbleproject/bls": "0.5.1", + "@walletconnect/universal-provider": "2.10.0", + "apollo-link-ws": "1.0.20", + "buffer": "^6.0.3", + "class-transformer": "0.5.1", + "class-validator": "0.14.0", + "commander": "10.0.1", + "cross-fetch": "3.1.5", + "ethers": "5.7.0", + "graphql-ws": "5.14.0", + "prettier": "2.8.8" + }, + "devDependencies": { + "@types/node": "18.11.9", + "@types/prettier": "2.7.3", + "@typescript-eslint/eslint-plugin": "2.34.0", + "@typescript-eslint/parser": "2.34.0", + "dotenv": "16.0.3", + "eslint": "6.8.0", + "eslint-config-prettier": "6.11.0", + "eslint-plugin-import": "2.20.2", + "npm": "9.6.4", + "reflect-metadata": "0.1.13", + "rxjs": "6.6.7", + "ts-node": "8.10.2", + "typescript": "4.5.2" + } + }, + "etherspot-prime-sdk/node_modules/@typescript-eslint/eslint-plugin": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz", + "integrity": "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "2.34.0", + "functional-red-black-tree": "^1.0.1", + "regexpp": "^3.0.0", + "tsutils": "^3.17.1" }, "engines": { - "node": ">=6.0.0" + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^2.0.0", + "eslint": "^5.0.0 || ^6.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@apollo/client": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.4.0.tgz", - "integrity": "sha512-ASGw+L1KYLm3Syl5lJKFB6nLEuthBUcvSYhI6p4g4hi+kMli6+UarMONuIYmTBUec2KcQCfs4uwi3bd0xWQ8zg==", + "etherspot-prime-sdk/node_modules/@typescript-eslint/parser": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz", + "integrity": "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==", + "dev": true, "dependencies": { - "@graphql-typed-document-node/core": "^3.0.0", - "@wry/context": "^0.6.0", - "@wry/equality": "^0.5.0", - "@wry/trie": "^0.3.0", - "graphql-tag": "^2.12.3", - "hoist-non-react-statics": "^3.3.2", - "optimism": "^0.16.1", - "prop-types": "^15.7.2", - "symbol-observable": "^4.0.0", - "ts-invariant": "^0.9.0", - "tslib": "^2.3.0", - "zen-observable-ts": "^1.1.0" + "@types/eslint-visitor-keys": "^1.0.0", + "@typescript-eslint/experimental-utils": "2.34.0", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "graphql": "^14.0.0 || ^15.0.0", - "react": "^16.8.0 || ^17.0.0", - "subscriptions-transport-ws": "^0.9.0" + "eslint": "^5.0.0 || ^6.0.0" }, "peerDependenciesMeta": { - "react": { - "optional": true - }, - "subscriptions-transport-ws": { + "typescript": { "optional": true } } }, - "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "etherspot-prime-sdk/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "etherspot-prime-sdk/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "etherspot-prime-sdk/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, "dependencies": { - "@babel/highlight": "^7.22.13", - "chalk": "^2.4.2" + "sprintf-js": "~1.0.2" + } + }, + "etherspot-prime-sdk/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" }, "engines": { - "node": ">=6.9.0" + "node": ">=4.8" } }, - "node_modules/@babel/compat-data": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", - "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", - "peer": true, + "etherspot-prime-sdk/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "etherspot-prime-sdk/node_modules/dotenv": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", + "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", + "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">=12" } }, - "node_modules/@babel/core": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", - "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", - "peer": true, + "etherspot-prime-sdk/node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", - "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.23.0", - "@babel/helpers": "^7.23.2", - "@babel/parser": "^7.23.0", - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=6.9.0" + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/eslint-parser": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", - "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "etherspot-prime-sdk/node_modules/eslint-config-prettier": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.11.0.tgz", + "integrity": "sha512-oB8cpLWSAjOVFEJhhyMZh6NOEOtBVziaqdDQ86+qhDHFbZXoRTM7pNSvFRfW/W/L/LrQ38C99J5CGuRBBzBsdA==", + "dev": true, "dependencies": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.1" + "get-stdin": "^6.0.0" + }, + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" + } + }, + "etherspot-prime-sdk/node_modules/eslint-plugin-import": { + "version": "2.20.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.20.2.tgz", + "integrity": "sha512-FObidqpXrR8OnCh4iNsxy+WACztJLXAHBO5hK79T1Hc77PgQZkyDGA5Ag9xAvRpglvLNxhH/zSmZ70/pZ31dHg==", + "dev": true, + "dependencies": { + "array-includes": "^3.0.3", + "array.prototype.flat": "^1.2.1", + "contains-path": "^0.1.0", + "debug": "^2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "^0.3.2", + "eslint-module-utils": "^2.4.1", + "has": "^1.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.0", + "read-pkg-up": "^2.0.0", + "resolve": "^1.12.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + "node": ">=4" }, "peerDependencies": { - "@babel/core": "^7.11.0", - "eslint": "^7.5.0 || ^8.0.0" + "eslint": "2.x - 6.x" } }, - "node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "etherspot-prime-sdk/node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "dependencies": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" + "ms": "2.0.0" + } + }, + "etherspot-prime-sdk/node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha512-lsGyRuYr4/PIB0txi+Fy2xOMI2dGaTguCaotzFGkVZuKR5usKfcRWIFKNM3QNrU7hh/+w2bwTW+ZeXPK5l8uVg==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2", + "isarray": "^1.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=0.10.0" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", - "peer": true, + "etherspot-prime-sdk/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" + "eslint-visitor-keys": "^1.1.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=6" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "etherspot-prime-sdk/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, + "etherspot-prime-sdk/node_modules/eslint/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">=6.5.0" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "etherspot-prime-sdk/node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=6.0.0" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", - "peer": true, + "etherspot-prime-sdk/node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, "dependencies": { - "@babel/types": "^7.22.15" + "flat-cache": "^2.0.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", - "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", - "peer": true, + "etherspot-prime-sdk/node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=4" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", - "engines": { - "node": ">=6.9.0" - } + "etherspot-prime-sdk/node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "peer": true, + "etherspot-prime-sdk/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=6.9.0" + "node": ">= 6" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "etherspot-prime-sdk/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "type-fest": "^0.8.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "etherspot-prime-sdk/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, "engines": { - "node": ">=6.9.0" + "node": ">= 4" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "engines": { - "node": ">=6.9.0" - } + "etherspot-prime-sdk/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, - "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", - "peer": true, - "engines": { - "node": ">=6.9.0" + "etherspot-prime-sdk/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@babel/helpers": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", - "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", - "peer": true, + "etherspot-prime-sdk/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dev": true, "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.2", - "@babel/types": "^7.23.0" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" }, "engines": { - "node": ">=6.9.0" + "node": ">= 0.8.0" } }, - "node_modules/@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "etherspot-prime-sdk/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "etherspot-prime-sdk/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" }, "engines": { - "node": ">=6.9.0" + "node": ">= 0.8.0" } }, - "node_modules/@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", - "bin": { - "parser": "bin/babel-parser.js" - }, + "etherspot-prime-sdk/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, "engines": { - "node": ">=6.0.0" + "node": ">=4" } }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", - "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, + "etherspot-prime-sdk/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 0.8.0" } }, - "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "etherspot-prime-sdk/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "bin": { + "prettier": "bin-prettier.js" }, "engines": { - "node": ">=6.9.0" + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "etherspot-prime-sdk/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", - "debug": "^4.1.0", - "globals": "^11.1.0" + "glob": "^7.1.3" }, - "engines": { - "node": ">=6.9.0" + "bin": { + "rimraf": "bin.js" } }, - "node_modules/@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "etherspot-prime-sdk/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" + "tslib": "^1.9.0" }, "engines": { - "node": ">=6.9.0" + "npm": ">=2.0.0" } }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "etherspot-prime-sdk/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, "dependencies": { - "eslint-visitor-keys": "^3.3.0" + "shebang-regex": "^1.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + "node": ">=0.10.0" } }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", - "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", + "etherspot-prime-sdk/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "etherspot-prime-sdk/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "ansi-regex": "^4.1.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=6" } }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "etherspot-prime-sdk/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "etherspot-prime-sdk/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, "dependencies": { - "type-fest": "^0.20.2" + "prelude-ls": "~1.1.2" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.8.0" } }, - "node_modules/@eslint/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", + "etherspot-prime-sdk/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/@etherspot/contracts": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@etherspot/contracts/-/contracts-2.0.1.tgz", - "integrity": "sha512-m1tlrr7Ou//GFC8G3+Lg7VfjbsnhRY3CPVRSmtksQFRbLJnJtyURSrJdUN4tj+18vgn+Dyxi/yXfKPUsgQU5DQ==" - }, - "node_modules/@etherspot/prime-sdk": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@etherspot/prime-sdk/-/prime-sdk-1.3.5.tgz", - "integrity": "sha512-o8MPp8QvaKabQDlrDRjIC++xtqkhgUwZK9EtQxZi43Vwc9HUAkrKEmXRfUm3pQFm/+Ofn2Ihc1dN959/XITE2g==", + "etherspot-prime-sdk/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, "dependencies": { - "@apollo/client": "3.4.0", - "@lifi/sdk": "2.2.3", - "@nerdwallet/apollo-cache-policies": "1.2.1", - "@thehubbleproject/bls": "0.5.1", - "@walletconnect/universal-provider": "2.10.0", - "apollo-link-ws": "1.0.20", - "buffer": "^6.0.3", - "class-transformer": "0.5.1", - "class-validator": "0.14.0", - "commander": "10.0.1", - "cross-fetch": "3.1.5", - "ethers": "5.7.0", - "graphql-ws": "5.14.0", - "prettier": "2.8.8" + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "node_modules/@etherspot/prime-sdk/node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "bin": { - "prettier": "bin-prettier.js" - }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/@ethersproject/abi": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", - "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "peer": true, "dependencies": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@ethersproject/abstract-provider": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", - "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + "node_modules/@apollo/client": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.4.0.tgz", + "integrity": "sha512-ASGw+L1KYLm3Syl5lJKFB6nLEuthBUcvSYhI6p4g4hi+kMli6+UarMONuIYmTBUec2KcQCfs4uwi3bd0xWQ8zg==", + "dependencies": { + "@graphql-typed-document-node/core": "^3.0.0", + "@wry/context": "^0.6.0", + "@wry/equality": "^0.5.0", + "@wry/trie": "^0.3.0", + "graphql-tag": "^2.12.3", + "hoist-non-react-statics": "^3.3.2", + "optimism": "^0.16.1", + "prop-types": "^15.7.2", + "symbol-observable": "^4.0.0", + "ts-invariant": "^0.9.0", + "tslib": "^2.3.0", + "zen-observable-ts": "^1.1.0" + }, + "peerDependencies": { + "graphql": "^14.0.0 || ^15.0.0", + "react": "^16.8.0 || ^17.0.0", + "subscriptions-transport-ws": "^0.9.0" + }, + "peerDependenciesMeta": { + "react": { + "optional": true }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" + "subscriptions-transport-ws": { + "optional": true } - ], - "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0" } }, - "node_modules/@ethersproject/abstract-signer": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz", - "integrity": "sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0" + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@ethersproject/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/rlp": "^5.7.0" + "node_modules/@babel/compat-data": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", + "peer": true, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@ethersproject/base64": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", - "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } + "node_modules/@babel/core": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/eslint-parser": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", + "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "dependencies": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0", + "eslint": "^7.5.0 || ^8.0.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "dependencies": { + "@babel/types": "^7.23.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.15", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "peer": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", + "peer": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "peer": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", + "peer": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", + "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.51.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", + "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@etherspot/contracts": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@etherspot/contracts/-/contracts-2.0.1.tgz", + "integrity": "sha512-m1tlrr7Ou//GFC8G3+Lg7VfjbsnhRY3CPVRSmtksQFRbLJnJtyURSrJdUN4tj+18vgn+Dyxi/yXfKPUsgQU5DQ==" + }, + "node_modules/@etherspot/prime-sdk": { + "resolved": "etherspot-prime-sdk", + "link": true + }, + "node_modules/@ethersproject/abi": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", + "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "node_modules/@ethersproject/abstract-provider": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", + "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0" + } + }, + "node_modules/@ethersproject/abstract-signer": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz", + "integrity": "sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0" + } + }, + "node_modules/@ethersproject/address": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", + "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/rlp": "^5.7.0" + } + }, + "node_modules/@ethersproject/base64": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", + "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0" + } + }, + "node_modules/@ethersproject/basex": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", + "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/properties": "^5.7.0" + } + }, + "node_modules/@ethersproject/bignumber": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", + "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "bn.js": "^5.2.1" + } + }, + "node_modules/@ethersproject/bytes": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", + "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/constants": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", + "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.7.0" + } + }, + "node_modules/@ethersproject/contracts": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", + "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "^5.7.0", + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/transactions": "^5.7.0" + } + }, + "node_modules/@ethersproject/hash": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", + "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "node_modules/@ethersproject/hdnode": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", + "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } + }, + "node_modules/@ethersproject/json-wallets": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", + "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + } + }, + "node_modules/@ethersproject/keccak256": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", + "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "js-sha3": "0.8.0" + } + }, + "node_modules/@ethersproject/logger": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", + "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ] + }, + "node_modules/@ethersproject/networks": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", + "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/pbkdf2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", + "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/sha2": "^5.7.0" + } + }, + "node_modules/@ethersproject/properties": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", + "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/providers": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.0.tgz", + "integrity": "sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" + } + }, + "node_modules/@ethersproject/providers/node_modules/ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@ethersproject/random": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", + "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/rlp": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", + "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/sha2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", + "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "hash.js": "1.1.7" + } + }, + "node_modules/@ethersproject/signing-key": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", + "integrity": "sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "bn.js": "^5.2.1", + "elliptic": "6.5.4", + "hash.js": "1.1.7" + } + }, + "node_modules/@ethersproject/solidity": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", + "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "node_modules/@ethersproject/strings": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", + "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/transactions": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", + "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0" + } + }, + "node_modules/@ethersproject/units": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", + "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/@ethersproject/wallet": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", + "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/json-wallets": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } + }, + "node_modules/@ethersproject/web": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", + "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/base64": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "node_modules/@ethersproject/wordlists": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", + "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "node_modules/@graphql-typed-document-node/core": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.2.0.tgz", + "integrity": "sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==", + "peerDependencies": { + "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", + "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@lifi/sdk": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@lifi/sdk/-/sdk-2.2.3.tgz", + "integrity": "sha512-k5KFK5SRRqA1hGrQkkWPPhM0AYciAFyu6GLCJdDFUK6HM+No4qDQWT359K9mGU6FrXVhPMds58Imex/lj/XReQ==", + "dependencies": { + "@ethersproject/abi": "^5.7.0", + "@ethersproject/contracts": "^5.7.0", + "@lifi/types": "^8.0.4", + "bignumber.js": "^9.1.1", + "eth-rpc-errors": "^4.0.3", + "ethers": "^5.7.2" + } + }, + "node_modules/@lifi/sdk/node_modules/@ethersproject/providers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", + "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" + } + }, + "node_modules/@lifi/sdk/node_modules/ethers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", + "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "5.7.0", + "@ethersproject/abstract-provider": "5.7.0", + "@ethersproject/abstract-signer": "5.7.0", + "@ethersproject/address": "5.7.0", + "@ethersproject/base64": "5.7.0", + "@ethersproject/basex": "5.7.0", + "@ethersproject/bignumber": "5.7.0", + "@ethersproject/bytes": "5.7.0", + "@ethersproject/constants": "5.7.0", + "@ethersproject/contracts": "5.7.0", + "@ethersproject/hash": "5.7.0", + "@ethersproject/hdnode": "5.7.0", + "@ethersproject/json-wallets": "5.7.0", + "@ethersproject/keccak256": "5.7.0", + "@ethersproject/logger": "5.7.0", + "@ethersproject/networks": "5.7.1", + "@ethersproject/pbkdf2": "5.7.0", + "@ethersproject/properties": "5.7.0", + "@ethersproject/providers": "5.7.2", + "@ethersproject/random": "5.7.0", + "@ethersproject/rlp": "5.7.0", + "@ethersproject/sha2": "5.7.0", + "@ethersproject/signing-key": "5.7.0", + "@ethersproject/solidity": "5.7.0", + "@ethersproject/strings": "5.7.0", + "@ethersproject/transactions": "5.7.0", + "@ethersproject/units": "5.7.0", + "@ethersproject/wallet": "5.7.0", + "@ethersproject/web": "5.7.1", + "@ethersproject/wordlists": "5.7.0" + } + }, + "node_modules/@lifi/sdk/node_modules/ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@lifi/types": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/@lifi/types/-/types-8.7.1.tgz", + "integrity": "sha512-l7PO+0nk9bWDdixryYqQH6P868WLC6KLZD2+RizVv16Vw65X7I46aogyssq0Isz3oPiRing8m+haIdx+9Kdijw==", + "dependencies": { + "ethers": "^5.7.2" + } + }, + "node_modules/@lifi/types/node_modules/@ethersproject/providers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", + "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" + } + }, + "node_modules/@lifi/types/node_modules/ethers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", + "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } ], "dependencies": { - "@ethersproject/bytes": "^5.7.0" + "@ethersproject/abi": "5.7.0", + "@ethersproject/abstract-provider": "5.7.0", + "@ethersproject/abstract-signer": "5.7.0", + "@ethersproject/address": "5.7.0", + "@ethersproject/base64": "5.7.0", + "@ethersproject/basex": "5.7.0", + "@ethersproject/bignumber": "5.7.0", + "@ethersproject/bytes": "5.7.0", + "@ethersproject/constants": "5.7.0", + "@ethersproject/contracts": "5.7.0", + "@ethersproject/hash": "5.7.0", + "@ethersproject/hdnode": "5.7.0", + "@ethersproject/json-wallets": "5.7.0", + "@ethersproject/keccak256": "5.7.0", + "@ethersproject/logger": "5.7.0", + "@ethersproject/networks": "5.7.1", + "@ethersproject/pbkdf2": "5.7.0", + "@ethersproject/properties": "5.7.0", + "@ethersproject/providers": "5.7.2", + "@ethersproject/random": "5.7.0", + "@ethersproject/rlp": "5.7.0", + "@ethersproject/sha2": "5.7.0", + "@ethersproject/signing-key": "5.7.0", + "@ethersproject/solidity": "5.7.0", + "@ethersproject/strings": "5.7.0", + "@ethersproject/transactions": "5.7.0", + "@ethersproject/units": "5.7.0", + "@ethersproject/wallet": "5.7.0", + "@ethersproject/web": "5.7.1", + "@ethersproject/wordlists": "5.7.0" + } + }, + "node_modules/@lifi/types/node_modules/ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@nerdwallet/apollo-cache-policies": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@nerdwallet/apollo-cache-policies/-/apollo-cache-policies-1.2.1.tgz", + "integrity": "sha512-B9ffnsNadLJ4Ge6l92lwVDLgzSmen8MqZhZenK4ocQQ7x1vctOdVSffXtmJUCYb98/KYHNQRskj0xgnS1+dlmw==", + "dependencies": { + "@types/graphql": "^14.5.0", + "@types/lodash": "^4.14.168", + "@types/uuid": "^7.0.4", + "graphql": "^15.5.0", + "lodash": "^4.17.20", + "typescript": "^4.3.2", + "uuid": "^7.0.3" + }, + "peerDependencies": { + "@apollo/client": "^3.3.0" + } + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dependencies": { + "eslint-scope": "5.1.1" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgr/utils": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", + "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", + "dependencies": { + "cross-spawn": "^7.0.3", + "fast-glob": "^3.3.0", + "is-glob": "^4.0.3", + "open": "^9.1.0", + "picocolors": "^1.0.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, + "node_modules/@reactivex/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/@reactivex/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-xZIV2JgHhWoVPm3uVcFbZDRVJfx2hgqmuTX7J4MuKaZ+j5jN29agniCPBwrlCmpA15/zLKcPi7/bogt0ZwOFyA==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@reactivex/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@stablelib/aead": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/aead/-/aead-1.0.1.tgz", + "integrity": "sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg==" + }, + "node_modules/@stablelib/binary": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/binary/-/binary-1.0.1.tgz", + "integrity": "sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q==", + "dependencies": { + "@stablelib/int": "^1.0.1" + } + }, + "node_modules/@stablelib/bytes": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/bytes/-/bytes-1.0.1.tgz", + "integrity": "sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ==" + }, + "node_modules/@stablelib/chacha": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/chacha/-/chacha-1.0.1.tgz", + "integrity": "sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/chacha20poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/chacha20poly1305/-/chacha20poly1305-1.0.1.tgz", + "integrity": "sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA==", + "dependencies": { + "@stablelib/aead": "^1.0.1", + "@stablelib/binary": "^1.0.1", + "@stablelib/chacha": "^1.0.1", + "@stablelib/constant-time": "^1.0.1", + "@stablelib/poly1305": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/constant-time/-/constant-time-1.0.1.tgz", + "integrity": "sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg==" + }, + "node_modules/@stablelib/ed25519": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stablelib/ed25519/-/ed25519-1.0.3.tgz", + "integrity": "sha512-puIMWaX9QlRsbhxfDc5i+mNPMY+0TmQEskunY1rZEBPi1acBCVQAhnsk/1Hk50DGPtVsZtAWQg4NHGlVaO9Hqg==", + "dependencies": { + "@stablelib/random": "^1.0.2", + "@stablelib/sha512": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/hash": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/hash/-/hash-1.0.1.tgz", + "integrity": "sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg==" + }, + "node_modules/@stablelib/hkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/hkdf/-/hkdf-1.0.1.tgz", + "integrity": "sha512-SBEHYE16ZXlHuaW5RcGk533YlBj4grMeg5TooN80W3NpcHRtLZLLXvKyX0qcRFxf+BGDobJLnwkvgEwHIDBR6g==", + "dependencies": { + "@stablelib/hash": "^1.0.1", + "@stablelib/hmac": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/hmac": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/hmac/-/hmac-1.0.1.tgz", + "integrity": "sha512-V2APD9NSnhVpV/QMYgCVMIYKiYG6LSqw1S65wxVoirhU/51ACio6D4yDVSwMzuTJXWZoVHbDdINioBwKy5kVmA==", + "dependencies": { + "@stablelib/constant-time": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/int": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/int/-/int-1.0.1.tgz", + "integrity": "sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w==" + }, + "node_modules/@stablelib/keyagreement": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/keyagreement/-/keyagreement-1.0.1.tgz", + "integrity": "sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg==", + "dependencies": { + "@stablelib/bytes": "^1.0.1" + } + }, + "node_modules/@stablelib/poly1305": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/poly1305/-/poly1305-1.0.1.tgz", + "integrity": "sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA==", + "dependencies": { + "@stablelib/constant-time": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/random": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stablelib/random/-/random-1.0.2.tgz", + "integrity": "sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/sha256": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/sha256/-/sha256-1.0.1.tgz", + "integrity": "sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/sha512": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/sha512/-/sha512-1.0.1.tgz", + "integrity": "sha512-13gl/iawHV9zvDKciLo1fQ8Bgn2Pvf7OV6amaRVKiq3pjQ3UmEpXxWiAfV8tYjUpeZroBxtyrwtdooQT/i3hzw==", + "dependencies": { + "@stablelib/binary": "^1.0.1", + "@stablelib/hash": "^1.0.1", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@stablelib/wipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@stablelib/wipe/-/wipe-1.0.1.tgz", + "integrity": "sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg==" + }, + "node_modules/@stablelib/x25519": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@stablelib/x25519/-/x25519-1.0.3.tgz", + "integrity": "sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==", + "dependencies": { + "@stablelib/keyagreement": "^1.0.1", + "@stablelib/random": "^1.0.2", + "@stablelib/wipe": "^1.0.1" + } + }, + "node_modules/@thehubbleproject/bls": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@thehubbleproject/bls/-/bls-0.5.1.tgz", + "integrity": "sha512-g5zeMZ8js/yg6MjFoC+pt0eqfCL2jC46yLY1LbKNriyqftB1tE3jpG/FMMDIW3x9/yRg/AgUb8Nluqj15tQs+A==", + "dependencies": { + "ethers": "^5.5.3", + "mcl-wasm": "^1.0.0" + } + }, + "node_modules/@types/eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", + "dev": true + }, + "node_modules/@types/graphql": { + "version": "14.5.0", + "resolved": "https://registry.npmjs.org/@types/graphql/-/graphql-14.5.0.tgz", + "integrity": "sha512-MOkzsEp1Jk5bXuAsHsUi6BVv0zCO+7/2PTiZMXWDSsMXvNU6w/PLMQT2vHn8hy2i0JqojPz1Sz6rsFjHtsU0lA==", + "deprecated": "This is a stub types definition. graphql provides its own type definitions, so you do not need this installed.", + "dependencies": { + "graphql": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.14", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.14.tgz", + "integrity": "sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" + }, + "node_modules/@types/lodash": { + "version": "4.14.200", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.200.tgz", + "integrity": "sha512-YI/M/4HRImtNf3pJgbF+W6FrXovqj+T+/HpENLTooK9PnkacBsDpeP3IpHab40CClUfhNmdM2WTNP2sa2dni5Q==" + }, + "node_modules/@types/node": { + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/uuid": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-7.0.7.tgz", + "integrity": "sha512-xlbA6IkLhAK9G0hn6qli0ygl8KOKhONfuEvfoBrs9QX++g6v2qF//xGTYx+AKs5e151s2V1J7qWuABqaT+lGXw==" + }, + "node_modules/@types/validator": { + "version": "13.11.5", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.5.tgz", + "integrity": "sha512-xW4qsT4UIYILu+7ZrBnfQdBYniZrMLYYK3wN9M/NdeIHgBN5pZI2/8Q7UfdWIcr5RLJv/OGENsx91JIpUUoC7Q==" + }, + "node_modules/@types/zen-observable": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/@types/zen-observable/-/zen-observable-0.8.3.tgz", + "integrity": "sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw==" + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz", + "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/typescript-estree": "2.34.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "2.34.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", + "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "eslint-visitor-keys": "^1.1.0", + "glob": "^7.1.6", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@walletconnect/core": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.10.0.tgz", + "integrity": "sha512-Z8pdorfIMueuiBXLdnf7yloiO9JIiobuxN3j0OTal+MYc4q5/2O7d+jdD1DAXbLi1taJx3x60UXT/FPVkjIqIQ==", + "dependencies": { + "@walletconnect/heartbeat": "1.2.1", + "@walletconnect/jsonrpc-provider": "1.0.13", + "@walletconnect/jsonrpc-types": "1.0.3", + "@walletconnect/jsonrpc-utils": "1.0.8", + "@walletconnect/jsonrpc-ws-connection": "1.0.13", + "@walletconnect/keyvaluestorage": "^1.0.2", + "@walletconnect/logger": "^2.0.1", + "@walletconnect/relay-api": "^1.0.9", + "@walletconnect/relay-auth": "^1.0.4", + "@walletconnect/safe-json": "^1.0.2", + "@walletconnect/time": "^1.0.2", + "@walletconnect/types": "2.10.0", + "@walletconnect/utils": "2.10.0", + "events": "^3.3.0", + "lodash.isequal": "4.5.0", + "uint8arrays": "^3.1.0" + } + }, + "node_modules/@walletconnect/environment": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", + "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==", + "dependencies": { + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/environment/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/events": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/events/-/events-1.0.1.tgz", + "integrity": "sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==", + "dependencies": { + "keyvaluestorage-interface": "^1.0.0", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/events/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/heartbeat": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@walletconnect/heartbeat/-/heartbeat-1.2.1.tgz", + "integrity": "sha512-yVzws616xsDLJxuG/28FqtZ5rzrTA4gUjdEMTbWB5Y8V1XHRmqq4efAxCw5ie7WjbXFSUyBHaWlMR+2/CpQC5Q==", + "dependencies": { + "@walletconnect/events": "^1.0.1", + "@walletconnect/time": "^1.0.2", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/heartbeat/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-http-connection": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.7.tgz", + "integrity": "sha512-qlfh8fCfu8LOM9JRR9KE0s0wxP6ZG9/Jom8M0qsoIQeKF3Ni0FyV4V1qy/cc7nfI46SLQLSl4tgWSfLiE1swyQ==", + "dependencies": { + "@walletconnect/jsonrpc-utils": "^1.0.6", + "@walletconnect/safe-json": "^1.0.1", + "cross-fetch": "^3.1.4", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-http-connection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-provider": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.13.tgz", + "integrity": "sha512-K73EpThqHnSR26gOyNEL+acEex3P7VWZe6KE12ZwKzAt2H4e5gldZHbjsu2QR9cLeJ8AXuO7kEMOIcRv1QEc7g==", + "dependencies": { + "@walletconnect/jsonrpc-utils": "^1.0.8", + "@walletconnect/safe-json": "^1.0.2", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-provider/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-types": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.3.tgz", + "integrity": "sha512-iIQ8hboBl3o5ufmJ8cuduGad0CQm3ZlsHtujv9Eu16xq89q+BG7Nh5VLxxUgmtpnrePgFkTwXirCTkwJH1v+Yw==", + "dependencies": { + "keyvaluestorage-interface": "^1.0.0", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-types/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-utils": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz", + "integrity": "sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==", + "dependencies": { + "@walletconnect/environment": "^1.0.1", + "@walletconnect/jsonrpc-types": "^1.0.3", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/jsonrpc-utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-ws-connection": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.13.tgz", + "integrity": "sha512-mfOM7uFH4lGtQxG+XklYuFBj6dwVvseTt5/ahOkkmpcAEgz2umuzu7fTR+h5EmjQBdrmYyEBOWADbeaFNxdySg==", + "dependencies": { + "@walletconnect/jsonrpc-utils": "^1.0.6", + "@walletconnect/safe-json": "^1.0.2", + "events": "^3.3.0", + "tslib": "1.14.1", + "ws": "^7.5.1" + } + }, + "node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/@walletconnect/keyvaluestorage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.0.2.tgz", + "integrity": "sha512-U/nNG+VLWoPFdwwKx0oliT4ziKQCEoQ27L5Hhw8YOFGA2Po9A9pULUYNWhDgHkrb0gYDNt//X7wABcEWWBd3FQ==", + "dependencies": { + "safe-json-utils": "^1.1.1", + "tslib": "1.14.1" + }, + "peerDependencies": { + "@react-native-async-storage/async-storage": "1.x", + "lokijs": "1.x" + }, + "peerDependenciesMeta": { + "@react-native-async-storage/async-storage": { + "optional": true + }, + "lokijs": { + "optional": true + } + } + }, + "node_modules/@walletconnect/keyvaluestorage/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/logger": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-2.0.1.tgz", + "integrity": "sha512-SsTKdsgWm+oDTBeNE/zHxxr5eJfZmE9/5yp/Ku+zJtcTAjELb3DXueWkDXmE9h8uHIbJzIb5wj5lPdzyrjT6hQ==", + "dependencies": { + "pino": "7.11.0", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/logger/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/relay-api": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.9.tgz", + "integrity": "sha512-Q3+rylJOqRkO1D9Su0DPE3mmznbAalYapJ9qmzDgK28mYF9alcP3UwG/og5V7l7CFOqzCLi7B8BvcBUrpDj0Rg==", + "dependencies": { + "@walletconnect/jsonrpc-types": "^1.0.2", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/relay-api/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/relay-auth": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@walletconnect/relay-auth/-/relay-auth-1.0.4.tgz", + "integrity": "sha512-kKJcS6+WxYq5kshpPaxGHdwf5y98ZwbfuS4EE/NkQzqrDFm5Cj+dP8LofzWvjrrLkZq7Afy7WrQMXdLy8Sx7HQ==", + "dependencies": { + "@stablelib/ed25519": "^1.0.2", + "@stablelib/random": "^1.0.1", + "@walletconnect/safe-json": "^1.0.1", + "@walletconnect/time": "^1.0.2", + "tslib": "1.14.1", + "uint8arrays": "^3.0.0" + } + }, + "node_modules/@walletconnect/relay-auth/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/safe-json": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.2.tgz", + "integrity": "sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA==", + "dependencies": { + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/safe-json/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/sign-client": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.10.0.tgz", + "integrity": "sha512-hbDljDS53kR/It3oXD91UkcOsT6diNnW5+Zzksm0YEfwww5dop/YfNlcdnc8+jKUhWOL/YDPNQCjzsCSNlVzbw==", + "dependencies": { + "@walletconnect/core": "2.10.0", + "@walletconnect/events": "^1.0.1", + "@walletconnect/heartbeat": "1.2.1", + "@walletconnect/jsonrpc-utils": "1.0.8", + "@walletconnect/logger": "^2.0.1", + "@walletconnect/time": "^1.0.2", + "@walletconnect/types": "2.10.0", + "@walletconnect/utils": "2.10.0", + "events": "^3.3.0" + } + }, + "node_modules/@walletconnect/time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/time/-/time-1.0.2.tgz", + "integrity": "sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==", + "dependencies": { + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/time/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/types": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.10.0.tgz", + "integrity": "sha512-kSTA/WZnbKdEbvbXSW16Ty6dOSzOZCHnGg6JH7q1MuraalD2HuNg00lVVu7QAZ/Rj1Gn9DAkrgP5Wd5a8Xq//Q==", + "dependencies": { + "@walletconnect/events": "^1.0.1", + "@walletconnect/heartbeat": "1.2.1", + "@walletconnect/jsonrpc-types": "1.0.3", + "@walletconnect/keyvaluestorage": "^1.0.2", + "@walletconnect/logger": "^2.0.1", + "events": "^3.3.0" + } + }, + "node_modules/@walletconnect/universal-provider": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.10.0.tgz", + "integrity": "sha512-jtVWf+AeTCqBcB3lCmWkv3bvSmdRCkQdo67GNoT5y6/pvVHMxfjgrJNBOUsWQMxpREpWDpZ993X0JRjsYVsMcA==", + "dependencies": { + "@walletconnect/jsonrpc-http-connection": "^1.0.7", + "@walletconnect/jsonrpc-provider": "1.0.13", + "@walletconnect/jsonrpc-types": "^1.0.2", + "@walletconnect/jsonrpc-utils": "^1.0.7", + "@walletconnect/logger": "^2.0.1", + "@walletconnect/sign-client": "2.10.0", + "@walletconnect/types": "2.10.0", + "@walletconnect/utils": "2.10.0", + "events": "^3.3.0" + } + }, + "node_modules/@walletconnect/utils": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.10.0.tgz", + "integrity": "sha512-9GRyEz/7CJW+G04RvrjPET5k7hOEsB9b3fF9cWDk/iDCxSWpbkU/hv/urRB36C+gvQMAZgIZYX3dHfzJWkY/2g==", + "dependencies": { + "@stablelib/chacha20poly1305": "1.0.1", + "@stablelib/hkdf": "1.0.1", + "@stablelib/random": "^1.0.2", + "@stablelib/sha256": "1.0.1", + "@stablelib/x25519": "^1.0.3", + "@walletconnect/relay-api": "^1.0.9", + "@walletconnect/safe-json": "^1.0.2", + "@walletconnect/time": "^1.0.2", + "@walletconnect/types": "2.10.0", + "@walletconnect/window-getters": "^1.0.1", + "@walletconnect/window-metadata": "^1.0.1", + "detect-browser": "5.3.0", + "query-string": "7.1.3", + "uint8arrays": "^3.1.0" + } + }, + "node_modules/@walletconnect/window-getters": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.1.tgz", + "integrity": "sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==", + "dependencies": { + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/window-getters/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@walletconnect/window-metadata": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz", + "integrity": "sha512-9koTqyGrM2cqFRW517BPY/iEtUDx2r1+Pwwu5m7sJ7ka79wi3EyqhqcICk/yDmv6jAS1rjKgTKXlEhanYjijcA==", + "dependencies": { + "@walletconnect/window-getters": "^1.0.1", + "tslib": "1.14.1" + } + }, + "node_modules/@walletconnect/window-metadata/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@wry/context": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@wry/context/-/context-0.6.1.tgz", + "integrity": "sha512-LOmVnY1iTU2D8tv4Xf6MVMZZ+juIJ87Kt/plMijjN20NMAXGmH4u8bS1t0uT74cZ5gwpocYueV58YwyI8y+GKw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wry/equality": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@wry/equality/-/equality-0.5.7.tgz", + "integrity": "sha512-BRFORjsTuQv5gxcXsuDXx6oGRhuVsEGwZy6LOzRRfgu+eSfxbhUQ9L9YtSEIuIjY/o7g3iWFjrc5eSY1GXP2Dw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wry/trie": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@wry/trie/-/trie-0.3.2.tgz", + "integrity": "sha512-yRTyhWSls2OY/pYLfwff867r8ekooZ4UI+/gxot5Wj8EFwSf2rG+n+Mo/6LoLQm1TKA4GRj2+LCpbfS937dClQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/aes-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", + "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/apollo-link": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/apollo-link/-/apollo-link-1.2.14.tgz", + "integrity": "sha512-p67CMEFP7kOG1JZ0ZkYZwRDa369w5PIjtMjvrQd/HnIV8FRsHRqLqK+oAZQnFa1DDdZtOtHTi+aMIW6EatC2jg==", + "dependencies": { + "apollo-utilities": "^1.3.0", + "ts-invariant": "^0.4.0", + "tslib": "^1.9.3", + "zen-observable-ts": "^0.8.21" + }, + "peerDependencies": { + "graphql": "^0.11.3 || ^0.12.3 || ^0.13.0 || ^14.0.0 || ^15.0.0" + } + }, + "node_modules/apollo-link-ws": { + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/apollo-link-ws/-/apollo-link-ws-1.0.20.tgz", + "integrity": "sha512-mjSFPlQxmoLArpHBeUb2Xj+2HDYeTaJqFGOqQ+I8NVJxgL9lJe84PDWcPah/yMLv3rB7QgBDSuZ0xoRFBPlySw==", + "dependencies": { + "apollo-link": "^1.2.14", + "tslib": "^1.9.3" + }, + "peerDependencies": { + "subscriptions-transport-ws": "^0.9.0" + } + }, + "node_modules/apollo-link-ws/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/apollo-link/node_modules/ts-invariant": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz", + "integrity": "sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==", + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/apollo-link/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/apollo-link/node_modules/zen-observable-ts": { + "version": "0.8.21", + "resolved": "https://registry.npmjs.org/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz", + "integrity": "sha512-Yj3yXweRc8LdRMrCC8nIc4kkjWecPAUVh0TI0OUrWXx6aX790vLcDlWca6I4vsyCGH3LpWxq0dJRcMOFoVqmeg==", + "dependencies": { + "tslib": "^1.9.3", + "zen-observable": "^0.8.0" + } + }, + "node_modules/apollo-utilities": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.3.4.tgz", + "integrity": "sha512-pk2hiWrCXMAy2fRPwEyhvka+mqwzeP60Jr1tRYi5xru+3ko94HI9o6lK0CT33/w4RDlxWchmdhDCrvdr+pHCig==", + "dependencies": { + "@wry/equality": "^0.1.2", + "fast-json-stable-stringify": "^2.0.0", + "ts-invariant": "^0.4.0", + "tslib": "^1.10.0" + }, + "peerDependencies": { + "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0" + } + }, + "node_modules/apollo-utilities/node_modules/@wry/equality": { + "version": "0.1.11", + "resolved": "https://registry.npmjs.org/@wry/equality/-/equality-0.1.11.tgz", + "integrity": "sha512-mwEVBDUVODlsQQ5dfuLUS5/Tf7jqUKyhKYHmVi4fPB6bDMOfWvUPJmKgS1Z7Za/sOI3vzWt4+O7yCiL/70MogA==", + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/apollo-utilities/node_modules/ts-invariant": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz", + "integrity": "sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==", + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/apollo-utilities/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlastindex": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", + "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", + "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-array-buffer": "^3.0.2", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ethersproject/basex": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", - "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "engines": { + "node": "*" + } + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/atomic-sleep": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", + "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.1.tgz", + "integrity": "sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/properties": "^5.7.0" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/@ethersproject/bignumber": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", - "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "bn.js": "^5.2.1" + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "eslint": ">= 4.12.1" } }, - "node_modules/@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", + "node_modules/babel-eslint/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/backo2": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", + "peer": true + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "funding": [ { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } - ], + ] + }, + "node_modules/bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" + }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/bignumber.js": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz", + "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "node_modules/bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", "dependencies": { - "@ethersproject/logger": "^5.7.0" + "big-integer": "^1.6.44" + }, + "engines": { + "node": ">= 5.10.0" } }, - "node_modules/@ethersproject/constants": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", - "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dependencies": { - "@ethersproject/bignumber": "^5.7.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@ethersproject/contracts": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", - "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dependencies": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0" + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@ethersproject/hash": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", - "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" + }, + "node_modules/browserslist": { + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", "funding": [ { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" + "type": "github", + "url": "https://github.com/sponsors/ai" } ], + "peer": true, "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/@ethersproject/hdnode": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", - "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", "funding": [ { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } ], "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@ethersproject/json-wallets": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", - "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/bundle-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", + "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "aes-js": "3.0.0", - "scrypt-js": "3.0.1" + "run-applescript": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "js-sha3": "0.8.0" + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001547", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001547.tgz", + "integrity": "sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==", "funding": [ { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/networks": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", - "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" }, { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" + "type": "github", + "url": "https://github.com/sponsors/ai" } ], + "peer": true + }, + "node_modules/chai": { + "version": "4.3.10", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", + "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", "dependencies": { - "@ethersproject/logger": "^5.7.0" + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@ethersproject/pbkdf2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", - "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/sha2": "^5.7.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@ethersproject/properties": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", - "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "dependencies": { - "@ethersproject/logger": "^5.7.0" + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" } }, - "node_modules/@ethersproject/providers": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.0.tgz", - "integrity": "sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA==", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "funding": [ { "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" + "url": "https://paulmillr.com/funding/" } ], "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", - "bech32": "1.1.4", - "ws": "7.4.6" - } - }, - "node_modules/@ethersproject/providers/node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, "engines": { - "node": ">=8.3.0" + "node": ">= 8.10.0" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": ">= 6" } }, - "node_modules/@ethersproject/random": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", - "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/class-transformer": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", + "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" + }, + "node_modules/class-validator": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/class-validator/-/class-validator-0.14.0.tgz", + "integrity": "sha512-ct3ltplN8I9fOwUd8GrP8UQixwff129BkEtuWDKL5W45cQuLd19xqmTLu5ge78YDm/fdje6FMt0hGOhl0lii3A==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@types/validator": "^13.7.10", + "libphonenumber-js": "^1.10.14", + "validator": "^13.7.0" } }, - "node_modules/@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@ethersproject/sha2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", - "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "hash.js": "1.1.7" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/@ethersproject/signing-key": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", - "integrity": "sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "bn.js": "^5.2.1", - "elliptic": "6.5.4", - "hash.js": "1.1.7" + "color-name": "1.1.3" } }, - "node_modules/@ethersproject/solidity": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", - "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "node_modules/@ethersproject/strings": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", - "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "engines": { + "node": ">=14" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/contains-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", + "integrity": "sha512-OKZnPGeMQy2RPaUIBPFFd71iNf4791H12MCRuVQDnzGRwCYNYmTDy5pdafo2SLAcEMKzTOQnLWG4QdcjeJUMEg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "peer": true + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dependencies": { + "node-fetch": "2.6.7" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/@ethersproject/transactions": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", - "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0" + "node_modules/dateformat": { + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", + "integrity": "sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==", + "engines": { + "node": "*" } }, - "node_modules/@ethersproject/units": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", - "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/@ethersproject/wallet": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", - "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/json-wallets": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" + "node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ethersproject/web": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", - "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deep-eql": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", "dependencies": { - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@ethersproject/wordlists": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", - "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/default-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", + "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "bundle-name": "^3.0.0", + "default-browser-id": "^3.0.0", + "execa": "^7.1.1", + "titleize": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@graphql-typed-document-node/core": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@graphql-typed-document-node/core/-/core-3.2.0.tgz", - "integrity": "sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==", - "peerDependencies": { - "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0" + "node_modules/default-browser-id": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", + "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", + "dependencies": { + "bplist-parser": "^0.2.0", + "untildify": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "node_modules/define-data-property": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.0.tgz", + "integrity": "sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==", "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" }, "engines": { - "node": ">=10.10.0" + "node": ">= 0.4" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", "engines": { - "node": ">=12.22" + "node": ">=12" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@humanwhocodes/object-schema": { + "node_modules/define-properties": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "engines": { - "node": ">=6.0.0" + "node": ">=0.4.0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "node_modules/detect-browser": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz", + "integrity": "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==" + }, + "node_modules/diff": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", + "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", "engines": { - "node": ">=6.0.0" + "node": ">=0.3.1" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, "engines": { "node": ">=6.0.0" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" + "node_modules/dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" } }, - "node_modules/@lifi/sdk": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@lifi/sdk/-/sdk-2.2.3.tgz", - "integrity": "sha512-k5KFK5SRRqA1hGrQkkWPPhM0AYciAFyu6GLCJdDFUK6HM+No4qDQWT359K9mGU6FrXVhPMds58Imex/lj/XReQ==", + "node_modules/duplexify": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", + "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", "dependencies": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/contracts": "^5.7.0", - "@lifi/types": "^8.0.4", - "bignumber.js": "^9.1.1", - "eth-rpc-errors": "^4.0.3", - "ethers": "^5.7.2" + "end-of-stream": "^1.4.1", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1", + "stream-shift": "^1.0.0" } }, - "node_modules/@lifi/sdk/node_modules/@ethersproject/providers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", - "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", - "bech32": "1.1.4", - "ws": "7.4.6" - } + "node_modules/electron-to-chromium": { + "version": "1.4.551", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.551.tgz", + "integrity": "sha512-/Ng/W/kFv7wdEHYzxdK7Cv0BHEGSkSB3M0Ssl8Ndr1eMiYeas/+Mv4cNaDqamqWx6nd2uQZfPz6g25z25M/sdw==", + "peer": true }, - "node_modules/@lifi/sdk/node_modules/ethers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", - "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dependencies": { - "@ethersproject/abi": "5.7.0", - "@ethersproject/abstract-provider": "5.7.0", - "@ethersproject/abstract-signer": "5.7.0", - "@ethersproject/address": "5.7.0", - "@ethersproject/base64": "5.7.0", - "@ethersproject/basex": "5.7.0", - "@ethersproject/bignumber": "5.7.0", - "@ethersproject/bytes": "5.7.0", - "@ethersproject/constants": "5.7.0", - "@ethersproject/contracts": "5.7.0", - "@ethersproject/hash": "5.7.0", - "@ethersproject/hdnode": "5.7.0", - "@ethersproject/json-wallets": "5.7.0", - "@ethersproject/keccak256": "5.7.0", - "@ethersproject/logger": "5.7.0", - "@ethersproject/networks": "5.7.1", - "@ethersproject/pbkdf2": "5.7.0", - "@ethersproject/properties": "5.7.0", - "@ethersproject/providers": "5.7.2", - "@ethersproject/random": "5.7.0", - "@ethersproject/rlp": "5.7.0", - "@ethersproject/sha2": "5.7.0", - "@ethersproject/signing-key": "5.7.0", - "@ethersproject/solidity": "5.7.0", - "@ethersproject/strings": "5.7.0", - "@ethersproject/transactions": "5.7.0", - "@ethersproject/units": "5.7.0", - "@ethersproject/wallet": "5.7.0", - "@ethersproject/web": "5.7.1", - "@ethersproject/wordlists": "5.7.0" + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" } }, - "node_modules/@lifi/sdk/node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "node_modules/@lifi/types": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/@lifi/types/-/types-8.7.1.tgz", - "integrity": "sha512-l7PO+0nk9bWDdixryYqQH6P868WLC6KLZD2+RizVv16Vw65X7I46aogyssq0Isz3oPiRing8m+haIdx+9Kdijw==", - "dependencies": { - "ethers": "^5.7.2" - } + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, - "node_modules/@lifi/types/node_modules/@ethersproject/providers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", - "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", - "bech32": "1.1.4", - "ws": "7.4.6" + "once": "^1.4.0" } }, - "node_modules/@lifi/types/node_modules/ethers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", - "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/erc-20-abi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/erc-20-abi/-/erc-20-abi-1.0.0.tgz", + "integrity": "sha512-X+kdxwbfegJ5quNHVyJPf72Y8g+rpurR3vA+K2b4jVUuAl3qHMYxnR7ZOJRC/T7kQu3V8XU4/U4mIJ+w5wUaeQ==" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { - "@ethersproject/abi": "5.7.0", - "@ethersproject/abstract-provider": "5.7.0", - "@ethersproject/abstract-signer": "5.7.0", - "@ethersproject/address": "5.7.0", - "@ethersproject/base64": "5.7.0", - "@ethersproject/basex": "5.7.0", - "@ethersproject/bignumber": "5.7.0", - "@ethersproject/bytes": "5.7.0", - "@ethersproject/constants": "5.7.0", - "@ethersproject/contracts": "5.7.0", - "@ethersproject/hash": "5.7.0", - "@ethersproject/hdnode": "5.7.0", - "@ethersproject/json-wallets": "5.7.0", - "@ethersproject/keccak256": "5.7.0", - "@ethersproject/logger": "5.7.0", - "@ethersproject/networks": "5.7.1", - "@ethersproject/pbkdf2": "5.7.0", - "@ethersproject/properties": "5.7.0", - "@ethersproject/providers": "5.7.2", - "@ethersproject/random": "5.7.0", - "@ethersproject/rlp": "5.7.0", - "@ethersproject/sha2": "5.7.0", - "@ethersproject/signing-key": "5.7.0", - "@ethersproject/solidity": "5.7.0", - "@ethersproject/strings": "5.7.0", - "@ethersproject/transactions": "5.7.0", - "@ethersproject/units": "5.7.0", - "@ethersproject/wallet": "5.7.0", - "@ethersproject/web": "5.7.1", - "@ethersproject/wordlists": "5.7.0" + "is-arrayish": "^0.2.1" } }, - "node_modules/@lifi/types/node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "engines": { - "node": ">=8.3.0" + "node_modules/es-abstract": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.2.tgz", + "integrity": "sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "arraybuffer.prototype.slice": "^1.0.2", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.1", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.12", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "safe-array-concat": "^1.0.1", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.8", + "string.prototype.trimend": "^1.0.7", + "string.prototype.trimstart": "^1.0.7", + "typed-array-buffer": "^1.0.0", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.11" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "engines": { + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@nerdwallet/apollo-cache-policies": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@nerdwallet/apollo-cache-policies/-/apollo-cache-policies-1.2.1.tgz", - "integrity": "sha512-B9ffnsNadLJ4Ge6l92lwVDLgzSmen8MqZhZenK4ocQQ7x1vctOdVSffXtmJUCYb98/KYHNQRskj0xgnS1+dlmw==", + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", "dependencies": { - "@types/graphql": "^14.5.0", - "@types/lodash": "^4.14.168", - "@types/uuid": "^7.0.4", - "graphql": "^15.5.0", - "lodash": "^4.17.20", - "typescript": "^4.3.2", - "uuid": "^7.0.3" + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" }, - "peerDependencies": { - "@apollo/client": "^3.3.0" + "engines": { + "node": ">= 0.4" } }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dependencies": { - "eslint-scope": "5.1.1" + "has": "^1.0.3" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">= 8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "engines": { - "node": ">= 8" + "node": ">=6" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "engines": { - "node": ">= 8" + "node": ">=0.8.0" } }, - "node_modules/@pkgr/utils": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", - "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", + "node_modules/eslint": { + "version": "8.51.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", + "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", "dependencies": { - "cross-spawn": "^7.0.3", - "fast-glob": "^3.3.0", - "is-glob": "^4.0.3", - "open": "^9.1.0", - "picocolors": "^1.0.0", - "tslib": "^2.6.0" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.51.0", + "@humanwhocodes/config-array": "^0.11.11", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/unts" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@reactivex/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/@reactivex/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-xZIV2JgHhWoVPm3uVcFbZDRVJfx2hgqmuTX7J4MuKaZ+j5jN29agniCPBwrlCmpA15/zLKcPi7/bogt0ZwOFyA==", + "node_modules/eslint-config-esnext": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-esnext/-/eslint-config-esnext-4.1.0.tgz", + "integrity": "sha512-GhfVEXdqYKEIIj7j+Fw2SQdL9qyZMekgXfq6PyXM66cQw0B435ddjz3P3kxOBVihMRJ0xGYjosaveQz5Y6z0uA==", "dependencies": { - "tslib": "^1.9.0" + "babel-eslint": "^10.0.1", + "eslint": "^6.8.0", + "eslint-plugin-babel": "^5.2.1", + "eslint-plugin-import": "^2.14.0" + }, + "peerDependencies": { + "eslint": "^6.0.0" + } + }, + "node_modules/eslint-config-esnext/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" }, "engines": { - "npm": ">=2.0.0" + "node": ">=0.4.0" } }, - "node_modules/@reactivex/rxjs/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@stablelib/aead": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/aead/-/aead-1.0.1.tgz", - "integrity": "sha512-q39ik6sxGHewqtO0nP4BuSe3db5G1fEJE8ukvngS2gLkBXyy6E7pLubhbYgnkDFv6V8cWaxcE4Xn0t6LWcJkyg==" - }, - "node_modules/@stablelib/binary": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/binary/-/binary-1.0.1.tgz", - "integrity": "sha512-ClJWvmL6UBM/wjkvv/7m5VP3GMr9t0osr4yVgLZsLCOz4hGN9gIAFEqnJ0TsSMAN+n840nf2cHZnA5/KFqHC7Q==", - "dependencies": { - "@stablelib/int": "^1.0.1" + "node_modules/eslint-config-esnext/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" } }, - "node_modules/@stablelib/bytes": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/bytes/-/bytes-1.0.1.tgz", - "integrity": "sha512-Kre4Y4kdwuqL8BR2E9hV/R5sOrUj6NanZaZis0V6lX5yzqC3hBuVSDXUIBqQv/sCpmuWRiHLwqiT1pqqjuBXoQ==" - }, - "node_modules/@stablelib/chacha": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/chacha/-/chacha-1.0.1.tgz", - "integrity": "sha512-Pmlrswzr0pBzDofdFuVe1q7KdsHKhhU24e8gkEwnTGOmlC7PADzLVxGdn2PoNVBBabdg0l/IfLKg6sHAbTQugg==", + "node_modules/eslint-config-esnext/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "sprintf-js": "~1.0.2" } }, - "node_modules/@stablelib/chacha20poly1305": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/chacha20poly1305/-/chacha20poly1305-1.0.1.tgz", - "integrity": "sha512-MmViqnqHd1ymwjOQfghRKw2R/jMIGT3wySN7cthjXCBdO+qErNPUBnRzqNpnvIwg7JBCg3LdeCZZO4de/yEhVA==", + "node_modules/eslint-config-esnext/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dependencies": { - "@stablelib/aead": "^1.0.1", - "@stablelib/binary": "^1.0.1", - "@stablelib/chacha": "^1.0.1", - "@stablelib/constant-time": "^1.0.1", - "@stablelib/poly1305": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" } }, - "node_modules/@stablelib/constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/constant-time/-/constant-time-1.0.1.tgz", - "integrity": "sha512-tNOs3uD0vSJcK6z1fvef4Y+buN7DXhzHDPqRLSXUel1UfqMB1PWNsnnAezrKfEwTLpN0cGH2p9NNjs6IqeD0eg==" - }, - "node_modules/@stablelib/ed25519": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@stablelib/ed25519/-/ed25519-1.0.3.tgz", - "integrity": "sha512-puIMWaX9QlRsbhxfDc5i+mNPMY+0TmQEskunY1rZEBPi1acBCVQAhnsk/1Hk50DGPtVsZtAWQg4NHGlVaO9Hqg==", - "dependencies": { - "@stablelib/random": "^1.0.2", - "@stablelib/sha512": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "node_modules/eslint-config-esnext/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" } }, - "node_modules/@stablelib/hash": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/hash/-/hash-1.0.1.tgz", - "integrity": "sha512-eTPJc/stDkdtOcrNMZ6mcMK1e6yBbqRBaNW55XA1jU8w/7QdnCF0CmMmOD1m7VSkBR44PWrMHU2l6r8YEQHMgg==" - }, - "node_modules/@stablelib/hkdf": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/hkdf/-/hkdf-1.0.1.tgz", - "integrity": "sha512-SBEHYE16ZXlHuaW5RcGk533YlBj4grMeg5TooN80W3NpcHRtLZLLXvKyX0qcRFxf+BGDobJLnwkvgEwHIDBR6g==", + "node_modules/eslint-config-esnext/node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", "dependencies": { - "@stablelib/hash": "^1.0.1", - "@stablelib/hmac": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@stablelib/hmac": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/hmac/-/hmac-1.0.1.tgz", - "integrity": "sha512-V2APD9NSnhVpV/QMYgCVMIYKiYG6LSqw1S65wxVoirhU/51ACio6D4yDVSwMzuTJXWZoVHbDdINioBwKy5kVmA==", + "node_modules/eslint-config-esnext/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", "dependencies": { - "@stablelib/constant-time": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@stablelib/int": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/int/-/int-1.0.1.tgz", - "integrity": "sha512-byr69X/sDtDiIjIV6m4roLVWnNNlRGzsvxw+agj8CIEazqWGOQp2dTYgQhtyVXV9wpO6WyXRQUzLV/JRNumT2w==" - }, - "node_modules/@stablelib/keyagreement": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/keyagreement/-/keyagreement-1.0.1.tgz", - "integrity": "sha512-VKL6xBwgJnI6l1jKrBAfn265cspaWBPAPEc62VBQrWHLqVgNRE09gQ/AnOEyKUWrrqfD+xSQ3u42gJjLDdMDQg==", - "dependencies": { - "@stablelib/bytes": "^1.0.1" + "node_modules/eslint-config-esnext/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" } }, - "node_modules/@stablelib/poly1305": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/poly1305/-/poly1305-1.0.1.tgz", - "integrity": "sha512-1HlG3oTSuQDOhSnLwJRKeTRSAdFNVB/1djy2ZbS35rBSJ/PFqx9cf9qatinWghC2UbfOYD8AcrtbUQl8WoxabA==", + "node_modules/eslint-config-esnext/node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "dependencies": { - "@stablelib/constant-time": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@stablelib/random": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@stablelib/random/-/random-1.0.2.tgz", - "integrity": "sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w==", + "node_modules/eslint-config-esnext/node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@stablelib/sha256": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/sha256/-/sha256-1.0.1.tgz", - "integrity": "sha512-GIIH3e6KH+91FqGV42Kcj71Uefd/QEe7Dy42sBTeqppXV95ggCcxLTk39bEr+lZfJmp+ghsR07J++ORkRELsBQ==", + "node_modules/eslint-config-esnext/node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@stablelib/sha512": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/sha512/-/sha512-1.0.1.tgz", - "integrity": "sha512-13gl/iawHV9zvDKciLo1fQ8Bgn2Pvf7OV6amaRVKiq3pjQ3UmEpXxWiAfV8tYjUpeZroBxtyrwtdooQT/i3hzw==", + "node_modules/eslint-config-esnext/node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + }, + "node_modules/eslint-config-esnext/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dependencies": { - "@stablelib/binary": "^1.0.1", - "@stablelib/hash": "^1.0.1", - "@stablelib/wipe": "^1.0.1" + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/@stablelib/wipe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stablelib/wipe/-/wipe-1.0.1.tgz", - "integrity": "sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg==" - }, - "node_modules/@stablelib/x25519": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@stablelib/x25519/-/x25519-1.0.3.tgz", - "integrity": "sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==", + "node_modules/eslint-config-esnext/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "dependencies": { - "@stablelib/keyagreement": "^1.0.1", - "@stablelib/random": "^1.0.2", - "@stablelib/wipe": "^1.0.1" + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@thehubbleproject/bls": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/@thehubbleproject/bls/-/bls-0.5.1.tgz", - "integrity": "sha512-g5zeMZ8js/yg6MjFoC+pt0eqfCL2jC46yLY1LbKNriyqftB1tE3jpG/FMMDIW3x9/yRg/AgUb8Nluqj15tQs+A==", - "dependencies": { - "ethers": "^5.5.3", - "mcl-wasm": "^1.0.0" + "node_modules/eslint-config-esnext/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" } }, - "node_modules/@types/graphql": { - "version": "14.5.0", - "resolved": "https://registry.npmjs.org/@types/graphql/-/graphql-14.5.0.tgz", - "integrity": "sha512-MOkzsEp1Jk5bXuAsHsUi6BVv0zCO+7/2PTiZMXWDSsMXvNU6w/PLMQT2vHn8hy2i0JqojPz1Sz6rsFjHtsU0lA==", - "deprecated": "This is a stub types definition. graphql provides its own type definitions, so you do not need this installed.", + "node_modules/eslint-config-esnext/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dependencies": { - "graphql": "*" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" - }, - "node_modules/@types/lodash": { - "version": "4.14.199", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.199.tgz", - "integrity": "sha512-Vrjz5N5Ia4SEzWWgIVwnHNEnb1UE1XMkvY5DGXrAeOGE9imk0hgTHh5GyDjLDJi9OTCn9oo9dXH1uToK1VRfrg==" + "node_modules/eslint-config-esnext/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } }, - "node_modules/@types/node": { - "version": "20.8.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.4.tgz", - "integrity": "sha512-ZVPnqU58giiCjSxjVUESDtdPk4QR5WQhhINbc9UBrKLU68MX5BF6kbQzTrkwbolyr0X8ChBpXfavr5mZFKZQ5A==", + "node_modules/eslint-config-esnext/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dependencies": { - "undici-types": "~5.25.1" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/@types/uuid": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-7.0.6.tgz", - "integrity": "sha512-U/wu4HTp6T2dUmKqDtOUKS9cYhawuf8txqKF3Jp1iMDG8fP5HtjSldcN0g4m+/h7XHU1to1/HDCT0qeeUiu0EA==" + "node_modules/eslint-config-esnext/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" + } }, - "node_modules/@types/validator": { - "version": "13.11.2", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.2.tgz", - "integrity": "sha512-nIKVVQKT6kGKysnNt+xLobr+pFJNssJRi2s034wgWeFBUx01fI8BeHTW2TcRp7VcFu9QCYG8IlChTuovcm0oKQ==" + "node_modules/eslint-config-esnext/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "engines": { + "node": ">= 0.8.0" + } }, - "node_modules/@types/zen-observable": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/@types/zen-observable/-/zen-observable-0.8.3.tgz", - "integrity": "sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw==" + "node_modules/eslint-config-esnext/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "engines": { + "node": ">=6.5.0" + } }, - "node_modules/@walletconnect/core": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.10.0.tgz", - "integrity": "sha512-Z8pdorfIMueuiBXLdnf7yloiO9JIiobuxN3j0OTal+MYc4q5/2O7d+jdD1DAXbLi1taJx3x60UXT/FPVkjIqIQ==", + "node_modules/eslint-config-esnext/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "dependencies": { - "@walletconnect/heartbeat": "1.2.1", - "@walletconnect/jsonrpc-provider": "1.0.13", - "@walletconnect/jsonrpc-types": "1.0.3", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/jsonrpc-ws-connection": "1.0.13", - "@walletconnect/keyvaluestorage": "^1.0.2", - "@walletconnect/logger": "^2.0.1", - "@walletconnect/relay-api": "^1.0.9", - "@walletconnect/relay-auth": "^1.0.4", - "@walletconnect/safe-json": "^1.0.2", - "@walletconnect/time": "^1.0.2", - "@walletconnect/types": "2.10.0", - "@walletconnect/utils": "2.10.0", - "events": "^3.3.0", - "lodash.isequal": "4.5.0", - "uint8arrays": "^3.1.0" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "node_modules/@walletconnect/environment": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", - "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==", + "node_modules/eslint-config-esnext/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dependencies": { - "tslib": "1.14.1" + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/@walletconnect/environment/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-esnext/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/@walletconnect/events": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/events/-/events-1.0.1.tgz", - "integrity": "sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==", + "node_modules/eslint-config-esnext/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dependencies": { - "keyvaluestorage-interface": "^1.0.0", - "tslib": "1.14.1" + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@walletconnect/events/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/heartbeat": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@walletconnect/heartbeat/-/heartbeat-1.2.1.tgz", - "integrity": "sha512-yVzws616xsDLJxuG/28FqtZ5rzrTA4gUjdEMTbWB5Y8V1XHRmqq4efAxCw5ie7WjbXFSUyBHaWlMR+2/CpQC5Q==", + "node_modules/eslint-config-esnext/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dependencies": { - "@walletconnect/events": "^1.0.1", - "@walletconnect/time": "^1.0.2", - "tslib": "1.14.1" + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/@walletconnect/heartbeat/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-esnext/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } }, - "node_modules/@walletconnect/jsonrpc-http-connection": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.7.tgz", - "integrity": "sha512-qlfh8fCfu8LOM9JRR9KE0s0wxP6ZG9/Jom8M0qsoIQeKF3Ni0FyV4V1qy/cc7nfI46SLQLSl4tgWSfLiE1swyQ==", + "node_modules/eslint-config-esnext/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dependencies": { - "@walletconnect/jsonrpc-utils": "^1.0.6", - "@walletconnect/safe-json": "^1.0.1", - "cross-fetch": "^3.1.4", - "tslib": "1.14.1" + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "node_modules/@walletconnect/jsonrpc-http-connection/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/jsonrpc-provider": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.13.tgz", - "integrity": "sha512-K73EpThqHnSR26gOyNEL+acEex3P7VWZe6KE12ZwKzAt2H4e5gldZHbjsu2QR9cLeJ8AXuO7kEMOIcRv1QEc7g==", + "node_modules/eslint-config-node": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-node/-/eslint-config-node-4.1.0.tgz", + "integrity": "sha512-Wz17xV5O2WFG8fGdMYEBdbiL6TL7YNJSJvSX9V4sXQownewfYmoqlly7wxqLkOUv/57pq6LnnotMiQQrrPjCqQ==", "dependencies": { - "@walletconnect/jsonrpc-utils": "^1.0.8", - "@walletconnect/safe-json": "^1.0.2", - "tslib": "1.14.1" + "eslint": "^6.8.0", + "eslint-config-esnext": "^4.1.0" + }, + "peerDependencies": { + "eslint": "^6.0.0" } }, - "node_modules/@walletconnect/jsonrpc-provider/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-node/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "node_modules/@walletconnect/jsonrpc-types": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.3.tgz", - "integrity": "sha512-iIQ8hboBl3o5ufmJ8cuduGad0CQm3ZlsHtujv9Eu16xq89q+BG7Nh5VLxxUgmtpnrePgFkTwXirCTkwJH1v+Yw==", - "dependencies": { - "keyvaluestorage-interface": "^1.0.0", - "tslib": "1.14.1" + "node_modules/eslint-config-node/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" } }, - "node_modules/@walletconnect/jsonrpc-types/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/jsonrpc-utils": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz", - "integrity": "sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==", + "node_modules/eslint-config-node/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dependencies": { - "@walletconnect/environment": "^1.0.1", - "@walletconnect/jsonrpc-types": "^1.0.3", - "tslib": "1.14.1" + "sprintf-js": "~1.0.2" } }, - "node_modules/@walletconnect/jsonrpc-utils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/jsonrpc-ws-connection": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.13.tgz", - "integrity": "sha512-mfOM7uFH4lGtQxG+XklYuFBj6dwVvseTt5/ahOkkmpcAEgz2umuzu7fTR+h5EmjQBdrmYyEBOWADbeaFNxdySg==", + "node_modules/eslint-config-node/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dependencies": { - "@walletconnect/jsonrpc-utils": "^1.0.6", - "@walletconnect/safe-json": "^1.0.2", - "events": "^3.3.0", - "tslib": "1.14.1", - "ws": "^7.5.1" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" } }, - "node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-node/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" + } }, - "node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "engines": { - "node": ">=8.3.0" + "node_modules/eslint-config-node/node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "bin": { + "eslint": "bin/eslint.js" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@walletconnect/keyvaluestorage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.0.2.tgz", - "integrity": "sha512-U/nNG+VLWoPFdwwKx0oliT4ziKQCEoQ27L5Hhw8YOFGA2Po9A9pULUYNWhDgHkrb0gYDNt//X7wABcEWWBd3FQ==", + "node_modules/eslint-config-node/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", "dependencies": { - "safe-json-utils": "^1.1.1", - "tslib": "1.14.1" + "eslint-visitor-keys": "^1.1.0" }, - "peerDependencies": { - "@react-native-async-storage/async-storage": "1.x", - "lokijs": "1.x" + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-config-node/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-config-node/node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dependencies": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" }, - "peerDependenciesMeta": { - "@react-native-async-storage/async-storage": { - "optional": true - }, - "lokijs": { - "optional": true - } + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@walletconnect/keyvaluestorage/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-node/node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } }, - "node_modules/@walletconnect/logger": { + "node_modules/eslint-config-node/node_modules/flat-cache": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-2.0.1.tgz", - "integrity": "sha512-SsTKdsgWm+oDTBeNE/zHxxr5eJfZmE9/5yp/Ku+zJtcTAjELb3DXueWkDXmE9h8uHIbJzIb5wj5lPdzyrjT6hQ==", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", "dependencies": { - "pino": "7.11.0", - "tslib": "1.14.1" + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@walletconnect/logger/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-node/node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" }, - "node_modules/@walletconnect/relay-api": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.9.tgz", - "integrity": "sha512-Q3+rylJOqRkO1D9Su0DPE3mmznbAalYapJ9qmzDgK28mYF9alcP3UwG/og5V7l7CFOqzCLi7B8BvcBUrpDj0Rg==", + "node_modules/eslint-config-node/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dependencies": { - "@walletconnect/jsonrpc-types": "^1.0.2", - "tslib": "1.14.1" + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/@walletconnect/relay-api/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/relay-auth": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@walletconnect/relay-auth/-/relay-auth-1.0.4.tgz", - "integrity": "sha512-kKJcS6+WxYq5kshpPaxGHdwf5y98ZwbfuS4EE/NkQzqrDFm5Cj+dP8LofzWvjrrLkZq7Afy7WrQMXdLy8Sx7HQ==", + "node_modules/eslint-config-node/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "dependencies": { - "@stablelib/ed25519": "^1.0.2", - "@stablelib/random": "^1.0.1", - "@walletconnect/safe-json": "^1.0.1", - "@walletconnect/time": "^1.0.2", - "tslib": "1.14.1", - "uint8arrays": "^3.0.0" + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@walletconnect/relay-auth/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-node/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" + } }, - "node_modules/@walletconnect/safe-json": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.2.tgz", - "integrity": "sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA==", + "node_modules/eslint-config-node/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dependencies": { - "tslib": "1.14.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@walletconnect/safe-json/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/sign-client": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.10.0.tgz", - "integrity": "sha512-hbDljDS53kR/It3oXD91UkcOsT6diNnW5+Zzksm0YEfwww5dop/YfNlcdnc8+jKUhWOL/YDPNQCjzsCSNlVzbw==", + "node_modules/eslint-config-node/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", "dependencies": { - "@walletconnect/core": "2.10.0", - "@walletconnect/events": "^1.0.1", - "@walletconnect/heartbeat": "1.2.1", - "@walletconnect/jsonrpc-utils": "1.0.8", - "@walletconnect/logger": "^2.0.1", - "@walletconnect/time": "^1.0.2", - "@walletconnect/types": "2.10.0", - "@walletconnect/utils": "2.10.0", - "events": "^3.3.0" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/@walletconnect/time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@walletconnect/time/-/time-1.0.2.tgz", - "integrity": "sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==", + "node_modules/eslint-config-node/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dependencies": { - "tslib": "1.14.1" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/@walletconnect/time/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/types": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.10.0.tgz", - "integrity": "sha512-kSTA/WZnbKdEbvbXSW16Ty6dOSzOZCHnGg6JH7q1MuraalD2HuNg00lVVu7QAZ/Rj1Gn9DAkrgP5Wd5a8Xq//Q==", - "dependencies": { - "@walletconnect/events": "^1.0.1", - "@walletconnect/heartbeat": "1.2.1", - "@walletconnect/jsonrpc-types": "1.0.3", - "@walletconnect/keyvaluestorage": "^1.0.2", - "@walletconnect/logger": "^2.0.1", - "events": "^3.3.0" + "node_modules/eslint-config-node/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" } }, - "node_modules/@walletconnect/universal-provider": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.10.0.tgz", - "integrity": "sha512-jtVWf+AeTCqBcB3lCmWkv3bvSmdRCkQdo67GNoT5y6/pvVHMxfjgrJNBOUsWQMxpREpWDpZ993X0JRjsYVsMcA==", - "dependencies": { - "@walletconnect/jsonrpc-http-connection": "^1.0.7", - "@walletconnect/jsonrpc-provider": "1.0.13", - "@walletconnect/jsonrpc-types": "^1.0.2", - "@walletconnect/jsonrpc-utils": "^1.0.7", - "@walletconnect/logger": "^2.0.1", - "@walletconnect/sign-client": "2.10.0", - "@walletconnect/types": "2.10.0", - "@walletconnect/utils": "2.10.0", - "events": "^3.3.0" + "node_modules/eslint-config-node/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/@walletconnect/utils": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.10.0.tgz", - "integrity": "sha512-9GRyEz/7CJW+G04RvrjPET5k7hOEsB9b3fF9cWDk/iDCxSWpbkU/hv/urRB36C+gvQMAZgIZYX3dHfzJWkY/2g==", - "dependencies": { - "@stablelib/chacha20poly1305": "1.0.1", - "@stablelib/hkdf": "1.0.1", - "@stablelib/random": "^1.0.2", - "@stablelib/sha256": "1.0.1", - "@stablelib/x25519": "^1.0.3", - "@walletconnect/relay-api": "^1.0.9", - "@walletconnect/safe-json": "^1.0.2", - "@walletconnect/time": "^1.0.2", - "@walletconnect/types": "2.10.0", - "@walletconnect/window-getters": "^1.0.1", - "@walletconnect/window-metadata": "^1.0.1", - "detect-browser": "5.3.0", - "query-string": "7.1.3", - "uint8arrays": "^3.1.0" + "node_modules/eslint-config-node/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "engines": { + "node": ">=6.5.0" } }, - "node_modules/@walletconnect/window-getters": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.1.tgz", - "integrity": "sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==", + "node_modules/eslint-config-node/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "dependencies": { - "tslib": "1.14.1" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "node_modules/@walletconnect/window-getters/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@walletconnect/window-metadata": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz", - "integrity": "sha512-9koTqyGrM2cqFRW517BPY/iEtUDx2r1+Pwwu5m7sJ7ka79wi3EyqhqcICk/yDmv6jAS1rjKgTKXlEhanYjijcA==", + "node_modules/eslint-config-node/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dependencies": { - "@walletconnect/window-getters": "^1.0.1", - "tslib": "1.14.1" + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/@walletconnect/window-metadata/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "node_modules/eslint-config-node/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/@wry/context": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@wry/context/-/context-0.6.1.tgz", - "integrity": "sha512-LOmVnY1iTU2D8tv4Xf6MVMZZ+juIJ87Kt/plMijjN20NMAXGmH4u8bS1t0uT74cZ5gwpocYueV58YwyI8y+GKw==", + "node_modules/eslint-config-node/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dependencies": { - "tslib": "^2.3.0" + "ansi-regex": "^4.1.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/@wry/equality": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/@wry/equality/-/equality-0.5.6.tgz", - "integrity": "sha512-D46sfMTngaYlrH+OspKf8mIJETntFnf6Hsjb0V41jAXJ7Bx2kB8Rv8RCUujuVWYttFtHkUNp7g+FwxNQAr6mXA==", + "node_modules/eslint-config-node/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dependencies": { - "tslib": "^2.3.0" + "prelude-ls": "~1.1.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint-config-node/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "engines": { "node": ">=8" } }, - "node_modules/@wry/trie": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@wry/trie/-/trie-0.3.2.tgz", - "integrity": "sha512-yRTyhWSls2OY/pYLfwff867r8ekooZ4UI+/gxot5Wj8EFwSf2rG+n+Mo/6LoLQm1TKA4GRj2+LCpbfS937dClQ==", + "node_modules/eslint-config-node/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dependencies": { - "tslib": "^2.3.0" + "isexe": "^2.0.0" }, - "engines": { - "node": ">=8" + "bin": { + "which": "bin/which" } }, - "node_modules/acorn": { + "node_modules/eslint-config-prettier": { "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", "bin": { - "acorn": "bin/acorn" + "eslint-config-prettier": "bin/cli.js" }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": ">=7.0.0" } }, - "node_modules/aes-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", - "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==" - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "engines": { - "node": ">=6" + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/eslint-module-utils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", + "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" + "debug": "^3.2.7" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "engines": { - "node": ">=10" + "node": ">=4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "eslint": { + "optional": true + } } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" } }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/eslint-plugin-babel": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-babel/-/eslint-plugin-babel-5.3.1.tgz", + "integrity": "sha512-VsQEr6NH3dj664+EyxJwO4FCYm/00JhYb3Sk3ft8o+fpKuIfQ9TaW6uVUfvwMXHcf/lsnRIoyFPsLMyiWCSL/g==", "dependencies": { - "color-convert": "^1.9.0" + "eslint-rule-composer": "^0.3.0" }, "engines": { "node": ">=4" + }, + "peerDependencies": { + "eslint": ">=4.0.0" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/eslint-plugin-es": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" }, "engines": { - "node": ">= 8" - } - }, - "node_modules/apollo-link": { - "version": "1.2.14", - "resolved": "https://registry.npmjs.org/apollo-link/-/apollo-link-1.2.14.tgz", - "integrity": "sha512-p67CMEFP7kOG1JZ0ZkYZwRDa369w5PIjtMjvrQd/HnIV8FRsHRqLqK+oAZQnFa1DDdZtOtHTi+aMIW6EatC2jg==", - "dependencies": { - "apollo-utilities": "^1.3.0", - "ts-invariant": "^0.4.0", - "tslib": "^1.9.3", - "zen-observable-ts": "^0.8.21" + "node": ">=8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" }, "peerDependencies": { - "graphql": "^0.11.3 || ^0.12.3 || ^0.13.0 || ^14.0.0 || ^15.0.0" + "eslint": ">=4.19.1" } }, - "node_modules/apollo-link-ws": { - "version": "1.0.20", - "resolved": "https://registry.npmjs.org/apollo-link-ws/-/apollo-link-ws-1.0.20.tgz", - "integrity": "sha512-mjSFPlQxmoLArpHBeUb2Xj+2HDYeTaJqFGOqQ+I8NVJxgL9lJe84PDWcPah/yMLv3rB7QgBDSuZ0xoRFBPlySw==", + "node_modules/eslint-plugin-import": { + "version": "2.28.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", + "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", "dependencies": { - "apollo-link": "^1.2.14", - "tslib": "^1.9.3" + "array-includes": "^3.1.6", + "array.prototype.findlastindex": "^1.2.2", + "array.prototype.flat": "^1.3.1", + "array.prototype.flatmap": "^1.3.1", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.7", + "eslint-module-utils": "^2.8.0", + "has": "^1.0.3", + "is-core-module": "^2.13.0", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.6", + "object.groupby": "^1.0.0", + "object.values": "^1.1.6", + "semver": "^6.3.1", + "tsconfig-paths": "^3.14.2" + }, + "engines": { + "node": ">=4" }, "peerDependencies": { - "subscriptions-transport-ws": "^0.9.0" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "node_modules/apollo-link-ws/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/apollo-link/node_modules/ts-invariant": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz", - "integrity": "sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dependencies": { - "tslib": "^1.9.3" + "ms": "^2.1.1" } }, - "node_modules/apollo-link/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/apollo-link/node_modules/zen-observable-ts": { - "version": "0.8.21", - "resolved": "https://registry.npmjs.org/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz", - "integrity": "sha512-Yj3yXweRc8LdRMrCC8nIc4kkjWecPAUVh0TI0OUrWXx6aX790vLcDlWca6I4vsyCGH3LpWxq0dJRcMOFoVqmeg==", + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dependencies": { - "tslib": "^1.9.3", - "zen-observable": "^0.8.0" + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/apollo-utilities": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.3.4.tgz", - "integrity": "sha512-pk2hiWrCXMAy2fRPwEyhvka+mqwzeP60Jr1tRYi5xru+3ko94HI9o6lK0CT33/w4RDlxWchmdhDCrvdr+pHCig==", + "node_modules/eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dependencies": { - "@wry/equality": "^0.1.2", - "fast-json-stable-stringify": "^2.0.0", - "ts-invariant": "^0.4.0", - "tslib": "^1.10.0" + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" + }, + "engines": { + "node": ">=8.10.0" }, "peerDependencies": { - "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0" + "eslint": ">=5.16.0" } }, - "node_modules/apollo-utilities/node_modules/@wry/equality": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/@wry/equality/-/equality-0.1.11.tgz", - "integrity": "sha512-mwEVBDUVODlsQQ5dfuLUS5/Tf7jqUKyhKYHmVi4fPB6bDMOfWvUPJmKgS1Z7Za/sOI3vzWt4+O7yCiL/70MogA==", + "node_modules/eslint-plugin-prettier": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", + "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", "dependencies": { - "tslib": "^1.9.3" + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.5" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/prettier" + }, + "peerDependencies": { + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } } }, - "node_modules/apollo-utilities/node_modules/ts-invariant": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz", - "integrity": "sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==", - "dependencies": { - "tslib": "^1.9.3" + "node_modules/eslint-rule-composer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", + "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", + "engines": { + "node": ">=4.0.0" } }, - "node_modules/apollo-utilities/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-string": "^1.0.7" + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">= 0.4" + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "engines": { - "node": "*" + "url": "https://opencollective.com/eslint" } }, - "node_modules/astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/atomic-sleep": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", - "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "engines": { - "node": ">=8.0.0" + "node": ">=4.0" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/eslint/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dependencies": { + "type-fest": "^0.20.2" + }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/axios": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.1.tgz", - "integrity": "sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==", - "dependencies": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" } }, - "node_modules/babel-eslint": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", - "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", - "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.", + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" - }, - "peerDependencies": { - "eslint": ">= 4.12.1" + "node": ">=8" } }, - "node_modules/babel-eslint/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", - "peer": true - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" - }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "engines": { - "node": ">=0.6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/bignumber.js": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz", - "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, "engines": { - "node": "*" + "node": ">=4" } }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dependencies": { + "estraverse": "^5.1.0" + }, "engines": { - "node": ">=8" + "node": ">=0.10" } }, - "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dependencies": { - "big-integer": "^1.6.44" + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 5.10.0" + "node": ">=4.0" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dependencies": { - "fill-range": "^7.0.1" - }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "engines": { - "node": ">=8" + "node": ">=4.0" } }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==" + "node_modules/eth-rpc-errors": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", + "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", + "dependencies": { + "fast-safe-stringify": "^2.0.6" + } }, - "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "node_modules/ethers": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.0.tgz", + "integrity": "sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA==", "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" }, { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" } ], - "peer": true, "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.13" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "@ethersproject/abi": "5.7.0", + "@ethersproject/abstract-provider": "5.7.0", + "@ethersproject/abstract-signer": "5.7.0", + "@ethersproject/address": "5.7.0", + "@ethersproject/base64": "5.7.0", + "@ethersproject/basex": "5.7.0", + "@ethersproject/bignumber": "5.7.0", + "@ethersproject/bytes": "5.7.0", + "@ethersproject/constants": "5.7.0", + "@ethersproject/contracts": "5.7.0", + "@ethersproject/hash": "5.7.0", + "@ethersproject/hdnode": "5.7.0", + "@ethersproject/json-wallets": "5.7.0", + "@ethersproject/keccak256": "5.7.0", + "@ethersproject/logger": "5.7.0", + "@ethersproject/networks": "5.7.0", + "@ethersproject/pbkdf2": "5.7.0", + "@ethersproject/properties": "5.7.0", + "@ethersproject/providers": "5.7.0", + "@ethersproject/random": "5.7.0", + "@ethersproject/rlp": "5.7.0", + "@ethersproject/sha2": "5.7.0", + "@ethersproject/signing-key": "5.7.0", + "@ethersproject/solidity": "5.7.0", + "@ethersproject/strings": "5.7.0", + "@ethersproject/transactions": "5.7.0", + "@ethersproject/units": "5.7.0", + "@ethersproject/wallet": "5.7.0", + "@ethersproject/web": "5.7.0", + "@ethersproject/wordlists": "5.7.0" } }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "node_modules/ethers/node_modules/@ethersproject/networks": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.0.tgz", + "integrity": "sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA==", "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/feross" + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" }, { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.7.0" + } + }, + "node_modules/ethers/node_modules/@ethersproject/web": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.0.tgz", + "integrity": "sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" }, { - "type": "consulting", - "url": "https://feross.org/support" + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" } ], "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@ethersproject/base64": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "node_modules/eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", + "peer": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" } }, - "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==" + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", "dependencies": { - "run-applescript": "^5.0.0" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8.6.0" } }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "is-glob": "^4.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 6" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "node_modules/fast-redact": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.3.0.tgz", + "integrity": "sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==", "engines": { "node": ">=6" } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001547", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001547.tgz", - "integrity": "sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "peer": true + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } }, - "node_modules/chai": { - "version": "4.3.10", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", - "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/filter-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", + "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "bin": { + "flat": "cli.js" + } }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "node_modules/flat-cache": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", + "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", "dependencies": { - "get-func-name": "^2.0.2" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": "*" + "node": ">=12.0.0" } }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" + }, + "node_modules/follow-redirects": { + "version": "1.15.3", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", + "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", "funding": [ { "type": "individual", - "url": "https://paulmillr.com/funding/" + "url": "https://github.com/sponsors/RubenVerborgh" } ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" + "node": ">=4.0" }, - "engines": { - "node": ">= 6" + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/class-transformer": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", - "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" - }, - "node_modules/class-validator": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/class-validator/-/class-validator-0.14.0.tgz", - "integrity": "sha512-ct3ltplN8I9fOwUd8GrP8UQixwff129BkEtuWDKL5W45cQuLd19xqmTLu5ge78YDm/fdje6FMt0hGOhl0lii3A==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dependencies": { - "@types/validator": "^13.7.10", - "libphonenumber-js": "^1.10.14", - "validator": "^13.7.0" + "is-callable": "^1.1.3" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dependencies": { - "restore-cursor": "^3.1.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, "engines": { - "node": ">= 10" + "node": ">=12" } }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + "node_modules/fsu": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/fsu/-/fsu-1.1.1.tgz", + "integrity": "sha512-xQVsnjJ/5pQtcKh+KjUoZGzVWn4uNkchxTF6Lwjr4Gf7nQr8fmUfhKJ62zE77+xQg9xnxi5KUps7XGs+VC986A==" }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dependencies": { - "delayed-stream": "~1.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "engines": { - "node": ">=14" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==" }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "peer": true + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "dependencies": { - "node-fetch": "2.6.7" + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "peer": true, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "engines": { - "node": ">= 8" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/dateformat": { - "version": "4.6.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", - "integrity": "sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==", + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "engines": { "node": "*" } }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", "dependencies": { - "ms": "2.1.2" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=4" } }, - "node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "engines": { "node": ">=10" }, @@ -3023,244 +5659,166 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/deep-eql": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", - "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dependencies": { - "type-detect": "^4.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" - }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", + "node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=14.16" + "node": "*" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10.13.0" } }, - "node_modules/define-data-property": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.0.tgz", - "integrity": "sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==", - "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" - }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "engines": { - "node": ">= 0.4" + "node": ">=4" } }, - "node_modules/define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dependencies": { + "define-properties": "^1.1.3" + }, "engines": { - "node": ">=12" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" + "get-intrinsic": "^1.1.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "engines": { - "node": ">=0.4.0" - } + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, - "node_modules/detect-browser": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz", - "integrity": "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==" + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==" }, - "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", + "node_modules/graphql": { + "version": "15.8.0", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz", + "integrity": "sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==", "engines": { - "node": ">=0.3.1" + "node": ">= 10.x" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/graphql-tag": { + "version": "2.12.6", + "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", + "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", "dependencies": { - "esutils": "^2.0.2" + "tslib": "^2.1.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=10" + }, + "peerDependencies": { + "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "node_modules/graphql-ws": { + "version": "5.14.0", + "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.14.0.tgz", + "integrity": "sha512-itrUTQZP/TgswR4GSSYuwWUzrE/w5GhbwM2GX3ic2U7aw33jgEsayfIlvaj7/GcIvZgNMzsPTrE5hqPuFUiE5g==", "engines": { - "node": ">=12" + "node": ">=10" }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" + "peerDependencies": { + "graphql": ">=0.11 <=16" } }, - "node_modules/duplexify": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", - "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", - "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" + "node_modules/has": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", + "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", + "engines": { + "node": ">= 0.4.0" } }, - "node_modules/electron-to-chromium": { - "version": "1.4.551", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.551.tgz", - "integrity": "sha512-/Ng/W/kFv7wdEHYzxdK7Cv0BHEGSkSB3M0Ssl8Ndr1eMiYeas/+Mv4cNaDqamqWx6nd2uQZfPz6g25z25M/sdw==", - "peer": true - }, - "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" } }, - "node_modules/erc-20-abi": { + "node_modules/has-property-descriptors": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/erc-20-abi/-/erc-20-abi-1.0.0.tgz", - "integrity": "sha512-X+kdxwbfegJ5quNHVyJPf72Y8g+rpurR3vA+K2b4jVUuAl3qHMYxnR7ZOJRC/T7kQu3V8XU4/U4mIJ+w5wUaeQ==" - }, - "node_modules/es-abstract": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.2.tgz", - "integrity": "sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.11" + "get-intrinsic": "^1.1.1" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", "engines": { "node": ">= 0.4" }, @@ -3268,1039 +5826,1249 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" + "has-symbols": "^1.0.2" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dependencies": { - "has": "^1.0.3" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "engines": { - "node": ">=6" + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", "engines": { - "node": ">=0.8.0" + "node": ">=14.18.0" } }, - "node_modules/eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=0.10.0" } }, - "node_modules/eslint-config-esnext": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-esnext/-/eslint-config-esnext-4.1.0.tgz", - "integrity": "sha512-GhfVEXdqYKEIIj7j+Fw2SQdL9qyZMekgXfq6PyXM66cQw0B435ddjz3P3kxOBVihMRJ0xGYjosaveQz5Y6z0uA==", - "dependencies": { - "babel-eslint": "^10.0.1", - "eslint": "^6.8.0", - "eslint-plugin-babel": "^5.2.1", - "eslint-plugin-import": "^2.14.0" - }, - "peerDependencies": { - "eslint": "^6.0.0" - } + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/eslint-config-esnext/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", "engines": { - "node": ">=0.4.0" + "node": ">= 4" } }, - "node_modules/eslint-config-esnext/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, "engines": { "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-esnext/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dependencies": { - "sprintf-js": "~1.0.2" + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" } }, - "node_modules/eslint-config-esnext/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/eslint-config-esnext/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "bin": { - "semver": "bin/semver" - } + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "node_modules/eslint-config-esnext/node_modules/eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", "dependencies": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, - "bin": { - "eslint": "bin/eslint.js" + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": ">=8" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/eslint-config-esnext/node_modules/eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/eslint-config-esnext/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=4" + "node": ">=7.0.0" } }, - "node_modules/eslint-config-esnext/node_modules/espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { - "node": ">=6.0.0" + "node": ">=8" } }, - "node_modules/eslint-config-esnext/node_modules/file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "node_modules/inquirer/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dependencies": { - "flat-cache": "^2.0.1" + "tslib": "^1.9.0" }, "engines": { - "node": ">=4" + "npm": ">=2.0.0" } }, - "node_modules/eslint-config-esnext/node_modules/flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/eslint-config-esnext/node_modules/flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + "node_modules/inquirer/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/eslint-config-esnext/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", "dependencies": { - "is-glob": "^4.0.1" + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" } }, - "node_modules/eslint-config-esnext/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", "dependencies": { - "type-fest": "^0.8.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-esnext/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, "engines": { - "node": ">= 4" + "node": ">=8" } }, - "node_modules/eslint-config-esnext/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-esnext/node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", + "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "has": "^1.0.3" }, - "engines": { - "node": ">= 0.8.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-esnext/node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-esnext/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "bin": { + "is-docker": "cli.js" + }, "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-esnext/node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "engines": { - "node": ">= 0.8.0" + "node": ">=0.10.0" } }, - "node_modules/eslint-config-esnext/node_modules/regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "engines": { - "node": ">=6.5.0" + "node": ">=8" } }, - "node_modules/eslint-config-esnext/node_modules/rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dependencies": { - "glob": "^7.1.3" + "is-extglob": "^2.1.1" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/eslint-config-esnext/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", "dependencies": { - "shebang-regex": "^1.0.0" + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-esnext/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-esnext/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dependencies": { - "ansi-regex": "^4.1.0" - }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "engines": { - "node": ">=6" + "node": ">=0.12.0" } }, - "node_modules/eslint-config-esnext/node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dependencies": { - "prelude-ls": "~1.1.2" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-esnext/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "engines": { "node": ">=8" } }, - "node_modules/eslint-config-esnext/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { - "isexe": "^2.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, - "bin": { - "which": "bin/which" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-node": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-node/-/eslint-config-node-4.1.0.tgz", - "integrity": "sha512-Wz17xV5O2WFG8fGdMYEBdbiL6TL7YNJSJvSX9V4sXQownewfYmoqlly7wxqLkOUv/57pq6LnnotMiQQrrPjCqQ==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dependencies": { - "eslint": "^6.8.0", - "eslint-config-esnext": "^4.1.0" + "call-bind": "^1.0.2" }, - "peerDependencies": { - "eslint": "^6.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-node/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" - }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "engines": { - "node": ">=0.4.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-node/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-node/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dependencies": { - "sprintf-js": "~1.0.2" + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-node/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "which-typed-array": "^1.1.11" }, "engines": { - "node": ">=4.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-node/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "bin": { - "semver": "bin/semver" + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-node/node_modules/eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dependencies": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-wsl/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "bin": { - "eslint": "bin/eslint.js" + "is-docker": "cli.js" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": ">=8" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-node/node_modules/eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/iterall": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz", + "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==", + "peer": true + }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=6" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/eslint-config-node/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, "engines": { "node": ">=4" } }, - "node_modules/eslint-config-node/node_modules/espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "peer": true, + "bin": { + "json5": "lib/cli.js" }, "engines": { - "node": ">=6.0.0" + "node": ">=6" } }, - "node_modules/eslint-config-node/node_modules/file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dependencies": { - "flat-cache": "^2.0.1" + "universalify": "^2.0.0" }, - "engines": { - "node": ">=4" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/eslint-config-node/node_modules/flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "json-buffer": "3.0.1" + } + }, + "node_modules/keyvaluestorage-interface": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/keyvaluestorage-interface/-/keyvaluestorage-interface-1.0.0.tgz", + "integrity": "sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==" + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=4" + "node": ">= 0.8.0" } }, - "node_modules/eslint-config-node/node_modules/flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + "node_modules/libphonenumber-js": { + "version": "1.10.48", + "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.10.48.tgz", + "integrity": "sha512-Vvcgt4+o8+puIBJZLdMshPYx9nRN3/kTT7HPtOyfYrSQuN9PGBF1KUv0g07fjNzt4E4GuA7FnsLb+WeAMzyRQg==" }, - "node_modules/eslint-config-node/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha512-3p6ZOGNbiX4CdvEd1VcE6yi78UrGNpjHO33noGwHCnT/o2fyllJDepsm8+mFFv/DvtwFHht5HIHSyOy5a+ChVQ==", + "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" }, "engines": { - "node": ">= 6" + "node": ">=4" } }, - "node_modules/eslint-config-node/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dependencies": { - "type-fest": "^0.8.1" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-node/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "engines": { - "node": ">= 4" - } + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "node_modules/eslint-config-node/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/lodash.isempty": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", + "integrity": "sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lodash.isfunction": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", + "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==" + }, + "node_modules/lodash.isobject": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", + "integrity": "sha512-3/Qptq2vr7WeJbB4KHUSKlq8Pl7ASXi3UG6CMbBm8WRtXi8+GHm7mKaU3urfpSEzWe2wCIChs6/sdocUsTKJiA==" + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-node/node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/eslint-config-node/node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/eslint-config-node/node_modules/path-key": { + "node_modules/log-symbols/node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=4" + "node": ">=7.0.0" } }, - "node_modules/eslint-config-node/node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { - "node": ">= 0.8.0" + "node": ">=8" } }, - "node_modules/eslint-config-node/node_modules/regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">=6.5.0" + "node": ">=8" } }, - "node_modules/eslint-config-node/node_modules/rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dependencies": { - "glob": "^7.1.3" + "js-tokens": "^3.0.0 || ^4.0.0" }, "bin": { - "rimraf": "bin.js" + "loose-envify": "cli.js" } }, - "node_modules/eslint-config-node/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "node_modules/loupe": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", + "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", "dependencies": { - "shebang-regex": "^1.0.0" + "get-func-name": "^2.0.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "peer": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/mcl-wasm": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-1.4.0.tgz", + "integrity": "sha512-90Tvmg2NXwnKMgTafA01PRELsYNNRb/F2bj3nzdByTLLMUmgkgL8H/oeWcjZtVVffnBJyNjDcYxY7cdOE/WoHg==", + "dependencies": { + "@types/node": "^20.2.5" }, "engines": { - "node": ">=0.10.0" + "node": ">=14.17" } }, - "node_modules/eslint-config-node/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "node_modules/mcl-wasm/node_modules/@types/node": { + "version": "20.8.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.9.tgz", + "integrity": "sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg==", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/eslint-config-node/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dependencies": { - "ansi-regex": "^4.1.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=6" + "node": ">=8.6" } }, - "node_modules/eslint-config-node/node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dependencies": { - "prelude-ls": "~1.1.2" + "mime-db": "1.52.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.6" } }, - "node_modules/eslint-config-node/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-config-node/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dependencies": { - "isexe": "^2.0.0" + "brace-expansion": "^1.1.7" }, - "bin": { - "which": "bin/which" + "engines": { + "node": "*" } }, - "node_modules/eslint-config-prettier": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", - "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/mocha": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", + "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", "dependencies": { - "ms": "^2.1.1" + "ansi-colors": "4.1.1", + "browser-stdout": "1.3.1", + "chokidar": "3.5.3", + "debug": "4.3.4", + "diff": "5.0.0", + "escape-string-regexp": "4.0.0", + "find-up": "5.0.0", + "glob": "7.2.0", + "he": "1.2.0", + "js-yaml": "4.1.0", + "log-symbols": "4.1.0", + "minimatch": "5.0.1", + "ms": "2.1.3", + "nanoid": "3.3.3", + "serialize-javascript": "6.0.0", + "strip-json-comments": "3.1.1", + "supports-color": "8.1.1", + "workerpool": "6.2.1", + "yargs": "16.2.0", + "yargs-parser": "20.2.4", + "yargs-unparser": "2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" + }, + "engines": { + "node": ">= 14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mochajs" } }, - "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dependencies": { - "debug": "^3.2.7" - }, + "balanced-match": "^1.0.0" + } + }, + "node_modules/mocha/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "engines": { - "node": ">=4" + "node": ">=10" }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dependencies": { - "ms": "^2.1.1" + "node_modules/mocha/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" } }, - "node_modules/eslint-plugin-babel": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-babel/-/eslint-plugin-babel-5.3.1.tgz", - "integrity": "sha512-VsQEr6NH3dj664+EyxJwO4FCYm/00JhYb3Sk3ft8o+fpKuIfQ9TaW6uVUfvwMXHcf/lsnRIoyFPsLMyiWCSL/g==", + "node_modules/mocha/node_modules/minimatch": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", + "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", "dependencies": { - "eslint-rule-composer": "^0.3.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": ">=4.0.0" + "node": ">=10" } }, - "node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "node_modules/mocha/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/eslint-plugin-import": { - "version": "2.28.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.1.tgz", - "integrity": "sha512-9I9hFlITvOV55alzoKBI+K9q74kv0iKMeY6av5+umsNwayt59fz692daGyjR+oStBQgx6nwR9rXldDev3Clw+A==", + "node_modules/mochawesome": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/mochawesome/-/mochawesome-7.1.3.tgz", + "integrity": "sha512-Vkb3jR5GZ1cXohMQQ73H3cZz7RoxGjjUo0G5hu0jLaW+0FdUxUwg3Cj29bqQdh0rFcnyV06pWmqmi5eBPnEuNQ==", "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.findlastindex": "^1.2.2", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.8.0", - "has": "^1.0.3", - "is-core-module": "^2.13.0", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.6", - "object.groupby": "^1.0.0", - "object.values": "^1.1.6", - "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" - }, - "engines": { - "node": ">=4" + "chalk": "^4.1.2", + "diff": "^5.0.0", + "json-stringify-safe": "^5.0.1", + "lodash.isempty": "^4.4.0", + "lodash.isfunction": "^3.0.9", + "lodash.isobject": "^3.0.2", + "lodash.isstring": "^4.0.1", + "mochawesome-report-generator": "^6.2.0", + "strip-ansi": "^6.0.1", + "uuid": "^8.3.2" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "mocha": ">=7" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/mochawesome-report-generator": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/mochawesome-report-generator/-/mochawesome-report-generator-6.2.0.tgz", + "integrity": "sha512-Ghw8JhQFizF0Vjbtp9B0i//+BOkV5OWcQCPpbO0NGOoxV33o+gKDYU0Pr2pGxkIHnqZ+g5mYiXF7GMNgAcDpSg==", "dependencies": { - "ms": "^2.1.1" + "chalk": "^4.1.2", + "dateformat": "^4.5.1", + "escape-html": "^1.0.3", + "fs-extra": "^10.0.0", + "fsu": "^1.1.1", + "lodash.isfunction": "^3.0.9", + "opener": "^1.5.2", + "prop-types": "^15.7.2", + "tcomb": "^3.2.17", + "tcomb-validation": "^3.3.0", + "validator": "^13.6.0", + "yargs": "^17.2.1" + }, + "bin": { + "marge": "bin/cli.js" } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/mochawesome-report-generator/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { - "esutils": "^2.0.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "node_modules/mochawesome-report-generator/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=10" }, - "peerDependencies": { - "eslint": ">=5.16.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/eslint-plugin-prettier": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", - "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", + "node_modules/mochawesome-report-generator/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dependencies": { - "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.5" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/prettier" - }, - "peerDependencies": { - "@types/eslint": ">=8.0.0", - "eslint": ">=8.0.0", - "prettier": ">=3.0.0" + "node": ">=12" + } + }, + "node_modules/mochawesome-report-generator/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" }, - "peerDependenciesMeta": { - "@types/eslint": { - "optional": true - }, - "eslint-config-prettier": { - "optional": true - } + "engines": { + "node": ">=7.0.0" } }, - "node_modules/eslint-rule-composer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", - "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", + "node_modules/mochawesome-report-generator/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/mochawesome-report-generator/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { - "node": ">=4.0.0" + "node": ">=8" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "node_modules/mochawesome-report-generator/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "node_modules/mochawesome-report-generator/node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "engines": { - "node": ">=4" + "node": ">=12" } }, - "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/mochawesome-report-generator/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/eslint/node_modules/ansi-styles": { + "node_modules/mochawesome/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -4314,7 +7082,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/eslint/node_modules/chalk": { + "node_modules/mochawesome/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -4329,7 +7097,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/eslint/node_modules/color-convert": { + "node_modules/mochawesome/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -4340,2334 +7108,3115 @@ "node": ">=7.0.0" } }, - "node_modules/eslint/node_modules/color-name": { + "node_modules/mochawesome/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "node_modules/eslint/node_modules/escape-string-regexp": { + "node_modules/mochawesome/node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "node_modules/mochawesome/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "has-flag": "^4.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" + } + }, + "node_modules/mochawesome/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/nanoid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", + "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", + "bin": { + "nanoid": "bin/nanoid.cjs" }, - "funding": { - "url": "https://opencollective.com/eslint" + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "4.x || >=6.0.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "peer": true + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "engines": { - "node": ">=4.0" + "node": ">=0.10.0" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "node_modules/npm": { + "version": "9.6.4", + "resolved": "https://registry.npmjs.org/npm/-/npm-9.6.4.tgz", + "integrity": "sha512-8/Mct0X/w77PmgIpSlXfNIOlrZBfT+8966zLCxOhwi1qZ2Ueyy99uWPSDW6bt2OKw1NzrvHJBSgkzAvn1iWuhw==", + "bundleDependencies": [ + "@isaacs/string-locale-compare", + "@npmcli/arborist", + "@npmcli/config", + "@npmcli/map-workspaces", + "@npmcli/package-json", + "@npmcli/run-script", + "abbrev", + "archy", + "cacache", + "chalk", + "ci-info", + "cli-columns", + "cli-table3", + "columnify", + "fastest-levenshtein", + "fs-minipass", + "glob", + "graceful-fs", + "hosted-git-info", + "ini", + "init-package-json", + "is-cidr", + "json-parse-even-better-errors", + "libnpmaccess", + "libnpmdiff", + "libnpmexec", + "libnpmfund", + "libnpmhook", + "libnpmorg", + "libnpmpack", + "libnpmpublish", + "libnpmsearch", + "libnpmteam", + "libnpmversion", + "make-fetch-happen", + "minimatch", + "minipass", + "minipass-pipeline", + "ms", + "node-gyp", + "nopt", + "npm-audit-report", + "npm-install-checks", + "npm-package-arg", + "npm-pick-manifest", + "npm-profile", + "npm-registry-fetch", + "npm-user-validate", + "npmlog", + "p-map", + "pacote", + "parse-conflict-json", + "proc-log", + "qrcode-terminal", + "read", + "read-package-json", + "read-package-json-fast", + "semver", + "ssri", + "tar", + "text-table", + "tiny-relative-date", + "treeverse", + "validate-npm-package-name", + "which", + "write-file-atomic" + ], + "dev": true, + "dependencies": { + "@isaacs/string-locale-compare": "^1.1.0", + "@npmcli/arborist": "^6.2.7", + "@npmcli/config": "^6.1.5", + "@npmcli/map-workspaces": "^3.0.3", + "@npmcli/package-json": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "abbrev": "^2.0.0", + "archy": "~1.0.0", + "cacache": "^17.0.5", + "chalk": "^4.1.2", + "ci-info": "^3.8.0", + "cli-columns": "^4.0.0", + "cli-table3": "^0.6.3", + "columnify": "^1.6.0", + "fastest-levenshtein": "^1.0.16", + "fs-minipass": "^3.0.1", + "glob": "^9.3.2", + "graceful-fs": "^4.2.11", + "hosted-git-info": "^6.1.1", + "ini": "^3.0.1", + "init-package-json": "^5.0.0", + "is-cidr": "^4.0.2", + "json-parse-even-better-errors": "^3.0.0", + "libnpmaccess": "^7.0.2", + "libnpmdiff": "^5.0.15", + "libnpmexec": "^5.0.15", + "libnpmfund": "^4.0.15", + "libnpmhook": "^9.0.3", + "libnpmorg": "^5.0.3", + "libnpmpack": "^5.0.15", + "libnpmpublish": "^7.1.3", + "libnpmsearch": "^6.0.2", + "libnpmteam": "^5.0.3", + "libnpmversion": "^4.0.2", + "make-fetch-happen": "^11.0.3", + "minimatch": "^7.4.3", + "minipass": "^4.2.5", + "minipass-pipeline": "^1.2.4", + "ms": "^2.1.2", + "node-gyp": "^9.3.1", + "nopt": "^7.1.0", + "npm-audit-report": "^4.0.0", + "npm-install-checks": "^6.1.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-profile": "^7.0.1", + "npm-registry-fetch": "^14.0.3", + "npm-user-validate": "^2.0.0", + "npmlog": "^7.0.1", + "p-map": "^4.0.0", + "pacote": "^15.1.1", + "parse-conflict-json": "^3.0.1", + "proc-log": "^3.0.0", + "qrcode-terminal": "^0.12.0", + "read": "^2.0.0", + "read-package-json": "^6.0.1", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.8", + "ssri": "^10.0.2", + "tar": "^6.1.13", + "text-table": "~0.2.0", + "tiny-relative-date": "^1.3.0", + "treeverse": "^3.0.0", + "validate-npm-package-name": "^5.0.0", + "which": "^3.0.0", + "write-file-atomic": "^5.0.0" + }, + "bin": { + "npm": "bin/npm-cli.js", + "npx": "bin/npx-cli.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", "dependencies": { - "type-fest": "^0.20.2" + "path-key": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/has-flag": { + "node_modules/npm-run-path/node_modules/path-key": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/npm/node_modules/@colors/colors": { + "version": "1.5.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/npm/node_modules/@gar/promisify": { + "version": "1.1.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/@isaacs/string-locale-compare": { + "version": "1.1.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/@npmcli/arborist": { + "version": "6.2.7", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "@isaacs/string-locale-compare": "^1.1.0", + "@npmcli/fs": "^3.1.0", + "@npmcli/installed-package-contents": "^2.0.2", + "@npmcli/map-workspaces": "^3.0.2", + "@npmcli/metavuln-calculator": "^5.0.0", + "@npmcli/name-from-folder": "^2.0.0", + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/package-json": "^3.0.0", + "@npmcli/query": "^3.0.0", + "@npmcli/run-script": "^6.0.0", + "bin-links": "^4.0.1", + "cacache": "^17.0.4", + "common-ancestor-path": "^1.0.1", + "hosted-git-info": "^6.1.1", + "json-parse-even-better-errors": "^3.0.0", + "json-stringify-nice": "^1.1.4", + "minimatch": "^7.4.2", + "nopt": "^7.0.0", + "npm-install-checks": "^6.0.0", + "npm-package-arg": "^10.1.0", + "npm-pick-manifest": "^8.0.1", + "npm-registry-fetch": "^14.0.3", + "npmlog": "^7.0.1", + "pacote": "^15.0.8", + "parse-conflict-json": "^3.0.0", + "proc-log": "^3.0.0", + "promise-all-reject-late": "^1.0.0", + "promise-call-limit": "^1.0.2", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.7", + "ssri": "^10.0.1", + "treeverse": "^3.0.0", + "walk-up-path": "^1.0.0" + }, + "bin": { + "arborist": "bin/index.js" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "node_modules/npm/node_modules/@npmcli/config": { + "version": "6.1.5", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "@npmcli/map-workspaces": "^3.0.2", + "ini": "^3.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.5", + "walk-up-path": "^1.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/disparity-colors": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "ansi-styles": "^4.3.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/fs": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/git": { + "version": "4.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/promise-spawn": "^6.0.0", + "lru-cache": "^7.4.4", + "npm-pick-manifest": "^8.0.0", + "proc-log": "^3.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/installed-package-contents": { + "version": "2.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-bundled": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "bin": { + "installed-package-contents": "lib/index.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/map-workspaces": { + "version": "3.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/name-from-folder": "^2.0.0", + "glob": "^9.3.1", + "minimatch": "^7.4.2", + "read-package-json-fast": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/metavuln-calculator": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "cacache": "^17.0.0", + "json-parse-even-better-errors": "^3.0.0", + "pacote": "^15.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@npmcli/move-file": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/npm/node_modules/@npmcli/name-from-folder": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/npm/node_modules/@npmcli/node-gyp": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "node_modules/npm/node_modules/@npmcli/package-json": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "estraverse": "^5.1.0" + "json-parse-even-better-errors": "^3.0.0" }, "engines": { - "node": ">=0.10" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/npm/node_modules/@npmcli/promise-spawn": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "which": "^3.0.0" + }, "engines": { - "node": ">=4.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/npm/node_modules/@npmcli/query": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "estraverse": "^5.2.0" + "postcss-selector-parser": "^6.0.10" }, "engines": { - "node": ">=4.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/npm/node_modules/@npmcli/run-script": { + "version": "6.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/node-gyp": "^3.0.0", + "@npmcli/promise-spawn": "^6.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^3.0.0", + "which": "^3.0.0" + }, "engines": { - "node": ">=4.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/npm/node_modules/@sigstore/protobuf-specs": { + "version": "0.1.0", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", "engines": { - "node": ">=4.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "node_modules/npm/node_modules/@tootallnate/once": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 10" } }, - "node_modules/eth-rpc-errors": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", - "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", + "node_modules/npm/node_modules/@tufjs/models": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "fast-safe-stringify": "^2.0.6" + "minimatch": "^7.4.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ethers": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.0.tgz", - "integrity": "sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/npm/node_modules/abbrev": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/abort-controller": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "@ethersproject/abi": "5.7.0", - "@ethersproject/abstract-provider": "5.7.0", - "@ethersproject/abstract-signer": "5.7.0", - "@ethersproject/address": "5.7.0", - "@ethersproject/base64": "5.7.0", - "@ethersproject/basex": "5.7.0", - "@ethersproject/bignumber": "5.7.0", - "@ethersproject/bytes": "5.7.0", - "@ethersproject/constants": "5.7.0", - "@ethersproject/contracts": "5.7.0", - "@ethersproject/hash": "5.7.0", - "@ethersproject/hdnode": "5.7.0", - "@ethersproject/json-wallets": "5.7.0", - "@ethersproject/keccak256": "5.7.0", - "@ethersproject/logger": "5.7.0", - "@ethersproject/networks": "5.7.0", - "@ethersproject/pbkdf2": "5.7.0", - "@ethersproject/properties": "5.7.0", - "@ethersproject/providers": "5.7.0", - "@ethersproject/random": "5.7.0", - "@ethersproject/rlp": "5.7.0", - "@ethersproject/sha2": "5.7.0", - "@ethersproject/signing-key": "5.7.0", - "@ethersproject/solidity": "5.7.0", - "@ethersproject/strings": "5.7.0", - "@ethersproject/transactions": "5.7.0", - "@ethersproject/units": "5.7.0", - "@ethersproject/wallet": "5.7.0", - "@ethersproject/web": "5.7.0", - "@ethersproject/wordlists": "5.7.0" + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" } }, - "node_modules/ethers/node_modules/@ethersproject/networks": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.0.tgz", - "integrity": "sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/npm/node_modules/agent-base": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "@ethersproject/logger": "^5.7.0" + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" } }, - "node_modules/ethers/node_modules/@ethersproject/web": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.0.tgz", - "integrity": "sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA==", - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], + "node_modules/npm/node_modules/agentkeepalive": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "debug": "^4.1.0", + "depd": "^2.0.0", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" } }, - "node_modules/eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", - "peer": true + "node_modules/npm/node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/npm/node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=0.8.x" + "node": ">=8" } }, - "node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "node_modules/npm/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" + "color-convert": "^2.0.1" }, "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + "node": ">=8" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/npm/node_modules/aproba": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/archy": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/are-we-there-yet": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "delegates": "^1.0.0", + "readable-stream": "^4.1.0" }, "engines": { - "node": ">=4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-diff": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==" + "node_modules/npm/node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "node_modules/npm/node_modules/base64-js": { + "version": "1.5.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/bin-links": { + "version": "4.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "cmd-shim": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "read-cmd-shim": "^4.0.0", + "write-file-atomic": "^5.0.0" }, "engines": { - "node": ">=8.6.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dependencies": { - "is-glob": "^4.0.1" - }, + "node_modules/npm/node_modules/binary-extensions": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" - }, - "node_modules/fast-redact": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.3.0.tgz", - "integrity": "sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==", - "engines": { - "node": ">=6" + "node_modules/npm/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + "node_modules/npm/node_modules/buffer": { + "version": "6.0.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/npm/node_modules/builtins": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "reusify": "^1.0.4" + "semver": "^7.0.0" } }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/npm/node_modules/cacache": { + "version": "17.0.5", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "escape-string-regexp": "^1.0.5" + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^9.3.1", + "lru-cache": "^7.7.1", + "minipass": "^4.0.0", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/npm/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "flat-cache": "^3.0.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, + "node_modules/npm/node_modules/chownr": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/filter-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", - "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", + "node_modules/npm/node_modules/ci-info": { + "version": "3.8.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/npm/node_modules/cidr-regex": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "ip-regex": "^4.1.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "bin": { - "flat": "cli.js" + "node_modules/npm/node_modules/clean-stack": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" } }, - "node_modules/flat-cache": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", - "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", + "node_modules/npm/node_modules/cli-columns": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=12.0.0" + "node": ">= 10" } }, - "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" - }, - "node_modules/follow-redirects": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", - "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], + "node_modules/npm/node_modules/cli-table3": { + "version": "0.6.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "string-width": "^4.2.0" + }, "engines": { - "node": ">=4.0" + "node": "10.* || >= 12.*" }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } + "optionalDependencies": { + "@colors/colors": "1.5.0" } }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dependencies": { - "is-callable": "^1.1.3" + "node_modules/npm/node_modules/clone": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8" } }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "node_modules/npm/node_modules/cmd-shim": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "color-name": "~1.1.4" }, "engines": { - "node": ">= 6" + "node": ">=7.0.0" } }, - "node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "node_modules/npm/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/color-support": { + "version": "1.1.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/npm/node_modules/columnify": { + "version": "1.6.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" }, "engines": { - "node": ">=12" + "node": ">=8.0.0" } }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "node_modules/npm/node_modules/common-ancestor-path": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "ISC" }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], + "node_modules/npm/node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/console-control-strings": { + "version": "1.1.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/cssesc": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">=4" } }, - "node_modules/fsu": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/fsu/-/fsu-1.1.1.tgz", - "integrity": "sha512-xQVsnjJ/5pQtcKh+KjUoZGzVWn4uNkchxTF6Lwjr4Gf7nQr8fmUfhKJ62zE77+xQg9xnxi5KUps7XGs+VC986A==" + "node_modules/npm/node_modules/debug": { + "version": "4.3.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "node_modules/npm/node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "node_modules/npm/node_modules/defaults": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" + "clone": "^1.0.2" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==" + "node_modules/npm/node_modules/delegates": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/npm/node_modules/depd": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "peer": true, + "node_modules/npm/node_modules/diff": { + "version": "5.1.0", + "dev": true, + "inBundle": true, + "license": "BSD-3-Clause", "engines": { - "node": ">=6.9.0" + "node": ">=0.3.1" } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/npm/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/encoding": { + "version": "0.1.13", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/npm/node_modules/env-paths": { + "version": "2.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=6" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "node_modules/npm/node_modules/err-code": { + "version": "2.0.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/event-target-shim": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/npm/node_modules/events": { + "version": "3.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.x" } }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "node_modules/npm/node_modules/fastest-levenshtein": { + "version": "1.0.16", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=10" + "node": ">= 4.9.1" + } + }, + "node_modules/npm/node_modules/fs-minipass": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/get-symbol-description": { + "node_modules/npm/node_modules/fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/function-bind": { + "version": "1.1.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/gauge": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "node_modules/npm/node_modules/glob": { + "version": "9.3.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^7.4.1", + "minipass": "^4.2.4", + "path-scurry": "^1.6.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/npm/node_modules/graceful-fs": { + "version": "4.2.11", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/has": { + "version": "1.0.3", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "is-glob": "^4.0.3" + "function-bind": "^1.1.1" }, "engines": { - "node": ">=10.13.0" + "node": ">= 0.4.0" } }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/npm/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "node_modules/npm/node_modules/has-unicode": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/hosted-git-info": { + "version": "6.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "define-properties": "^1.1.3" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "node_modules/npm/node_modules/http-cache-semantics": { + "version": "4.1.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause" + }, + "node_modules/npm/node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.1.3" + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 6" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "node_modules/npm/node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==" + "node_modules/npm/node_modules/humanize-ms": { + "version": "1.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "^2.0.0" + } }, - "node_modules/graphql": { - "version": "15.8.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz", - "integrity": "sha512-5gghUc24tP9HRznNpV2+FIoq3xKkj5dTQqf4v0CpdPbFVwFkWoxOM+o+2OC9ZSvjEMTjfmG9QT+gcvggTwW1zw==", + "node_modules/npm/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, "engines": { - "node": ">= 10.x" + "node": ">=0.10.0" } }, - "node_modules/graphql-tag": { - "version": "2.12.6", - "resolved": "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.6.tgz", - "integrity": "sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==", + "node_modules/npm/node_modules/ieee754": { + "version": "1.2.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "inBundle": true, + "license": "BSD-3-Clause" + }, + "node_modules/npm/node_modules/ignore-walk": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "tslib": "^2.1.0" + "minimatch": "^7.4.2" }, "engines": { - "node": ">=10" - }, - "peerDependencies": { - "graphql": "^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/graphql-ws": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-5.14.0.tgz", - "integrity": "sha512-itrUTQZP/TgswR4GSSYuwWUzrE/w5GhbwM2GX3ic2U7aw33jgEsayfIlvaj7/GcIvZgNMzsPTrE5hqPuFUiE5g==", + "node_modules/npm/node_modules/imurmurhash": { + "version": "0.1.4", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=10" - }, - "peerDependencies": { - "graphql": ">=0.11 <=16" + "node": ">=0.8.19" } }, - "node_modules/growl": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", - "integrity": "sha512-RTBwDHhNuOx4F0hqzItc/siXCasGfC4DeWcBamclWd+6jWtBaeB/SGbMkGf0eiQoW7ib8JpvOgnUsmgMHI3Mfw==" + "node_modules/npm/node_modules/indent-string": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/has": { + "node_modules/npm/node_modules/infer-owner": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", - "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/npm/node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/ini": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "engines": { - "node": ">= 0.4.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/npm/node_modules/init-package-json": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "npm-package-arg": "^10.0.0", + "promzard": "^1.0.0", + "read": "^2.0.0", + "read-package-json": "^6.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/npm/node_modules/ip": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/ip-regex": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/is-cidr": { + "version": "4.0.2", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "dependencies": { + "cidr-regex": "^3.1.1" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "node_modules/npm/node_modules/is-core-module": { + "version": "2.11.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.1.1" + "has": "^1.0.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "node_modules/npm/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/npm/node_modules/is-lambda": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/isexe": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/json-parse-even-better-errors": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">= 0.4" - }, + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/json-stringify-nice": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "ISC", "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/npm/node_modules/jsonparse": { + "version": "1.3.1", + "dev": true, + "engines": [ + "node >= 0.2.0" + ], + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/just-diff": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/just-diff-apply": { + "version": "5.5.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/npm/node_modules/libnpmaccess": { + "version": "7.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-symbols": "^1.0.2" + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/npm/node_modules/libnpmdiff": { + "version": "5.0.15", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "bin": { - "he": "bin/he" + "@npmcli/arborist": "^6.2.7", + "@npmcli/disparity-colors": "^3.0.0", + "@npmcli/installed-package-contents": "^2.0.2", + "binary-extensions": "^2.2.0", + "diff": "^5.1.0", + "minimatch": "^7.4.2", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.8", + "tar": "^6.1.13" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "node_modules/npm/node_modules/libnpmexec": { + "version": "5.0.15", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "@npmcli/arborist": "^6.2.7", + "@npmcli/run-script": "^6.0.0", + "chalk": "^4.1.0", + "ci-info": "^3.7.1", + "npm-package-arg": "^10.1.0", + "npmlog": "^7.0.1", + "pacote": "^15.0.8", + "proc-log": "^3.0.0", + "read": "^2.0.0", + "read-package-json-fast": "^3.0.2", + "semver": "^7.3.7", + "walk-up-path": "^1.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "node_modules/npm/node_modules/libnpmfund": { + "version": "4.0.15", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "react-is": "^16.7.0" - } - }, - "node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "@npmcli/arborist": "^6.2.7" + }, "engines": { - "node": ">=14.18.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/npm/node_modules/libnpmhook": { + "version": "9.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "aproba": "^2.0.0", + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": ">=0.10.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "node_modules/npm/node_modules/libnpmorg": { + "version": "5.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "aproba": "^2.0.0", + "npm-registry-fetch": "^14.0.3" + }, "engines": { - "node": ">= 4" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/npm/node_modules/libnpmpack": { + "version": "5.0.15", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "@npmcli/arborist": "^6.2.7", + "@npmcli/run-script": "^6.0.0", + "npm-package-arg": "^10.1.0", + "pacote": "^15.0.8" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/npm/node_modules/libnpmpublish": { + "version": "7.1.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "ci-info": "^3.6.1", + "normalize-package-data": "^5.0.0", + "npm-package-arg": "^10.1.0", + "npm-registry-fetch": "^14.0.3", + "proc-log": "^3.0.0", + "semver": "^7.3.7", + "sigstore": "^1.0.0", + "ssri": "^10.0.1" + }, "engines": { - "node": ">=0.8.19" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/npm/node_modules/libnpmsearch": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "npm-registry-fetch": "^14.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "node_modules/npm/node_modules/libnpmteam": { + "version": "5.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "aproba": "^2.0.0", + "npm-registry-fetch": "^14.0.3" }, "engines": { - "node": ">=8.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/npm/node_modules/libnpmversion": { + "version": "4.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "@npmcli/git": "^4.0.1", + "@npmcli/run-script": "^6.0.0", + "json-parse-even-better-errors": "^3.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.7" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/npm/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/npm/node_modules/make-fetch-happen": { + "version": "11.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "agentkeepalive": "^4.2.1", + "cacache": "^17.0.0", + "http-cache-semantics": "^4.1.1", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/minimatch": { + "version": "7.4.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/npm/node_modules/minipass": { + "version": "4.2.5", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/npm/node_modules/minipass-collect": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "minipass": "^3.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">= 8" } }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/npm/node_modules/minipass-collect/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/inquirer/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "node_modules/npm/node_modules/minipass-fetch": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "tslib": "^1.9.0" + "minipass": "^4.0.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "npm": ">=2.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/npm/node_modules/minipass-flush": { + "version": "1.0.5", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/npm/node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/inquirer/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "node_modules/npm/node_modules/minipass-json-stream": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" } }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "node_modules/npm/node_modules/minipass-json-stream/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/npm/node_modules/minipass-pipeline": { + "version": "1.2.4", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-bigints": "^1.0.1" + "minipass": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/npm/node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "binary-extensions": "^2.0.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/npm/node_modules/minipass-sized": { + "version": "1.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "engines": { - "node": ">= 0.4" + "node_modules/npm/node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "node_modules/npm/node_modules/minizlib": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "has": "^1.0.3" + "minipass": "^3.0.0", + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 8" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/npm/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-tostringtag": "^1.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "node_modules/npm/node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, + "inBundle": true, + "license": "MIT", "bin": { - "is-docker": "cli.js" + "mkdirp": "bin/cmd.js" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "engines": { - "node": ">=0.10.0" - } + "node_modules/npm/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/npm/node_modules/mute-stream": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dependencies": { - "is-extglob": "^2.1.1" - }, + "node_modules/npm/node_modules/negotiator": { + "version": "0.6.3", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "node_modules/npm/node_modules/node-gyp": { + "version": "9.3.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "is-docker": "^3.0.0" + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" }, "bin": { - "is-inside-container": "cli.js" + "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^12.13 || ^14.13 || >=16" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "engines": { - "node": ">= 0.4" + "node_modules/npm/node_modules/node-gyp/node_modules/@npmcli/fs": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "engines": { - "node": ">=0.12.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/npm/node_modules/node-gyp/node_modules/abbrev": { + "version": "1.1.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/node-gyp/node_modules/are-we-there-yet": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-tostringtag": "^1.0.0" + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "engines": { - "node": ">=8" + "node_modules/npm/node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "engines": { - "node": ">=8" + "node_modules/npm/node_modules/node-gyp/node_modules/cacache": { + "version": "16.1.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm/node_modules/node-gyp/node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/npm/node_modules/node-gyp/node_modules/cacache/node_modules/glob": { + "version": "8.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/npm/node_modules/node-gyp/node_modules/cacache/node_modules/minimatch": { + "version": "5.1.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2" + "brace-expansion": "^2.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "node_modules/npm/node_modules/node-gyp/node_modules/fs-minipass": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-tostringtag": "^1.0.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 8" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/npm/node_modules/node-gyp/node_modules/gauge": { + "version": "4.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-symbols": "^1.0.2" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "node_modules/npm/node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "which-typed-array": "^1.1.11" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">= 0.4" + "node": "*" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "engines": { - "node": ">=10" + "node_modules/npm/node_modules/node-gyp/node_modules/make-fetch-happen": { + "version": "10.2.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "node_modules/npm/node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2" + "brace-expansion": "^1.1.7" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "*" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "node_modules/npm/node_modules/node-gyp/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "is-docker": "^2.0.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/is-wsl/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" + "node_modules/npm/node_modules/node-gyp/node_modules/minipass-fetch": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "node_modules/iterall": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/iterall/-/iterall-1.3.0.tgz", - "integrity": "sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg==", - "peer": true - }, - "node_modules/jade": { - "version": "0.26.3", - "resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz", - "integrity": "sha512-mkk3vzUHFjzKjpCXeu+IjXeZD+QOTjUUdubgmHtHTDwvAO2ZTkMTTVrapts5CWz3JvJryh/4KWZpjeZrCepZ3A==", - "deprecated": "Jade has been renamed to pug, please install the latest version of pug instead of jade", + "node_modules/npm/node_modules/node-gyp/node_modules/nopt": { + "version": "6.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "commander": "0.6.1", - "mkdirp": "0.3.0" + "abbrev": "^1.0.0" }, "bin": { - "jade": "bin/jade" + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jade/node_modules/commander": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz", - "integrity": "sha512-0fLycpl1UMTGX257hRsu/arL/cUbcvQM4zMKwvLvzXtfdezIV4yotPS2dYtknF+NmEfWSoCEF6+hj9XLm/6hEw==", + "node_modules/npm/node_modules/node-gyp/node_modules/npmlog": { + "version": "6.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, "engines": { - "node": ">= 0.4.x" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jade/node_modules/mkdirp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz", - "integrity": "sha512-OHsdUcVAQ6pOtg5JYWpCBo9W/GySVuwvP9hueRMW7UqshC0tbfzLv8wjySTPm3tfUZ/21CE9E1pJagOA91Pxew==", - "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", + "node_modules/npm/node_modules/node-gyp/node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, "engines": { - "node": "*" + "node": ">= 6" } }, - "node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + "node_modules/npm/node_modules/node-gyp/node_modules/ssri": { + "version": "9.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "node_modules/npm/node_modules/node-gyp/node_modules/unique-filename": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/npm/node_modules/node-gyp/node_modules/unique-slug": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "argparse": "^2.0.1" + "imurmurhash": "^0.1.4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/npm/node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, "bin": { - "jsesc": "bin/jsesc" + "node-which": "bin/node-which" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "peer": true, + "node_modules/npm/node_modules/nopt": { + "version": "7.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "abbrev": "^2.0.0" + }, "bin": { - "json5": "lib/cli.js" + "nopt": "bin/nopt.js" }, "engines": { - "node": ">=6" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "node_modules/npm/node_modules/normalize-package-data": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", "dependencies": { - "universalify": "^2.0.0" + "hosted-git-info": "^6.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "node_modules/npm/node_modules/npm-audit-report": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "json-buffer": "3.0.1" + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/keyvaluestorage-interface": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/keyvaluestorage-interface/-/keyvaluestorage-interface-1.0.0.tgz", - "integrity": "sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==" - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/npm/node_modules/npm-bundled": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "npm-normalize-package-bin": "^3.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/libphonenumber-js": { - "version": "1.10.47", - "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.10.47.tgz", - "integrity": "sha512-b4t7VQDV29xx/ni+58yl9KWPGjnDLDXCeCTLrD4V8vDpObXZRZBrg7uX/HWZ7YXiJKqdBDGgc+barUUTNB6Slw==" - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/npm/node_modules/npm-install-checks": { + "version": "6.1.0", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", "dependencies": { - "p-locate": "^5.0.0" + "semver": "^7.1.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash.isempty": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", - "integrity": "sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" - }, - "node_modules/lodash.isfunction": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", - "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==" - }, - "node_modules/lodash.isobject": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", - "integrity": "sha512-3/Qptq2vr7WeJbB4KHUSKlq8Pl7ASXi3UG6CMbBm8WRtXi8+GHm7mKaU3urfpSEzWe2wCIChs6/sdocUsTKJiA==" - }, - "node_modules/lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + "node_modules/npm/node_modules/npm-normalize-package-bin": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "node_modules/npm/node_modules/npm-package-arg": { + "version": "10.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "hosted-git-info": "^6.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/npm/node_modules/npm-packlist": { + "version": "7.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "ignore-walk": "^6.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/npm/node_modules/npm-pick-manifest": { + "version": "8.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "npm-install-checks": "^6.0.0", + "npm-normalize-package-bin": "^3.0.0", + "npm-package-arg": "^10.0.0", + "semver": "^7.3.5" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/log-symbols/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/npm/node_modules/npm-profile": { + "version": "7.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0" }, "engines": { - "node": ">=7.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "node_modules/npm/node_modules/npm-registry-fetch": { + "version": "14.0.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "make-fetch-happen": "^11.0.0", + "minipass": "^4.0.0", + "minipass-fetch": "^3.0.0", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^10.0.0", + "proc-log": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/npm/node_modules/npm-user-validate": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/npm/node_modules/npmlog": { + "version": "7.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "are-we-there-yet": "^4.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^5.0.0", + "set-blocking": "^2.0.0" }, "engines": { - "node": ">=8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/loose-envify": { + "node_modules/npm/node_modules/once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" + "wrappy": "1" } }, - "node_modules/loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", + "node_modules/npm/node_modules/p-map": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "get-func-name": "^2.0.0" + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "peer": true, + "node_modules/npm/node_modules/pacote": { + "version": "15.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "yallist": "^3.0.2" + "@npmcli/git": "^4.0.0", + "@npmcli/installed-package-contents": "^2.0.1", + "@npmcli/promise-spawn": "^6.0.1", + "@npmcli/run-script": "^6.0.0", + "cacache": "^17.0.0", + "fs-minipass": "^3.0.0", + "minipass": "^4.0.0", + "npm-package-arg": "^10.0.0", + "npm-packlist": "^7.0.0", + "npm-pick-manifest": "^8.0.0", + "npm-registry-fetch": "^14.0.0", + "proc-log": "^3.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^6.0.0", + "read-package-json-fast": "^3.0.0", + "sigstore": "^1.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mcl-wasm": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-1.4.0.tgz", - "integrity": "sha512-90Tvmg2NXwnKMgTafA01PRELsYNNRb/F2bj3nzdByTLLMUmgkgL8H/oeWcjZtVVffnBJyNjDcYxY7cdOE/WoHg==", + "node_modules/npm/node_modules/parse-conflict-json": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "@types/node": "^20.2.5" + "json-parse-even-better-errors": "^3.0.0", + "just-diff": "^6.0.0", + "just-diff-apply": "^5.2.0" }, "engines": { - "node": ">=14.17" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/npm/node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/npm/node_modules/path-scurry": { + "version": "1.6.3", + "dev": true, + "inBundle": true, + "license": "BlueOak-1.0.0", "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "lru-cache": "^7.14.1", + "minipass": "^4.0.2" }, "engines": { - "node": ">=8.6" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "node_modules/npm/node_modules/postcss-selector-parser": { + "version": "6.0.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, "engines": { - "node": ">= 0.6" + "node": ">=4" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, + "node_modules/npm/node_modules/proc-log": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "engines": { - "node": ">= 0.6" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "node_modules/npm/node_modules/process": { + "version": "0.11.10", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.6.0" } }, - "node_modules/minimalistic-assert": { + "node_modules/npm/node_modules/promise-all-reject-late": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + "dev": true, + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "node_modules/minimalistic-crypto-utils": { + "node_modules/npm/node_modules/promise-call-limit": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/promise-inflight": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + "dev": true, + "inBundle": true, + "license": "ISC" }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/npm/node_modules/promise-retry": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "err-code": "^2.0.2", + "retry": "^0.12.0" }, "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10" } }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/npm/node_modules/promzard": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "minimist": "^1.2.6" + "read": "^2.0.0" }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/qrcode-terminal": { + "version": "0.12.0", + "dev": true, + "inBundle": true, "bin": { - "mkdirp": "bin/cmd.js" + "qrcode-terminal": "bin/qrcode-terminal.js" } }, - "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", + "node_modules/npm/node_modules/read": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" + "mute-stream": "~1.0.0" }, "engines": { - "node": ">= 14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mocha-retry": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/mocha-retry/-/mocha-retry-0.1.0.tgz", - "integrity": "sha512-r4R5bhw0ayJH7ZV/0lAXj2vyuo/7FtkFPMyGNzPvPiSBfA2gKPogKcwQ5fUZ//QH0JYh4If70JBZ1GFHbDu2fA==", - "dependencies": { - "mocha": "^2.3.0" + "node_modules/npm/node_modules/read-cmd-shim": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mocha-retry/node_modules/commander": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.3.0.tgz", - "integrity": "sha512-CD452fnk0jQyk3NfnK+KkR/hUPoHt5pVaKHogtyyv3N0U4QfAal9W0/rXLOg/vVZgQKa7jdtXypKs1YAip11uQ==", + "node_modules/npm/node_modules/read-package-json": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^9.3.0", + "json-parse-even-better-errors": "^3.0.0", + "normalize-package-data": "^5.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, "engines": { - "node": ">= 0.6.x" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mocha-retry/node_modules/debug": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "integrity": "sha512-X0rGvJcskG1c3TgSCPqHJ0XJgwlcvOC7elJ5Y0hYuKBZoVqWpAMfLOeIh2UI/DCQ5ruodIjvsugZtjUYUw2pUw==", + "node_modules/npm/node_modules/read-package-json-fast": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "ms": "0.7.1" + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mocha-retry/node_modules/diff": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-1.4.0.tgz", - "integrity": "sha512-VzVc42hMZbYU9Sx/ltb7KYuQ6pqAw+cbFWVy4XKdkuEL2CFaRLGEnISPs7YdzaUGpi+CpIqvRmu7hPQ4T7EQ5w==", + "node_modules/npm/node_modules/readable-stream": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, "engines": { - "node": ">=0.3.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/mocha-retry/node_modules/escape-string-regexp": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.2.tgz", - "integrity": "sha512-cQpUid7bdTUnFin8S7BnNdOk+/eDqQmKgCANSyd/jAhrKEvxUvr9VQ8XZzXiOtest8NLfk3FSBZzwvemZNQ6Vg==", + "node_modules/npm/node_modules/retry": { + "version": "0.12.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">= 4" + } + }, + "node_modules/npm/node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm/node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/mocha-retry/node_modules/glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz", - "integrity": "sha512-hVb0zwEZwC1FXSKRPFTeOtN7AArJcJlI6ULGLtrstaswKNlrTJqAA+1lYlSUop4vjA423xlBzqfVS3iWGlqJ+g==", + "node_modules/npm/node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", "inherits": "2", - "minimatch": "0.3" + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha-retry/node_modules/lru-cache": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz", - "integrity": "sha512-WpibWJ60c3AgAz8a2iYErDrcT2C7OmKnsWhIcHOjkUHFjkXncJhtLxNSqUmxRxRunpb5I8Vprd7aNSd2NtksJQ==" - }, - "node_modules/mocha-retry/node_modules/minimatch": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz", - "integrity": "sha512-WFX1jI1AaxNTZVOHLBVazwTWKaQjoykSzCBNXB72vDTCzopQGtyP91tKdFK5cv1+qMwPyiTu1HqUriqplI8pcA==", - "deprecated": "Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue", + "node_modules/npm/node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "lru-cache": "2", - "sigmund": "~1.0.0" + "brace-expansion": "^1.1.7" }, "engines": { "node": "*" } }, - "node_modules/mocha-retry/node_modules/minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==" + "node_modules/npm/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/mocha-retry/node_modules/mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", - "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", + "node_modules/npm/node_modules/safer-buffer": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "optional": true + }, + "node_modules/npm/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "minimist": "0.0.8" + "lru-cache": "^6.0.0" }, "bin": { - "mkdirp": "bin/cmd.js" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/mocha-retry/node_modules/mocha": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-2.5.3.tgz", - "integrity": "sha512-jNt2iEk9FPmZLzL+sm4FNyOIDYXf2wUU6L4Cc8OIKK/kzgMHKPi4YhTZqG4bW4kQVdIv6wutDybRhXfdnujA1Q==", + "node_modules/npm/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "commander": "2.3.0", - "debug": "2.2.0", - "diff": "1.4.0", - "escape-string-regexp": "1.0.2", - "glob": "3.2.11", - "growl": "1.9.2", - "jade": "0.26.3", - "mkdirp": "0.5.1", - "supports-color": "1.2.0", - "to-iso-string": "0.0.2" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 0.8.x" + "node": ">=10" } }, - "node_modules/mocha-retry/node_modules/ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha512-lRLiIR9fSNpnP6TC4v8+4OU7oStC01esuNowdQ34L+Gk8e5Puoc88IqJ+XAY/B3Mn2ZKis8l8HX90oU8ivzUHg==" + "node_modules/npm/node_modules/set-blocking": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/signal-exit": { + "version": "3.0.7", + "dev": true, + "inBundle": true, + "license": "ISC" }, - "node_modules/mocha-retry/node_modules/supports-color": { + "node_modules/npm/node_modules/sigstore": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.2.0.tgz", - "integrity": "sha512-mS5xsnjTh5b7f2DM6bch6lR582UCOTphzINlZnDsfpIRrwI6r58rb6YSSGsdexkm8qw2bBVO2ID2fnJOTuLiPA==", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "@sigstore/protobuf-specs": "^0.1.0", + "make-fetch-happen": "^11.0.1", + "tuf-js": "^1.0.0" + }, "bin": { - "supports-color": "cli.js" + "sigstore": "bin/sigstore.js" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mocha/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/mocha/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mocha/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/npm/node_modules/smart-buffer": { + "version": "4.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "node_modules/mocha/node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", + "node_modules/npm/node_modules/socks": { + "version": "2.7.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" }, "engines": { - "node": ">=10" + "node": ">= 10.13.0", + "npm": ">= 3.0.0" } }, - "node_modules/mocha/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/npm/node_modules/socks-proxy-agent": { + "version": "7.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">= 10" } }, - "node_modules/mochawesome": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/mochawesome/-/mochawesome-7.1.3.tgz", - "integrity": "sha512-Vkb3jR5GZ1cXohMQQ73H3cZz7RoxGjjUo0G5hu0jLaW+0FdUxUwg3Cj29bqQdh0rFcnyV06pWmqmi5eBPnEuNQ==", + "node_modules/npm/node_modules/spdx-correct": { + "version": "3.2.0", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", "dependencies": { - "chalk": "^4.1.2", - "diff": "^5.0.0", - "json-stringify-safe": "^5.0.1", - "lodash.isempty": "^4.4.0", - "lodash.isfunction": "^3.0.9", - "lodash.isobject": "^3.0.2", - "lodash.isstring": "^4.0.1", - "mochawesome-report-generator": "^6.2.0", - "strip-ansi": "^6.0.1", - "uuid": "^8.3.2" - }, - "peerDependencies": { - "mocha": ">=7" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/mochawesome-report-generator": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/mochawesome-report-generator/-/mochawesome-report-generator-6.2.0.tgz", - "integrity": "sha512-Ghw8JhQFizF0Vjbtp9B0i//+BOkV5OWcQCPpbO0NGOoxV33o+gKDYU0Pr2pGxkIHnqZ+g5mYiXF7GMNgAcDpSg==", - "dependencies": { - "chalk": "^4.1.2", - "dateformat": "^4.5.1", - "escape-html": "^1.0.3", - "fs-extra": "^10.0.0", - "fsu": "^1.1.1", - "lodash.isfunction": "^3.0.9", - "opener": "^1.5.2", - "prop-types": "^15.7.2", - "tcomb": "^3.2.17", - "tcomb-validation": "^3.3.0", - "validator": "^13.6.0", - "yargs": "^17.2.1" - }, - "bin": { - "marge": "bin/cli.js" - } + "node_modules/npm/node_modules/spdx-exceptions": { + "version": "2.3.0", + "dev": true, + "inBundle": true, + "license": "CC-BY-3.0" }, - "node_modules/mochawesome-report-generator/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/npm/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/mochawesome-report-generator/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } + "node_modules/npm/node_modules/spdx-license-ids": { + "version": "3.0.13", + "dev": true, + "inBundle": true, + "license": "CC0-1.0" }, - "node_modules/mochawesome-report-generator/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "node_modules/npm/node_modules/ssri": { + "version": "10.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" + "minipass": "^4.0.0" }, "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/mochawesome-report-generator/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/npm/node_modules/string_decoder": { + "version": "1.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/mochawesome-report-generator/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/mochawesome-report-generator/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" + "safe-buffer": "~5.1.0" } }, - "node_modules/mochawesome-report-generator/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/npm/node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "has-flag": "^4.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/mochawesome-report-generator/node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "node_modules/npm/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=12" - } - }, - "node_modules/mochawesome-report-generator/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/mochawesome/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/npm/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/mochawesome/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/npm/node_modules/tar": { + "version": "6.1.13", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^4.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/mochawesome/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/npm/node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/mochawesome/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/mochawesome/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "minipass": "^3.0.0" + }, "engines": { - "node": ">=8" + "node": ">= 8" } }, - "node_modules/mochawesome/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/npm/node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/mochawesome/node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" - } + "node_modules/npm/node_modules/text-table": { + "version": "0.2.0", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "node_modules/npm/node_modules/tiny-relative-date": { + "version": "1.3.0", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/multiformats": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", - "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + "node_modules/npm/node_modules/treeverse": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + "node_modules/npm/node_modules/tuf-js": { + "version": "1.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@tufjs/models": "1.0.1", + "make-fetch-happen": "^11.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "bin": { - "nanoid": "bin/nanoid.cjs" + "node_modules/npm/node_modules/unique-filename": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^4.0.0" }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + "node_modules/npm/node_modules/unique-slug": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + "node_modules/npm/node_modules/util-deprecate": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "node_modules/npm/node_modules/validate-npm-package-license": { + "version": "3.0.4", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", "dependencies": { - "whatwg-url": "^5.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/npm/node_modules/validate-npm-package-name": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "builtins": "^5.0.0" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", - "peer": true + "node_modules/npm/node_modules/walk-up-path": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" }, - "node_modules/normalize-path": { + "node_modules/npm/node_modules/wcwidth": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/npm/node_modules/which": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "node_modules/npm/node_modules/wide-align": { + "version": "1.1.5", + "dev": true, + "inBundle": true, + "license": "ISC", "dependencies": { - "path-key": "^4.0.0" + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/npm/node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/npm/node_modules/write-file-atomic": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm-run-path/node_modules/path-key": { + "node_modules/npm/node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "dev": true, + "inBundle": true, + "license": "ISC" }, "node_modules/object-assign": { "version": "4.1.1", @@ -6815,9 +10364,9 @@ } }, "node_modules/optimism/node_modules/@wry/context": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@wry/context/-/context-0.7.3.tgz", - "integrity": "sha512-Nl8WTesHp89RF803Se9X3IiHjdmLBrIvPMaJkl+rKVJAYyPsz1TEUbu89943HpvujtSJgDUx9W4vZw3K1Mr3sA==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@wry/context/-/context-0.7.4.tgz", + "integrity": "sha512-jmT7Sb4ZQWI5iyu3lobQxICu2nC/vbUhP0vIdd6tHC9PTfenmRmuIFqktc6GH9cgi+ZHnsLWPvfSvc4DrYmKiQ==", "dependencies": { "tslib": "^2.3.0" }, @@ -6877,6 +10426,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -6888,6 +10446,18 @@ "node": ">=6" } }, + "node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "dev": true, + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -6917,6 +10487,18 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "node_modules/path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha512-dUnb5dXUf+kzhC/W/F4e5/SkluXIFf5VUHolW1Eg1irn1hGWjPGdsRcvYJ1nD6lhk8Ir7VM0bHJKsYTx8Jx9OQ==", + "dev": true, + "dependencies": { + "pify": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/pathval": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", @@ -6941,6 +10523,15 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/pino": { "version": "7.11.0", "resolved": "https://registry.npmjs.org/pino/-/pino-7.11.0.tgz", @@ -7099,6 +10690,91 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, + "node_modules/read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha512-eFIBOPW7FGjzBuk3hdXEuNSiTZS/xEMlH49HxMyzb0hyPfu4EhVjT2DH32K1hSSmVq4sebAWnZuuY5auISUTGA==", + "dev": true, + "dependencies": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha512-1orxQfbWGUiTn9XsPlChs6rLie/AV9jwZTGmu2NZw/CUDJQchXJFYE0Fq5j7+n558T1JhDWLdhyd1Zj+wLY//w==", + "dev": true, + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "dev": true, + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -7519,11 +11195,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==" - }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -7558,6 +11229,57 @@ "atomic-sleep": "^1.0.0" } }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", + "dev": true + }, "node_modules/split-on-first": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", @@ -7908,12 +11630,6 @@ "node": ">=4" } }, - "node_modules/to-iso-string": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/to-iso-string/-/to-iso-string-0.0.2.tgz", - "integrity": "sha512-oeHLgfWA7d0CPQa6h0+i5DAJZISz5un0d5SHPkw+Untclcvzv9T+AC3CvGXlZJdOlIbxbTfyyzlqCXc5hjpXYg==", - "deprecated": "to-iso-string has been deprecated, use @segment/to-iso-string instead." - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -7941,6 +11657,40 @@ "node": ">=8" } }, + "node_modules/ts-node": { + "version": "8.10.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.10.2.tgz", + "integrity": "sha512-ISJJGgkIpDdBhWVu3jufsWpK3Rzo7bdiIXJjQc0ynKxVOVcg2oIrf2H2cejminGrptVc6q6/uynAHNCuWGbpVA==", + "dev": true, + "dependencies": { + "arg": "^4.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.17", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "typescript": ">=2.7" + } + }, + "node_modules/ts-node/node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/tsconfig-paths": { "version": "3.14.2", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", @@ -7968,6 +11718,27 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -8060,9 +11831,9 @@ } }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz", + "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -8094,9 +11865,9 @@ } }, "node_modules/undici-types": { - "version": "5.25.3", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz", - "integrity": "sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==" + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, "node_modules/universalify": { "version": "2.0.0", @@ -8170,6 +11941,16 @@ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==" }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, "node_modules/validator": { "version": "13.11.0", "resolved": "https://registry.npmjs.org/validator/-/validator-13.11.0.tgz", @@ -8387,6 +12168,15 @@ "node": ">=10" } }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index d31f844..0d7411a 100644 --- a/package.json +++ b/package.json @@ -6,24 +6,24 @@ "type": "module", "scripts": { "test": "mocha --timeout 600000 --spec test/specs/mainnet-api/arka/mumbai.spec.js", - "test-mainnet": "mocha --timeout 600000 --spec test/specs/mainnet/*/Arbitrum.spec.js --spec test/specs/mainnet/*/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transfertoken-arbitrum": "mocha --timeout 600000 --spec test/specs/mainnet/01_TransferringFunds/Arbitrum.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transfertoken-matic": "mocha --timeout 600000 --spec test/specs/mainnet/01_TransferringFunds/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transfertoken-optimism": "mocha --timeout 600000 --spec test/specs/mainnet/01_TransferringFunds/Optimism.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transfertoken-xdai": "mocha --timeout 600000 --spec test/specs/mainnet/01_TransferringFunds/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transfertoken": "mocha --timeout 600000 --spec test/specs/mainnet/01_TransferringFunds/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transactionhistory-arbitrum": "mocha --timeout 600000 --spec test/specs/mainnet/02_TransactionHistory/Arbitrum.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transactionhistory-matic": "mocha --timeout 600000 --spec test/specs/mainnet/02_TransactionHistory/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transactionhistory-optimism": "mocha --timeout 600000 --spec test/specs/mainnet/02_TransactionHistory/Optimism.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transactionhistory-xdai": "mocha --timeout 600000 --spec test/specs/mainnet/02_TransactionHistory/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-transactionhistory": "mocha --timeout 600000 --spec test/specs/mainnet/02_TransactionHistory/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-swap-arbitrum": "mocha --timeout 600000 --spec test/specs/mainnet/03_Swap/Arbitrum.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-swap-matic": "mocha --timeout 600000 --spec test/specs/mainnet/03_Swap/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-swap-optimism": "mocha --timeout 600000 --spec test/specs/mainnet/03_Swap/Optimism.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-swap-xdai": "mocha --timeout 600000 --spec test/specs/mainnet/03_Swap/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test-mainnet-swap": "mocha --timeout 600000 --spec test/specs/mainnet/03_Swap/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false", - "test_arka": "mocha --timeout 600000 --spec test/specs/mainnet-api/arka/*.spec.js", - "test_skandha": "mocha --timeout 600000 --spec test/specs/mainnet-api/skandha/*.spec.js" + "test-mainnet": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/*/Matic.spec.js --spec test/specs/mainnet/*/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transfertoken-arbitrum": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/01_TransferringFunds/Arbitrum.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transfertoken-matic": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/01_TransferringFunds/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transfertoken-optimism": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/01_TransferringFunds/Optimism.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transfertoken-xdai": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/01_TransferringFunds/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transfertoken": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/01_TransferringFunds/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transactionhistory-arbitrum": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/02_TransactionHistory/Arbitrum.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transactionhistory-matic": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/02_TransactionHistory/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transactionhistory-optimism": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/02_TransactionHistory/Optimism.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transactionhistory-xdai": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/02_TransactionHistory/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-transactionhistory": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/02_TransactionHistory/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-swap-arbitrum": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/03_Swap/Arbitrum.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-swap-matic": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/03_Swap/Matic.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-swap-optimism": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/03_Swap/Optimism.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-swap-xdai": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/03_Swap/Xdai.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test-mainnet-swap": "mocha --timeout 600000 --spec test/specs/mainnet/00_Version/Version.spec.js --spec test/specs/mainnet/03_Swap/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test_arka": "mocha --timeout 600000 --spec test/specs/mainnet-api/arka/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always", + "test_skandha": "mocha --timeout 600000 --spec test/specs/mainnet-api/skandha/*.spec.js --reporter mochawesome --reporter-options charts=true,code=false,showHooks=always" }, "author": "", "license": "ISC", @@ -31,7 +31,7 @@ "@babel/eslint-parser": "^7.22.9", "@babel/plugin-syntax-import-assertions": "^7.22.5", "@etherspot/contracts": "^2.0.1", - "@etherspot/prime-sdk": "file:../etherspot-prime-sdk/dist/index.js", + "@etherspot/prime-sdk": "file:./etherspot-prime-sdk", "@reactivex/rxjs": "^6.6.7", "axios": "^1.4.0", "chai": "^4.3.7", diff --git a/test/data/testData.json b/test/data/testData.json index 1712c55..2f12648 100644 --- a/test/data/testData.json +++ b/test/data/testData.json @@ -44,7 +44,7 @@ "invalidTokenAddress_xdaiUSDC": "0xDDAfbb505ad214D7b80b1f830fcCc89B60fb7A8", "providerNetwork_xdai": "https://gnosis-bundler.etherspot.io", "invalidProviderNetwork_xdai": "http://gnosis-bundler.etherspot.io", - "otherProviderNetwork_xdai": "https://xdai-bundler.etherspot.io", + "otherProviderNetwork_xdai": "https://polygon-bundler.etherspot.io", "incorrect_hash": "0x3df9fe91b29f4b2bf1b148baf2f9E207e98137F8318ccf39eDc930d1ceA551df", "invalid_hash": "0x3df9fe91b29f4b2bf1b148baf2f9E207e98137F8z18ccf39eDc930d1ceA551df", "arbitrum_chainid": 42161, @@ -55,6 +55,6 @@ "invalid_matic_chainid": 19, "invalid_optimism_chainid": 158, "invalid_xdai_chainid": 105, - "minimum_token_balance": 0.00001, - "minimum_native_balance": 0.00001 + "minimum_token_balance": 0.001, + "minimum_native_balance": 0.001 } diff --git a/test/specs/mainnet/00_Version/Version.spec.js b/test/specs/mainnet/00_Version/Version.spec.js new file mode 100644 index 0000000..b1f62fa --- /dev/null +++ b/test/specs/mainnet/00_Version/Version.spec.js @@ -0,0 +1,20 @@ +import fs from 'fs'; +import addContext from 'mochawesome/addContext.js'; + +before('Validate the version of the Etherspot PrimeSDK', function () { + var test = this; + + // Specify the path to the package.json file of etherspot-prime-sdk + const packageJsonPath = './etherspot-prime-sdk/package.json'; + + // Read and parse the package.json file + fs.readFile(packageJsonPath, 'utf8', function (err, data) { + if (err) { + console.error('Error reading package.json:', err); + } else { + const packageInfo = JSON.parse(data); + console.log('etherspot-prime-sdk version:', packageInfo.version); + addContext(test, 'etherspot-prime-sdk version: ' + packageInfo.version); + } + }); +}); diff --git a/test/specs/mainnet/01_TransferringFunds/Arbitrum.spec.js b/test/specs/mainnet/01_TransferringFunds/Arbitrum.spec.js index 058df3a..6e3834e 100644 --- a/test/specs/mainnet/01_TransferringFunds/Arbitrum.spec.js +++ b/test/specs/mainnet/01_TransferringFunds/Arbitrum.spec.js @@ -6,6 +6,7 @@ import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; import abi from '../../../data/NFTabi.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -14,10 +15,9 @@ let arbitrumEtherspotWalletAddress; let arbitrumNativeAddress = null; let runTest; -describe('The PrimeSDK, when transfer a token with arbitrum network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when transfer a token with arbitrum network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -37,9 +37,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -56,9 +60,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -94,14 +102,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('SMOKE: Perform the transfer native token with valid details on the arbitrum network', async () => { + it('SMOKE: Perform the transfer native token with valid details on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -110,7 +121,7 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN try { transactionBatch = await arbitrumMainNetSdk.addUserOpsToBatch({ to: data.recipient, - value: ethers.utils.parseEther(data.value), + value: ethers.utils.parseEther(data.invalidValue), }); try { @@ -120,6 +131,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -129,6 +142,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -138,9 +153,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -158,9 +177,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -170,13 +193,14 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN op = await arbitrumMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -186,6 +210,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -195,6 +221,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -204,6 +232,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -213,6 +243,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -222,6 +254,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -231,6 +265,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -240,6 +276,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -249,6 +287,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -258,6 +298,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -267,6 +309,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -276,6 +320,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -285,6 +331,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -294,6 +342,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -303,9 +353,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -323,9 +377,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -337,7 +395,7 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt(uoHash); } @@ -348,6 +406,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -357,6 +417,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -366,6 +428,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -375,6 +439,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -384,6 +450,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -393,6 +461,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -402,6 +472,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -411,6 +483,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -420,6 +494,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -429,6 +505,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -438,6 +516,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -447,6 +527,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -456,6 +538,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -465,6 +549,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -474,6 +560,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -483,6 +571,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -492,6 +582,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -501,6 +593,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -510,6 +604,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -519,6 +615,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -528,9 +626,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -541,9 +643,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('SMOKE: Perform the transfer ERC20 token with valid details on the arbitrum network', async () => { + it('SMOKE: Perform the transfer ERC20 token with valid details on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -558,9 +661,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -574,6 +681,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -589,9 +698,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -612,9 +725,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -625,6 +742,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -643,6 +762,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -652,6 +773,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -661,6 +784,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -670,9 +795,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -682,13 +811,14 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN op = await arbitrumMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -698,6 +828,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -707,6 +839,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -716,6 +850,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -725,6 +861,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -734,6 +872,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -743,6 +883,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -752,6 +894,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -761,6 +905,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -770,6 +916,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -779,6 +927,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -788,6 +938,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -797,6 +949,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -806,6 +960,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -815,9 +971,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -834,6 +994,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The sending to the bundler action is not performed.'); } @@ -843,7 +1005,7 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt(uoHash); } @@ -854,6 +1016,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -863,6 +1027,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -872,6 +1038,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -881,6 +1049,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -890,6 +1060,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -899,6 +1071,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -908,6 +1082,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -917,6 +1093,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -926,6 +1104,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -935,6 +1115,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -944,6 +1126,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -953,6 +1137,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -962,6 +1148,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -971,6 +1159,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -980,6 +1170,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -989,6 +1181,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -998,6 +1192,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1007,6 +1203,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1016,6 +1214,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1025,6 +1225,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1034,9 +1236,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -1047,9 +1253,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the arbitrum network', async () => { + it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -1069,9 +1276,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -1080,6 +1291,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1098,6 +1311,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1107,6 +1322,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1116,6 +1333,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1125,9 +1344,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1137,13 +1360,14 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN op = await arbitrumMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1153,6 +1377,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1162,6 +1388,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1171,6 +1399,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1180,6 +1410,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1189,6 +1421,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1198,6 +1432,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1207,6 +1443,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1216,6 +1454,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1225,6 +1465,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1234,6 +1476,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1243,6 +1487,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1252,6 +1498,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1261,6 +1509,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1270,9 +1520,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1289,6 +1543,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The sending to the bundler action is not performed.'); } @@ -1298,7 +1554,7 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt(uoHash); } @@ -1309,16 +1565,19 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( userOpsReceipt.sender, - data.sender, 'The sender value is empty in the get transaction hash response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1328,6 +1587,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1337,6 +1598,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1346,6 +1609,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1355,6 +1620,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1364,6 +1631,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1373,6 +1642,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1382,6 +1653,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1391,6 +1664,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1400,6 +1675,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1409,6 +1686,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1418,6 +1697,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1427,6 +1708,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1436,6 +1719,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1445,6 +1730,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1454,6 +1741,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1463,6 +1752,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1472,6 +1763,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1481,9 +1774,13 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -1494,14 +1791,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1512,6 +1812,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1522,6 +1824,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1540,6 +1844,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect To Address while estimate the added transactions to the batch.', ); @@ -1553,14 +1859,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1571,6 +1880,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1581,6 +1892,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1599,6 +1912,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid To Address while estimate the added transactions to the batch.', ); @@ -1612,14 +1927,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1639,6 +1957,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while adding the transactions to the batch.', ); @@ -1652,14 +1972,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1679,6 +2002,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while adding the transactions to the batch.', ); @@ -1692,14 +2017,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1708,6 +2036,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1725,6 +2055,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -1738,14 +2070,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1757,6 +2092,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1767,6 +2104,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1775,6 +2114,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1786,7 +2127,7 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt( data.incorrectTxHash, ); @@ -1802,6 +2143,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', ); @@ -1815,14 +2158,17 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1834,6 +2180,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1844,6 +2192,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1852,6 +2202,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1863,7 +2215,7 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt( data.pastTxHash, ); @@ -1879,6 +2231,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', ); @@ -1892,9 +2246,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -1903,6 +2258,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -1916,6 +2273,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -1933,6 +2292,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -1946,15 +2307,18 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { provider = new ethers.providers.JsonRpcProvider(); // without provider } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -1968,6 +2332,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -1985,6 +2351,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -1998,9 +2366,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2009,6 +2378,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2022,6 +2393,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2039,6 +2412,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the other Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2052,9 +2427,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2063,6 +2439,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2076,6 +2454,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2093,6 +2473,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2106,9 +2488,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2117,6 +2500,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2130,6 +2515,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2147,6 +2534,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address i.e. missing character while Getting the Decimal from ERC20 Contract.', ); @@ -2160,9 +2549,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2171,6 +2561,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2188,6 +2580,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2201,9 +2595,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2212,6 +2607,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2225,6 +2622,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2234,6 +2633,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2256,6 +2657,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect transfer method name while Getting the transferFrom encoded data.', ); @@ -2269,9 +2672,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2280,6 +2684,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2293,6 +2699,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2302,6 +2710,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2324,6 +2734,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while Getting the transferFrom encoded data.', ); @@ -2337,9 +2749,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2348,6 +2761,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2361,6 +2776,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2370,6 +2787,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2392,6 +2811,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while Getting the transferFrom encoded data.', ); @@ -2405,9 +2826,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2416,6 +2838,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2429,6 +2853,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2437,6 +2863,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2458,6 +2886,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the value while Getting the transferFrom encoded data.', ); @@ -2471,9 +2901,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2482,6 +2913,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2495,6 +2928,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2504,6 +2939,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2527,6 +2964,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect recipient while Getting the transferFrom encoded data.', ); @@ -2540,9 +2979,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2551,6 +2991,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2564,6 +3006,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2573,6 +3017,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2596,6 +3042,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid recipient while Getting the transferFrom encoded data.', ); @@ -2609,9 +3057,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2620,6 +3069,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2633,6 +3084,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2642,6 +3095,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2663,6 +3118,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the recepient while Getting the transferFrom encoded data.', ); @@ -2676,9 +3133,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2687,6 +3145,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2700,6 +3160,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2709,6 +3171,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2723,6 +3187,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2733,6 +3199,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2744,6 +3212,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2761,6 +3231,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while added the estimated transaction to the batch.', ); @@ -2774,9 +3246,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2785,6 +3258,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2798,6 +3273,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2807,6 +3284,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2821,6 +3300,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2831,6 +3312,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2842,6 +3325,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2859,6 +3344,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address while estimate the added transactions to the batch.', ); @@ -2872,9 +3359,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2883,6 +3371,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2896,6 +3386,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2905,6 +3397,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2919,6 +3413,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2929,6 +3425,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2940,6 +3438,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2957,6 +3457,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while estimate the added transactions to the batch.', ); @@ -2970,9 +3472,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2981,6 +3484,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2994,6 +3499,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3003,6 +3510,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3017,6 +3526,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3027,6 +3538,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3037,6 +3550,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3054,6 +3569,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the Token Address while estimate the added transactions to the batch.', ); @@ -3067,9 +3584,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3078,6 +3596,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3091,6 +3611,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3100,6 +3622,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3113,6 +3637,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3123,6 +3649,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3140,6 +3668,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3153,241 +3683,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect TxHash while getting the transaction hash on the arbitrum network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get the respective provider details - let provider; - try { - provider = new ethers.providers.JsonRpcProvider( - data.providerNetwork_arbitrum, - ); - } catch (e) { - console.error(e); - assert.fail('The provider response is not displayed correctly.'); - } - - // get erc20 Contract Interface - let erc20Instance; - try { - erc20Instance = new ethers.Contract( - data.tokenAddress_arbitrumUSDC, - ERC20_ABI, - provider, - ); - } catch (e) { - console.error(e); - assert.fail('The get erc20 Contract Interface is not performed.'); - } - - // get decimals from erc20 contract - let decimals; - try { - decimals = await erc20Instance.functions.decimals(); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // get transferFrom encoded data - let transactionData; - try { - transactionData = erc20Instance.interface.encodeFunctionData( - 'transfer', - [data.recipient, ethers.utils.parseUnits(data.value, decimals)], - ); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // clear the transaction batch - try { - await arbitrumMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await arbitrumMainNetSdk.addUserOpsToBatch({ - to: data.tokenAddress_arbitrumUSDC, - data: transactionData, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await arbitrumMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt( - data.incorrectTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC20 TOKEN WITH INCORRECT TXHASH WHILE GETTING THE TRANSACTION HASH ON THE ARBITRUM NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC20 token with the past TxHash while getting the transaction hash on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { - // get the respective provider details - let provider; - try { - provider = new ethers.providers.JsonRpcProvider( - data.providerNetwork_arbitrum, - ); - } catch (e) { - console.error(e); - assert.fail('The provider response is not displayed correctly.'); - } - - // get erc20 Contract Interface - let erc20Instance; - try { - erc20Instance = new ethers.Contract( - data.tokenAddress_arbitrumUSDC, - ERC20_ABI, - provider, - ); - } catch (e) { - console.error(e); - assert.fail('The get erc20 Contract Interface is not performed.'); - } - - // get decimals from erc20 contract - let decimals; - try { - decimals = await erc20Instance.functions.decimals(); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // get transferFrom encoded data - let transactionData; - try { - transactionData = erc20Instance.interface.encodeFunctionData( - 'transfer', - [data.recipient, ethers.utils.parseUnits(data.value, decimals)], - ); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // clear the transaction batch - try { - await arbitrumMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await arbitrumMainNetSdk.addUserOpsToBatch({ - to: data.tokenAddress_arbitrumUSDC, - data: transactionData, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await arbitrumMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt( - data.pastTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC20 TOKEN WITH PAST TXHASH WHILE GETTING THE TRANSACTION HASH ON THE ARBITRUM NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the arbitrum network', async () => { - if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3409,6 +3708,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect sender address while creating the NFT Data.', ); @@ -3422,9 +3723,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3446,6 +3748,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Sender Address i.e. missing character while creating the NFT Data.', ); @@ -3459,9 +3763,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3482,6 +3787,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Sender Address while creating the NFT Data.', ); @@ -3495,9 +3802,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3519,6 +3827,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect recipient address while creating the NFT Data.', ); @@ -3532,9 +3842,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3556,6 +3867,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Recipient Address i.e. missing character while creating the NFT Data.', ); @@ -3569,9 +3882,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3592,6 +3906,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Recipient Address while creating the NFT Data.', ); @@ -3605,9 +3921,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3629,6 +3946,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect tokenId while creating the NFT Data.', ); @@ -3642,9 +3961,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3665,6 +3985,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the tokenid while creating the NFT Data.', ); @@ -3678,9 +4000,10 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the arbitrum network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3693,6 +4016,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -3701,6 +4026,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3709,6 +4036,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the ERC721 NFT Token is not displayed.'); } @@ -3726,6 +4055,8 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3738,170 +4069,4 @@ describe('The PrimeSDK, when transfer a token with arbitrum network on the MainN ); } }); - - it('REGRESSION: Perform the transfer ERC721 NFT Token with the incorrect TxHash while getting the transaction hash on the arbitrum network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - let erc721Data; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Data = erc721Interface.encodeFunctionData('transferFrom', [ - data.sender, - data.recipient, - data.tokenId, - ]); - } catch (e) { - console.error(e); - assert.fail('The get erc721 Contract Interface is not performed.'); - } - - // clear the transaction batch - try { - await arbitrumMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await arbitrumMainNetSdk.addUserOpsToBatch({ - to: data.nft_tokenAddress, - data: erc721Data, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await arbitrumMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt( - data.incorrectTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN WITH INCORRECT TXHASH WHILE GETTING THE TRANSACTION HASH ON THE ARBITRUM NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC721 NFT Token with the past TxHash while getting the transaction hash on the arbitrum network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - let erc721Data; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Data = erc721Interface.encodeFunctionData('transferFrom', [ - data.sender, - data.recipient, - data.tokenId, - ]); - } catch (e) { - console.error(e); - assert.fail('The get erc721 Contract Interface is not performed.'); - } - - // clear the transaction batch - try { - await arbitrumMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await arbitrumMainNetSdk.addUserOpsToBatch({ - to: data.nft_tokenAddress, - data: erc721Data, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await arbitrumMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt( - data.pastTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN WITH PAST TXHASH WHILE GETTING THE TRANSACTION HASH ON THE ARBITRUM NETWORK', - ); - } - }); }); diff --git a/test/specs/mainnet/01_TransferringFunds/Matic.spec.js b/test/specs/mainnet/01_TransferringFunds/Matic.spec.js index 233538e..415ef95 100644 --- a/test/specs/mainnet/01_TransferringFunds/Matic.spec.js +++ b/test/specs/mainnet/01_TransferringFunds/Matic.spec.js @@ -6,6 +6,7 @@ import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; import abi from '../../../data/NFTabi.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -14,10 +15,9 @@ let maticEtherspotWalletAddress; let maticNativeAddress = null; let runTest; -describe('The PrimeSDK, when transfer a token with matic network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when transfer a token with matic network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -37,9 +37,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -56,9 +60,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -94,14 +102,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('SMOKE: Perform the transfer native token with valid details on the matic network', async () => { + it('SMOKE: Perform the transfer native token with valid details on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -110,7 +121,7 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' try { transactionBatch = await maticMainNetSdk.addUserOpsToBatch({ to: data.recipient, - value: ethers.utils.parseEther(data.value), + value: ethers.utils.parseEther(data.invalidValue), }); try { @@ -120,6 +131,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -129,6 +142,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -138,9 +153,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -158,9 +177,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -170,13 +193,14 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' op = await maticMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -186,6 +210,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -195,6 +221,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -204,6 +232,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -213,6 +243,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -222,6 +254,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -231,6 +265,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -240,6 +276,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -249,6 +287,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -258,6 +298,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -267,6 +309,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -276,6 +320,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -285,6 +331,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -294,6 +342,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -303,9 +353,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -323,9 +377,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -337,7 +395,7 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await maticMainNetSdk.getUserOpReceipt(uoHash); } @@ -348,6 +406,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -357,6 +417,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -366,6 +428,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -375,6 +439,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -384,6 +450,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -393,6 +461,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -402,6 +472,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -411,6 +483,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -420,6 +494,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -429,6 +505,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -438,6 +516,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -447,6 +527,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -456,6 +538,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -465,6 +549,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -474,6 +560,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -483,6 +571,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -492,6 +582,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -501,6 +593,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -510,6 +604,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -519,6 +615,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -528,9 +626,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -541,9 +643,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('SMOKE: Perform the transfer ERC20 token with valid details on the matic network', async () => { + it('SMOKE: Perform the transfer ERC20 token with valid details on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -558,9 +661,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -574,6 +681,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -589,9 +698,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -612,9 +725,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -625,6 +742,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -643,6 +762,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -652,6 +773,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -661,6 +784,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -670,9 +795,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -682,13 +811,14 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' op = await maticMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -698,6 +828,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -707,6 +839,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -716,6 +850,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -725,6 +861,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -734,6 +872,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -743,6 +883,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -752,6 +894,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -761,6 +905,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -770,6 +916,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -779,6 +927,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -788,6 +938,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -797,6 +949,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -806,6 +960,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -815,9 +971,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -834,6 +994,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The sending to the bundler action is not performed.'); } @@ -843,7 +1005,7 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await maticMainNetSdk.getUserOpReceipt(uoHash); } @@ -854,6 +1016,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -863,6 +1027,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -872,6 +1038,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -881,6 +1049,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -890,6 +1060,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -899,6 +1071,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -908,6 +1082,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -917,6 +1093,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -926,6 +1104,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -935,6 +1115,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -944,6 +1126,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -953,6 +1137,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -962,6 +1148,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -971,6 +1159,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -980,6 +1170,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -989,6 +1181,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -998,6 +1192,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1007,6 +1203,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1016,6 +1214,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1025,6 +1225,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1034,9 +1236,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -1047,9 +1253,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the matic network', async () => { + it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -1069,9 +1276,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -1080,6 +1291,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1098,6 +1311,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1107,6 +1322,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1116,6 +1333,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1125,9 +1344,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1137,13 +1360,14 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' op = await maticMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1153,6 +1377,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1162,6 +1388,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1171,6 +1399,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1180,6 +1410,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1189,6 +1421,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1198,6 +1432,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1207,6 +1443,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1216,6 +1454,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1225,6 +1465,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1234,6 +1476,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1243,6 +1487,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1252,6 +1498,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1261,6 +1509,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1270,9 +1520,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1289,6 +1543,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The sending to the bundler action is not performed.'); } @@ -1298,7 +1554,7 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await maticMainNetSdk.getUserOpReceipt(uoHash); } @@ -1309,16 +1565,19 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( userOpsReceipt.sender, - data.sender, 'The sender value is empty in the get transaction hash response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1328,6 +1587,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1337,6 +1598,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1346,6 +1609,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1355,6 +1620,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1364,6 +1631,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1373,6 +1642,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1382,6 +1653,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1391,6 +1664,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1400,6 +1675,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1409,6 +1686,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1418,6 +1697,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1427,6 +1708,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1436,6 +1719,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1445,6 +1730,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1454,6 +1741,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1463,6 +1752,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1472,6 +1763,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1481,9 +1774,13 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -1494,14 +1791,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1512,6 +1812,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1522,6 +1824,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1540,6 +1844,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect To Address while estimate the added transactions to the batch.', ); @@ -1553,14 +1859,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1571,6 +1880,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1581,6 +1892,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1599,6 +1912,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid To Address while estimate the added transactions to the batch.', ); @@ -1612,14 +1927,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1639,6 +1957,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while adding the transactions to the batch.', ); @@ -1652,14 +1972,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1679,6 +2002,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while adding the transactions to the batch.', ); @@ -1692,14 +2017,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1708,6 +2036,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1725,6 +2055,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -1738,14 +2070,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the matic network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1757,6 +2092,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1767,6 +2104,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1775,6 +2114,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1786,7 +2127,7 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await maticMainNetSdk.getUserOpReceipt( data.incorrectTxHash, ); @@ -1802,6 +2143,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', ); @@ -1815,14 +2158,17 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the matic network', async () => { + it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1834,6 +2180,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1844,6 +2192,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1852,6 +2202,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1863,7 +2215,7 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await maticMainNetSdk.getUserOpReceipt( data.pastTxHash, ); @@ -1879,6 +2231,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', ); @@ -1892,9 +2246,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -1903,6 +2258,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -1916,6 +2273,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -1933,6 +2292,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -1946,15 +2307,18 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { provider = new ethers.providers.JsonRpcProvider(); // without provider } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -1968,6 +2332,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -1985,6 +2351,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -1998,9 +2366,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2009,6 +2378,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2022,6 +2393,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2039,6 +2412,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the other Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2052,9 +2427,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2063,6 +2439,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2076,6 +2454,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2093,6 +2473,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2106,9 +2488,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2117,6 +2500,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2130,6 +2515,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2147,6 +2534,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address i.e. missing character while Getting the Decimal from ERC20 Contract.', ); @@ -2160,9 +2549,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2171,6 +2561,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2188,6 +2580,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2201,9 +2595,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2212,6 +2607,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2225,6 +2622,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2234,6 +2633,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2256,6 +2657,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect transfer method name while Getting the transferFrom encoded data.', ); @@ -2269,9 +2672,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2280,6 +2684,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2293,6 +2699,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2302,6 +2710,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2324,6 +2734,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while Getting the transferFrom encoded data.', ); @@ -2337,9 +2749,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2348,6 +2761,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2361,6 +2776,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2370,6 +2787,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2392,6 +2811,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while Getting the transferFrom encoded data.', ); @@ -2405,9 +2826,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2416,6 +2838,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2429,6 +2853,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2437,6 +2863,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2458,6 +2886,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the value while Getting the transferFrom encoded data.', ); @@ -2471,9 +2901,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2482,6 +2913,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2495,6 +2928,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2504,6 +2939,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2527,6 +2964,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect recipient while Getting the transferFrom encoded data.', ); @@ -2540,9 +2979,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2551,6 +2991,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2564,6 +3006,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2573,6 +3017,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2596,6 +3042,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid recipient while Getting the transferFrom encoded data.', ); @@ -2609,9 +3057,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2620,6 +3069,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2633,6 +3084,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2642,6 +3095,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2663,6 +3118,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the recepient while Getting the transferFrom encoded data.', ); @@ -2676,9 +3133,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2687,6 +3145,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2700,6 +3160,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2709,6 +3171,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2723,6 +3187,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2733,6 +3199,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2744,6 +3212,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2761,6 +3231,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while added the estimated transaction to the batch.', ); @@ -2774,9 +3246,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2785,6 +3258,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2798,6 +3273,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2807,6 +3284,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2821,6 +3300,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2831,6 +3312,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2842,6 +3325,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2859,6 +3344,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address while estimate the added transactions to the batch.', ); @@ -2872,9 +3359,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2883,6 +3371,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2896,6 +3386,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2905,6 +3397,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2919,6 +3413,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2929,6 +3425,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2940,6 +3438,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2957,6 +3457,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while estimate the added transactions to the batch.', ); @@ -2970,9 +3472,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2981,6 +3484,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2994,6 +3499,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3003,6 +3510,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3017,6 +3526,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3027,6 +3538,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3037,6 +3550,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3054,6 +3569,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the Token Address while estimate the added transactions to the batch.', ); @@ -3067,9 +3584,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3078,6 +3596,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3091,6 +3611,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3100,6 +3622,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3113,6 +3637,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3123,6 +3649,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3140,6 +3668,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3153,241 +3683,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect TxHash while getting the transaction hash on the matic network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get the respective provider details - let provider; - try { - provider = new ethers.providers.JsonRpcProvider( - data.providerNetwork_matic, - ); - } catch (e) { - console.error(e); - assert.fail('The provider response is not displayed correctly.'); - } - - // get erc20 Contract Interface - let erc20Instance; - try { - erc20Instance = new ethers.Contract( - data.tokenAddress_maticUSDC, - ERC20_ABI, - provider, - ); - } catch (e) { - console.error(e); - assert.fail('The get erc20 Contract Interface is not performed.'); - } - - // get decimals from erc20 contract - let decimals; - try { - decimals = await erc20Instance.functions.decimals(); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // get transferFrom encoded data - let transactionData; - try { - transactionData = erc20Instance.interface.encodeFunctionData( - 'transfer', - [data.recipient, ethers.utils.parseUnits(data.value, decimals)], - ); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // clear the transaction batch - try { - await maticMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await maticMainNetSdk.addUserOpsToBatch({ - to: data.tokenAddress_maticUSDC, - data: transactionData, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await maticMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await maticMainNetSdk.getUserOpReceipt( - data.incorrectTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC20 TOKEN WITH INCORRECT TXHASH WHILE GETTING THE TRANSACTION HASH ON THE matic NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC20 token with the past TxHash while getting the transaction hash on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { - // get the respective provider details - let provider; - try { - provider = new ethers.providers.JsonRpcProvider( - data.providerNetwork_matic, - ); - } catch (e) { - console.error(e); - assert.fail('The provider response is not displayed correctly.'); - } - - // get erc20 Contract Interface - let erc20Instance; - try { - erc20Instance = new ethers.Contract( - data.tokenAddress_maticUSDC, - ERC20_ABI, - provider, - ); - } catch (e) { - console.error(e); - assert.fail('The get erc20 Contract Interface is not performed.'); - } - - // get decimals from erc20 contract - let decimals; - try { - decimals = await erc20Instance.functions.decimals(); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // get transferFrom encoded data - let transactionData; - try { - transactionData = erc20Instance.interface.encodeFunctionData( - 'transfer', - [data.recipient, ethers.utils.parseUnits(data.value, decimals)], - ); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // clear the transaction batch - try { - await maticMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await maticMainNetSdk.addUserOpsToBatch({ - to: data.tokenAddress_maticUSDC, - data: transactionData, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await maticMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await maticMainNetSdk.getUserOpReceipt( - data.pastTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC20 TOKEN WITH PAST TXHASH WHILE GETTING THE TRANSACTION HASH ON THE matic NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the matic network', async () => { - if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3409,6 +3708,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect sender address while creating the NFT Data.', ); @@ -3422,9 +3723,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3446,6 +3748,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Sender Address i.e. missing character while creating the NFT Data.', ); @@ -3459,9 +3763,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3482,6 +3787,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Sender Address while creating the NFT Data.', ); @@ -3495,9 +3802,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3519,6 +3827,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect recipient address while creating the NFT Data.', ); @@ -3532,9 +3842,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3556,6 +3867,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Recipient Address i.e. missing character while creating the NFT Data.', ); @@ -3569,9 +3882,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3592,6 +3906,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Recipient Address while creating the NFT Data.', ); @@ -3605,9 +3921,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3629,6 +3946,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect tokenId while creating the NFT Data.', ); @@ -3642,9 +3961,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3665,6 +3985,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the tokenid while creating the NFT Data.', ); @@ -3678,9 +4000,10 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' } }); - it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the matic network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3693,6 +4016,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -3701,6 +4026,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3709,6 +4036,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the ERC721 NFT Token is not displayed.'); } @@ -3726,6 +4055,8 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3738,170 +4069,4 @@ describe('The PrimeSDK, when transfer a token with matic network on the MainNet' ); } }); - - it('REGRESSION: Perform the transfer ERC721 NFT Token with the incorrect TxHash while getting the transaction hash on the matic network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - let erc721Data; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Data = erc721Interface.encodeFunctionData('transferFrom', [ - data.sender, - data.recipient, - data.tokenId, - ]); - } catch (e) { - console.error(e); - assert.fail('The get erc721 Contract Interface is not performed.'); - } - - // clear the transaction batch - try { - await maticMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await maticMainNetSdk.addUserOpsToBatch({ - to: data.nft_tokenAddress, - data: erc721Data, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await maticMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await maticMainNetSdk.getUserOpReceipt( - data.incorrectTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN WITH INCORRECT TXHASH WHILE GETTING THE TRANSACTION HASH ON THE matic NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC721 NFT Token with the past TxHash while getting the transaction hash on the matic network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - let erc721Data; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Data = erc721Interface.encodeFunctionData('transferFrom', [ - data.sender, - data.recipient, - data.tokenId, - ]); - } catch (e) { - console.error(e); - assert.fail('The get erc721 Contract Interface is not performed.'); - } - - // clear the transaction batch - try { - await maticMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await maticMainNetSdk.addUserOpsToBatch({ - to: data.nft_tokenAddress, - data: erc721Data, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await maticMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await maticMainNetSdk.getUserOpReceipt( - data.pastTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN WITH PAST TXHASH WHILE GETTING THE TRANSACTION HASH ON THE matic NETWORK', - ); - } - }); }); diff --git a/test/specs/mainnet/01_TransferringFunds/Optimism.spec.js b/test/specs/mainnet/01_TransferringFunds/Optimism.spec.js index 37a1fe4..310b812 100644 --- a/test/specs/mainnet/01_TransferringFunds/Optimism.spec.js +++ b/test/specs/mainnet/01_TransferringFunds/Optimism.spec.js @@ -6,6 +6,7 @@ import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; import abi from '../../../data/NFTabi.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -14,10 +15,9 @@ let optimismEtherspotWalletAddress; let optimismNativeAddress = null; let runTest; -describe('The PrimeSDK, when transfer a token with optimism network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when transfer a token with optimism network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -37,9 +37,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -56,9 +60,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -94,14 +102,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('SMOKE: Perform the transfer native token with valid details on the optimism network', async () => { + it('SMOKE: Perform the transfer native token with valid details on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -120,6 +131,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -129,6 +142,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -138,9 +153,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -158,9 +177,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -170,13 +193,14 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN op = await optimismMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -186,6 +210,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -195,6 +221,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -204,6 +232,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -213,6 +243,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -222,6 +254,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -231,6 +265,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -240,6 +276,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -249,6 +287,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -258,6 +298,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -267,6 +309,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -276,6 +320,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -285,6 +331,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -294,6 +342,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -303,9 +353,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -323,9 +377,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -337,7 +395,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt(uoHash); } @@ -348,6 +406,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -357,6 +417,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -366,6 +428,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -375,6 +439,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -384,6 +450,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -393,6 +461,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -402,6 +472,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -411,6 +483,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -420,6 +494,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -429,6 +505,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -438,6 +516,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -447,6 +527,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -456,6 +538,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -465,6 +549,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -474,6 +560,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -483,6 +571,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -492,6 +582,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -501,6 +593,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -510,6 +604,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -519,6 +615,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -528,9 +626,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -541,9 +643,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('SMOKE: Perform the transfer ERC20 token with valid details on the optimism network', async () => { + it('SMOKE: Perform the transfer ERC20 token with valid details on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -558,9 +661,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -574,6 +681,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -589,9 +698,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -612,9 +725,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -625,6 +742,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -643,6 +762,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -652,6 +773,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -661,6 +784,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -670,9 +795,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -682,13 +811,14 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN op = await optimismMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -698,6 +828,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -707,6 +839,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -716,6 +850,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -725,6 +861,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -734,6 +872,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -743,6 +883,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -752,6 +894,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -761,6 +905,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -770,6 +916,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -779,6 +927,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -788,6 +938,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -797,6 +949,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -806,6 +960,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -815,9 +971,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -834,6 +994,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The sending to the bundler action is not performed.'); } @@ -843,7 +1005,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt(uoHash); } @@ -854,6 +1016,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -863,6 +1027,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -872,6 +1038,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -881,6 +1049,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -890,6 +1060,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -899,6 +1071,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -908,6 +1082,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -917,6 +1093,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -926,6 +1104,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -935,6 +1115,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -944,6 +1126,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -953,6 +1137,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -962,6 +1148,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -971,6 +1159,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -980,6 +1170,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -989,6 +1181,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -998,6 +1192,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1007,6 +1203,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1016,6 +1214,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1025,6 +1225,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1034,9 +1236,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -1047,9 +1253,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the optimism network', async () => { + it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -1069,9 +1276,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -1080,6 +1291,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1098,6 +1311,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1107,6 +1322,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1116,6 +1333,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1125,9 +1344,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1137,13 +1360,14 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN op = await optimismMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1153,6 +1377,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1162,6 +1388,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1171,6 +1399,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1180,6 +1410,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1189,6 +1421,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1198,6 +1432,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1207,6 +1443,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1216,6 +1454,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1225,6 +1465,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1234,6 +1476,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1243,6 +1487,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1252,6 +1498,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1261,6 +1509,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1270,9 +1520,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1289,6 +1543,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The sending to the bundler action is not performed.'); } @@ -1298,7 +1554,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt(uoHash); } @@ -1309,16 +1565,19 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( userOpsReceipt.sender, - data.sender, 'The sender value is empty in the get transaction hash response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1328,6 +1587,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1337,6 +1598,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1346,6 +1609,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1355,6 +1620,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1364,6 +1631,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1373,6 +1642,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1382,6 +1653,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1391,6 +1664,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1400,6 +1675,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1409,6 +1686,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1418,6 +1697,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1427,6 +1708,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1436,6 +1719,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1445,6 +1730,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1454,6 +1741,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1463,6 +1752,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1472,6 +1763,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1481,9 +1774,13 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -1494,14 +1791,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1512,6 +1812,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1522,6 +1824,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1540,6 +1844,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect To Address while estimate the added transactions to the batch.', ); @@ -1553,14 +1859,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1571,6 +1880,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1581,6 +1892,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1599,6 +1912,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid To Address while estimate the added transactions to the batch.', ); @@ -1612,14 +1927,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer native token with the same To Address i.e. sender address while estimate the added transactions to the batch on the optimism network', async () => { + xit('REGRESSION: Perform the transfer native token with the same To Address i.e. sender address while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1630,6 +1948,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1640,6 +1960,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1658,6 +1980,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the the same To Address i.e. sender address while estimate the added transactions to the batch.', ); @@ -1671,14 +1995,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1698,6 +2025,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while adding the transactions to the batch.', ); @@ -1711,14 +2040,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1738,6 +2070,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while adding the transactions to the batch.', ); @@ -1751,14 +2085,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer native token with the exceeded Value while estimate the added transactions to the batch on the optimism network', async () => { + xit('REGRESSION: Perform the transfer native token with the exceeded Value while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1769,6 +2106,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1779,6 +2118,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1797,6 +2138,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the exceeded value while estimate the added transactions to the batch.', ); @@ -1810,14 +2153,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1826,6 +2172,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1843,6 +2191,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -1856,14 +2206,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1875,6 +2228,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1885,6 +2240,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1893,6 +2250,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1904,7 +2263,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt( data.incorrectTxHash, ); @@ -1920,6 +2279,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', ); @@ -1933,14 +2294,17 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the optimism network', async () => { + it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1952,6 +2316,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1962,6 +2328,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1970,6 +2338,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1981,7 +2351,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt( data.pastTxHash, ); @@ -1997,6 +2367,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', ); @@ -2010,9 +2382,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2021,6 +2394,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2034,6 +2409,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2051,6 +2428,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2064,15 +2443,18 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { provider = new ethers.providers.JsonRpcProvider(); // without provider } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2086,6 +2468,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2103,6 +2487,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2116,9 +2502,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2127,6 +2514,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2140,6 +2529,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2157,6 +2548,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the other Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2170,9 +2563,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2181,6 +2575,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2194,6 +2590,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2211,6 +2609,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2224,9 +2624,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2235,6 +2636,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2248,6 +2651,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2265,6 +2670,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address i.e. missing character while Getting the Decimal from ERC20 Contract.', ); @@ -2278,9 +2685,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2289,6 +2697,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2306,6 +2716,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2319,9 +2731,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2330,6 +2743,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2343,6 +2758,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2352,6 +2769,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2374,6 +2793,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect transfer method name while Getting the transferFrom encoded data.', ); @@ -2387,9 +2808,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2398,6 +2820,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2411,6 +2835,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2420,6 +2846,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2442,6 +2870,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while Getting the transferFrom encoded data.', ); @@ -2455,9 +2885,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2466,6 +2897,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2479,6 +2912,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2488,6 +2923,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2510,6 +2947,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while Getting the transferFrom encoded data.', ); @@ -2523,9 +2962,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer ERC20 token with exceeded value while Getting the transferFrom encoded data on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC20 token with exceeded value while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2534,6 +2974,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2547,6 +2989,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2556,6 +3000,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2569,6 +3015,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the exceeded value while Getting the transferFrom encoded data.', ); @@ -2588,6 +3036,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the exceeded value while estimate the added transactions to the batch.', ); @@ -2601,9 +3051,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2612,6 +3063,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2625,6 +3078,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2633,6 +3088,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2654,6 +3111,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the value while Getting the transferFrom encoded data.', ); @@ -2667,9 +3126,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2678,6 +3138,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2691,6 +3153,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2700,6 +3164,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2723,6 +3189,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect recipient while Getting the transferFrom encoded data.', ); @@ -2736,9 +3204,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2747,6 +3216,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2760,6 +3231,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2769,6 +3242,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2792,6 +3267,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid recipient while Getting the transferFrom encoded data.', ); @@ -2805,9 +3282,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer ERC20 token with same recipient i.e. sender address while Getting the transferFrom encoded data on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC20 token with same recipient i.e. sender address while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2816,6 +3294,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2829,6 +3309,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2838,6 +3320,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2861,6 +3345,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid recipient while Getting the transferFrom encoded data.', ); @@ -2874,9 +3360,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2885,6 +3372,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2898,6 +3387,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2907,6 +3398,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2928,6 +3421,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the recepient while Getting the transferFrom encoded data.', ); @@ -2941,9 +3436,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2952,6 +3448,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2965,6 +3463,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2974,6 +3474,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2988,6 +3490,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2998,6 +3502,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3009,6 +3515,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3026,6 +3534,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while added the estimated transaction to the batch.', ); @@ -3039,9 +3549,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3050,6 +3561,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3063,6 +3576,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3072,6 +3587,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3086,6 +3603,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3096,6 +3615,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3107,6 +3628,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3124,6 +3647,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address while estimate the added transactions to the batch.', ); @@ -3137,9 +3662,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3148,6 +3674,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3161,6 +3689,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3170,6 +3700,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3184,6 +3716,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3194,6 +3728,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3205,6 +3741,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3222,6 +3760,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while estimate the added transactions to the batch.', ); @@ -3235,9 +3775,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3246,6 +3787,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3259,6 +3802,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3268,6 +3813,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3282,6 +3829,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3292,6 +3841,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3302,6 +3853,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3319,6 +3872,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the Token Address while estimate the added transactions to the batch.', ); @@ -3332,9 +3887,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer ERC20 token without transactionData while adding transactions to the batch on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC20 token without transactionData while adding transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3343,6 +3899,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3356,6 +3914,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3365,6 +3925,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3378,6 +3940,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3388,6 +3952,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3398,6 +3964,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3415,6 +3983,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the transactionData while estimate the added transactions to the batch.', ); @@ -3428,9 +3998,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3439,6 +4010,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3452,6 +4025,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3461,6 +4036,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3474,6 +4051,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3484,6 +4063,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3501,6 +4082,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3514,9 +4097,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect TxHash while getting the transaction hash on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC20 token with the incorrect TxHash while getting the transaction hash on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3525,6 +4109,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3538,6 +4124,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3547,6 +4135,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3561,6 +4151,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3571,6 +4163,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3582,6 +4176,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3590,6 +4186,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -3601,7 +4199,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt( data.incorrectTxHash, ); @@ -3617,6 +4215,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', ); @@ -3630,9 +4230,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC20 token with the past TxHash while getting the transaction hash on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC20 token with the past TxHash while getting the transaction hash on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3641,6 +4242,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3654,6 +4257,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3663,6 +4268,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3677,6 +4284,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3687,6 +4296,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3698,6 +4309,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3706,6 +4319,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -3717,7 +4332,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt( data.pastTxHash, ); @@ -3733,6 +4348,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', ); @@ -3746,9 +4363,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3770,6 +4388,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect sender address while creating the NFT Data.', ); @@ -3783,9 +4403,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3807,6 +4428,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Sender Address i.e. missing character while creating the NFT Data.', ); @@ -3820,9 +4443,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3843,6 +4467,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Sender Address while creating the NFT Data.', ); @@ -3856,9 +4482,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3880,6 +4507,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect recipient address while creating the NFT Data.', ); @@ -3893,9 +4522,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3917,6 +4547,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Recipient Address i.e. missing character while creating the NFT Data.', ); @@ -3930,9 +4562,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3953,6 +4586,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Recipient Address while creating the NFT Data.', ); @@ -3966,9 +4601,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3990,6 +4626,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect tokenId while creating the NFT Data.', ); @@ -4003,9 +4641,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -4026,6 +4665,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the tokenid while creating the NFT Data.', ); @@ -4039,9 +4680,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer ERC721 NFT token with same sender address while creating the NFT Data on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC721 NFT token with same sender address while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -4055,6 +4697,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -4063,6 +4707,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4074,6 +4720,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4083,6 +4731,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN op = await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -4103,6 +4753,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the same sender address while estimate the added transactions to the batch.', ); @@ -4116,9 +4768,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - xit('REGRESSION: Perform the transfer ERC721 NFT token with same recipient address while creating the NFT Data on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC721 NFT token with same recipient address while creating the NFT Data on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -4132,6 +4785,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -4140,6 +4795,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4151,6 +4808,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4160,6 +4819,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN op = await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -4174,6 +4835,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); let error = e.reason; if (error.includes('invalid address')) { console.log( @@ -4181,6 +4844,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the same recipient address while estimate the added transactions to the batch.', ); @@ -4194,9 +4859,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the optimism network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -4209,6 +4875,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -4217,6 +4885,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4225,6 +4895,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the ERC721 NFT Token is not displayed.'); } @@ -4242,6 +4914,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -4255,9 +4929,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT Token with the incorrect TxHash while getting the transaction hash on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC721 NFT Token with the incorrect TxHash while getting the transaction hash on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -4271,6 +4946,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -4279,6 +4956,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4290,6 +4969,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4298,6 +4979,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -4309,7 +4992,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt( data.incorrectTxHash, ); @@ -4325,6 +5008,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', ); @@ -4338,9 +5023,10 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN } }); - it('REGRESSION: Perform the transfer ERC721 NFT Token with the past TxHash while getting the transaction hash on the optimism network', async () => { + xit('REGRESSION: Perform the transfer ERC721 NFT Token with the past TxHash while getting the transaction hash on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -4354,6 +5040,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -4362,6 +5050,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4373,6 +5063,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -4381,6 +5073,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -4392,7 +5086,7 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt( data.pastTxHash, ); @@ -4408,6 +5102,8 @@ describe('The PrimeSDK, when transfer a token with optimism network on the MainN ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', ); diff --git a/test/specs/mainnet/01_TransferringFunds/Xdai.spec.js b/test/specs/mainnet/01_TransferringFunds/Xdai.spec.js index a30aaad..80d6283 100644 --- a/test/specs/mainnet/01_TransferringFunds/Xdai.spec.js +++ b/test/specs/mainnet/01_TransferringFunds/Xdai.spec.js @@ -6,6 +6,7 @@ import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; import abi from '../../../data/NFTabi.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -14,10 +15,9 @@ let xdaiEtherspotWalletAddress; let xdaiNativeAddress = null; let runTest; -describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -26,8 +26,6 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', { chainId: Number(process.env.XDAI_CHAINID), projectKey: process.env.PROJECT_KEY, - rpcProviderUrl: data.providerNetwork_xdai, - bundlerRpcUrl: data.providerNetwork_xdai, }, ); @@ -39,9 +37,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -58,9 +60,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -96,14 +102,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('SMOKE: Perform the transfer native token with valid details on the xdai network', async () => { + it('SMOKE: Perform the transfer native token with valid details on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -122,6 +131,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -131,6 +142,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -140,9 +153,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -160,9 +177,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -172,13 +193,14 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', op = await xdaiMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -188,6 +210,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -197,6 +221,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -206,6 +232,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -215,6 +243,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -224,6 +254,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -233,6 +265,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -242,6 +276,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -251,6 +287,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -260,6 +298,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -269,6 +309,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -278,6 +320,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -287,6 +331,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -296,6 +342,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -305,9 +353,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -325,9 +377,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -339,7 +395,7 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt(uoHash); } @@ -350,6 +406,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -359,6 +417,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -368,6 +428,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -377,6 +439,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -386,6 +450,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -395,6 +461,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -404,6 +472,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -413,6 +483,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -422,6 +494,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -431,6 +505,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -440,6 +516,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -449,6 +527,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -458,6 +538,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -467,6 +549,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -476,6 +560,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -485,6 +571,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -494,6 +582,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -503,6 +593,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -512,6 +604,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -521,6 +615,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -530,9 +626,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } }, 3); // Retry this async test up to 3 times @@ -543,9 +643,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('SMOKE: Perform the transfer ERC20 token with valid details on the xdai network', async () => { + it('SMOKE: Perform the transfer ERC20 token with valid details on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -560,9 +661,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -576,6 +681,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -591,9 +698,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -614,9 +725,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -627,6 +742,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -645,6 +762,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -654,6 +773,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -663,6 +784,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -672,9 +795,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -684,13 +811,14 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', op = await xdaiMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -700,6 +828,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -709,6 +839,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -718,6 +850,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -727,6 +861,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -736,6 +872,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -745,6 +883,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -754,6 +894,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -763,6 +905,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -772,6 +916,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -781,6 +927,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -790,6 +938,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -799,6 +949,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -808,6 +960,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -817,230 +971,280 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); } - // // sign the UserOp and sending to the bundler - // let uoHash; - // try { - // uoHash = await xdaiMainNetSdk.send(op); - - // assert.isNotEmpty( - // uoHash, - // 'The uoHash value is empty in the sending bundler response.', - // ); - // } catch (e) { - // console.error(e); - // assert.fail('The sending to the bundler action is not performed.'); - // } - - // // get transaction hash - // let userOpsReceipt = null; - // try { - // console.log('Waiting for transaction...'); - // const timeout = Date.now() + 60000; // 1 minute timeout - // while (userOpsReceipt == null && Date.now() < timeout) { - // await Helper.wait(2000); - // userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt(uoHash); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.userOpHash, - // 'The userOpHash value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.sender, - // 'The sender value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.nonce, - // 'The nonce value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.actualGasCost, - // 'The actualGasCost value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.actualGasUsed, - // 'The actualGasUsed value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isTrue( - // userOpsReceipt.success, - // 'The success value is false in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.to, - // 'The to value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.from, - // 'The from value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.transactionIndex, - // 'The transactionIndex value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.gasUsed, - // 'The gasUsed value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.logsBloom, - // 'The logsBloom value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.blockHash, - // 'The blockHash value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.transactionHash, - // 'The transactionHash value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.logs, - // 'The logs value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.blockNumber, - // 'The blockNumber value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.confirmations, - // 'The confirmations value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.cumulativeGasUsed, - // 'The cumulativeGasUsed value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.effectiveGasPrice, - // 'The effectiveGasPrice value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.status, - // 'The status value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.type, - // 'The type value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isTrue( - // userOpsReceipt.receipt.byzantium, - // 'The byzantium value of the receipt is false in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - // } catch (e) { - // console.error(e); - // assert.fail('The get transaction hash action is not performed.'); - // } + // sign the UserOp and sending to the bundler + let uoHash; + try { + uoHash = await xdaiMainNetSdk.send(op); + + assert.isNotEmpty( + uoHash, + 'The uoHash value is empty in the sending bundler response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + assert.fail('The sending to the bundler action is not performed.'); + } + + // get transaction hash + let userOpsReceipt = null; + try { + console.log('Waiting for transaction...'); + const timeout = Date.now() + 60000; // 1 minute timeout + while (userOpsReceipt == null && Date.now() < timeout) { + await Helper.wait(500); + userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt(uoHash); + } + + try { + assert.isNotEmpty( + userOpsReceipt.userOpHash, + 'The userOpHash value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.sender, + 'The sender value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.nonce, + 'The nonce value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.actualGasCost, + 'The actualGasCost value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.actualGasUsed, + 'The actualGasUsed value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isTrue( + userOpsReceipt.success, + 'The success value is false in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.to, + 'The to value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.from, + 'The from value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.transactionIndex, + 'The transactionIndex value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.gasUsed, + 'The gasUsed value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.logsBloom, + 'The logsBloom value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.blockHash, + 'The blockHash value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.transactionHash, + 'The transactionHash value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.logs, + 'The logs value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.blockNumber, + 'The blockNumber value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.confirmations, + 'The confirmations value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.cumulativeGasUsed, + 'The cumulativeGasUsed value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.effectiveGasPrice, + 'The effectiveGasPrice value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.status, + 'The status value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.type, + 'The type value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isTrue( + userOpsReceipt.receipt.byzantium, + 'The byzantium value of the receipt is false in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + assert.fail('The get transaction hash action is not performed.'); + } }, 3); // Retry this async test up to 3 times } else { console.warn( @@ -1049,9 +1253,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the xdai network', async () => { + it('SMOKE: Perform the transfer ERC721 NFT token with valid details on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; let erc721Data; @@ -1071,9 +1276,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -1082,6 +1291,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1100,6 +1311,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1109,6 +1322,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1118,6 +1333,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1127,9 +1344,13 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1139,13 +1360,14 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', op = await xdaiMainNetSdk.estimate(); try { - assert.strictEqual( + assert.isNotEmpty( op.sender, - data.sender, 'The sender value is not correct in the estimate transactions added to the batch response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1155,6 +1377,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1164,6 +1388,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1173,6 +1399,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1182,6 +1410,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1191,6 +1421,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1200,6 +1432,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1209,6 +1443,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1218,6 +1454,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1227,6 +1465,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1236,6 +1476,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1245,6 +1487,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1254,6 +1498,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1263,6 +1509,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1272,267 +1520,321 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); } - // // sending to the bundler - // let uoHash; - // try { - // uoHash = await xdaiMainNetSdk.send(op); - - // assert.isNotEmpty( - // uoHash, - // 'The uoHash value is empty in the sending bundler response.', - // ); - // } catch (e) { - // console.error(e); - // assert.fail('The sending to the bundler action is not performed.'); - // } - - // // get transaction hash - // let userOpsReceipt = null; - // try { - // console.log('Waiting for transaction...'); - // const timeout = Date.now() + 60000; // 1 minute timeout - // while (userOpsReceipt == null && Date.now() < timeout) { - // await Helper.wait(2000); - // userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt(uoHash); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.userOpHash, - // 'The userOpHash value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.strictEqual( - // userOpsReceipt.sender, - // data.sender, - // 'The sender value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.nonce, - // 'The nonce value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.actualGasCost, - // 'The actualGasCost value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.actualGasUsed, - // 'The actualGasUsed value is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isTrue( - // userOpsReceipt.success, - // 'The success value is false in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.to, - // 'The to value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.from, - // 'The from value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.transactionIndex, - // 'The transactionIndex value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.gasUsed, - // 'The gasUsed value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.logsBloom, - // 'The logsBloom value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.blockHash, - // 'The blockHash value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.transactionHash, - // 'The transactionHash value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.logs, - // 'The logs value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.blockNumber, - // 'The blockNumber value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.confirmations, - // 'The confirmations value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.cumulativeGasUsed, - // 'The cumulativeGasUsed value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.effectiveGasPrice, - // 'The effectiveGasPrice value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.status, - // 'The status value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - - // try { - // assert.isNotEmpty( - // userOpsReceipt.receipt.type, - // 'The type value of the receipt is empty in the get transaction hash response.', - // ); - // } catch (e) { - // console.error(e); - // } - // } catch (e) { - // console.error(e); - // assert.fail('The get transaction hash action is not performed.'); - // } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN ON THE xdai NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the xdai network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // clear the transaction batch + // sending to the bundler + let uoHash; try { - await xdaiMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - } + uoHash = await xdaiMainNetSdk.send(op); - // add transactions to the batch - try { - await xdaiMainNetSdk.addUserOpsToBatch({ - to: data.incorrectRecipient, // incorrect to address - value: ethers.utils.parseEther(data.value), - }); - } catch (e) { - console.error(e); - assert.fail( - 'The addition of transaction in the batch is not performed.', + assert.isNotEmpty( + uoHash, + 'The uoHash value is empty in the sending bundler response.', ); - } - - // get balance of the account address - try { - await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); - assert.fail('The balance of the native token is not displayed.'); + const eString = e.toString(); + addContext(test, eString); + assert.fail('The sending to the bundler action is not performed.'); } - // estimate transactions added to the batch + // get transaction hash + let userOpsReceipt = null; try { - await xdaiMainNetSdk.estimate(); - - assert.fail( - 'The expected validation is not displayed when entered the incorrect To Address while estimate the added transactions to the batch.', + console.log('Waiting for transaction...'); + const timeout = Date.now() + 60000; // 1 minute timeout + while (userOpsReceipt == null && Date.now() < timeout) { + await Helper.wait(500); + userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt(uoHash); + } + + try { + assert.isNotEmpty( + userOpsReceipt.userOpHash, + 'The userOpHash value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + data.sender, + 'The sender value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.nonce, + 'The nonce value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.actualGasCost, + 'The actualGasCost value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.actualGasUsed, + 'The actualGasUsed value is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isTrue( + userOpsReceipt.success, + 'The success value is false in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.to, + 'The to value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.from, + 'The from value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.transactionIndex, + 'The transactionIndex value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.gasUsed, + 'The gasUsed value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.logsBloom, + 'The logsBloom value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.blockHash, + 'The blockHash value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.transactionHash, + 'The transactionHash value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.logs, + 'The logs value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.blockNumber, + 'The blockNumber value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.confirmations, + 'The confirmations value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.cumulativeGasUsed, + 'The cumulativeGasUsed value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.effectiveGasPrice, + 'The effectiveGasPrice value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.status, + 'The status value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + try { + assert.isNotEmpty( + userOpsReceipt.receipt.type, + 'The type value of the receipt is empty in the get transaction hash response.', + ); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + assert.fail('The get transaction hash action is not performed.'); + } + }, 3); // Retry this async test up to 3 times + } else { + console.warn( + 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN ON THE xdai NETWORK', + ); + } + }); + + it('REGRESSION: Perform the transfer native token with the incorrect To Address while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; + if (runTest) { + await customRetryAsync(async function () { + // clear the transaction batch + try { + await xdaiMainNetSdk.clearUserOpsFromBatch(); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + } + + // add transactions to the batch + try { + await xdaiMainNetSdk.addUserOpsToBatch({ + to: data.incorrectRecipient, // incorrect to address + value: ethers.utils.parseEther(data.value), + }); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + assert.fail( + 'The addition of transaction in the batch is not performed.', + ); + } + + // get balance of the account address + try { + await xdaiMainNetSdk.getNativeBalance(); + } catch (e) { + console.error(e); + const eString = e.toString(); + addContext(test, eString); + assert.fail('The balance of the native token is not displayed.'); + } + + // estimate transactions added to the batch + try { + await xdaiMainNetSdk.estimate(); + + assert.fail( + 'The expected validation is not displayed when entered the incorrect To Address while estimate the added transactions to the batch.', ); } catch (e) { let error = e.reason; @@ -1542,6 +1844,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect To Address while estimate the added transactions to the batch.', ); @@ -1555,14 +1859,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid To Address i.e. missing character while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1573,6 +1880,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1583,6 +1892,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1601,6 +1912,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid To Address while estimate the added transactions to the batch.', ); @@ -1614,14 +1927,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer native token with the invalid Value while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1641,6 +1957,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while adding the transactions to the batch.', ); @@ -1654,14 +1972,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer native token with the very small Value while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } // add transactions to the batch @@ -1681,6 +2002,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while adding the transactions to the batch.', ); @@ -1694,14 +2017,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer native token without adding transaction to the batch while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1710,6 +2036,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1721,12 +2049,15 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); } catch (e) { + console.log('error::::::::', e); if (e.message === 'cannot sign empty transaction batch') { console.log( 'The validation for transaction batch is displayed as expected while adding the estimate transactions to the batch.', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -1740,14 +2071,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the xdai network', async () => { + it('REGRESSION: Perform the transfer native token with the incorrect TxHash while getting the transaction hash on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1759,6 +2093,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1769,6 +2105,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1777,6 +2115,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1788,7 +2128,7 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt( data.incorrectTxHash, ); @@ -1804,6 +2144,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', ); @@ -1817,14 +2159,17 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the xdai network', async () => { + it('REGRESSION: Perform the transfer native token with the past TxHash while getting the transaction hash on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -1836,6 +2181,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -1846,6 +2193,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -1854,6 +2203,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch is not performed.', ); @@ -1865,7 +2216,7 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt( data.pastTxHash, ); @@ -1881,6 +2232,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', ); @@ -1894,9 +2247,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid provider netowrk details while Getting the Decimal from ERC20 Contract on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -1905,6 +2259,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -1918,6 +2274,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -1935,6 +2293,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -1948,15 +2308,18 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without provider netowrk details while Getting the Decimal from ERC20 Contract on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { provider = new ethers.providers.JsonRpcProvider(); // without provider } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -1970,6 +2333,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -1987,6 +2352,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2000,9 +2367,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with other provider netowrk details while Getting the Decimal from ERC20 Contract on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2011,6 +2379,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2024,6 +2394,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2041,6 +2413,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the other Provider Network while Getting the Decimal from ERC20 Contract.', ); @@ -2054,9 +2428,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect Token Address details while Getting the Decimal from ERC20 Contract on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2065,6 +2440,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2078,6 +2455,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2095,6 +2474,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2108,9 +2489,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid Token Address i.e. missing character details while Getting the Decimal from ERC20 Contract on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2119,6 +2501,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2132,6 +2516,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2149,6 +2535,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address i.e. missing character while Getting the Decimal from ERC20 Contract.', ); @@ -2162,9 +2550,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with null Token Address details while Getting the Decimal from ERC20 Contract on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2173,6 +2562,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2190,6 +2581,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while Getting the Decimal from ERC20 Contract.', ); @@ -2203,9 +2596,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect transfer method name while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2214,6 +2608,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2227,6 +2623,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2236,6 +2634,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2258,6 +2658,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect transfer method name while Getting the transferFrom encoded data.', ); @@ -2271,9 +2673,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid value while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2282,6 +2685,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2295,6 +2700,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2304,6 +2711,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2326,6 +2735,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid value while Getting the transferFrom encoded data.', ); @@ -2339,9 +2750,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with very small value while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2350,6 +2762,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2363,6 +2777,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2372,6 +2788,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2394,6 +2812,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the very small value while Getting the transferFrom encoded data.', ); @@ -2407,9 +2827,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without value while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2418,6 +2839,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2431,6 +2854,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2439,6 +2864,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2460,6 +2887,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the value while Getting the transferFrom encoded data.', ); @@ -2473,9 +2902,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with incorrect recipient while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2484,6 +2914,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2497,6 +2929,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2506,6 +2940,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2529,6 +2965,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect recipient while Getting the transferFrom encoded data.', ); @@ -2542,9 +2980,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with invalid recipient i.e. missing character while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2553,6 +2992,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2566,6 +3007,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2575,6 +3018,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2598,6 +3043,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid recipient while Getting the transferFrom encoded data.', ); @@ -2611,9 +3058,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without recipient while Getting the transferFrom encoded data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2622,6 +3070,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2635,6 +3085,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2644,6 +3096,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2665,6 +3119,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the recepient while Getting the transferFrom encoded data.', ); @@ -2678,9 +3134,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the incorrect Token Address while adding transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2689,6 +3146,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2702,6 +3161,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2711,6 +3172,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2725,6 +3188,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2735,6 +3200,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2746,6 +3213,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2763,6 +3232,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the incorrect Token Address while added the estimated transaction to the batch.', ); @@ -2776,9 +3247,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the invalid Token Address i.e. missing character while adding transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2787,6 +3259,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2800,6 +3274,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2809,6 +3285,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2823,6 +3301,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2833,6 +3313,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2844,6 +3326,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2861,6 +3345,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the invalid Token Address while estimate the added transactions to the batch.', ); @@ -2874,9 +3360,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token with the null Token Address while adding transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2885,6 +3372,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2898,6 +3387,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -2907,6 +3398,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2921,6 +3414,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -2931,6 +3426,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2942,6 +3439,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -2959,6 +3458,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when entered the null Token Address while estimate the added transactions to the batch.', ); @@ -2972,9 +3473,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without Token Address while adding transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -2983,6 +3485,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -2996,6 +3500,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3005,6 +3511,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3019,6 +3527,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3029,6 +3539,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3039,6 +3551,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3056,6 +3570,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not entered the Token Address while estimate the added transactions to the batch.', ); @@ -3069,9 +3585,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC20 token without adding transaction to the batch while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get the respective provider details let provider; try { @@ -3080,6 +3597,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The provider response is not displayed correctly.'); } @@ -3093,6 +3612,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc20 Contract Interface is not performed.'); } @@ -3102,6 +3623,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', decimals = await erc20Instance.functions.decimals(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3115,6 +3638,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The decimals from erc20 contract is not displayed correctly.', ); @@ -3125,6 +3650,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3142,6 +3669,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3155,254 +3684,23 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC20 token with the incorrect TxHash while getting the transaction hash on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { - // get the respective provider details - let provider; + await customRetryAsync(async function () { + // get erc721 Contract Interface + let erc721Interface; try { - provider = new ethers.providers.JsonRpcProvider( - data.providerNetwork_xdai, - ); - } catch (e) { - console.error(e); - assert.fail('The provider response is not displayed correctly.'); - } - - // get erc20 Contract Interface - let erc20Instance; - try { - erc20Instance = new ethers.Contract( - data.tokenAddress_xdaiUSDC, - ERC20_ABI, - provider, - ); - } catch (e) { - console.error(e); - assert.fail('The get erc20 Contract Interface is not performed.'); - } - - // get decimals from erc20 contract - let decimals; - try { - decimals = await erc20Instance.functions.decimals(); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // get transferFrom encoded data - let transactionData; - try { - transactionData = erc20Instance.interface.encodeFunctionData( - 'transfer', - [data.recipient, ethers.utils.parseUnits(data.value, decimals)], - ); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // clear the transaction batch - try { - await xdaiMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await xdaiMainNetSdk.addUserOpsToBatch({ - to: data.tokenAddress_xdaiUSDC, - data: transactionData, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await xdaiMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt( - data.incorrectTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC20 TOKEN WITH INCORRECT TXHASH WHILE GETTING THE TRANSACTION HASH ON THE xdai NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC20 token with the past TxHash while getting the transaction hash on the xdai network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get the respective provider details - let provider; - try { - provider = new ethers.providers.JsonRpcProvider( - data.providerNetwork_xdai, - ); - } catch (e) { - console.error(e); - assert.fail('The provider response is not displayed correctly.'); - } - - // get erc20 Contract Interface - let erc20Instance; - try { - erc20Instance = new ethers.Contract( - data.tokenAddress_xdaiUSDC, - ERC20_ABI, - provider, - ); - } catch (e) { - console.error(e); - assert.fail('The get erc20 Contract Interface is not performed.'); - } - - // get decimals from erc20 contract - let decimals; - try { - decimals = await erc20Instance.functions.decimals(); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // get transferFrom encoded data - let transactionData; - try { - transactionData = erc20Instance.interface.encodeFunctionData( - 'transfer', - [data.recipient, ethers.utils.parseUnits(data.value, decimals)], - ); - } catch (e) { - console.error(e); - assert.fail( - 'The decimals from erc20 contract is not displayed correctly.', - ); - } - - // clear the transaction batch - try { - await xdaiMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await xdaiMainNetSdk.addUserOpsToBatch({ - to: data.tokenAddress_xdaiUSDC, - data: transactionData, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await xdaiMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt( - data.pastTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC20 TOKEN WITH PAST TXHASH WHILE GETTING THE TRANSACTION HASH ON THE xdai NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Sender Address while creating the NFT Data on the xdai network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Interface.encodeFunctionData('transferFrom', [ - data.incorrectSender, // incorrect sender address - data.recipient, - data.tokenId, - ]); - - assert.fail( - 'The expected validation is not displayed when added the incorrect sender address while creating the NFT Data.', + erc721Interface = new ethers.utils.Interface(abi.abi); + + erc721Interface.encodeFunctionData('transferFrom', [ + data.incorrectSender, // incorrect sender address + data.recipient, + data.tokenId, + ]); + + assert.fail( + 'The expected validation is not displayed when added the incorrect sender address while creating the NFT Data.', ); } catch (e) { if (e.reason.includes('bad address checksum')) { @@ -3411,6 +3709,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect sender address while creating the NFT Data.', ); @@ -3424,9 +3724,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Sender Address i.e. missing character while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3448,6 +3749,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Sender Address i.e. missing character while creating the NFT Data.', ); @@ -3461,9 +3764,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Sender Address while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3484,6 +3788,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Sender Address while creating the NFT Data.', ); @@ -3497,9 +3803,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect Recipient Address while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3521,6 +3828,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect recipient address while creating the NFT Data.', ); @@ -3534,9 +3843,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with invalid Recipient Address i.e. missing character while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3558,6 +3868,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the invalid Recipient Address i.e. missing character while creating the NFT Data.', ); @@ -3571,9 +3883,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without Recipient Address while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3594,6 +3907,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the Recipient Address while creating the NFT Data.', ); @@ -3607,9 +3922,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token with incorrect tokenId while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3631,6 +3947,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when added the incorrect tokenId while creating the NFT Data.', ); @@ -3644,9 +3962,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT token without tokenId while creating the NFT Data on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3667,6 +3986,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the tokenid while creating the NFT Data.', ); @@ -3680,9 +4001,10 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', } }); - it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the xdai network', async () => { + it('REGRESSION: Perform the transfer ERC721 NFT Token without adding transaction to the batch while estimate the added transactions to the batch on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // get erc721 Contract Interface let erc721Interface; try { @@ -3695,6 +4017,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ]); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get erc721 Contract Interface is not performed.'); } @@ -3703,6 +4027,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -3711,6 +4037,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the ERC721 NFT Token is not displayed.'); } @@ -3728,6 +4056,8 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The expected validation is not displayed when not added the transaction to the batch while adding the estimate transactions to the batch.', ); @@ -3740,170 +4070,4 @@ describe('The PrimeSDK, when transfer a token with xdai network on the MainNet', ); } }); - - it('REGRESSION: Perform the transfer ERC721 NFT Token with the incorrect TxHash while getting the transaction hash on the xdai network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - let erc721Data; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Data = erc721Interface.encodeFunctionData('transferFrom', [ - data.sender, - data.recipient, - data.tokenId, - ]); - } catch (e) { - console.error(e); - assert.fail('The get erc721 Contract Interface is not performed.'); - } - - // clear the transaction batch - try { - await xdaiMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await xdaiMainNetSdk.addUserOpsToBatch({ - to: data.nft_tokenAddress, - data: erc721Data, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await xdaiMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt( - data.incorrectTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the incorrect TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN WITH INCORRECT TXHASH WHILE GETTING THE TRANSACTION HASH ON THE xdai NETWORK', - ); - } - }); - - it('REGRESSION: Perform the transfer ERC721 NFT Token with the past TxHash while getting the transaction hash on the xdai network', async () => { - if (runTest) { - await customRetryAsync(async () => { - // get erc721 Contract Interface - let erc721Interface; - let erc721Data; - try { - erc721Interface = new ethers.utils.Interface(abi.abi); - - erc721Data = erc721Interface.encodeFunctionData('transferFrom', [ - data.sender, - data.recipient, - data.tokenId, - ]); - } catch (e) { - console.error(e); - assert.fail('The get erc721 Contract Interface is not performed.'); - } - - // clear the transaction batch - try { - await xdaiMainNetSdk.clearUserOpsFromBatch(); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // add transactions to the batch - try { - await xdaiMainNetSdk.addUserOpsToBatch({ - to: data.nft_tokenAddress, - data: erc721Data, - }); - } catch (e) { - console.error(e); - assert.fail('The transaction of the batch is not clear correctly.'); - } - - // estimate transactions added to the batch - try { - await xdaiMainNetSdk.estimate(); - } catch (e) { - console.error(e); - assert.fail( - 'The estimate transactions added to the batch is not performed.', - ); - } - - // get transaction hash - let userOpsReceipt = null; - try { - console.log('Waiting for transaction...'); - const timeout = Date.now() + 60000; // 1 minute timeout - while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); - userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt( - data.pastTxHash, - ); - } - - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } catch (e) { - if (e.showDiff === false) { - console.log( - 'The validation for transaction is displayed as expected while getting the transaction hash.', - ); - } else { - console.error(e); - assert.fail( - 'The expected validation is not displayed when added the past TxHash while getting the transaction hash.', - ); - } - } - }, 3); // Retry this async test up to 3 times - } else { - console.warn( - 'DUE TO INSUFFICIENT WALLET BALANCE, SKIPPING TEST CASE OF THE SEND ERC721 TOKEN WITH PAST TXHASH WHILE GETTING THE TRANSACTION HASH ON THE xdai NETWORK', - ); - } - }); }); diff --git a/test/specs/mainnet/02_TransactionHistory/Arbitrum.spec.js b/test/specs/mainnet/02_TransactionHistory/Arbitrum.spec.js index 8595ad2..d7bb276 100644 --- a/test/specs/mainnet/02_TransactionHistory/Arbitrum.spec.js +++ b/test/specs/mainnet/02_TransactionHistory/Arbitrum.spec.js @@ -4,6 +4,7 @@ import { assert } from 'chai'; import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +13,9 @@ let arbitrumEtherspotWalletAddress; let arbitrumNativeAddress = null; let runTest; -describe('The PrimeSDK, when get the single transaction and multiple transaction details with arbitrum network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get the single transaction and multiple transaction details with arbitrum network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +35,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +58,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,14 +100,17 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the transaction history of the native token transaction on the arbitrum network', async () => { + it('SMOKE: Validate the transaction history of the native token transaction on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await arbitrumMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -111,6 +122,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -121,6 +134,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction await arbitrumMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -130,6 +145,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction op = await arbitrumMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -141,6 +158,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction uoHash = await arbitrumMainNetSdk.send(op); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -152,11 +171,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await arbitrumMainNetSdk.getUserOpReceipt(uoHash); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } @@ -186,6 +207,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -196,6 +219,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -206,6 +231,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -216,6 +243,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -226,6 +255,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -236,6 +267,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -246,6 +279,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -255,6 +290,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -264,6 +301,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -273,6 +312,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -282,6 +323,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -291,6 +334,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -300,6 +345,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -309,6 +356,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -318,6 +367,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -327,6 +378,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -336,18 +389,21 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is not correct in the transaction details response.', ); // status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -357,6 +413,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -366,6 +424,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -375,6 +435,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -387,9 +449,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction details is not performed.'); } @@ -422,6 +488,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -432,6 +500,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_transactions = transactions.items[x].blockNumber; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -442,17 +512,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { - // assert.strictEqual( + // assert.isNotEmpty( // transactions.items[x].from, - // data.sender, // 'The from address value is not correct in the transaction details response.', // ); // from_transactions = transactions.items[x].from; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -463,6 +536,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -474,6 +549,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_transactions = transactions.items[x].gasLimit; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -484,6 +561,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -495,6 +574,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_transactions = transactions.items[x].gasPrice; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -505,6 +586,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -515,6 +598,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_transactions = transactions.items[x].gasUsed; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -525,6 +610,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -536,6 +623,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_transactions = transactions.items[x].hash; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -546,6 +635,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -555,6 +646,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -564,6 +657,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -573,6 +668,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -582,6 +679,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -591,6 +690,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -600,6 +701,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -609,6 +712,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -618,6 +723,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -627,6 +734,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -636,6 +745,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -647,6 +758,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // status_transactions = transactions.items[x].status; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -657,6 +770,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -666,6 +781,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -675,6 +792,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -684,6 +803,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -696,6 +817,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // transactions.items[x].blockExplorerUrl; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -706,12 +829,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // break; // } // } // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // assert.fail( // 'The history of the transactions of the respective address is not performed correctly.', // ); @@ -724,9 +851,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the NFT List on the arbitrum network', async () => { + it('SMOKE: Validate the NFT List on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let nfts; try { nfts = await arbitrumMainNetSdk.getNftList({ @@ -744,6 +872,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -753,6 +883,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -762,6 +894,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -771,6 +905,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -780,6 +916,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -789,6 +927,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -798,6 +938,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -807,6 +949,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -816,12 +960,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { console.log('The items are not available in the NFT list.'); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get NFT list is not performed correctly.'); } }, 3); // Retry this async test up to 3 times @@ -832,9 +980,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with random hash in arbitrum network', async () => { + xit('REGRESSION: Validate the get transactions history response with random hash in arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching historical transactions let transactions; let randomTransaction; @@ -866,6 +1015,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -876,6 +1027,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_transactions = transactions.items[randomTransaction].from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -887,6 +1040,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -898,6 +1053,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -909,6 +1066,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -919,17 +1078,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_transactions = transactions.items[randomTransaction].hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].status, - 'Completed', 'The status value is empty in the get transactions response.', ); status_transactions = transactions.items[randomTransaction].status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -939,16 +1101,19 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].direction, - 'Sender', 'The direction value is not equal in the get transactions response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -958,6 +1123,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -967,6 +1134,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -978,9 +1147,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching historical transactions.', ); @@ -1009,6 +1182,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1019,6 +1194,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1029,6 +1206,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1039,6 +1218,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1049,6 +1230,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1059,6 +1242,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1069,6 +1254,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1078,6 +1265,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1087,6 +1276,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1096,6 +1287,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1105,6 +1298,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1114,6 +1309,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1123,6 +1320,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1132,6 +1331,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1141,6 +1342,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1150,6 +1353,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1159,6 +1364,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1168,17 +1375,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is empty in the get single transaction response.', ); status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1188,6 +1398,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1197,6 +1409,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1206,6 +1420,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1217,6 +1433,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1227,6 +1445,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1237,6 +1457,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1247,6 +1469,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1257,6 +1481,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1267,6 +1493,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1277,6 +1505,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1287,6 +1517,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1297,9 +1529,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching single transaction.', ); @@ -1312,9 +1548,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response with invalid hash on arbitrum network', async () => { + it('REGRESSION: Validate the get transaction history response with invalid hash on arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction let transaction; try { @@ -1328,12 +1565,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); @@ -1346,9 +1587,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on arbitrum network', async () => { + it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction try { try { @@ -1367,6 +1609,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1374,6 +1618,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1386,9 +1632,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid chainid in arbitrum network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid chainid in arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getTransactions({ chainId: Number(process.env.INVALID_ARBITRUM_CHAINID), @@ -1404,6 +1651,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid chainid', ); @@ -1417,9 +1667,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect chainid in arbitrum network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect chainid in arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getTransactions({ chainId: Number(process.env.MATIC_CHAINID), @@ -1435,6 +1686,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect chainid', ); @@ -1448,9 +1702,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid account in arbitrum network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid account in arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getTransactions({ chainId: Number(process.env.ARBITRUM_CHAINID), @@ -1466,6 +1721,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid account', ); @@ -1479,9 +1737,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect account in arbitrum network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect account in arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getTransactions({ chainId: Number(process.env.ARBITRUM_CHAINID), @@ -1497,6 +1756,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect account', ); @@ -1510,9 +1772,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid chainid on the arbitrum network', async () => { + it('REGRESSION: Validate the NFT List with invalid chainid on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getNftList({ chainId: process.env.INVALID_ARBITRUM_CHAINID, @@ -1529,6 +1792,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid chainid', ); @@ -1542,9 +1808,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid account address on the arbitrum network', async () => { + it('REGRESSION: Validate the NFT List with invalid account address on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getNftList({ chainId: Number(process.env.ARBITRUM_CHAINID), @@ -1561,6 +1828,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid account address', ); @@ -1574,9 +1844,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with incorrect account address on the arbitrum network', async () => { + it('REGRESSION: Validate the NFT List with incorrect account address on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await arbitrumMainNetSdk.getNftList({ chainId: Number(process.env.ARBITRUM_CHAINID), @@ -1592,6 +1863,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with inncorrect account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with incorrect account address', ); diff --git a/test/specs/mainnet/02_TransactionHistory/Matic.spec.js b/test/specs/mainnet/02_TransactionHistory/Matic.spec.js index aa9311c..349ddff 100644 --- a/test/specs/mainnet/02_TransactionHistory/Matic.spec.js +++ b/test/specs/mainnet/02_TransactionHistory/Matic.spec.js @@ -4,6 +4,7 @@ import { assert } from 'chai'; import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +13,9 @@ let maticEtherspotWalletAddress; let maticNativeAddress = null; let runTest; -describe('The PrimeSDK, when get the single transaction and multiple transaction details with matic network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get the single transaction and multiple transaction details with matic network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +35,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +58,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,14 +100,17 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the transaction history of the native token transaction on the matic network', async () => { + it('SMOKE: Validate the transaction history of the native token transaction on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await maticMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -111,6 +122,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -121,6 +134,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction await maticMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -130,6 +145,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction op = await maticMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -141,6 +158,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction uoHash = await maticMainNetSdk.send(op); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -152,11 +171,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await maticMainNetSdk.getUserOpReceipt(uoHash); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } @@ -186,6 +207,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -196,6 +219,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -206,6 +231,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -216,6 +243,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -226,6 +255,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -236,6 +267,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -246,6 +279,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -255,6 +290,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -264,6 +301,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -273,6 +312,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -282,6 +323,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -291,6 +334,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -300,6 +345,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -309,6 +356,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -318,6 +367,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -327,6 +378,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -336,18 +389,21 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is not correct in the transaction details response.', ); // status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -357,6 +413,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -366,6 +424,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -375,6 +435,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -387,9 +449,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction details is not performed.'); } @@ -422,6 +488,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -432,6 +500,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_transactions = transactions.items[x].blockNumber; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -442,17 +512,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { - // assert.strictEqual( + // assert.isNotEmpty( // transactions.items[x].from, - // data.sender, // 'The from address value is not correct in the transaction details response.', // ); // from_transactions = transactions.items[x].from; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -463,6 +536,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -474,6 +549,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_transactions = transactions.items[x].gasLimit; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -484,6 +561,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -495,6 +574,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_transactions = transactions.items[x].gasPrice; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -505,6 +586,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -515,6 +598,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_transactions = transactions.items[x].gasUsed; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -525,6 +610,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -536,6 +623,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_transactions = transactions.items[x].hash; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -546,6 +635,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -555,6 +646,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -564,6 +657,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -573,6 +668,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -582,6 +679,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -591,6 +690,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -600,6 +701,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -609,6 +712,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -618,6 +723,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -627,6 +734,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -636,6 +745,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -647,6 +758,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // status_transactions = transactions.items[x].status; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -657,6 +770,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -666,6 +781,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -675,6 +792,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -684,6 +803,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -696,6 +817,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // transactions.items[x].blockExplorerUrl; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -706,12 +829,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // break; // } // } // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // assert.fail( // 'The history of the transactions of the respective address is not performed correctly.', // ); @@ -724,9 +851,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the NFT List on the matic network', async () => { + it('SMOKE: Validate the NFT List on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let nfts; try { nfts = await maticMainNetSdk.getNftList({ @@ -744,6 +872,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -753,6 +883,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -762,6 +894,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -771,6 +905,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -780,6 +916,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -789,6 +927,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -798,6 +938,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -807,6 +949,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -816,12 +960,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { console.log('The items are not available in the NFT list.'); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get NFT list is not performed correctly.'); } }, 3); // Retry this async test up to 3 times @@ -832,9 +980,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with random hash in matic network', async () => { + xit('REGRESSION: Validate the get transactions history response with random hash in matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching historical transactions let transactions; let randomTransaction; @@ -866,6 +1015,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -876,6 +1027,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_transactions = transactions.items[randomTransaction].from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -887,6 +1040,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -898,6 +1053,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -909,6 +1066,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -919,17 +1078,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_transactions = transactions.items[randomTransaction].hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].status, - 'Completed', 'The status value is empty in the get transactions response.', ); status_transactions = transactions.items[randomTransaction].status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -939,16 +1101,19 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].direction, - 'Sender', 'The direction value is not equal in the get transactions response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -958,6 +1123,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -967,6 +1134,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -978,9 +1147,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching historical transactions.', ); @@ -1009,6 +1182,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1019,6 +1194,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1029,6 +1206,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1039,6 +1218,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1049,6 +1230,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1059,6 +1242,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1069,6 +1254,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1078,6 +1265,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1087,6 +1276,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1096,6 +1287,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1105,6 +1298,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1114,6 +1309,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1123,6 +1320,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1132,6 +1331,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1141,6 +1342,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1150,6 +1353,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1159,6 +1364,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1168,17 +1375,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is empty in the get single transaction response.', ); status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1188,6 +1398,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1197,6 +1409,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1206,6 +1420,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1217,6 +1433,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1227,6 +1445,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1237,6 +1457,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1247,6 +1469,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1257,6 +1481,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1267,6 +1493,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1277,6 +1505,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1287,6 +1517,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1297,9 +1529,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching single transaction.', ); @@ -1312,9 +1548,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response with invalid hash on matic network', async () => { + it('REGRESSION: Validate the get transaction history response with invalid hash on matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction let transaction; try { @@ -1328,12 +1565,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); @@ -1346,9 +1587,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on matic network', async () => { + it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction try { try { @@ -1367,6 +1609,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1374,6 +1618,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1386,9 +1632,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid chainid in matic network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid chainid in matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getTransactions({ chainId: Number(process.env.INVALID_POLYGON_CHAINID), @@ -1404,6 +1651,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid chainid', ); @@ -1417,9 +1667,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect chainid in matic network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect chainid in matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getTransactions({ chainId: Number(process.env.MATIC_CHAINID), @@ -1435,6 +1686,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect chainid', ); @@ -1448,9 +1702,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid account in matic network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid account in matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getTransactions({ chainId: Number(process.env.POLYGON_CHAINID), @@ -1466,6 +1721,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid account', ); @@ -1479,9 +1737,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect account in matic network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect account in matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getTransactions({ chainId: Number(process.env.POLYGON_CHAINID), @@ -1497,6 +1756,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect account', ); @@ -1510,9 +1772,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid chainid on the matic network', async () => { + it('REGRESSION: Validate the NFT List with invalid chainid on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getNftList({ chainId: process.env.INVALID_POLYGON_CHAINID, @@ -1529,6 +1792,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid chainid', ); @@ -1542,9 +1808,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid account address on the matic network', async () => { + it('REGRESSION: Validate the NFT List with invalid account address on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getNftList({ chainId: Number(process.env.POLYGON_CHAINID), @@ -1561,6 +1828,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid account address', ); @@ -1574,9 +1844,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with incorrect account address on the matic network', async () => { + it('REGRESSION: Validate the NFT List with incorrect account address on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await maticMainNetSdk.getNftList({ chainId: Number(process.env.POLYGON_CHAINID), @@ -1592,6 +1863,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with inncorrect account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with incorrect account address', ); diff --git a/test/specs/mainnet/02_TransactionHistory/Optimism.spec.js b/test/specs/mainnet/02_TransactionHistory/Optimism.spec.js index 5d263b9..2defefd 100644 --- a/test/specs/mainnet/02_TransactionHistory/Optimism.spec.js +++ b/test/specs/mainnet/02_TransactionHistory/Optimism.spec.js @@ -4,6 +4,7 @@ import { assert } from 'chai'; import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +13,9 @@ let optimismEtherspotWalletAddress; let optimismNativeAddress = null; let runTest; -describe('The PrimeSDK, when get the single transaction and multiple transaction details with optimism network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get the single transaction and multiple transaction details with optimism network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +35,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +58,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,14 +100,17 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the transaction history of the native token transaction on the optimism network', async () => { + it('SMOKE: Validate the transaction history of the native token transaction on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await optimismMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -111,6 +122,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -121,6 +134,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction await optimismMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -130,6 +145,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction op = await optimismMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -141,6 +158,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction uoHash = await optimismMainNetSdk.send(op); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -152,11 +171,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await optimismMainNetSdk.getUserOpReceipt(uoHash); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } @@ -186,6 +207,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -196,6 +219,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -206,6 +231,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -216,6 +243,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -226,6 +255,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -236,6 +267,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -246,6 +279,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -255,6 +290,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -264,6 +301,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -273,6 +312,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -282,6 +323,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -291,6 +334,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -300,6 +345,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -309,6 +356,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -318,6 +367,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -327,6 +378,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -336,18 +389,21 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is not correct in the transaction details response.', ); // status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -357,6 +413,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -366,6 +424,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -375,6 +435,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -387,9 +449,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction details is not performed.'); } @@ -422,6 +488,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -432,6 +500,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_transactions = transactions.items[x].blockNumber; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -442,17 +512,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { - // assert.strictEqual( + // assert.isNotEmpty( // transactions.items[x].from, - // data.sender, // 'The from address value is not correct in the transaction details response.', // ); // from_transactions = transactions.items[x].from; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -463,6 +536,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -474,6 +549,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_transactions = transactions.items[x].gasLimit; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -484,6 +561,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -495,6 +574,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_transactions = transactions.items[x].gasPrice; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -505,6 +586,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -515,6 +598,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_transactions = transactions.items[x].gasUsed; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -525,6 +610,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -536,6 +623,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_transactions = transactions.items[x].hash; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -546,6 +635,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -555,6 +646,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -564,6 +657,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -573,6 +668,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -582,6 +679,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -591,6 +690,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -600,6 +701,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -609,6 +712,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -618,6 +723,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -627,6 +734,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -636,6 +745,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -647,6 +758,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // status_transactions = transactions.items[x].status; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -657,6 +770,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -666,6 +781,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -675,6 +792,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -684,6 +803,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -696,6 +817,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // transactions.items[x].blockExplorerUrl; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -706,12 +829,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // break; // } // } // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // assert.fail( // 'The history of the transactions of the respective address is not performed correctly.', // ); @@ -724,9 +851,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the NFT List on the optimism network', async () => { + it('SMOKE: Validate the NFT List on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let nfts; try { nfts = await optimismMainNetSdk.getNftList({ @@ -744,6 +872,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -753,6 +883,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -762,6 +894,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -771,6 +905,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -780,6 +916,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -789,6 +927,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -798,6 +938,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -807,6 +949,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -816,12 +960,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { console.log('The items are not available in the NFT list.'); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get NFT list is not performed correctly.'); } }, 3); // Retry this async test up to 3 times @@ -832,9 +980,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with random hash in optimism network', async () => { + xit('REGRESSION: Validate the get transactions history response with random hash in optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching historical transactions let transactions; let randomTransaction; @@ -866,6 +1015,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -876,6 +1027,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_transactions = transactions.items[randomTransaction].from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -887,6 +1040,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -898,6 +1053,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -909,6 +1066,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -919,17 +1078,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_transactions = transactions.items[randomTransaction].hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].status, - 'Completed', 'The status value is empty in the get transactions response.', ); status_transactions = transactions.items[randomTransaction].status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -939,16 +1101,19 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].direction, - 'Sender', 'The direction value is not equal in the get transactions response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -958,6 +1123,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -967,6 +1134,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -978,9 +1147,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching historical transactions.', ); @@ -1009,6 +1182,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1019,6 +1194,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1029,6 +1206,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1039,6 +1218,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1049,6 +1230,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1059,6 +1242,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1069,6 +1254,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1078,6 +1265,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1087,6 +1276,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1096,6 +1287,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1105,6 +1298,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1114,6 +1309,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1123,6 +1320,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1132,6 +1331,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1141,6 +1342,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1150,6 +1353,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1159,6 +1364,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1168,17 +1375,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is empty in the get single transaction response.', ); status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1188,6 +1398,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1197,6 +1409,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1206,6 +1420,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1217,6 +1433,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1227,6 +1445,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1237,6 +1457,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1247,6 +1469,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1257,6 +1481,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1267,6 +1493,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1277,6 +1505,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1287,6 +1517,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1297,9 +1529,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching single transaction.', ); @@ -1312,9 +1548,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response with invalid hash on optimism network', async () => { + it('REGRESSION: Validate the get transaction history response with invalid hash on optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction let transaction; try { @@ -1328,12 +1565,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); @@ -1346,9 +1587,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on optimism network', async () => { + it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction try { try { @@ -1367,6 +1609,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1374,6 +1618,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1386,9 +1632,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid chainid in optimism network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid chainid in optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getTransactions({ chainId: Number(process.env.INVALID_OPTIMISM_CHAINID), @@ -1404,6 +1651,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid chainid', ); @@ -1417,9 +1667,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect chainid in optimism network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect chainid in optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getTransactions({ chainId: Number(process.env.MATIC_CHAINID), @@ -1435,6 +1686,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect chainid', ); @@ -1448,9 +1702,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid account in optimism network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid account in optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getTransactions({ chainId: Number(process.env.OPTIMISM_CHAINID), @@ -1466,6 +1721,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid account', ); @@ -1479,9 +1737,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect account in optimism network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect account in optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getTransactions({ chainId: Number(process.env.OPTIMISM_CHAINID), @@ -1497,6 +1756,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect account', ); @@ -1510,9 +1772,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid chainid on the optimism network', async () => { + it('REGRESSION: Validate the NFT List with invalid chainid on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getNftList({ chainId: process.env.INVALID_OPTIMISM_CHAINID, @@ -1529,6 +1792,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid chainid', ); @@ -1542,9 +1808,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid account address on the optimism network', async () => { + it('REGRESSION: Validate the NFT List with invalid account address on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getNftList({ chainId: Number(process.env.OPTIMISM_CHAINID), @@ -1561,6 +1828,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid account address', ); @@ -1574,9 +1844,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with incorrect account address on the optimism network', async () => { + it('REGRESSION: Validate the NFT List with incorrect account address on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await optimismMainNetSdk.getNftList({ chainId: Number(process.env.OPTIMISM_CHAINID), @@ -1592,6 +1863,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with inncorrect account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with incorrect account address', ); diff --git a/test/specs/mainnet/02_TransactionHistory/Xdai.spec.js b/test/specs/mainnet/02_TransactionHistory/Xdai.spec.js index bbfc26f..4fca2af 100644 --- a/test/specs/mainnet/02_TransactionHistory/Xdai.spec.js +++ b/test/specs/mainnet/02_TransactionHistory/Xdai.spec.js @@ -4,6 +4,7 @@ import { assert } from 'chai'; import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; import data from '../../../data/testData.json' assert { type: 'json' }; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +13,9 @@ let xdaiEtherspotWalletAddress; let xdaiNativeAddress = null; let runTest; -describe('The PrimeSDK, when get the single transaction and multiple transaction details with xdai network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get the single transaction and multiple transaction details with xdai network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -37,9 +37,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -56,9 +60,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -94,14 +102,17 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the transaction history of the native token transaction on the xdai network', async () => { + it('SMOKE: Validate the transaction history of the native token transaction on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // clear the transaction batch try { await xdaiMainNetSdk.clearUserOpsFromBatch(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The transaction of the batch is not clear correctly.'); } @@ -113,6 +124,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction }); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The addition of transaction in the batch is not performed.', ); @@ -123,6 +136,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction await xdaiMainNetSdk.getNativeBalance(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The balance of the native token is not displayed.'); } @@ -132,6 +147,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction op = await xdaiMainNetSdk.estimate(); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The estimate transactions added to the batch and get the fee data for the UserOp is not performed.', ); @@ -143,6 +160,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction uoHash = await xdaiMainNetSdk.send(op); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The sign the UserOp and sending to the bundler action is not performed.', ); @@ -154,13 +173,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction console.log('Waiting for transaction...'); const timeout = Date.now() + 60000; // 1 minute timeout while (userOpsReceipt == null && Date.now() < timeout) { - await Helper.wait(2000); + await Helper.wait(500); userOpsReceipt = await xdaiMainNetSdk.getUserOpReceipt(uoHash); } - - console.log('userOpsReceipt::::::::::', userOpsReceipt); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction hash action is not performed.'); } @@ -190,6 +209,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -200,6 +221,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -210,6 +233,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -220,6 +245,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -230,6 +257,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -240,6 +269,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -250,6 +281,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -259,6 +292,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -268,6 +303,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -277,6 +314,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -286,6 +325,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -295,6 +336,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -304,6 +347,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -313,6 +358,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -322,6 +369,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -331,6 +380,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -340,18 +391,21 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is not correct in the transaction details response.', ); // status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -361,6 +415,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -370,6 +426,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -379,6 +437,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -391,9 +451,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get transaction details is not performed.'); } @@ -426,6 +490,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -436,6 +502,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // blockNumber_transactions = transactions.items[x].blockNumber; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -446,17 +514,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { - // assert.strictEqual( + // assert.isNotEmpty( // transactions.items[x].from, - // data.sender, // 'The from address value is not correct in the transaction details response.', // ); // from_transactions = transactions.items[x].from; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -467,6 +538,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -478,6 +551,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasLimit_transactions = transactions.items[x].gasLimit; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -488,6 +563,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -499,6 +576,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasPrice_transactions = transactions.items[x].gasPrice; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -509,6 +588,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -519,6 +600,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // gasUsed_transactions = transactions.items[x].gasUsed; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -529,6 +612,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -540,6 +625,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // hash_transactions = transactions.items[x].hash; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -550,6 +637,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -559,6 +648,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -568,6 +659,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -577,6 +670,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -586,6 +681,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -595,6 +692,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -604,6 +703,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -613,6 +714,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -622,6 +725,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -631,6 +736,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -640,6 +747,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -651,6 +760,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // status_transactions = transactions.items[x].status; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -661,6 +772,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -670,6 +783,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -679,6 +794,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -688,6 +805,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -700,6 +819,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // transactions.items[x].blockExplorerUrl; // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // try { @@ -710,12 +831,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction // ); // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // } // break; // } // } // } catch (e) { // console.error(e); + // const eString = e.toString(); + // addContext(test, eString); // assert.fail( // 'The history of the transactions of the respective address is not performed correctly.', // ); @@ -728,9 +853,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('SMOKE: Validate the NFT List on the xdai network', async () => { + it('SMOKE: Validate the NFT List on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let nfts; try { nfts = await xdaiMainNetSdk.getNftList({ @@ -748,6 +874,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -757,6 +885,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -766,6 +896,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -775,6 +907,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -784,6 +918,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -793,6 +929,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -802,6 +940,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -811,6 +951,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -820,12 +962,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { console.log('The items are not available in the NFT list.'); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The get NFT list is not performed correctly.'); } }, 3); // Retry this async test up to 3 times @@ -836,9 +982,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with random hash in xdai network', async () => { + xit('REGRESSION: Validate the get transactions history response with random hash in xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching historical transactions let transactions; let randomTransaction; @@ -870,6 +1017,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -880,6 +1029,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_transactions = transactions.items[randomTransaction].from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -891,6 +1042,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -902,6 +1055,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -913,6 +1068,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -923,17 +1080,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_transactions = transactions.items[randomTransaction].hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].status, - 'Completed', 'The status value is empty in the get transactions response.', ); status_transactions = transactions.items[randomTransaction].status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -943,16 +1103,19 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( transactions.items[randomTransaction].direction, - 'Sender', 'The direction value is not equal in the get transactions response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -962,6 +1125,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -971,6 +1136,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -982,9 +1149,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction transactions.items[randomTransaction].blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching historical transactions.', ); @@ -1013,6 +1184,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1023,6 +1196,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction blockNumber_singleTransaction = singleTransaction.blockNumber; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1033,6 +1208,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction from_singleTransaction = singleTransaction.from; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1043,6 +1220,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasLimit_singleTransaction = singleTransaction.gasLimit; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1053,6 +1232,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasPrice_singleTransaction = singleTransaction.gasPrice; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1063,6 +1244,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction gasUsed_singleTransaction = singleTransaction.gasUsed; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1073,6 +1256,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction hash_singleTransaction = singleTransaction.hash; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1082,6 +1267,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1091,6 +1278,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1100,6 +1289,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1109,6 +1300,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1118,6 +1311,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1127,6 +1322,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1136,6 +1333,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1145,6 +1344,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1154,6 +1355,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1163,6 +1366,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1172,17 +1377,20 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( singleTransaction.status, - 'Completed', 'The status value is empty in the get single transaction response.', ); status_singleTransaction = singleTransaction.status; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1192,6 +1400,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1201,6 +1411,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1210,6 +1422,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1221,6 +1435,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction singleTransaction.blockExplorerUrl; } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1231,6 +1447,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1241,6 +1459,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1251,6 +1471,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1261,6 +1483,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1271,6 +1495,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1281,6 +1507,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1291,6 +1519,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -1301,9 +1531,13 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'An error is displayed while Fetching single transaction.', ); @@ -1316,9 +1550,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response with invalid hash on xdai network', async () => { + it('REGRESSION: Validate the get transaction history response with invalid hash on xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction let transaction; try { @@ -1332,12 +1567,16 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'Getting the single transaction history with incorrect Hash.', ); @@ -1350,9 +1589,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on xdai network', async () => { + it('REGRESSION: Validate the get transaction history response when hash hex is not with 32 size on xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { // Fetching a single transaction try { try { @@ -1371,6 +1611,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction ); } else { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1378,6 +1620,8 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The transaction history is fetched with hash which not having 32 size hex.', ); @@ -1390,9 +1634,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid chainid in xdai network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid chainid in xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getTransactions({ chainId: Number(process.env.INVALID_XDAI_CHAINID), @@ -1408,6 +1653,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid chainid', ); @@ -1421,9 +1669,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect chainid in xdai network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect chainid in xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getTransactions({ chainId: Number(process.env.MATIC_CHAINID), @@ -1439,6 +1688,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect chainid', ); @@ -1452,9 +1704,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with invalid account in xdai network', async () => { + xit('REGRESSION: Validate the get transactions history response with invalid account in xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getTransactions({ chainId: Number(process.env.XDAI_CHAINID), @@ -1470,6 +1723,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with invalid account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with invalid account', ); @@ -1483,9 +1739,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - xit('REGRESSION: Validate the get transactions history response with incorrect account in xdai network', async () => { + xit('REGRESSION: Validate the get transactions history response with incorrect account in xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getTransactions({ chainId: Number(process.env.XDAI_CHAINID), @@ -1501,6 +1758,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the get transactions history response with incorrect account', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the get transactions history response with incorrect account', ); @@ -1514,9 +1774,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid chainid on the xdai network', async () => { + it('REGRESSION: Validate the NFT List with invalid chainid on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getNftList({ chainId: process.env.INVALID_XDAI_CHAINID, @@ -1533,6 +1794,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid chainid', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid chainid', ); @@ -1546,9 +1810,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with invalid account address on the xdai network', async () => { + it('REGRESSION: Validate the NFT List with invalid account address on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getNftList({ chainId: Number(process.env.XDAI_CHAINID), @@ -1565,6 +1830,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with invalid account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with invalid account address', ); @@ -1578,9 +1846,10 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction } }); - it('REGRESSION: Validate the NFT List with incorrect account address on the xdai network', async () => { + it('REGRESSION: Validate the NFT List with incorrect account address on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { try { await xdaiMainNetSdk.getNftList({ chainId: Number(process.env.XDAI_CHAINID), @@ -1596,6 +1865,9 @@ describe('The PrimeSDK, when get the single transaction and multiple transaction 'The correct validation is displayed while getting the NFT list with inncorrect account address', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed for the NFT List with incorrect account address', ); diff --git a/test/specs/mainnet/03_Swap/Arbitrum.spec.js b/test/specs/mainnet/03_Swap/Arbitrum.spec.js index f4e5902..6f1c293 100644 --- a/test/specs/mainnet/03_Swap/Arbitrum.spec.js +++ b/test/specs/mainnet/03_Swap/Arbitrum.spec.js @@ -2,8 +2,8 @@ import { PrimeSdk } from '@etherspot/prime-sdk'; import { utils } from 'ethers'; import { assert } from 'chai'; import data from '../../../data/testData.json' assert { type: 'json' }; -import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +12,9 @@ let arbitrumEtherspotWalletAddress; let arbitrumNativeAddress = null; let runTest; -describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with arbitrum network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with arbitrum network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +34,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +57,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,9 +99,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getCrossChainQuotes response with valid details on the arbitrum network', async () => { + it('SMOKE: Validate the getCrossChainQuotes response with valid details on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -118,6 +126,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -127,6 +137,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -136,6 +148,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -145,16 +159,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].transaction.from, - data.sender, 'The from value of the transaction is not correct in the getCrossChainQuotes response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -164,6 +181,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { assert.fail( @@ -183,9 +202,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the arbitrum network', async () => { + it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -213,16 +233,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].fromChainId, - data.arbitrum_chainid, 'The fromChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -232,6 +255,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -241,6 +266,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -250,26 +277,30 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].fromAddress, - data.sender, 'The fromAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].toChainId, - data.matic_chainid, 'The toChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -279,6 +310,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -288,6 +321,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -297,6 +332,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -306,16 +343,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].toAddress, - data.sender, 'The toAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -325,6 +365,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { assert.fail('The quotes are not display in the quote list'); @@ -340,9 +382,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -365,6 +408,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getCrossChainQuotes request', ); @@ -378,9 +424,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -403,6 +450,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getCrossChainQuotes request', ); @@ -416,9 +466,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -442,6 +493,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -455,9 +509,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -481,6 +536,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -494,9 +552,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -519,6 +578,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -532,9 +594,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -558,6 +621,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -571,9 +637,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -597,6 +664,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -610,9 +680,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -635,6 +706,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -648,9 +722,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -674,6 +749,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); @@ -687,9 +765,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -713,6 +792,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); @@ -726,9 +808,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -751,6 +834,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getCrossChainQuotes request', ); @@ -764,9 +850,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -788,6 +875,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); @@ -801,9 +891,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -825,6 +916,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); @@ -838,9 +932,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -863,6 +958,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -876,9 +974,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -901,6 +1000,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -914,9 +1016,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -938,6 +1041,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -951,9 +1057,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -976,6 +1083,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -989,9 +1099,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1014,6 +1125,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -1027,9 +1141,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1051,6 +1166,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -1064,9 +1182,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the arbitrum network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the arbitrum network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1088,6 +1207,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); diff --git a/test/specs/mainnet/03_Swap/Matic.spec.js b/test/specs/mainnet/03_Swap/Matic.spec.js index bdbc11e..69cfba8 100644 --- a/test/specs/mainnet/03_Swap/Matic.spec.js +++ b/test/specs/mainnet/03_Swap/Matic.spec.js @@ -2,8 +2,8 @@ import { PrimeSdk } from '@etherspot/prime-sdk'; import { utils } from 'ethers'; import { assert } from 'chai'; import data from '../../../data/testData.json' assert { type: 'json' }; -import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +12,9 @@ let maticEtherspotWalletAddress; let maticNativeAddress = null; let runTest; -describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with matic network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with matic network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +34,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +57,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,9 +99,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getCrossChainQuotes response with valid details on the matic network', async () => { + it('SMOKE: Validate the getCrossChainQuotes response with valid details on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -118,6 +126,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -127,6 +137,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -136,6 +148,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -145,16 +159,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].transaction.from, - data.sender, 'The from value of the transaction is not correct in the getCrossChainQuotes response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -164,6 +181,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { assert.fail( @@ -183,9 +202,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the matic network', async () => { + it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -213,16 +233,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].fromChainId, - data.matic_chainid, 'The fromChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -232,6 +255,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -241,6 +266,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -250,26 +277,30 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].fromAddress, - data.sender, 'The fromAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].toChainId, - data.arbitrum_chainid, 'The toChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -279,6 +310,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -288,6 +321,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -297,6 +332,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -306,16 +343,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].toAddress, - data.sender, 'The toAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -325,6 +365,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { assert.fail('The quotes are not display in the quote list'); @@ -340,9 +382,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -365,6 +408,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getCrossChainQuotes request', ); @@ -378,9 +424,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -403,6 +450,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getCrossChainQuotes request', ); @@ -416,9 +466,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -442,6 +493,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -455,9 +509,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -481,6 +536,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -494,9 +552,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -519,6 +578,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -532,9 +594,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -558,6 +621,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -571,9 +637,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -597,6 +664,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -610,9 +680,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -635,6 +706,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -648,9 +722,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -674,6 +749,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); @@ -687,9 +765,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -713,6 +792,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); @@ -726,9 +808,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the matic network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -751,6 +834,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getCrossChainQuotes request', ); @@ -764,9 +850,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -788,6 +875,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); @@ -801,9 +891,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -825,6 +916,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); @@ -838,9 +932,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -863,6 +958,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -876,9 +974,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -901,6 +1000,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -914,9 +1016,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -938,6 +1041,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -951,9 +1057,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -976,6 +1083,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -989,9 +1099,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1014,6 +1125,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -1027,9 +1141,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1051,6 +1166,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -1064,9 +1182,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the matic network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the matic network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1088,6 +1207,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); diff --git a/test/specs/mainnet/03_Swap/Optimism.spec.js b/test/specs/mainnet/03_Swap/Optimism.spec.js index 36ff8c4..677a53e 100644 --- a/test/specs/mainnet/03_Swap/Optimism.spec.js +++ b/test/specs/mainnet/03_Swap/Optimism.spec.js @@ -2,8 +2,8 @@ import { PrimeSdk } from '@etherspot/prime-sdk'; import { utils } from 'ethers'; import { assert } from 'chai'; import data from '../../../data/testData.json' assert { type: 'json' }; -import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +12,9 @@ let optimismEtherspotWalletAddress; let optimismNativeAddress = null; let runTest; -describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with optimism network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with optimism network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +34,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +57,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,9 +99,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getCrossChainQuotes response with valid details on the optimism network', async () => { + it('SMOKE: Validate the getCrossChainQuotes response with valid details on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -118,6 +126,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -127,6 +137,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -136,6 +148,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -145,16 +159,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.item[0].transaction.from, - data.sender, 'The from value of the transaction is not correct in the getCrossChainQuotes response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -164,6 +181,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { assert.fail( @@ -183,9 +202,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the optimism network', async () => { + it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -213,16 +233,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].fromChainId, - data.optimism_chainid, 'The fromChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -232,6 +255,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -241,6 +266,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -250,26 +277,30 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].fromAddress, - data.sender, 'The fromAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].toChainId, - data.matic_chainid, 'The toChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -279,6 +310,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -288,6 +321,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -297,6 +332,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -306,16 +343,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].toAddress, - data.sender, 'The toAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -325,6 +365,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { assert.fail('The quotes are not display in the quote list'); @@ -340,9 +382,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -365,6 +408,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getCrossChainQuotes request', ); @@ -378,9 +424,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -403,6 +450,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getCrossChainQuotes request', ); @@ -416,9 +466,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -442,6 +493,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -455,9 +509,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -481,6 +536,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -494,9 +552,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -519,6 +578,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -532,9 +594,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -558,6 +621,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -571,9 +637,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -597,6 +664,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -610,9 +680,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -635,6 +706,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -648,9 +722,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -674,6 +749,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); @@ -687,9 +765,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -713,6 +792,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); @@ -726,9 +808,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the optimism network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -751,6 +834,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getCrossChainQuotes request', ); @@ -764,9 +850,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -788,6 +875,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); @@ -801,9 +891,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -825,6 +916,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); @@ -838,9 +932,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -863,6 +958,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -876,9 +974,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -901,6 +1000,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -914,9 +1016,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -938,6 +1041,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -951,9 +1057,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -976,6 +1083,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -989,9 +1099,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1014,6 +1125,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -1027,9 +1141,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1051,6 +1166,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -1064,9 +1182,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the optimism network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the optimism network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1088,6 +1207,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); diff --git a/test/specs/mainnet/03_Swap/Xdai.spec.js b/test/specs/mainnet/03_Swap/Xdai.spec.js index 7e60308..1e17876 100644 --- a/test/specs/mainnet/03_Swap/Xdai.spec.js +++ b/test/specs/mainnet/03_Swap/Xdai.spec.js @@ -2,8 +2,8 @@ import { PrimeSdk } from '@etherspot/prime-sdk'; import { utils } from 'ethers'; import { assert } from 'chai'; import data from '../../../data/testData.json' assert { type: 'json' }; -import Helper from '../../../utils/Helper.js'; import customRetryAsync from '../../../utils/baseTest.js'; +import addContext from 'mochawesome/addContext.js'; import * as dotenv from 'dotenv'; dotenv.config(); // init dotenv @@ -12,10 +12,9 @@ let xdaiEtherspotWalletAddress; let xdaiNativeAddress = null; let runTest; -describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with xdai network on the MainNet', () => { - beforeEach(async () => { - // added timeout - Helper.wait(data.mediumTimeout); +describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi transaction details with xdai network on the MainNet', function () { + beforeEach(async function () { + var test = this; // initializating sdk try { @@ -35,9 +34,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The SDK is not initialled successfully.'); } @@ -54,9 +57,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The Etherspot Wallet Address is not displayed successfully.', ); @@ -92,9 +99,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getCrossChainQuotes response with valid details on the xdai network', async () => { + it('SMOKE: Validate the getCrossChainQuotes response with valid details on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -118,6 +126,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -127,6 +137,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -136,6 +148,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -145,16 +159,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].transaction.from, - data.sender, 'The from value of the transaction is not correct in the getCrossChainQuotes response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -164,8 +181,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The items are not available in the getCrossChainQuotes response.', ); @@ -183,9 +205,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the xdai network', async () => { + it('SMOKE: Validate the getAdvanceRoutesLiFi response with valid details on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; let quotes; try { @@ -213,16 +236,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].fromChainId, - data.xdai_chainid, 'The fromChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -232,6 +258,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -241,6 +269,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -250,26 +280,30 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].fromAddress, - data.sender, 'The fromAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNumber( quotes.items[0].toChainId, - data.matic_chainid, 'The toChainId value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -279,6 +313,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -288,6 +324,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -297,6 +335,8 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -306,16 +346,19 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { - assert.strictEqual( + assert.isNotEmpty( quotes.items[0].toAddress, - data.sender, 'The toAddress value of the first item is displayed correctly in the getAdvanceRoutesLiFi response.', ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } try { @@ -325,8 +368,13 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi ); } catch (e) { console.error(e); + const eString = e.toString(); + addContext(test, eString); } } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail('The quotes are not display in the quote list'); } } catch (e) { @@ -340,9 +388,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromChainId detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -365,6 +414,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getCrossChainQuotes request', ); @@ -378,9 +430,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toChainId detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -403,6 +456,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getCrossChainQuotes request', ); @@ -416,9 +472,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -442,6 +499,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -455,9 +515,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -481,6 +542,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getCrossChainQuotes request', ); @@ -494,9 +558,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -519,6 +584,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -532,9 +600,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid toTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -558,6 +627,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -571,9 +643,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect toTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -597,6 +670,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getCrossChainQuotes request', ); @@ -610,9 +686,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without toTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -635,6 +712,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getCrossChainQuotes request', ); @@ -648,9 +728,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with invalid fromAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -674,6 +755,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromAddress detail added in the getCrossChainQuotes request', ); @@ -687,9 +771,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response with incorrect fromAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -713,6 +798,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromAddress detail added in the getCrossChainQuotes request', ); @@ -726,9 +814,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the xdai network', async () => { + it('REGRESSION: Validate the getCrossChainQuotes response without fromAmount detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -751,6 +840,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getCrossChainQuotes request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getCrossChainQuotes request', ); @@ -764,9 +856,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromChainId detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -788,6 +881,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromchainid detail not added in the getAdvanceRoutesLiFi request', ); @@ -801,9 +897,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toChainId detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -825,6 +922,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toChainId detail not added in the getAdvanceRoutesLiFi request', ); @@ -838,9 +938,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid fromTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -863,6 +964,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -876,9 +980,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect fromTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -901,6 +1006,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect fromTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -914,9 +1022,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -938,6 +1047,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -951,9 +1063,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with invalid toTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -976,6 +1089,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when invalid toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -989,9 +1105,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response with incorrect toTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1014,6 +1131,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when incorrect toTokenAddress detail added in the getAdvanceRoutesLiFi request', ); @@ -1027,9 +1147,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without toTokenAddress detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1051,6 +1172,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when toTokenAddress detail not added in the getAdvanceRoutesLiFi request', ); @@ -1064,9 +1188,10 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi } }); - it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the xdai network', async () => { + it('REGRESSION: Validate the getAdvanceRoutesLiFi response without fromAmount detail on the xdai network', async function () { + var test = this; if (runTest) { - await customRetryAsync(async () => { + await customRetryAsync(async function () { let quoteRequestPayload; try { quoteRequestPayload = { @@ -1088,6 +1213,9 @@ describe('The PrimeSDK, when get cross chain quotes and get advance routes LiFi 'The correct validation is displayed when fromAmount not added in the getAdvanceRoutesLiFi request', ); } else { + console.error(e); + const eString = e.toString(); + addContext(test, eString); assert.fail( 'The respective validate is not displayed when fromAmount not added in the getAdvanceRoutesLiFi request', );