mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-29 15:50:28 +01:00
f6f8edfd15
This update includes fixes for our `block-ref` and `retry-on-empty` middleware. The `block-ref` middleware resolves the block reference `latest` to a specific block number, the latest one we are aware of. This is meant to protect against situations where the network gives inconsistent answers for what the latest block number is due to some nodes being out-of-sync with each other (this was a frequent problem years ago with Infura). It was broken in that the `latest` resolution was failing, and we were submitting an additional redundant request to Infura for each request. The `retry-on-empty` middleware is meant to retry certain methods when they return an empty response. This was also meant to deal with network synchronization issues that were more common years ago. This middleware works by making a "child" request over and over until either a retry limit is reached, or a non-empty response is received. It was broken in that the final response recieved was thrown away, so it's as though the middleware was not used. Except that it did result in additional redundant network requests. As a result of this update we should see that the extension is more resilient to certain network synchronization issues. But this is difficult to test, and these issues may not happen in production anymore today. We should see a reduction in requests to Infura as well. This should be easier to test.
487 lines
22 KiB
JSON
487 lines
22 KiB
JSON
{
|
|
"name": "metamask-crx",
|
|
"version": "10.20.0",
|
|
"private": true,
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/MetaMask/metamask-extension.git"
|
|
},
|
|
"scripts": {
|
|
"setup": "yarn install && yarn setup:postinstall",
|
|
"setup:postinstall": "yarn patch-package && yarn allow-scripts",
|
|
"start": "yarn build:dev dev --apply-lavamoat=false",
|
|
"start:lavamoat": "yarn build:dev dev --apply-lavamoat=true",
|
|
"start:mv3": "ENABLE_MV3=true yarn build:dev dev --apply-lavamoat=false",
|
|
"dist": "yarn build dist",
|
|
"build": "yarn lavamoat:build",
|
|
"build:dev": "node development/build/index.js",
|
|
"start:test": "SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 PORTFOLIO_URL=http://127.0.0.1:8080 yarn build testDev",
|
|
"benchmark:chrome": "SELENIUM_BROWSER=chrome node test/e2e/benchmark.js",
|
|
"mv3:stats:chrome": "SELENIUM_BROWSER=chrome ENABLE_MV3=true node test/e2e/mv3-perf-stats/index.js",
|
|
"user-actions-benchmark:chrome": "SELENIUM_BROWSER=chrome node test/e2e/user-actions-benchmark.js",
|
|
"benchmark:firefox": "SELENIUM_BROWSER=firefox node test/e2e/benchmark.js",
|
|
"build:test": "SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 PORTFOLIO_URL=http://127.0.0.1:8080 yarn build test",
|
|
"build:test:flask": "yarn build test --build-type flask",
|
|
"build:test:mv3": "ENABLE_MV3=true SEGMENT_HOST='https://api.segment.io' SEGMENT_WRITE_KEY='FAKE' SENTRY_DSN_DEV=https://fake@sentry.io/0000000 PORTFOLIO_URL=http://127.0.0.1:8080 yarn build test",
|
|
"test": "yarn lint && yarn test:unit && yarn test:unit:jest",
|
|
"dapp": "node development/static-server.js node_modules/@metamask/test-dapp/dist --port 8080",
|
|
"dapp-chain": "GANACHE_ARGS='-b 2' concurrently -k -n ganache,dapp -p '[{time}][{name}]' 'yarn ganache:start' 'sleep 5 && yarn dapp'",
|
|
"forwarder": "node ./development/static-server.js ./node_modules/@metamask/forwarder/dist/ --port 9010",
|
|
"dapp-forwarder": "concurrently -k -n forwarder,dapp -p '[{time}][{name}]' 'yarn forwarder' 'yarn dapp'",
|
|
"test:unit": "./test/test-unit-combined.sh",
|
|
"test:unit:jest": "./test/test-unit-jest.sh",
|
|
"test:unit:global": "mocha test/unit-global/*.test.js",
|
|
"test:unit:mocha": "mocha './app/**/*.test.js'",
|
|
"test:e2e:chrome": "SELENIUM_BROWSER=chrome node test/e2e/run-all.js",
|
|
"test:e2e:chrome:snaps": "SELENIUM_BROWSER=chrome node test/e2e/run-all.js --snaps",
|
|
"test:e2e:firefox": "SELENIUM_BROWSER=firefox node test/e2e/run-all.js",
|
|
"test:e2e:firefox:snaps": "SELENIUM_BROWSER=firefox node test/e2e/run-all.js --snaps",
|
|
"test:e2e:single": "node test/e2e/run-e2e-test.js",
|
|
"test:coverage:mocha": "nyc --reporter=text --reporter=html yarn test:unit:mocha",
|
|
"test:coverage:jest": "yarn test:unit:jest --coverage --maxWorkers=2 && yarn jest-it-up -m 5",
|
|
"ganache:start": "./development/run-ganache.sh",
|
|
"sentry:publish": "node ./development/sentry-publish.js",
|
|
"lint": "yarn lint:prettier && yarn lint:eslint && yarn lint:tsc && yarn lint:styles",
|
|
"lint:fix": "yarn lint:prettier:fix && yarn lint:eslint:fix && yarn lint:styles:fix",
|
|
"lint:prettier": "prettier '**/*.json' --check",
|
|
"lint:prettier:fix": "prettier '**/*.json' --write",
|
|
"lint:changed": "{ git ls-files --others --exclude-standard ; git diff-index --name-only --diff-filter=d HEAD ; } | grep --regexp='[.]js$' | tr '\\n' '\\0' | xargs -0 eslint",
|
|
"lint:changed:fix": "{ git ls-files --others --exclude-standard ; git diff-index --name-only --diff-filter=d HEAD ; } | grep --regexp='[.]js$' | tr '\\n' '\\0' | xargs -0 eslint --fix",
|
|
"lint:changelog": "auto-changelog validate",
|
|
"lint:changelog:rc": "auto-changelog validate --rc",
|
|
"lint:eslint": "eslint . --ext js,ts,tsx,snap --cache",
|
|
"lint:eslint:fix": "yarn lint:eslint --fix",
|
|
"lint:lockfile": "lockfile-lint --path yarn.lock --allowed-hosts npm yarn github.com codeload.github.com --empty-hostname false --allowed-schemes \"https:\" \"git+https:\"",
|
|
"lint:shellcheck": "./development/shellcheck.sh",
|
|
"lint:styles": "stylelint '*/**/*.scss'",
|
|
"lint:styles:fix": "yarn lint:styles --fix",
|
|
"lint:tsc": "tsc --project tsconfig.json --noEmit",
|
|
"validate-source-maps": "node ./development/sourcemap-validator.js",
|
|
"verify-locales": "node ./development/verify-locale-strings.js",
|
|
"verify-locales:fix": "node ./development/verify-locale-strings.js --fix",
|
|
"mozilla-lint": "addons-linter dist/firefox",
|
|
"devtools:react": "react-devtools",
|
|
"devtools:redux": "remotedev --hostname=localhost --port=8000",
|
|
"start:dev": "concurrently -k -n build,react,redux yarn:start yarn:devtools:react yarn:devtools:redux",
|
|
"announce": "node development/announcer.js",
|
|
"storybook": "start-storybook -p 6006 -c .storybook",
|
|
"storybook:test": "jest --config=./jest.stories.config.js",
|
|
"storybook:build": "build-storybook -c .storybook -o storybook-build",
|
|
"storybook:deploy": "storybook-to-ghpages --existing-output-dir storybook-build --remote storybook --branch master",
|
|
"update-changelog": "auto-changelog update",
|
|
"generate:migration": "./development/generate-migration.sh",
|
|
"lavamoat:build": "lavamoat development/build/index.js --policy lavamoat/build-system/policy.json --policyOverride lavamoat/build-system/policy-override.json",
|
|
"lavamoat:build:auto": "yarn lavamoat:build --writeAutoPolicy",
|
|
"lavamoat:debug:build": "yarn lavamoat:build --writeAutoPolicyDebug --policydebug lavamoat/build-system/policy-debug.json",
|
|
"lavamoat:background:auto": "node ./development/generate-lavamoat-policies.js",
|
|
"lavamoat:background:auto:ci": "node ./development/generate-lavamoat-policies.js --parallel=false",
|
|
"lavamoat:auto": "yarn lavamoat:build:auto && yarn lavamoat:background:auto",
|
|
"lavamoat:auto:ci": "yarn lavamoat:build:auto && yarn lavamoat:background:auto:ci",
|
|
"ts-migration:enumerate": "ts-node development/ts-migration-dashboard/scripts/write-list-of-files-to-convert.ts",
|
|
"ts-migration:dashboard:watch": "ts-node development/ts-migration-dashboard/scripts/build.ts --watch",
|
|
"ts-migration:dashboard:build": "ts-node development/ts-migration-dashboard/scripts/build.ts",
|
|
"ts-migration:dashboard:deploy": "gh-pages --dist development/ts-migration-dashboard/build --remote ts-migration-dashboard"
|
|
},
|
|
"resolutions": {
|
|
"**/regenerator-runtime": "^0.13.7",
|
|
"**/caniuse-lite": "^1.0.30001312",
|
|
"**/cross-fetch": "^3.1.5",
|
|
"**/configstore/dot-prop": "^5.1.1",
|
|
"**/ethers/elliptic": "^6.5.4",
|
|
"**/redux/symbol-observable": "^2.0.3",
|
|
"**/redux-devtools-instrument/symbol-observable": "^2.0.3",
|
|
"**/rxjs/symbol-observable": "^2.0.3",
|
|
"**/xmlhttprequest-ssl": "^1.6.2",
|
|
"3box/ipfs/ipld-zcash/zcash-bitcore-lib/lodash": "^4.17.21",
|
|
"3box/ipfs/ipld-zcash/zcash-bitcore-lib/elliptic": "^6.5.4",
|
|
"3box/ipfs/libp2p-mdns/multicast-dns/dns-packet": "^5.2.2",
|
|
"3box/ipfs/prometheus-gc-stats/gc-stats/node-pre-gyp/tar": "^6.1.2",
|
|
"3box/**/libp2p-crypto/node-forge": "^1.3.0",
|
|
"3box/**/libp2p-keychain/node-forge": "^1.3.0",
|
|
"3box/ipfs/libp2p-webrtc-star/socket.io/engine.io": "^4.0.0",
|
|
"3box/**/@hapi/hoek": "^8.5.1",
|
|
"analytics-node/axios": "^0.21.2",
|
|
"ganache-core/lodash": "^4.17.21",
|
|
"netmask": "^2.0.1",
|
|
"pubnub/superagent-proxy": "^3.0.0",
|
|
"pull-ws": "^3.3.2",
|
|
"json-schema": "^0.4.0",
|
|
"simple-get": "^4.0.1",
|
|
"@storybook/**/ast-types": "^0.14.2"
|
|
},
|
|
"dependencies": {
|
|
"3box": "^1.10.2",
|
|
"@babel/runtime": "^7.5.5",
|
|
"@download/blockies": "^1.0.3",
|
|
"@ensdomains/content-hash": "^2.5.6",
|
|
"@eth-optimism/contracts": "0.0.0-2021919175625",
|
|
"@ethereumjs/common": "^2.3.1",
|
|
"@ethereumjs/tx": "^3.2.1",
|
|
"@formatjs/intl-relativetimeformat": "^5.2.6",
|
|
"@fortawesome/fontawesome-free": "^5.13.0",
|
|
"@keystonehq/bc-ur-registry-eth": "^0.12.1",
|
|
"@keystonehq/metamask-airgapped-keyring": "^0.6.1",
|
|
"@material-ui/core": "^4.11.0",
|
|
"@metamask/contract-metadata": "^1.31.0",
|
|
"@metamask/controllers": "^30.3.0",
|
|
"@metamask/design-tokens": "^1.9.0",
|
|
"@metamask/eth-json-rpc-infura": "^7.0.0",
|
|
"@metamask/eth-ledger-bridge-keyring": "^0.13.0",
|
|
"@metamask/eth-token-tracker": "^4.0.0",
|
|
"@metamask/etherscan-link": "^2.2.0",
|
|
"@metamask/jazzicon": "^2.0.0",
|
|
"@metamask/logo": "^3.1.1",
|
|
"@metamask/metamask-eth-abis": "^3.0.0",
|
|
"@metamask/obs-store": "^5.0.0",
|
|
"@metamask/post-message-stream": "^4.0.0",
|
|
"@metamask/providers": "^9.0.0",
|
|
"@metamask/rpc-methods": "^0.22.0",
|
|
"@metamask/slip44": "^2.1.0",
|
|
"@metamask/smart-transactions-controller": "^2.3.2",
|
|
"@metamask/snap-controllers": "^0.22.0",
|
|
"@metamask/snap-utils": "^0.22.0",
|
|
"@ngraveio/bc-ur": "^1.1.6",
|
|
"@popperjs/core": "^2.4.0",
|
|
"@reduxjs/toolkit": "^1.6.2",
|
|
"@sentry/browser": "^6.0.0",
|
|
"@sentry/integrations": "^6.0.0",
|
|
"@sentry/types": "^6.0.1",
|
|
"@sentry/utils": "^6.0.1",
|
|
"@spruceid/siwe-parser": "^1.1.3",
|
|
"@truffle/codec": "^0.11.18",
|
|
"@truffle/decoder": "^5.1.0",
|
|
"@zxing/browser": "^0.0.10",
|
|
"@zxing/library": "0.8.0",
|
|
"analytics-node": "^3.4.0-beta.3",
|
|
"await-semaphore": "^0.1.1",
|
|
"base32-encode": "^1.2.0",
|
|
"base64-js": "^1.5.1",
|
|
"bignumber.js": "^4.1.0",
|
|
"bn.js": "^4.11.7",
|
|
"classnames": "^2.2.6",
|
|
"copy-to-clipboard": "^3.0.8",
|
|
"currency-formatter": "^1.4.2",
|
|
"debounce-stream": "^2.0.0",
|
|
"deep-freeze-strict": "1.1.1",
|
|
"end-of-stream": "^1.4.4",
|
|
"eth-block-tracker": "^6.0.0",
|
|
"eth-ens-namehash": "^2.0.8",
|
|
"eth-json-rpc-filters": "^4.2.1",
|
|
"eth-json-rpc-middleware": "^9.0.1",
|
|
"eth-keyring-controller": "^7.0.2",
|
|
"eth-lattice-keyring": "^0.12.3",
|
|
"eth-method-registry": "^2.0.0",
|
|
"eth-query": "^2.1.2",
|
|
"eth-rpc-errors": "^4.0.2",
|
|
"eth-sig-util": "^3.0.0",
|
|
"eth-trezor-keyring": "^0.10.0",
|
|
"ethereum-ens-network-map": "^1.0.2",
|
|
"ethereumjs-abi": "^0.6.4",
|
|
"ethereumjs-util": "^7.0.10",
|
|
"ethereumjs-wallet": "^0.6.4",
|
|
"ethers": "^5.6.4",
|
|
"ethjs": "^0.4.0",
|
|
"ethjs-contract": "^0.2.3",
|
|
"ethjs-query": "^0.3.4",
|
|
"extension-port-stream": "^2.0.0",
|
|
"fast-json-patch": "^2.2.1",
|
|
"fuse.js": "^3.2.0",
|
|
"globalthis": "^1.0.1",
|
|
"human-standard-token-abi": "^2.0.0",
|
|
"immer": "^9.0.6",
|
|
"jest-junit": "^14.0.1",
|
|
"json-rpc-engine": "^6.1.0",
|
|
"json-rpc-middleware-stream": "^2.1.1",
|
|
"jsonschema": "^1.2.4",
|
|
"labeled-stream-splicer": "^2.0.2",
|
|
"localforage": "^1.9.0",
|
|
"lodash": "^4.17.21",
|
|
"loglevel": "^1.4.1",
|
|
"luxon": "^1.26.0",
|
|
"nanoid": "^2.1.6",
|
|
"nonce-tracker": "^1.0.0",
|
|
"obj-multiplex": "^1.0.0",
|
|
"pify": "^5.0.0",
|
|
"promise-to-callback": "^1.0.0",
|
|
"prop-types": "^15.6.1",
|
|
"pubnub": "4.27.3",
|
|
"pump": "^3.0.0",
|
|
"punycode": "^2.1.1",
|
|
"qrcode-generator": "1.4.1",
|
|
"qrcode.react": "^1.0.1",
|
|
"react": "^16.12.0",
|
|
"react-dnd": "^3.0.2",
|
|
"react-dnd-html5-backend": "^7.4.4",
|
|
"react-dom": "^16.12.0",
|
|
"react-idle-timer": "^4.2.5",
|
|
"react-inspector": "^2.3.0",
|
|
"react-popper": "^2.2.3",
|
|
"react-redux": "^7.2.0",
|
|
"react-responsive-carousel": "^3.2.21",
|
|
"react-router-dom": "^5.1.2",
|
|
"react-simple-file-input": "^2.0.0",
|
|
"react-tippy": "^1.2.2",
|
|
"react-toggle-button": "^2.2.0",
|
|
"react-transition-group": "^1.2.1",
|
|
"readable-stream": "^2.3.3",
|
|
"redux": "^4.0.5",
|
|
"redux-thunk": "^2.3.0",
|
|
"reselect": "^3.0.1",
|
|
"safe-event-emitter": "^1.0.1",
|
|
"ses": "^0.12.4",
|
|
"single-call-balance-checker-abi": "^1.0.0",
|
|
"swappable-obj-proxy": "^1.1.0",
|
|
"textarea-caret": "^3.0.1",
|
|
"unicode-confusables": "^0.1.1",
|
|
"uuid": "^8.3.2",
|
|
"valid-url": "^1.0.9",
|
|
"web3-stream-provider": "^4.0.0",
|
|
"zxcvbn": "^4.4.2"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/code-frame": "^7.12.13",
|
|
"@babel/core": "^7.12.1",
|
|
"@babel/eslint-parser": "^7.13.14",
|
|
"@babel/eslint-plugin": "^7.12.1",
|
|
"@babel/preset-env": "^7.5.5",
|
|
"@babel/preset-react": "^7.0.0",
|
|
"@babel/preset-typescript": "^7.16.7",
|
|
"@babel/register": "^7.5.5",
|
|
"@ethersproject/bignumber": "^5.7.0",
|
|
"@lavamoat/allow-scripts": "^2.0.3",
|
|
"@lavamoat/lavapack": "^3.1.0",
|
|
"@metamask/auto-changelog": "^2.1.0",
|
|
"@metamask/eslint-config": "^9.0.0",
|
|
"@metamask/eslint-config-jest": "^9.0.0",
|
|
"@metamask/eslint-config-mocha": "^9.0.0",
|
|
"@metamask/eslint-config-nodejs": "^9.0.0",
|
|
"@metamask/eslint-config-typescript": "^9.0.1",
|
|
"@metamask/forwarder": "^1.1.0",
|
|
"@metamask/phishing-warning": "^1.2.1",
|
|
"@metamask/test-dapp": "^5.2.1",
|
|
"@sentry/cli": "^1.58.0",
|
|
"@storybook/addon-a11y": "^6.5.10",
|
|
"@storybook/addon-actions": "^6.5.10",
|
|
"@storybook/addon-essentials": "^6.5.10",
|
|
"@storybook/addon-knobs": "^6.4.0",
|
|
"@storybook/addons": "^6.5.10",
|
|
"@storybook/api": "^6.5.10",
|
|
"@storybook/client-api": "^6.5.10",
|
|
"@storybook/components": "^6.5.10",
|
|
"@storybook/core": "^6.5.10",
|
|
"@storybook/core-events": "^6.5.10",
|
|
"@storybook/react": "^6.5.10",
|
|
"@storybook/storybook-deployer": "^2.8.12",
|
|
"@storybook/theming": "^6.5.10",
|
|
"@testing-library/jest-dom": "^5.11.10",
|
|
"@testing-library/react": "^10.4.8",
|
|
"@testing-library/react-hooks": "^3.2.1",
|
|
"@testing-library/user-event": "^14.4.3",
|
|
"@tsconfig/node16": "^1.0.3",
|
|
"@types/babelify": "^7.3.7",
|
|
"@types/browserify": "^12.0.37",
|
|
"@types/end-of-stream": "^1.4.1",
|
|
"@types/fs-extra": "^9.0.13",
|
|
"@types/gulp": "^4.0.9",
|
|
"@types/gulp-autoprefixer": "^0.0.33",
|
|
"@types/gulp-dart-sass": "^1.0.1",
|
|
"@types/gulp-sourcemaps": "^0.0.35",
|
|
"@types/madge": "^5.0.0",
|
|
"@types/node": "^17.0.21",
|
|
"@types/pify": "^5.0.1",
|
|
"@types/pump": "^1.1.1",
|
|
"@types/react": "^16.9.53",
|
|
"@types/react-dom": "^17.0.11",
|
|
"@types/watchify": "^3.11.1",
|
|
"@types/yargs": "^17.0.8",
|
|
"@typescript-eslint/eslint-plugin": "^5.30.7",
|
|
"@typescript-eslint/parser": "^5.30.7",
|
|
"addons-linter": "^5.2.0",
|
|
"babelify": "^10.0.0",
|
|
"bify-module-groups": "^2.0.0",
|
|
"brfs": "^2.0.2",
|
|
"browser-util-inspect": "^0.2.0",
|
|
"browserify": "^16.5.1",
|
|
"chalk": "^3.0.0",
|
|
"chokidar": "^3.5.3",
|
|
"chromedriver": "^105.0.0",
|
|
"concurrently": "^5.2.0",
|
|
"copy-webpack-plugin": "^6.0.3",
|
|
"cross-spawn": "^7.0.3",
|
|
"css-loader": "^2.1.1",
|
|
"css-to-xpath": "^0.1.0",
|
|
"csstype": "^3.0.11",
|
|
"del": "^3.0.0",
|
|
"depcheck": "^1.4.3",
|
|
"dependency-tree": "^8.1.2",
|
|
"duplexify": "^4.1.1",
|
|
"enzyme": "^3.10.0",
|
|
"enzyme-adapter-react-16": "^1.15.1",
|
|
"eslint": "^8.20.0",
|
|
"eslint-config-prettier": "^8.5.0",
|
|
"eslint-import-resolver-node": "^0.3.4",
|
|
"eslint-import-resolver-typescript": "^2.5.0",
|
|
"eslint-plugin-import": "^2.22.1",
|
|
"eslint-plugin-jest": "^26.6.0",
|
|
"eslint-plugin-jsdoc": "^39.3.3",
|
|
"eslint-plugin-mocha": "^8.1.0",
|
|
"eslint-plugin-node": "^11.1.0",
|
|
"eslint-plugin-prettier": "^4.2.1",
|
|
"eslint-plugin-react": "^7.23.1",
|
|
"eslint-plugin-react-hooks": "^4.2.0",
|
|
"eslint-plugin-storybook": "^0.6.4",
|
|
"fancy-log": "^1.3.3",
|
|
"fast-glob": "^3.2.2",
|
|
"fs-extra": "^8.1.0",
|
|
"ganache": "^v7.0.4",
|
|
"geckodriver": "^1.21.0",
|
|
"gh-pages": "^3.2.3",
|
|
"globby": "^11.0.4",
|
|
"gulp": "^4.0.2",
|
|
"gulp-autoprefixer": "^5.0.0",
|
|
"gulp-dart-sass": "^1.0.2",
|
|
"gulp-livereload": "4.0.0",
|
|
"gulp-rename": "^2.0.0",
|
|
"gulp-rtlcss": "^1.4.0",
|
|
"gulp-sort": "^2.0.0",
|
|
"gulp-sourcemaps": "^3.0.0",
|
|
"gulp-stylelint": "^13.0.0",
|
|
"gulp-watch": "^5.0.1",
|
|
"gulp-zip": "^5.1.0",
|
|
"history": "^5.0.0",
|
|
"improved-yarn-audit": "^3.0.0",
|
|
"ini": "^3.0.0",
|
|
"jest": "^29.1.2",
|
|
"jest-canvas-mock": "^2.3.1",
|
|
"jest-environment-jsdom": "^29.1.2",
|
|
"jest-it-up": "^2.0.2",
|
|
"jsdom": "^11.2.0",
|
|
"koa": "^2.7.0",
|
|
"lavamoat": "^6.2.0",
|
|
"lavamoat-browserify": "^15.2.0",
|
|
"lavamoat-viz": "^6.0.9",
|
|
"lockfile-lint": "^4.0.0",
|
|
"loose-envify": "^1.4.0",
|
|
"madge": "^5.0.1",
|
|
"mocha": "^7.2.0",
|
|
"mockttp": "^2.6.0",
|
|
"nock": "^13.2.9",
|
|
"node-fetch": "^2.6.1",
|
|
"nyc": "^15.0.0",
|
|
"patch-package": "^6.4.7",
|
|
"polyfill-crypto.getrandomvalues": "^1.0.0",
|
|
"prettier": "^2.7.1",
|
|
"prettier-plugin-sort-json": "^0.0.1",
|
|
"proxyquire": "^2.1.3",
|
|
"pumpify": "^2.0.1",
|
|
"randomcolor": "^0.5.4",
|
|
"react-devtools": "^4.11.0",
|
|
"read-installed": "^4.0.3",
|
|
"redux-mock-store": "^1.5.4",
|
|
"remote-redux-devtools": "^0.5.16",
|
|
"resolve-url-loader": "^3.1.2",
|
|
"sass": "^1.32.4",
|
|
"sass-loader": "^10.1.1",
|
|
"selenium-webdriver": "^4.3.1",
|
|
"semver": "^7.3.5",
|
|
"serve-handler": "^6.1.2",
|
|
"sinon": "^9.0.0",
|
|
"source-map": "^0.7.2",
|
|
"source-map-explorer": "^2.4.2",
|
|
"squirrelly": "^8.0.8",
|
|
"storybook-dark-mode": "^1.1.0",
|
|
"string.prototype.matchall": "^4.0.2",
|
|
"style-loader": "^0.21.0",
|
|
"stylelint": "^13.6.1",
|
|
"terser": "^5.7.0",
|
|
"through2": "^4.0.2",
|
|
"ts-node": "^10.5.0",
|
|
"ttest": "^2.1.1",
|
|
"typescript": "~4.4.0",
|
|
"vinyl": "^2.2.1",
|
|
"vinyl-buffer": "^1.0.1",
|
|
"vinyl-source-stream": "^2.0.0",
|
|
"vinyl-sourcemaps-apply": "^0.2.1",
|
|
"watchify": "^4.0.0",
|
|
"webextension-polyfill": "^0.8.0",
|
|
"webpack": "^4.41.6",
|
|
"yargs": "^17.0.1",
|
|
"yarn-deduplicate": "^3.1.0"
|
|
},
|
|
"engines": {
|
|
"node": "^16.0.0",
|
|
"yarn": "^1.16.0"
|
|
},
|
|
"lavamoat": {
|
|
"allowScripts": {
|
|
"@sentry/cli": true,
|
|
"chromedriver": true,
|
|
"geckodriver": true,
|
|
"react-devtools>electron": true,
|
|
"3box>ipfs-postmsg-proxy>peer-id>libp2p-crypto>libp2p-crypto-secp256k1>secp256k1": false,
|
|
"3box>ipfs>ipfs-repo>datastore-level>leveldown": false,
|
|
"3box>ipfs>ipfs-unixfs-importer>rabin-wasm>assemblyscript": false,
|
|
"3box>ipfs>ipld-ethereum>ethereumjs-account>ethereumjs-util>keccak": false,
|
|
"3box>ipfs>ipld-ethereum>ethereumjs-account>ethereumjs-util>secp256k1": false,
|
|
"3box>ipfs>ipld-ethereum>ethereumjs-block>ethereumjs-util>keccak": false,
|
|
"3box>ipfs>ipld-ethereum>ethereumjs-block>ethereumjs-util>secp256k1": false,
|
|
"3box>ipfs>ipld-ethereum>ethereumjs-tx>ethereumjs-util>keccak": false,
|
|
"3box>ipfs>ipld-ethereum>ethereumjs-tx>ethereumjs-util>secp256k1": false,
|
|
"3box>ipfs>ipld-ethereum>merkle-patricia-tree>ethereumjs-util>keccak": false,
|
|
"3box>ipfs>ipld-ethereum>merkle-patricia-tree>ethereumjs-util>secp256k1": false,
|
|
"3box>ipfs>libp2p-crypto>libp2p-crypto-secp256k1>secp256k1": false,
|
|
"3box>ipfs>libp2p-crypto>ursa-optional": false,
|
|
"3box>ipfs>prometheus-gc-stats>gc-stats": false,
|
|
"3box>orbit-db>orbit-db-cache>leveldown": false,
|
|
"3box>orbit-db>orbit-db-keystore>leveldown": false,
|
|
"3box>orbit-db>orbit-db-keystore>libp2p-crypto-secp256k1>secp256k1": false,
|
|
"@eth-optimism/contracts>@ethersproject/hardware-wallets>@ledgerhq/hw-transport-node-hid>@ledgerhq/hw-transport-node-hid-noevents>node-hid": false,
|
|
"@eth-optimism/contracts>@ethersproject/hardware-wallets>@ledgerhq/hw-transport-node-hid>node-hid": false,
|
|
"@eth-optimism/contracts>@ethersproject/hardware-wallets>@ledgerhq/hw-transport-node-hid>usb": false,
|
|
"@metamask/controllers>web3-provider-engine>ethereumjs-util>keccak": false,
|
|
"@metamask/controllers>web3-provider-engine>ethereumjs-util>secp256k1": false,
|
|
"@metamask/controllers>web3-provider-engine>ethereumjs-vm>merkle-patricia-tree>ethereumjs-util>keccak": false,
|
|
"@metamask/controllers>web3-provider-engine>ethereumjs-vm>merkle-patricia-tree>ethereumjs-util>secp256k1": false,
|
|
"@metamask/eth-ledger-bridge-keyring>eth-sig-util>ethereumjs-util>keccak": false,
|
|
"@metamask/eth-ledger-bridge-keyring>hdkey>secp256k1": false,
|
|
"@storybook/api>core-js": false,
|
|
"@storybook/core>@storybook/core-client>@storybook/ui>core-js-pure": false,
|
|
"eth-json-rpc-filters>eth-json-rpc-middleware>ethereumjs-util>keccak": false,
|
|
"eth-json-rpc-filters>eth-json-rpc-middleware>ethereumjs-util>secp256k1": false,
|
|
"eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>keccak": false,
|
|
"eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>secp256k1": false,
|
|
"eth-lattice-keyring>gridplus-sdk": false,
|
|
"eth-sig-util>ethereumjs-util>keccak": false,
|
|
"eth-sig-util>ethereumjs-util>secp256k1": false,
|
|
"eth-trezor-keyring>hdkey>secp256k1": false,
|
|
"eth-trezor-keyring>trezor-connect>@trezor/transport>protobufjs": false,
|
|
"eth-trezor-keyring>trezor-connect>@trezor/utxo-lib>blake-hash": false,
|
|
"eth-trezor-keyring>trezor-connect>@trezor/utxo-lib>tiny-secp256k1": false,
|
|
"ethereumjs-util>ethereum-cryptography>keccak": false,
|
|
"ethjs-query>babel-runtime>core-js": false,
|
|
"ganache>@trufflesuite/bigint-buffer": false,
|
|
"ganache>bufferutil": false,
|
|
"ganache>keccak": false,
|
|
"ganache>leveldown": false,
|
|
"ganache>secp256k1": false,
|
|
"ganache>utf-8-validate": false,
|
|
"ethereumjs-util>ethereum-cryptography>secp256k1": false,
|
|
"gulp-watch>chokidar>fsevents": false,
|
|
"gulp>glob-watcher>chokidar>fsevents": false,
|
|
"webpack>watchpack>watchpack-chokidar2>chokidar>fsevents": false,
|
|
"@keystonehq/bc-ur-registry-eth>hdkey>secp256k1": false,
|
|
"@metamask/rpc-methods>@metamask/key-tree>secp256k1": false,
|
|
"eth-lattice-keyring>gridplus-sdk>secp256k1": false,
|
|
"eth-lattice-keyring>secp256k1": false,
|
|
"@storybook/react>@pmmmwh/react-refresh-webpack-plugin>core-js-pure": false,
|
|
"@testing-library/jest-dom>aria-query>@babel/runtime-corejs3>core-js-pure": false,
|
|
"web3": false,
|
|
"web3>web3-bzz": false,
|
|
"web3>web3-core>web3-core-requestmanager>web3-providers-ws>websocket>bufferutil": false,
|
|
"web3>web3-core>web3-core-requestmanager>web3-providers-ws>websocket>es5-ext": false,
|
|
"web3>web3-core>web3-core-requestmanager>web3-providers-ws>websocket>utf-8-validate": false,
|
|
"web3>web3-shh": false
|
|
}
|
|
}
|
|
}
|