{
  "name": "metamask-crx",
  "version": "10.10.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",
    "start:lavamoat": "yarn build dev",
    "dist": "yarn build prod",
    "build": "yarn lavamoat:build",
    "build:dev": "node development/build/index.js",
    "start:test": "yarn build testDev",
    "benchmark:chrome": "SELENIUM_BROWSER=chrome node test/e2e/benchmark.js",
    "benchmark:firefox": "SELENIUM_BROWSER=firefox node test/e2e/benchmark.js",
    "build:test": "yarn build test",
    "build:test:metrics": "SEGMENT_HOST='http://localhost:9090' SEGMENT_WRITE_KEY='FAKE' 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:metrics": "SELENIUM_BROWSER=chrome node test/e2e/run-e2e-test.js test/e2e/metrics.spec.js",
    "test:e2e:firefox": "SELENIUM_BROWSER=firefox node test/e2e/run-all.js",
    "test:e2e:firefox:metrics": "SELENIUM_BROWSER=firefox node test/e2e/run-e2e-test.js test/e2e/metrics.spec.js",
    "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",
    "ganache:start": "./development/run-ganache.sh",
    "sentry:publish": "node ./development/sentry-publish.js",
    "lint:prettier": "prettier '**/*.json'",
    "lint": "yarn lint:prettier --check '**/*.json' && eslint . --ext js,snap --cache && yarn lint:styles",
    "lint:fix": "yarn lint:prettier --write '**/*.json' && eslint . --ext js --cache --fix && yarn lint:styles --fix",
    "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:shellcheck": "./development/shellcheck.sh",
    "lint:styles": "stylelint '*/**/*.scss'",
    "lint:lockfile": "lockfile-lint --path yarn.lock --allowed-hosts npm yarn github.com codeload.github.com --empty-hostname false --allowed-schemes \"https:\" \"git+https:\"",
    "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 -s ./app,./.storybook/images",
    "storybook:test": "jest --config=./jest.stories.config.js",
    "storybook:build": "build-storybook -c .storybook -o storybook-build -s ./app,./.storybook/images",
    "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": "./development/generate-lavamoat-policies.sh",
    "lavamoat:auto": "yarn lavamoat:build:auto && yarn lavamoat:background:auto"
  },
  "resolutions": {
    "**/regenerator-runtime": "^0.13.7",
    "**/caniuse-lite": "1.0.30001265",
    "**/configstore/dot-prop": "^5.1.1",
    "**/ethers/elliptic": "^6.5.4",
    "**/knex/minimist": "^1.2.5",
    "**/optimist/minimist": "^1.2.5",
    "**/socketcluster/minimist": "^1.2.5",
    "**/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.0.0",
    "3box/**/libp2p-keychain/node-forge": "^1.0.0",
    "3box/ipfs/libp2p-webrtc-star/socket.io/engine.io": "^4.0.0",
    "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",
    "ws": "^7.4.6",
    "json-schema": "^0.4.0",
    "simple-get": "^4.0.1"
  },
  "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.6.8",
    "@keystonehq/metamask-airgapped-keyring": "0.2.1",
    "@material-ui/core": "^4.11.0",
    "@metamask/contract-metadata": "^1.31.0",
    "@metamask/controllers": "^25.0.0",
    "@metamask/eth-ledger-bridge-keyring": "^0.10.0",
    "@metamask/eth-token-tracker": "^4.0.0",
    "@metamask/etherscan-link": "^2.1.0",
    "@metamask/jazzicon": "^2.0.0",
    "@metamask/logo": "^3.1.1",
    "@metamask/obs-store": "^5.0.0",
    "@metamask/post-message-stream": "^4.0.0",
    "@metamask/providers": "^8.1.1",
    "@metamask/rpc-methods": "^0.5.0",
    "@metamask/snap-controllers": "^0.4.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",
    "@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": "^5.0.1",
    "eth-ens-namehash": "^2.0.8",
    "eth-json-rpc-filters": "^4.2.1",
    "eth-json-rpc-infura": "^5.1.0",
    "eth-json-rpc-middleware": "^8.0.0",
    "eth-keyring-controller": "^6.2.0",
    "eth-lattice-keyring": "^0.4.0",
    "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.9.1",
    "ethereum-ens-network-map": "^1.0.2",
    "ethereumjs-abi": "^0.6.4",
    "ethereumjs-util": "^7.0.10",
    "ethereumjs-wallet": "^0.6.4",
    "ethers": "^5.0.8",
    "ethjs": "^0.4.0",
    "ethjs-contract": "^0.2.3",
    "ethjs-ens": "^2.0.0",
    "ethjs-query": "^0.3.4",
    "extension-port-stream": "^2.0.0",
    "extensionizer": "^1.0.1",
    "fast-json-patch": "^2.2.1",
    "fast-safe-stringify": "^2.0.7",
    "fuse.js": "^3.2.0",
    "globalthis": "^1.0.1",
    "human-standard-collectible-abi": "^1.0.2",
    "human-standard-token-abi": "^2.0.0",
    "immer": "^9.0.6",
    "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": "^0.20.7",
    "web3-stream-provider": "^4.0.0"
  },
  "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/plugin-proposal-class-properties": "^7.5.5",
    "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4",
    "@babel/plugin-proposal-object-rest-spread": "^7.5.5",
    "@babel/plugin-proposal-optional-chaining": "^7.8.3",
    "@babel/plugin-transform-runtime": "^7.5.5",
    "@babel/preset-env": "^7.5.5",
    "@babel/preset-react": "^7.0.0",
    "@babel/register": "^7.5.5",
    "@lavamoat/allow-scripts": "^2.0.0",
    "@lavamoat/lavapack": "^2.0.4",
    "@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/forwarder": "^1.1.0",
    "@metamask/test-dapp": "^4.0.1",
    "@sentry/cli": "^1.58.0",
    "@storybook/addon-a11y": "^6.3.12",
    "@storybook/addon-actions": "^6.3.12",
    "@storybook/addon-essentials": "^6.3.12",
    "@storybook/addon-knobs": "^6.3.1",
    "@storybook/addons": "^6.3.12",
    "@storybook/api": "^6.3.12",
    "@storybook/client-api": "^6.3.12",
    "@storybook/components": "^6.3.12",
    "@storybook/core": "^6.3.12",
    "@storybook/core-events": "^6.3.0",
    "@storybook/react": "^6.3.12",
    "@storybook/storybook-deployer": "^2.8.10",
    "@storybook/theming": "^6.3.0",
    "@testing-library/jest-dom": "^5.11.10",
    "@testing-library/react": "^10.4.8",
    "@testing-library/react-hooks": "^3.2.1",
    "@types/react": "^16.9.53",
    "addons-linter": "1.14.0",
    "babelify": "^10.0.0",
    "bify-module-groups": "^1.0.0",
    "brfs": "^2.0.2",
    "browser-util-inspect": "^0.2.0",
    "browserify": "^16.5.1",
    "chalk": "^3.0.0",
    "chromedriver": "^96.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",
    "del": "^3.0.0",
    "depcheck": "^1.4.2",
    "dependency-tree": "^8.1.1",
    "duplexify": "^4.1.1",
    "enzyme": "^3.10.0",
    "enzyme-adapter-react-16": "^1.15.1",
    "eslint": "^7.23.0",
    "eslint-config-prettier": "^8.1.0",
    "eslint-import-resolver-node": "^0.3.4",
    "eslint-plugin-import": "^2.22.1",
    "eslint-plugin-jest": "^24.3.4",
    "eslint-plugin-jsdoc": "^37.0.3",
    "eslint-plugin-mocha": "^8.1.0",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-prettier": "^3.3.1",
    "eslint-plugin-react": "^7.23.1",
    "eslint-plugin-react-hooks": "^4.2.0",
    "fancy-log": "^1.3.3",
    "fast-glob": "^3.2.2",
    "fs-extra": "^8.1.0",
    "ganache": "^v7.0.0-rc.0",
    "geckodriver": "^1.21.0",
    "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-sourcemaps": "^3.0.0",
    "gulp-stylelint": "^13.0.0",
    "gulp-watch": "^5.0.1",
    "gulp-zip": "^4.0.0",
    "history": "^5.0.0",
    "improved-yarn-audit": "^3.0.0",
    "jest": "^26.6.3",
    "jsdom": "^11.2.0",
    "koa": "^2.7.0",
    "lavamoat": "^5.3.5",
    "lavamoat-browserify": "^14.1.0",
    "lavamoat-viz": "^6.0.9",
    "lockfile-lint": "^4.0.0",
    "loose-envify": "^1.4.0",
    "minimist": "^1.2.5",
    "mocha": "^7.2.0",
    "nock": "^9.0.14",
    "node-fetch": "^2.6.1",
    "nyc": "^15.0.0",
    "patch-package": "^6.4.7",
    "polyfill-crypto.getrandomvalues": "^1.0.0",
    "prettier": "^2.2.1",
    "prettier-plugin-sort-json": "^0.0.1",
    "proxyquire": "^2.1.3",
    "pumpify": "^2.0.1",
    "randomcolor": "^0.5.4",
    "rc": "^1.2.8",
    "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.1.0",
    "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",
    "string.prototype.matchall": "^4.0.2",
    "style-loader": "^0.21.0",
    "stylelint": "^13.6.1",
    "terser": "^5.7.0",
    "through2": "^4.0.2",
    "ttest": "^2.1.1",
    "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",
    "webpack": "^4.41.6",
    "yargs": "^17.0.1",
    "yarn-deduplicate": "^3.1.0"
  },
  "engines": {
    "node": "^14.15.1",
    "yarn": "^1.16.0"
  },
  "lavamoat": {
    "allowScripts": {
      "3box>3box-orbitdb-plugins>ipfs-log>orbit-db-identity-provider>orbit-db-keystore>leveldown": false,
      "3box>3box-orbitdb-plugins>ipfs-log>orbit-db-identity-provider>orbit-db-keystore>libp2p-crypto-secp256k1>secp256k1": false,
      "3box>3box-orbitdb-plugins>ipfs-log>orbit-db-identity-provider>orbit-db-keystore>libp2p-crypto>libp2p-crypto-secp256k1>secp256k1": false,
      "3box>3box-orbitdb-plugins>ipfs-log>orbit-db-identity-provider>orbit-db-keystore>libp2p-crypto>ursa-optional": false,
      "3box>ipfs-postmsg-proxy>peer-id>libp2p-crypto>libp2p-crypto-secp256k1>secp256k1": false,
      "3box>ipfs>ipfs-mfs>ipfs-unixfs-exporter>ipfs-unixfs-importer>rabin-wasm>assemblyscript": false,
      "3box>ipfs>ipfs-repo>datastore-level>leveldown": false,
      "3box>ipfs>ipld-bitcoin>bitcoinjs-lib>bip32>tiny-secp256k1": 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-tx>ethereumjs-util>ethereum-cryptography>keccak": false,
      "3box>ipfs>ipld-ethereum>ethereumjs-block>ethereumjs-tx>ethereumjs-util>ethereum-cryptography>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-block>merkle-patricia-tree>ethereumjs-util>keccak": false,
      "3box>ipfs>ipld-ethereum>ethereumjs-block>merkle-patricia-tree>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>orbit-db>orbit-db-cache>leveldown": false,
      "@lavamoat/allow-scripts>@lavamoat/preinstall-always-fail": false,
      "@metamask/controllers>babel-runtime>core-js": false,
      "@metamask/controllers>eth-json-rpc-infura>eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>keccak": false,
      "@metamask/controllers>eth-json-rpc-infura>eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>secp256k1": false,
      "@metamask/controllers>eth-keyring-controller>eth-hd-keyring>eth-sig-util>ethereumjs-util>keccak": false,
      "@metamask/controllers>eth-keyring-controller>eth-hd-keyring>eth-sig-util>ethereumjs-util>secp256k1": false,
      "@metamask/controllers>web3-provider-engine>eth-json-rpc-filters>eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>keccak": false,
      "@metamask/controllers>web3-provider-engine>eth-json-rpc-filters>eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>secp256k1": false,
      "@metamask/controllers>web3-provider-engine>eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>keccak": false,
      "@metamask/controllers>web3-provider-engine>eth-json-rpc-middleware>eth-sig-util>ethereumjs-util>secp256k1": false,
      "@metamask/eth-ledger-bridge-keyring>eth-sig-util>ethereumjs-util>keccak": false,
      "@metamask/eth-ledger-bridge-keyring>eth-sig-util>ethereumjs-util>secp256k1": false,
      "@sentry/cli": true,
      "@storybook/addon-a11y>@storybook/addons>@storybook/api>@storybook/channels>core-js": false,
      "@storybook/addon-essentials>@storybook/addon-docs>@storybook/builder-webpack4>@storybook/ui>core-js-pure": false,
      "chromedriver": true,
      "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-trezor-keyring>hdkey>secp256k1": false,
      "eth-trezor-keyring>trezor-connect>@trezor/utxo-lib>blake-hash": false,
      "eth-trezor-keyring>trezor-connect>trezor-link>protobufjs": false,
      "ganache>@trufflesuite/bigint-buffer": false,
      "ganache>keccak": false,
      "ganache>leveldown": false,
      "geckodriver": true,
      "react-devtools>electron": true
    }
  }
}
