X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;f=package.json;h=00152a895b8f857733e6cbe0df9bfedba45904ec;hb=HEAD;hp=7a9aecdf303df17e84c167d05c5d6cdd66981d23;hpb=4bf2dd1dd1f6d31b2ebe299b7495a8b0e259ec77;p=alttp.git diff --git a/package.json b/package.json index 7a9aecd..00152a8 100644 --- a/package.json +++ b/package.json @@ -7,12 +7,151 @@ "watch-poll": "mix watch -- --watch-options-poll=1000", "hot": "mix watch --hot", "prod": "npm run production", - "production": "mix --production" + "production": "mix --production", + "test": "NODE_ENV=test npx jest", + "test-watch": "npm run test -- --watch --notify" + }, + "eslintConfig": { + "env": { + "browser": true, + "es6": true, + "node": true + }, + "extends": [ + "eslint:recommended", + "plugin:import/recommended", + "plugin:react/recommended" + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "babelOptions": { + "presets": [ + "@babel/preset-react" + ] + }, + "ecmaFeatures": { + "jsx": true + }, + "ecmaVersion": 2018, + "requireConfigFile": false, + "sourceType": "module" + }, + "rules": { + "import/no-named-as-default-member": 0, + "max-len": [ + "warn", + { + "code": 100, + "tabWidth": 4 + } + ], + "no-use-before-define": "error", + "no-extra-parens": [ + "warn", + "all", + { + "nestedBinaryExpressions": false + } + ], + "no-mixed-operators": "error", + "no-trailing-spaces": "error", + "semi": [ + "error", + "always" + ] + }, + "overrides": [ + { + "files": [ + "**/*.test.js" + ], + "env": { + "jest": true + }, + "settings": { + "import/resolver": { + "node": { + "paths": [ + "resources/js" + ] + } + } + } + } + ] + }, + "jest": { + "moduleDirectories": [ + "node_modules", + "resources/js" + ], + "roots": [ + "/resources/js", + "/tests/js" + ], + "setupFilesAfterEnv": [ + "/resources/js/setup-jest.js" + ], + "testEnvironment": "jsdom" }, "devDependencies": { - "axios": "^0.25", + "@babel/eslint-parser": "^7.22.11", + "@babel/preset-react": "^7.13.13", + "@popperjs/core": "^2.10.2", + "@tailwindcss/forms": "^0.5.6", + "@testing-library/jest-dom": "^6.4.2", + "@testing-library/react": "^14.2.1", + "alpinejs": "^3.4.2", + "autoprefixer": "^10.4.2", + "axios": "^1.5.0", + "babel-jest": "^29.7.0", + "bootstrap": "^5.1.3", + "eslint": "^8.10.0", + "eslint-plugin-import": "^2.25.4", + "eslint-plugin-react": "^7.29.3", + "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", "laravel-mix": "^6.0.6", "lodash": "^4.17.19", - "postcss": "^8.1.14" + "postcss": "^8.4.6", + "postcss-import": "^15.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "resolve-url-loader": "^5.0.0", + "sass": "^1.32.11", + "sass-loader": "^13.3.2", + "tailwindcss": "^3.0.18" + }, + "dependencies": { + "@codemirror/lang-html": "^6.4.5", + "@fortawesome/fontawesome-free": "^6.0.0", + "@fortawesome/fontawesome-svg-core": "^6.4.2", + "@fortawesome/free-brands-svg-icons": "^6.0.0", + "@fortawesome/free-solid-svg-icons": "^6.0.0", + "@fortawesome/react-fontawesome": "^0.2.0", + "@uiw/codemirror-theme-github": "^4.21.9", + "@uiw/react-codemirror": "^4.21.9", + "apng-js": "^1.1.1", + "crc-32": "^1.2.2", + "d3-drag": "^3.0.0", + "file-saver": "^2.0.5", + "formik": "^2.2.9", + "i18next": "^23.4.9", + "i18next-browser-languagedetector": "^7.1.0", + "laravel-echo": "^1.11.3", + "localforage": "^1.10.0", + "moment": "^2.29.1", + "numeral": "^2.0.6", + "openseadragon": "^4.0.0", + "pusher-js": "^8.3.0", + "qs": "^6.10.3", + "react-bootstrap": "^2.2.0", + "react-helmet": "^6.1.0", + "react-i18next": "^13.2.2", + "react-router-bootstrap": "^0.26.0", + "react-router-dom": "^6.2.2", + "recharts": "^2.1.9", + "toastr": "^2.1.4", + "yup": "^1.2.0" } }