{
  "package": {
    "dependencies": {
      "@chakra-ui/react": "^2.8.1",
      "@emotion/react": "^11.11.1",
      "@emotion/styled": "^11.11.0",
      "@metamask/jazzicon": "^2.0.0",
      "@react-icons/all-files": "^4.1.0",
      "@reduxjs/toolkit": "^1.9.5",
      "ethers": "5.7.2",
      "framer-motion": "^10.16.4",
      "i18next": "^23.5.1",
      "i18next-browser-languagedetector": "^7.1.0",
      "loglevel": "^1.8.1",
      "react": "^18.2.0",
      "react-cookie-consent": "^8.0.1",
      "react-dom": "^18.2.0",
      "react-error-boundary": "^4.0.11",
      "react-helmet-async": "^1.3.0",
      "react-i18next": "^13.2.2",
      "react-redux": "^8.1.2",
      "react-router-dom": "^6.15.0",
      "react-scripts": "^5.0.1",
      "redux-saga": "^1.2.3",
      "web-vitals": "^3.4.0"
    },
    "devDependencies": {
      "@babel/plugin-proposal-private-property-in-object": "^7.21.11",
      "@chakra-ui/storybook-addon": "^5.0.1",
      "@storybook/addon-essentials": "^7.4.0",
      "@storybook/addon-interactions": "^7.4.0",
      "@storybook/addon-links": "^7.4.0",
      "@storybook/addon-onboarding": "^1.0.8",
      "@storybook/blocks": "^7.4.0",
      "@storybook/preset-create-react-app": "^7.4.0",
      "@storybook/react": "^7.4.0",
      "@storybook/react-webpack5": "^7.4.0",
      "@storybook/testing-library": "^0.2.0",
      "@testing-library/jest-dom": "^6.1.3",
      "@testing-library/react": "^14.0.0",
      "@testing-library/user-event": "^14.4.3",
      "@types/jest": "^29.5.4",
      "@types/node": "^20.6.0",
      "@types/react": "^18.2.21",
      "@types/react-dom": "^18.2.7",
      "@types/redux-mock-store": "^1.0.3",
      "babel-plugin-named-exports-order": "^0.0.2",
      "eslint-config-prettier": "^9.0.0",
      "eslint-import-resolver-typescript": "^3.6.0",
      "eslint-plugin-prettier": "^5.0.0",
      "eslint-plugin-storybook": "^0.6.13",
      "i18next-parser": "^8.7.0",
      "prettier": "^3.0.3",
      "prop-types": "^15.8.1",
      "redux-mock-store": "^1.5.4",
      "redux-saga-test-plan": "^4.0.6",
      "source-map-explorer": "^2.5.3",
      "storybook": "^7.4.0",
      "storybook-addon-react-router-v6": "^2.0.7",
      "typescript": "^4.9.5",
      "webpack": "^5.88.2"
    },
    "scripts": {
      "start": "react-scripts start",
      "format": "npx prettier --write './src/**/*.{ts,tsx}'",
      "lint": "eslint --ext .js,.ts,.jsx,.tsx ./src",
      "test": "react-scripts test --verbose --no-cache",
      "coverage": "react-scripts test --coverage --no-cache",
      "extract": "i18next 'src/**/*.{ts,tsx}'",
      "build": "react-scripts build",
      "storybook": "storybook dev -p 6006",
      "build-storybook": "storybook build",
      "analyze": "source-map-explorer 'build/static/js/*.js'",
      "eject": "react-scripts eject"
    },
    "eslintConfig": {
      "extends": [
        "plugin:import/errors",
        "plugin:import/warnings",
        "plugin:import/typescript",
        "prettier"
      ],
      "parser": "@typescript-eslint/parser",
      "plugins": ["react-hooks", "prettier"],
      "root": true,
      "overrides": [
        {
          "files": ["**/*.stories.*"],
          "rules": {
            "import/no-anonymous-default-export": "off"
          }
        }
      ],
      "rules": {
        "no-console": "warn",
        "prettier/prettier": [
          "warn",
          {
            "endOfLine": "auto",
            "singleQuote": true
          }
        ],
        "import/order": [
          "warn",
          {
            "newlines-between": "always",
            "groups": [
              "builtin",
              "external",
              "internal",
              "parent",
              "sibling",
              "index"
            ],
            "pathGroups": [
              {
                "pattern": "**/*.stories.ts?",
                "group": "external",
                "position": "before"
              },
              {
                "pattern": "**/*.test.ts?",
                "group": "external",
                "position": "before"
              }
            ],
            "pathGroupsExcludedImportTypes": ["builtin"],
            "alphabetize": {
              "order": "asc",
              "caseInsensitive": true
            }
          }
        ]
      }
    },
    "jest": {
      "collectCoverageFrom": [
        "src/**/*.{js,jsx,ts,tsx}",
        "!src/reportWebVitals.ts",
        "!src/serviceWorker.ts",
        "!src/serviceWorkerRegistration.ts",
        "!src/test-utils.tsx",
        "!src/index.tsx",
        "!src/App.tsx",
        "!src/**/*.stories.{js,jsx,ts,tsx}",
        "!<rootDir>/node_modules/",
        "!<rootDir>/template/"
      ],
      "coveragePathIgnorePatterns": [],
      "coverageThreshold": {
        "global": {
          "branches": 30,
          "functions": 40,
          "lines": 40,
          "statements": 40
        }
      }
    },
    "browserslist": {
      "production": [">0.2%", "not dead", "not op_mini all"],
      "development": [
        "last 1 chrome version",
        "last 1 firefox version",
        "last 1 safari version"
      ]
    }
  }
}
