{
  "name": "@uniswap/interface",
  "version": "1.1.0",
  "description": "Uniswap Interface",
  "license": "GPL-3.0-or-later",
  "scripts": {
    "ajv": "node scripts/compile-ajv-validators.js",
    "contracts:compile:abi": "typechain --target ethers-v5 --out-dir src/abis/types \"./src/abis/**/*.json\"",
    "contracts:compile:v3": "typechain --target ethers-v5 --out-dir src/types/v3 \"./node_modules/@uniswap/**/artifacts/contracts/**/*[!dbg].json\"",
    "contracts": "yarn contracts:compile:abi && yarn contracts:compile:v3",
    "graphql:fetch": "node scripts/fetch-schema.js",
    "graphql:generate:data": "graphql-codegen --config graphql.data.codegen.config.ts",
    "graphql:generate:thegraph": "graphql-codegen --config graphql.thegraph.codegen.config.ts",
    "graphql:generate": "yarn graphql:generate:data && yarn graphql:generate:thegraph",
    "graphql": "yarn graphql:fetch && yarn graphql:generate",
    "i18n:extract": "lingui extract --locale en-US",
    "i18n:compile": "lingui compile",
    "i18n": "yarn i18n:extract --clean && yarn i18n:compile",
    "prepare": "concurrently \"npm:ajv\" \"npm:contracts\" \"npm:graphql\" \"npm:i18n\"",
    "start": "craco start",
    "start:cloud": "NODE_OPTIONS=--dns-result-order=ipv4first PORT=3001 npx wrangler pages dev --compatibility-flags=nodejs_compat --compatibility-date=2023-08-01 --proxy=3001 --port=3000 -- yarn start",
    "build": "craco build",
    "analyze": "source-map-explorer 'build/static/js/*.js' --no-border-checks --gzip",
    "serve": "serve build -s -l 3000",
    "lint": "yarn eslint --ignore-path .gitignore --cache --cache-location node_modules/.cache/eslint/ .",
    "typecheck": "tsc",
    "typecheck:cloud": "tsc -p functions/tsconfig.json",
    "typecheck:cypress": "tsc -p cypress/tsconfig.json",
    "test": "craco test",
    "test:cloud": "yarn jest functions --config=functions/jest.config.json",
    "cypress:open": "cypress open --browser chrome --e2e",
    "cypress:run": "cypress run --browser chrome --e2e",
    "deduplicate": "yarn-deduplicate --strategy=highest",
    "postinstall": "yarn patch-package"
  },
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged"
    }
  },
  "lint-staged": {
    "yarn.lock": [
      "yarn deduplicate"
    ]
  },
  "jest": {
    "collectCoverageFrom": [
      "src/**/*.ts*",
      "!src/**/*.d.ts",
      "!src/abis/types/**",
      "!src/constants/**/*.ts",
      "!src/graphql/**/__generated__/**",
      "!src/locales/**",
      "!src/test-utils/**",
      "!src/types/v3/**"
    ],
    "coveragePathIgnorePatterns": [
      ".snap"
    ],
    "coverageThreshold": {
      "global": {
        "branches": 4,
        "functions": 6,
        "lines": 9,
        "statements": 9
      }
    }
  },
  "browserslist": {
    "production": [
      ">0.5%",
      "not dead"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "@babel/preset-env": "^7.22.7",
    "@cloudflare/workers-types": "^4.20230710.1",
    "@craco/craco": "^7.1.0",
    "@ethersproject/experimental": "^5.4.0",
    "@lingui/cli": "^4.3.0",
    "@lingui/swc-plugin": "^4.0.4",
    "@swc/core": "^1.3.72",
    "@swc/jest": "^0.2.27",
    "@swc/plugin-styled-components": "^1.5.70",
    "@testing-library/jest-dom": "^5.16.4",
    "@testing-library/react": "^13.1",
    "@testing-library/user-event": "^14.4.3",
    "@typechain/ethers-v5": "^7.0.0",
    "@types/array.prototype.flat": "^1.2.1",
    "@types/array.prototype.flatmap": "^1.2.2",
    "@types/d3": "^6.7.1",
    "@types/jest": "^27.0.1",
    "@types/lingui__core": "^2.7.1",
    "@types/lingui__macro": "^2.7.4",
    "@types/lingui__react": "^2.8.3",
    "@types/ms": "^0.7.31",
    "@types/multicodec": "^1.0.0",
    "@types/node": "^13.13.5",
    "@types/qs": "^6.9.2",
    "@types/react": "^18.0.15",
    "@types/react-dom": "^18.0.6",
    "@types/react-redux": "^7.1.24",
    "@types/react-table": "^7.7.12",
    "@types/react-virtualized-auto-sizer": "^1.0.0",
    "@types/react-window": "^1.8.2",
    "@types/rebass": "^4.0.7",
    "@types/styled-components": "^5.1.25",
    "@types/testing-library__cypress": "^5.0.5",
    "@types/ua-parser-js": "^0.7.36",
    "@types/uuid": "^8.3.4",
    "@types/wcag-contrast": "^3.0.0",
    "@uniswap/default-token-list": "^11.2.0",
    "@uniswap/eslint-config": "^1.2.0",
    "@vanilla-extract/jest-transform": "^1.1.1",
    "@vanilla-extract/webpack-plugin": "^2.2.0",
    "@vercel/og": "0.5.8",
    "@walletconnect/types": "^2.8.6",
    "babel-jest": "^29.6.1",
    "browser-cache-mock": "^0.1.7",
    "buffer": "^6.0.3",
    "concurrently": "^8.0.1",
    "cypress": "12.12.0",
    "cypress-hardhat": "^2.5.0",
    "env-cmd": "^10.1.0",
    "eslint": "^7.11.0",
    "eslint-plugin-import": "^2.27",
    "eslint-plugin-rulesdir": "^0.2.2",
    "hardhat": "^2.14.0",
    "husky": "^8.0.3",
    "jest": "^29.6.1",
    "jest-extended": "^4.0.1",
    "jest-fail-on-console": "^3.1.1",
    "jest-fetch-mock": "^3.0.3",
    "jest-styled-components": "^7.0.8",
    "jpeg-js": "^0.4.4",
    "lint-staged": "^14.0.0",
    "mini-css-extract-plugin": "^2.7.6",
    "patch-package": "^7.0.0",
    "path-browserify": "^1.0.1",
    "png-ts": "^0.0.3",
    "postinstall-postinstall": "^2.1.0",
    "prettier": "^2.8.8",
    "process": "^0.11.10",
    "react-scripts": "^5.0.1",
    "resize-observer-polyfill": "^1.5.1",
    "serve": "^11.3.2",
    "source-map-explorer": "^2.5.3",
    "start-server-and-test": "^2.0.0",
    "swc-loader": "^0.2.3",
    "terser-webpack-plugin": "^5.3.9",
    "ts-jest": "^29.1.1",
    "ts-transform-graphql-tag": "^0.2.1",
    "tsafe": "^1.6.4",
    "typechain": "^5.0.0",
    "typescript": "^4.9.4",
    "webpack": "^5.88.2",
    "webpack-retry-chunk-load-plugin": "^3.1.1",
    "wrangler": "^3.7.0",
    "yarn-deduplicate": "^6.0.0"
  },
  "dependencies": {
    "@apollo/client": "^3.7.2",
    "@coinbase/wallet-sdk": "^3.6.4",
    "@fontsource/ibm-plex-mono": "^4.5.1",
    "@fontsource/inter": "^4.5.1",
    "@graphql-codegen/cli": "^3.3.1",
    "@graphql-codegen/client-preset": "^3.0.1",
    "@graphql-codegen/typescript": "^3.0.4",
    "@graphql-codegen/typescript-operations": "^3.0.2",
    "@graphql-codegen/typescript-react-apollo": "^3.3.7",
    "@graphql-codegen/typescript-resolvers": "^3.2.1",
    "@juggle/resize-observer": "^3.4.0",
    "@lingui/core": "^4.3.0",
    "@lingui/macro": "^4.3.0",
    "@lingui/react": "^4.3.0",
    "@looksrare/sdk": "^0.10.2",
    "@metamask/jazzicon": "^2.0.0",
    "@opensea/seaport-js": "^1.2.0",
    "@popperjs/core": "^2.4.4",
    "@reach/dialog": "^0.10.3",
    "@reach/portal": "^0.10.3",
    "@reduxjs/toolkit": "^1.9.3",
    "@sentry/react": "^7.45.0",
    "@sentry/tracing": "^7.45.0",
    "@sentry/types": "^7.45.0",
    "@types/react-window-infinite-loader": "^1.0.6",
    "@uniswap/analytics": "^1.4.0",
    "@uniswap/analytics-events": "^2.23.0",
    "@uniswap/governance": "^1.0.2",
    "@uniswap/liquidity-staker": "^1.0.2",
    "@uniswap/merkle-distributor": "^1.0.1",
    "@uniswap/permit2-sdk": "^1.2.0",
    "@uniswap/redux-multicall": "^1.1.8",
    "@uniswap/router-sdk": "^1.6.0",
    "@uniswap/sdk-core": "^4.0.3",
    "@uniswap/smart-order-router": "^3.15.0",
    "@uniswap/token-lists": "^1.0.0-beta.33",
    "@uniswap/uniswapx-sdk": "^1.3.0",
    "@uniswap/universal-router-sdk": "^1.5.6",
    "@uniswap/v2-core": "^1.0.1",
    "@uniswap/v2-periphery": "^1.1.0-beta.0",
    "@uniswap/v2-sdk": "^3.2.0",
    "@uniswap/v3-core": "^1.0.1",
    "@uniswap/v3-periphery": "^1.1.1",
    "@uniswap/v3-sdk": "^3.10.0",
    "@vanilla-extract/css": "^1.12.0",
    "@vanilla-extract/css-utils": "^0.1.3",
    "@vanilla-extract/dynamic": "^2.0.3",
    "@vanilla-extract/sprinkles": "^1.6.1",
    "@visx/axis": "^2.12.2",
    "@visx/event": "^2.6.0",
    "@visx/glyph": "^2.10.0",
    "@visx/group": "^2.10.0",
    "@visx/react-spring": "^2.12.2",
    "@visx/responsive": "^2.10.0",
    "@visx/shape": "^2.11.1",
    "@web3-react/coinbase-wallet": "^8.2.2",
    "@web3-react/core": "^8.2.2",
    "@web3-react/eip1193": "^8.2.2",
    "@web3-react/empty": "^8.2.2",
    "@web3-react/gnosis-safe": "^8.2.3",
    "@web3-react/metamask": "^8.2.3",
    "@web3-react/network": "^8.2.2",
    "@web3-react/types": "^8.2.2",
    "@web3-react/url": "^8.2.2",
    "@web3-react/walletconnect-v2": "^8.5.0",
    "ajv": "^8.11.0",
    "ajv-formats": "^2.1.1",
    "array.prototype.flat": "^1.2.4",
    "array.prototype.flatmap": "^1.2.4",
    "cids": "^1.0.0",
    "clsx": "^1.1.1",
    "copy-to-clipboard": "^3.2.0",
    "d3": "^7.6.1",
    "ethers": "^5.7.2",
    "ext-name": "^5.0.0",
    "focus-visible": "^5.2.0",
    "get-graphql-schema": "^2.1.2",
    "graphql": "^16.5.0",
    "graphql-request": "^3.4.0",
    "immer": "^9.0.6",
    "inter-ui": "^3.13.1",
    "jotai": "^1.3.7",
    "jsbi": "^3.1.4",
    "localforage": "^1.10.0",
    "make-plural": "^7.0.0",
    "ms": "^2.1.3",
    "multicodec": "^3.0.1",
    "multihashes": "^4.0.2",
    "node-vibrant": "^3.2.1-alpha.1",
    "numbro": "^2.3.6",
    "polished": "^3.3.2",
    "polyfill-object.fromentries": "^1.0.1",
    "qrcode.react": "^3.1.0",
    "qs": "^6.9.4",
    "rc-slider": "^10.0.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-feather": "^2.0.8",
    "react-infinite-scroll-component": "^6.1.0",
    "react-is": "^17.0.2",
    "react-markdown": "^4.3.1",
    "react-popper": "^2.2.3",
    "react-query": "^3.39.1",
    "react-redux": "^8.0.2",
    "react-router-dom": "^6.3.0",
    "react-spring": "^9.5.5",
    "react-table": "^7.8.0",
    "react-use-gesture": "^6.0.14",
    "react-virtualized-auto-sizer": "^1.0.2",
    "react-window": "^1.8.5",
    "react-window-infinite-loader": "^1.0.8",
    "rebass": "^4.0.7",
    "redux": "^4.1.2",
    "redux-persist": "^6.0.0",
    "statsig-react": "^1.22.0",
    "styled-components": "^5.3.5",
    "tiny-invariant": "^1.2.0",
    "ua-parser-js": "^1.0.35",
    "use-resize-observer": "^9.1.0",
    "uuid": "^8.3.2",
    "video-extensions": "^1.2.0",
    "wcag-contrast": "^3.0.0",
    "web-vitals": "^2.1.0",
    "workbox-core": "^6.1.0",
    "workbox-navigation-preload": "^6.1.0",
    "workbox-precaching": "^6.1.0",
    "workbox-routing": "^6.1.0",
    "zustand": "^4.3.6"
  },
  "engines": {
    "npm": "please-use-yarn",
    "node": "18.x",
    "yarn": ">=1.22"
  }
}
