{ "name": "os-league-tools", "homepage": ".", "version": "1.0.0", "engines": { "node": ">=20.x <=22.x" }, "private": true, "scripts": { "start": "serve -s build", "build": "node scripts/build.js", "test": "node scripts/test.js", "build:styles": "postcss src/styles/index.css -o src/styles/compiled.css", "prebuild": "npm run build:styles", "dev": "node scripts/start.js", "predev": "npm run build:styles", "predeploy": "npm run build", "deploy": "gh-pages -d build", "prepare": "[ -d .git ] && husky install || true", "refresh:tasks": "node scripts/formatTaskScraperJson.js" }, "dependencies": { "@auth0/auth0-react": "^2.2.4", "@babel/core": "^7.16.0", "@babel/preset-env": "^7.26.0", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.3", "@reduxjs/toolkit": "^2.3.0", "@svgr/webpack": "^5.5.0", "@tailwindcss/forms": "^0.5.9", "autoprefixer": "^10.4.1", "babel-jest": "^27.4.2", "babel-loader": "^8.2.3", "babel-plugin-named-asset-import": "^0.3.8", "babel-preset-react-app": "^10.0.1", "bfj": "^7.0.2", "browserslist": "^4.18.1", "camelcase": "^6.2.1", "case-sensitive-paths-webpack-plugin": "^2.4.0", "css-loader": "^6.5.1", "css-minimizer-webpack-plugin": "^3.2.0", "dotenv": "^10.0.0", "dotenv-expand": "^5.1.0", "eslint": "^8.6.0", "eslint-config-airbnb": "^19.0.4", "eslint-config-prettier": "^8.3.0", "eslint-config-react-app": "^7.0.1", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^4.3.0", "eslint-webpack-plugin": "^3.1.1", "file-loader": "^6.2.0", "file-saver": "^2.0.5", "fs-extra": "^10.0.0", "history": "^5.3.0", "html-webpack-plugin": "^5.5.0", "identity-obj-proxy": "^3.0.0", "immutability-helper": "^3.1.1", "jest": "^27.4.3", "jest-resolve": "^27.4.2", "jest-watch-typeahead": "^1.0.0", "lodash": "^4.17.21", "match-sorter": "^6.3.1", "memoizee": "^0.4.17", "mini-css-extract-plugin": "^2.4.5", "postcss": "^8.4.4", "postcss-cli": "^11.0.0", "postcss-flexbugs-fixes": "^5.0.2", "postcss-import-url": "^1.0.0", "postcss-loader": "^6.2.1", "postcss-normalize": "^10.0.1", "postcss-preset-env": "^7.0.1", "prompts": "^2.4.2", "query-string": "^7.0.1", "react": "^18.3.1", "react-app-polyfill": "^3.0.0", "react-charts": "^0.0.1", "react-checkbox-tree": "^1.8.0", "react-dev-utils": "^12.0.1", "react-device-detect": "^2.2.3", "react-dnd": "^14.0.5", "react-dnd-html5-backend": "^14.1.0", "react-dom": "^18.3.1", "react-error-boundary": "^4.1.2", "react-file-picker": "^0.0.6", "react-ga4": "^2.1.0", "react-modal": "^3.16.1", "react-redux": "^9.1.2", "react-refresh": "^0.11.0", "react-responsive": "^9.0.0-beta.5", "react-router-dom": "^6.28.0", "react-step-progress-bar": "^1.0.3", "react-table": "^7.8.0", "react-tooltip": "^5.28.0", "resolve": "^1.20.0", "resolve-url-loader": "^5.0.0", "sass-loader": "^12.3.0", "semver": "^7.3.5", "serve": "^14.2.4", "source-map-loader": "^3.0.0", "style-loader": "^3.3.1", "tailwindcss": "^3.0.2", "terser-webpack-plugin": "^5.2.5", "webpack": "^5.64.4", "webpack-dev-server": "^5.2.3", "webpack-manifest-plugin": "^4.0.2", "workbox-webpack-plugin": "^6.4.1" }, "devDependencies": { "gh-pages": "^6.2.0", "husky": "^7.0.4", "jest": "^27.4.7", "lint-staged": "^12.1.5", "node-fetch": "^2.6.7", "prettier": "^2.5.1" }, "overrides": { "react-scripts": { "postcss": ">=8.4.31", "workbox-webpack-plugin": ">=7.1.0" }, "nth-check": ">=2.0.2" }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "lint-staged": { "*.js": "eslint --fix", "*.{js,css,md}": "prettier --write" }, "jest": { "roots": [ "/src" ], "collectCoverageFrom": [ "src/**/*.{js,jsx,ts,tsx}", "!src/**/*.d.ts" ], "setupFiles": [ "react-app-polyfill/jsdom" ], "setupFilesAfterEnv": [], "testMatch": [ "/src/**/__tests__/**/*.{js,jsx,ts,tsx}", "/src/**/*.{spec,test}.{js,jsx,ts,tsx}" ], "testEnvironment": "jsdom", "transform": { "^.+\\.(js|jsx|mjs|cjs|ts|tsx)$": "/config/jest/babelTransform.js", "^.+\\.css$": "/config/jest/cssTransform.js", "^(?!.*\\.(js|jsx|mjs|cjs|ts|tsx|css|json)$)": "/config/jest/fileTransform.js" }, "transformIgnorePatterns": [ "[/\\\\]node_modules[/\\\\].+\\.(js|jsx|mjs|cjs|ts|tsx)$", "^.+\\.module\\.(css|sass|scss)$" ], "modulePaths": [], "moduleNameMapper": { "^react-native$": "react-native-web", "^.+\\.module\\.(css|sass|scss)$": "identity-obj-proxy" }, "moduleFileExtensions": [ "web.js", "js", "web.ts", "ts", "web.tsx", "tsx", "json", "web.jsx", "jsx", "node" ], "watchPlugins": [ "jest-watch-typeahead/filename", "jest-watch-typeahead/testname" ], "resetMocks": true }, "babel": { "presets": [ "react-app" ] }, "eslintConfig": { "extends": "react-app" } }