package.json 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  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. "post-merge": "npm install"
  39. }
  40. },
  41. "lint-staged": {
  42. "*.js": [
  43. "prettier --single-quote --write",
  44. "eslint",
  45. "git add"
  46. ],
  47. "*.css": [
  48. "prettier --single-quote --write",
  49. "stylelint",
  50. "git add"
  51. ]
  52. },
  53. "nyc": {
  54. "reporter": [
  55. "text"
  56. ],
  57. "cache": true
  58. },
  59. "engines": {
  60. "node": ">=10.0.0"
  61. },
  62. "devDependencies": {
  63. "@babel/core": "^7.3.3",
  64. "@babel/plugin-proposal-class-properties": "^7.3.3",
  65. "@babel/plugin-syntax-dynamic-import": "^7.2.0",
  66. "@babel/preset-env": "^7.3.1",
  67. "@dannycoates/webcrypto-liner": "^0.1.34",
  68. "@dannycoates/webpack-dev-server": "^3.1.4",
  69. "@fullhuman/postcss-purgecss": "^1.1.0",
  70. "@mattiasbuelens/web-streams-polyfill": "0.2.1",
  71. "asmcrypto.js": "^0.22.0",
  72. "babel-loader": "^8.0.5",
  73. "babel-plugin-istanbul": "^5.1.1",
  74. "base64-js": "^1.3.0",
  75. "content-disposition": "^0.5.3",
  76. "copy-webpack-plugin": "^4.5.2",
  77. "core-js": "^2.6.5",
  78. "crc": "^3.8.0",
  79. "cross-env": "^5.2.0",
  80. "css-loader": "^2.1.0",
  81. "css-mqpacker": "^7.0.0",
  82. "cssnano": "^4.1.10",
  83. "eslint": "^5.14.1",
  84. "eslint-plugin-mocha": "^5.3.0",
  85. "eslint-plugin-node": "^8.0.1",
  86. "eslint-plugin-security": "^1.4.0",
  87. "expose-loader": "^0.7.5",
  88. "extract-loader": "^3.1.0",
  89. "extract-text-webpack-plugin": "^4.0.0-beta.0",
  90. "fast-text-encoding": "^1.0.0",
  91. "file-loader": "^3.0.1",
  92. "fluent-intl-polyfill": "^0.1.0",
  93. "git-rev-sync": "^1.12.0",
  94. "html-loader": "^0.5.5",
  95. "http_ece": "^1.1.0",
  96. "husky": "^1.3.1",
  97. "lint-staged": "^8.1.4",
  98. "mocha": "^6.0.0",
  99. "morgan": "^1.9.1",
  100. "nanobus": "^4.4.0",
  101. "nanohtml": "^1.4.0",
  102. "nanotiming": "^7.3.1",
  103. "npm-run-all": "^4.1.5",
  104. "nyc": "^13.3.0",
  105. "postcss-loader": "^3.0.0",
  106. "postcss-preset-env": "^6.5.0",
  107. "prettier": "^1.16.4",
  108. "proxyquire": "^2.1.0",
  109. "puppeteer": "1.11.0",
  110. "raven-js": "^3.27.0",
  111. "raw-loader": "^1.0.0",
  112. "redis-mock": "^0.43.0",
  113. "rimraf": "^2.6.3",
  114. "script-loader": "^0.7.2",
  115. "sinon": "^7.2.4",
  116. "string-hash": "^1.1.3",
  117. "stylelint": "^9.10.1",
  118. "stylelint-config-standard": "^18.2.0",
  119. "stylelint-no-unsupported-browser-features": "^3.0.2",
  120. "svgo": "^1.1.1",
  121. "svgo-loader": "^2.2.0",
  122. "tailwindcss": "^0.7.4",
  123. "val-loader": "^1.1.1",
  124. "wdio-docker-service": "^1.4.2",
  125. "wdio-dot-reporter": "0.0.10",
  126. "wdio-firefox-profile-service": "^0.1.3",
  127. "wdio-mocha-framework": "^0.6.3",
  128. "wdio-sauce-service": "^0.4.14",
  129. "wdio-spec-reporter": "^0.1.5",
  130. "webdriverio": "^4.14.2",
  131. "webpack": "4.28.4",
  132. "webpack-cli": "^3.2.3",
  133. "webpack-dev-middleware": "^3.6.0",
  134. "webpack-manifest-plugin": "^2.0.4",
  135. "webpack-unassert-loader": "^1.2.0"
  136. },
  137. "dependencies": {
  138. "@google-cloud/storage": "^2.4.2",
  139. "aws-sdk": "^2.406.0",
  140. "body-parser": "^1.18.3",
  141. "choo": "^6.12.1",
  142. "cldr-core": "^34.0.0",
  143. "convict": "^4.4.1",
  144. "express": "^4.16.3",
  145. "express-ws": "github:dannycoates/express-ws",
  146. "fluent": "^0.11.0",
  147. "fluent-langneg": "^0.1.1",
  148. "fxa-geodb": "^1.0.4",
  149. "helmet": "^3.15.1",
  150. "mkdirp": "^0.5.1",
  151. "mozlog": "^2.2.0",
  152. "node-fetch": "^2.3.0",
  153. "raven": "^2.6.4",
  154. "redis": "^2.8.0",
  155. "ua-parser-js": "^0.7.19",
  156. "websocket-stream": "^5.1.2"
  157. },
  158. "availableLanguages": [
  159. "en-US",
  160. "ar",
  161. "ast",
  162. "az",
  163. "bs",
  164. "ca",
  165. "cak",
  166. "cs",
  167. "cy",
  168. "da",
  169. "de",
  170. "dsb",
  171. "el",
  172. "es-AR",
  173. "es-CL",
  174. "es-ES",
  175. "es-MX",
  176. "et",
  177. "fa",
  178. "fr",
  179. "fy-NL",
  180. "hsb",
  181. "hu",
  182. "ia",
  183. "id",
  184. "it",
  185. "ja",
  186. "ka",
  187. "kab",
  188. "ko",
  189. "ms",
  190. "nb-NO",
  191. "nl",
  192. "nn-NO",
  193. "pt-BR",
  194. "pt-PT",
  195. "ro",
  196. "ru",
  197. "sk",
  198. "sl",
  199. "sq",
  200. "sr",
  201. "sv-SE",
  202. "te",
  203. "tl",
  204. "tr",
  205. "uk",
  206. "vi",
  207. "zh-CN",
  208. "zh-TW"
  209. ]
  210. }