package.json 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. {
  2. "browserslist": {
  3. "production": [
  4. ">0.2%",
  5. "not dead",
  6. "not ie <= 11",
  7. "not op_mini all",
  8. "not safari < 12",
  9. "not kaios <= 2.5",
  10. "not edge < 79",
  11. "not chrome < 70",
  12. "not and_uc < 13",
  13. "not samsung < 10"
  14. ],
  15. "development": [
  16. "last 1 chrome version",
  17. "last 1 firefox version",
  18. "last 1 safari version"
  19. ]
  20. },
  21. "dependencies": {
  22. "@sentry/browser": "5.15.4",
  23. "@sentry/integrations": "5.15.4",
  24. "browser-nativefs": "0.6.0",
  25. "i18next-browser-languagedetector": "4.0.2",
  26. "nanoid": "2.1.11",
  27. "open-color": "1.7.0",
  28. "react": "16.13.1",
  29. "react-dom": "16.13.1",
  30. "react-scripts": "3.4.1",
  31. "roughjs": "4.1.4",
  32. "socket.io-client": "2.3.0"
  33. },
  34. "devDependencies": {
  35. "@testing-library/jest-dom": "5.5.0",
  36. "@testing-library/react": "10.0.2",
  37. "@types/jest": "25.2.1",
  38. "@types/nanoid": "2.1.0",
  39. "@types/react": "16.9.34",
  40. "@types/react-dom": "16.9.6",
  41. "@types/socket.io-client": "1.4.32",
  42. "asar": "3.0.3",
  43. "eslint": "6.8.0",
  44. "eslint-config-prettier": "6.10.1",
  45. "eslint-plugin-prettier": "3.1.3",
  46. "husky": "4.2.5",
  47. "jest-canvas-mock": "2.2.0",
  48. "lint-staged": "10.1.3",
  49. "node-sass": "4.13.1",
  50. "pepjs": "0.5.2",
  51. "prettier": "2.0.3",
  52. "rewire": "5.0.0",
  53. "typescript": "3.8.3"
  54. },
  55. "engines": {
  56. "node": ">=12.0.0"
  57. },
  58. "eslintConfig": {
  59. "extends": [
  60. "prettier",
  61. "react-app"
  62. ],
  63. "plugins": [
  64. "prettier"
  65. ],
  66. "rules": {
  67. "curly": "warn",
  68. "no-console": [
  69. "warn",
  70. {
  71. "allow": [
  72. "warn",
  73. "error",
  74. "info"
  75. ]
  76. }
  77. ],
  78. "no-else-return": "warn",
  79. "no-useless-return": "warn",
  80. "prefer-const": [
  81. "warn",
  82. {
  83. "destructuring": "all"
  84. }
  85. ],
  86. "prefer-template": "warn",
  87. "prettier/prettier": "warn",
  88. "no-restricted-syntax": [
  89. "warn",
  90. {
  91. "selector": "JSXText[value=/\\w/]",
  92. "message": "Use 't(...)' instead of literal text in JSX"
  93. }
  94. ]
  95. }
  96. },
  97. "homepage": ".",
  98. "husky": {
  99. "hooks": {
  100. "pre-commit": "lint-staged"
  101. }
  102. },
  103. "jest": {
  104. "transformIgnorePatterns": [
  105. "node_modules/(?!(roughjs|browser-nativefs)/)"
  106. ]
  107. },
  108. "private": true,
  109. "scripts": {
  110. "build": "npm run build:app && npm run build:zip",
  111. "build-node": "node ./scripts/build-node.js",
  112. "build:app": "REACT_APP_GIT_SHA=$NOW_GITHUB_COMMIT_SHA react-scripts build",
  113. "build:zip": "node ./scripts/build-version.js",
  114. "eject": "react-scripts eject",
  115. "fix": "npm run fix:other && npm run fix:code",
  116. "fix:code": "npm run test:code -- --fix",
  117. "fix:other": "npm run prettier -- --write",
  118. "prettier": "prettier \"**/*.{css,scss,json,md,html,yml}\" --ignore-path=.eslintignore",
  119. "start": "react-scripts start",
  120. "test": "npm run test:app",
  121. "test:all": "npm run test:typecheck && npm run test:code && npm run test:other && npm run test:app -- --watchAll=false",
  122. "test:update": "npm run test:app -- --updateSnapshot --watchAll=false",
  123. "test:app": "react-scripts test --env=jsdom --passWithNoTests",
  124. "test:code": "eslint --max-warnings=0 --ignore-path .gitignore --ext .js,.ts,.tsx .",
  125. "test:debug": "react-scripts --inspect-brk test --runInBand --no-cache",
  126. "test:other": "npm run prettier -- --list-different",
  127. "test:typecheck": "tsc"
  128. }
  129. }