package.json 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. {
  2. "name": "firefox-send",
  3. "description": "File Sharing Experiment",
  4. "version": "3.0.0",
  5. "author": "Mozilla (https://mozilla.org)",
  6. "repository": "mozilla/send",
  7. "homepage": "https://github.com/mozilla/send/",
  8. "license": "MPL-2.0",
  9. "private": true,
  10. "scripts": {
  11. "clean": "rimraf dist",
  12. "build": "npm run clean && webpack",
  13. "lint": "npm-run-all lint:*",
  14. "lint:css": "stylelint app/*.css app/**/*.css",
  15. "lint:js": "eslint .",
  16. "lint-locales": "node scripts/lint-locales",
  17. "lint-locales:dev": "npm run lint-locales",
  18. "lint-locales:prod": "npm run lint-locales -- --production",
  19. "format": "prettier '**/*.js' 'assets/*.css' --single-quote --write",
  20. "get-prod-locales": "node scripts/get-prod-locales",
  21. "get-prod-locales:write": "npm run get-prod-locales -- --write",
  22. "contributors": "git shortlog -s | awk -F\\t '{print $2}' > CONTRIBUTORS",
  23. "release": "npm-run-all contributors changelog",
  24. "test": "npm-run-all test:*",
  25. "test:backend": "nyc --reporter=lcovonly mocha --reporter=min test/backend",
  26. "test:frontend": "cross-env NODE_ENV=development node test/frontend/runner.js",
  27. "test:report": "nyc report --reporter=html",
  28. "test-integration": "cross-env NODE_ENV=development wdio test/wdio.docker.conf.js",
  29. "circleci-test-integration": "cross-env NODE_ENV=development wdio test/wdio.circleci.conf.js",
  30. "start": "npm run clean && cross-env NODE_ENV=development FXA_CLIENT_ID=fced6b5e3f4c66b9 BASE_URL=http://localhost:8080 webpack-dev-server --mode=development",
  31. "android": "cross-env ANDROID=1 npm start",
  32. "prod": "node server/bin/prod.js"
  33. },
  34. "husky": {
  35. "hooks": {
  36. "pre-commit": "lint-staged",
  37. "pre-push": "npm test"
  38. }
  39. },
  40. "lint-staged": {
  41. "*.js": [
  42. "prettier --single-quote --write",
  43. "eslint",
  44. "git add"
  45. ],
  46. "*.css": [
  47. "prettier --single-quote --write",
  48. "stylelint",
  49. "git add"
  50. ]
  51. },
  52. "nyc": {
  53. "reporter": [
  54. "text"
  55. ],
  56. "cache": true
  57. },
  58. "engines": {
  59. "node": ">=10.0.0"
  60. },
  61. "devDependencies": {
  62. "@babel/core": "^7.1.6",
  63. "@babel/plugin-proposal-class-properties": "^7.1.0",
  64. "@babel/plugin-syntax-dynamic-import": "^7.0.0",
  65. "@babel/preset-env": "^7.1.6",
  66. "@dannycoates/webpack-dev-server": "^3.1.4",
  67. "@fullhuman/postcss-purgecss": "^1.1.0",
  68. "@mattiasbuelens/web-streams-polyfill": "0.2.0",
  69. "asmcrypto.js": "^2.3.2",
  70. "babel-loader": "^8.0.4",
  71. "babel-plugin-istanbul": "^5.0.1",
  72. "babel-plugin-yo-yoify": "^2.0.0",
  73. "base64-js": "^1.3.0",
  74. "content-disposition": "^0.5.2",
  75. "copy-webpack-plugin": "^4.5.2",
  76. "core-js": "^2.5.7",
  77. "crc": "^3.8.0",
  78. "cross-env": "^5.2.0",
  79. "css-loader": "^1.0.0",
  80. "css-mqpacker": "^7.0.0",
  81. "cssnano": "^4.1.7",
  82. "eslint": "^5.9.0",
  83. "eslint-plugin-mocha": "^5.2.0",
  84. "eslint-plugin-node": "^8.0.0",
  85. "eslint-plugin-security": "^1.4.0",
  86. "expose-loader": "^0.7.5",
  87. "extract-loader": "^3.0.0",
  88. "extract-text-webpack-plugin": "^4.0.0-beta.0",
  89. "fast-text-encoding": "^1.0.0",
  90. "file-loader": "^2.0.0",
  91. "fluent-intl-polyfill": "^0.1.0",
  92. "git-rev-sync": "^1.12.0",
  93. "html-loader": "^0.5.5",
  94. "http_ece": "^1.0.5",
  95. "husky": "^1.1.4",
  96. "lint-staged": "^8.0.4",
  97. "mocha": "^5.2.0",
  98. "morgan": "^1.9.1",
  99. "nanobus": "^4.3.4",
  100. "nanotiming": "^7.3.1",
  101. "npm-run-all": "^4.1.3",
  102. "nyc": "^13.0.1",
  103. "postcss-loader": "^3.0.0",
  104. "postcss-preset-env": "^6.4.0",
  105. "prettier": "^1.15.2",
  106. "proxyquire": "^2.1.0",
  107. "puppeteer": "1.9.0",
  108. "raven-js": "^3.27.0",
  109. "raw-loader": "^0.5.1",
  110. "redis-mock": "^0.39.0",
  111. "rimraf": "^2.6.2",
  112. "sinon": "^7.1.1",
  113. "string-hash": "^1.1.3",
  114. "stylelint": "^9.8.0",
  115. "stylelint-config-standard": "^18.2.0",
  116. "stylelint-no-unsupported-browser-features": "^3.0.2",
  117. "svgo": "^1.1.1",
  118. "svgo-loader": "^2.2.0",
  119. "tailwindcss": "^0.7.2",
  120. "testpilot-ga": "^0.3.0",
  121. "val-loader": "^1.1.1",
  122. "wdio-docker-service": "^1.4.2",
  123. "wdio-dot-reporter": "0.0.10",
  124. "wdio-firefox-profile-service": "^0.1.3",
  125. "wdio-mocha-framework": "^0.6.3",
  126. "wdio-sauce-service": "^0.4.13",
  127. "wdio-spec-reporter": "^0.1.5",
  128. "webdriverio": "^4.13.2",
  129. "webpack": "^4.25.1",
  130. "webpack-cli": "^3.1.2",
  131. "webpack-dev-middleware": "^3.4.0",
  132. "webpack-manifest-plugin": "^2.0.4",
  133. "webpack-unassert-loader": "^1.2.0"
  134. },
  135. "dependencies": {
  136. "@google-cloud/storage": "^2.3.1",
  137. "aws-sdk": "^2.357.0",
  138. "babel-polyfill": "^6.26.0",
  139. "choo": "^6.12.1",
  140. "cldr-core": "^34.0.0",
  141. "convict": "^4.4.0",
  142. "express": "^4.16.3",
  143. "express-ws": "^4.0.0",
  144. "fluent": "^0.9.1",
  145. "fluent-langneg": "^0.1.0",
  146. "helmet": "^3.15.0",
  147. "mkdirp": "^0.5.1",
  148. "mozlog": "^2.2.0",
  149. "node-fetch": "^2.3.0",
  150. "raven": "^2.6.4",
  151. "redis": "^2.8.0",
  152. "websocket-stream": "^5.1.2"
  153. },
  154. "availableLanguages": [
  155. "en-US",
  156. "ar",
  157. "ast",
  158. "az",
  159. "bs",
  160. "ca",
  161. "cak",
  162. "cs",
  163. "cy",
  164. "da",
  165. "de",
  166. "dsb",
  167. "el",
  168. "es-AR",
  169. "es-CL",
  170. "es-ES",
  171. "es-MX",
  172. "et",
  173. "fa",
  174. "fr",
  175. "fy-NL",
  176. "hsb",
  177. "hu",
  178. "ia",
  179. "id",
  180. "it",
  181. "ja",
  182. "ka",
  183. "kab",
  184. "ko",
  185. "ms",
  186. "nb-NO",
  187. "nl",
  188. "nn-NO",
  189. "pt-BR",
  190. "pt-PT",
  191. "ro",
  192. "ru",
  193. "sk",
  194. "sl",
  195. "sq",
  196. "sr",
  197. "sv-SE",
  198. "te",
  199. "tl",
  200. "tr",
  201. "uk",
  202. "vi",
  203. "zh-CN",
  204. "zh-TW"
  205. ]
  206. }