{ "name": "blessing-skin-server", "version": "5.0.0-beta.5", "description": "A web application brings your custom skins back in offline Minecraft servers.", "repository": { "type": "git", "url": "https://github.com/bs-community/blessing-skin-server" }, "author": "printempw", "license": "MIT", "private": true, "scripts": { "dev": "webpack-dev-server", "build": "webpack --mode=production -p --progress", "lint": "eslint --ext=js,vue,ts -f=beauty .", "test": "jest" }, "dependencies": { "@babel/runtime": "^7.8.0", "@fortawesome/fontawesome-free": "^5.12.0", "@hot-loader/react-dom": "^16.11.0", "@tweenjs/tween.js": "^18.4.2", "admin-lte": "^3.0.1", "blessing-skin-shell": "^0.2.0", "commander": "^5.0.0", "echarts": "^4.6.0", "jquery": "^3.4.1", "lodash.debounce": "^4.0.8", "nanoid": "^2.1.11", "react": "^16.12.0", "react-dom": "^16.12.0", "react-draggable": "^4.2.0", "react-hot-loader": "^4.12.18", "rxjs": "^6.5.3", "skinview-utils": "^0.2.1", "skinview3d": "^1.2.1", "spectre.css": "^0.5.8", "vue": "^2.6.11", "vue-good-table": "^2.18.1", "vue-recaptcha": "^1.2.0", "xterm": "^4.4.0", "xterm-addon-fit": "^0.3.0" }, "devDependencies": { "@babel/core": "^7.8.7", "@babel/plugin-transform-runtime": "^7.8.3", "@babel/preset-env": "^7.8.7", "@gplane/tsconfig": "^1.0.0", "@testing-library/jest-dom": "^5.0.2", "@testing-library/react": "^9.4.0", "@types/bootstrap": "^4.3.1", "@types/echarts": "^4.4.2", "@types/jest": "^24.0.25", "@types/jquery": "^3.3.29", "@types/js-yaml": "^3.12.2", "@types/lodash.debounce": "^4.0.6", "@types/nanoid": "^2.1.0", "@types/react": "^16.9.17", "@types/react-dom": "^16.9.4", "@types/tween.js": "^17.2.0", "@types/webpack": "^4.41.2", "@typescript-eslint/eslint-plugin": "^2.8.0", "@typescript-eslint/parser": "^2.8.0", "@vue/test-utils": "^1.0.0-beta.29", "autoprefixer": "^9.7.3", "babel-jest": "^24.9.0", "babel-loader": "^8.0.6", "babel-plugin-dynamic-import-node": "^2.3.0", "cache-loader": "^4.1.0", "css-loader": "^3.4.2", "eslint": "^6.7.1", "eslint-config-gplane": "^6.2.1", "eslint-formatter-beauty": "^3.0.0", "eslint-plugin-vue": "^6.1.2", "file-loader": "^5.0.2", "jest": "^24.9.0", "jest-extended": "^0.11.2", "js-yaml": "^3.13.1", "mini-css-extract-plugin": "^0.9.0", "optimize-css-assets-webpack-plugin": "^5.0.3", "postcss-loader": "^3.0.0", "prettier": "^2.0.1", "sass": "^1.25.0", "sass-loader": "^8.0.2", "style-loader": "^1.1.2", "stylus": "^0.54.7", "stylus-loader": "^3.0.2", "ts-jest": "^24.3.0", "ts-loader": "^6.2.1", "typescript": "^3.8.3", "url-loader": "^3.0.0", "vue-jest": "^4.0.0-beta.2", "vue-loader": "^15.8.3", "vue-template-compiler": "^2.6.11", "webpack": "^4.41.2", "webpack-cli": "^3.3.10", "webpack-dev-server": "^3.10.1", "webpack-manifest-plugin": "^2.2.0" }, "resolutions": { "caniuse-lite": "*" }, "browserslist": [ "> 1%", "not dead", "not ie 11", "Chrome > 52" ], "prettier": { "printWidth": 80, "semi": false, "singleQuote": true, "trailingComma": "all", "tabWidth": 2 }, "eslintConfig": { "root": true, "extends": [ "gplane", "gplane/vue" ], "parser": "vue-eslint-parser", "env": { "node": true, "es6": true, "jquery": true }, "globals": { "blessing": "readonly" }, "rules": { "camelcase": [ 2, { "properties": "never", "ignoreDestructuring": true } ], "max-len": [ 2, 120 ], "prefer-destructuring": 0 }, "overrides": [ { "files": [ "*.ts" ], "extends": [ "gplane", "gplane/typescript", "gplane/vue" ], "parserOptions": { "parser": "@typescript-eslint/parser" }, "plugins": [ "@typescript-eslint" ], "rules": { "@typescript-eslint/camelcase": [ 2, { "properties": "never", "ignoreDestructuring": true } ], "@typescript-eslint/no-invalid-this": 0, "@typescript-eslint/no-unnecessary-condition": 0, "no-invalid-this": 0 } }, { "files": [ "resources/assets/tests/**/*.ts", "*.d.ts" ], "rules": { "@typescript-eslint/no-empty-function": 0, "@typescript-eslint/unbound-method": 0, "@typescript-eslint/no-extra-parens": 0, "max-len": [ 2, 120 ] } }, { "files": [ "resources/assets/src/components/mixins/*.ts" ], "rules": { "@typescript-eslint/no-extra-parens": 0 } } ] }, "jest": { "preset": "ts-jest", "resetMocks": true, "timers": "fake", "transform": { ".*\\.js$": "babel-jest", ".*\\.tsx?$": "ts-jest", ".*\\.vue$": "vue-jest" }, "moduleFileExtensions": [ "js", "ts", "tsx", "vue", "json", "node" ], "moduleNameMapper": { "^@/(.*)$": "/resources/assets/src/$1", "\\.(s?css|styl)$": "/resources/assets/tests/__mocks__/style.ts", "\\.(png|jpg)$": "/resources/assets/tests/__mocks__/file.ts" }, "setupFilesAfterEnv": [ "/resources/assets/tests/setup.ts" ], "coveragePathIgnorePatterns": [ "/node_modules/", "/resources/assets/tests/setup", "/resources/assets/tests/utils", "/resources/assets/tests/scripts/cli/stdio" ], "testMatch": [ "/resources/assets/tests/**/*.test.ts", "/resources/assets/tests/**/*.test.tsx" ], "globals": { "ts-jest": { "tsConfig": "/resources/assets/tests/tsconfig.json", "isolatedModules": true } } } }