package.json 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. {
  2. "name": "send",
  3. "description": "File Sharing Experiment",
  4. "version": "3.4.23",
  5. "author": "Mozilla (https://mozilla.org)",
  6. "contributors": [
  7. "Tim Visee <3a4fb3964f@sinenomine.email> (https://timvisee.com)"
  8. ],
  9. "repository": "gitlab:timvisee/send",
  10. "homepage": "https://gitlab.com/timvisee/send/",
  11. "license": "MPL-2.0",
  12. "private": true,
  13. "scripts": {
  14. "clean": "rimraf dist",
  15. "build": "npm run clean && webpack",
  16. "lint": "npm-run-all lint:*",
  17. "lint:css": "stylelint app/*.css app/**/*.css",
  18. "lint:js": "eslint .",
  19. "lint-locales": "node scripts/lint-locales",
  20. "lint-locales:dev": "npm run lint-locales",
  21. "lint-locales:prod": "npm run lint-locales -- --production",
  22. "format": "prettier '**/*.js' 'assets/*.css' --single-quote --write",
  23. "get-prod-locales": "node scripts/get-prod-locales",
  24. "get-prod-locales:write": "npm run get-prod-locales -- --write",
  25. "contributors": "git shortlog -s | awk -F\\t '{print $2}' > CONTRIBUTORS",
  26. "release": "npm-run-all contributors changelog",
  27. "test": "npm-run-all test:*",
  28. "test:backend": "nyc --reporter=lcovonly mocha --reporter=min test/backend",
  29. "test:frontend": "cross-env NODE_ENV=development node test/frontend/runner.js",
  30. "test:report": "nyc report --reporter=html",
  31. "test-integration": "cross-env NODE_ENV=development wdio test/wdio.docker.conf.js",
  32. "circleci-test-integration": "echo 'webdriverio tests need to be updated to node 12'",
  33. "start": "npm run clean && cross-env NODE_ENV=development L10N_DEV=true BASE_URL=http://localhost:8080 DETECT_BASE_URL=true webpack-dev-server --mode=development",
  34. "android": "cross-env ANDROID=1 npm start",
  35. "prod": "node server/bin/prod.js"
  36. },
  37. "husky": {
  38. "hooks": {
  39. "pre-commit": "lint-staged",
  40. "pre-push": "npm test"
  41. }
  42. },
  43. "lint-staged": {
  44. "*.js": [
  45. "prettier --single-quote --write",
  46. "eslint",
  47. "git add"
  48. ],
  49. "*.css": [
  50. "prettier --single-quote --write",
  51. "stylelint",
  52. "git add"
  53. ]
  54. },
  55. "nyc": {
  56. "reporter": [
  57. "text"
  58. ],
  59. "cache": true
  60. },
  61. "engines": {
  62. "node": "^16.13.0"
  63. },
  64. "devDependencies": {
  65. "@babel/core": "^7.17.9",
  66. "@babel/plugin-proposal-class-properties": "^7.16.7",
  67. "@babel/plugin-syntax-dynamic-import": "^7.2.0",
  68. "@babel/preset-env": "^7.16.11",
  69. "@dannycoates/webcrypto-liner": "^0.1.37",
  70. "@fullhuman/postcss-purgecss": "^4.1.3",
  71. "@mattiasbuelens/web-streams-polyfill": "0.2.1",
  72. "@sentry/browser": "^5.30.0",
  73. "asmcrypto.js": "^0.22.0",
  74. "babel-loader": "^8.2.4",
  75. "babel-plugin-istanbul": "^5.2.0",
  76. "base64-js": "^1.5.1",
  77. "content-disposition": "^0.5.4",
  78. "copy-webpack-plugin": "^6.4.0",
  79. "core-js": "^3.21.1",
  80. "crc": "^3.8.0",
  81. "cross-env": "^6.0.3",
  82. "css-loader": "^5.2.7",
  83. "css-mqpacker": "^7.0.0",
  84. "cssnano": "^5.1.12",
  85. "eslint": "^6.6.0",
  86. "eslint-config-prettier": "^6.15.0",
  87. "eslint-plugin-mocha": "^6.2.1",
  88. "eslint-plugin-node": "^10.0.0",
  89. "eslint-plugin-security": "^1.4.0",
  90. "expose-loader": "^0.7.5",
  91. "extract-loader": "^3.2.0",
  92. "extract-text-webpack-plugin": "^4.0.0-beta.0",
  93. "fast-text-encoding": "^1.0.3",
  94. "file-loader": "^6.2.0",
  95. "git-rev-sync": "^3.0.2",
  96. "html-loader": "^0.5.5",
  97. "http_ece": "^1.1.0",
  98. "husky": "^3.0.9",
  99. "intl-pluralrules": "^1.3.1",
  100. "lint-staged": "^9.4.2",
  101. "mocha": "^10.1.0",
  102. "morgan": "^1.9.1",
  103. "nanobus": "^4.5.0",
  104. "nanohtml": "^1.9.0",
  105. "nanotiming": "^7.3.1",
  106. "npm-run-all": "^4.1.5",
  107. "nyc": "^14.1.1",
  108. "postcss": "^8.4.14",
  109. "postcss-loader": "^4.2.0",
  110. "postcss-preset-env": "^7.7.2",
  111. "prettier": "^1.19.1",
  112. "proxyquire": "^2.1.3",
  113. "puppeteer": "^2.0.0",
  114. "raw-loader": "^3.1.0",
  115. "rimraf": "^3.0.0",
  116. "script-loader": "^0.7.2",
  117. "sinon": "^7.5.0",
  118. "string-hash": "^1.1.3",
  119. "stylelint": "^14.9.1",
  120. "stylelint-config-standard": "^26.0.0",
  121. "stylelint-no-unsupported-browser-features": "^5.0.3",
  122. "svgo": "^2.8.0",
  123. "svgo-loader": "^3.0.1",
  124. "tailwindcss": "^2",
  125. "val-loader": "^2.1.2",
  126. "webpack": "4.38.0",
  127. "webpack-cli": "^3.3.12",
  128. "webpack-dev-middleware": "^3.7.3",
  129. "webpack-dev-server": "^3.11.3",
  130. "webpack-manifest-plugin": "^2.2.0",
  131. "webpack-unassert-loader": "^1.2.0"
  132. },
  133. "dependencies": {
  134. "@dannycoates/express-ws": "^5.0.3",
  135. "@fluent/bundle": "^0.17.1",
  136. "@fluent/langneg": "^0.6.2",
  137. "@google-cloud/storage": "^6.2.3",
  138. "@sentry/node": "^7.7.0",
  139. "aws-sdk": "^2.1109.0",
  140. "body-parser": "^1.20.0",
  141. "choo": "^7.0.0",
  142. "cldr-core": "^35.1.0",
  143. "configstore": "github:dannycoates/configstore#master",
  144. "convict": "^6.2.4",
  145. "convict-format-with-validator": "^6.2.0",
  146. "double-ended-queue": "^2.1.0-0",
  147. "express": "^4.17.3",
  148. "helmet": "^3.23.3",
  149. "mozlog": "^3.0.1",
  150. "node-fetch": "^2.6.7",
  151. "redis": "^3.1.1",
  152. "redis-mock": "^0.47.0",
  153. "selenium-standalone": "^6.24.0",
  154. "ua-parser-js": "^0.7.31"
  155. },
  156. "availableLanguages": [
  157. "en-US",
  158. "an",
  159. "ar",
  160. "ast",
  161. "azz",
  162. "be",
  163. "bn",
  164. "br",
  165. "ca",
  166. "cak",
  167. "cs",
  168. "cy",
  169. "da",
  170. "de",
  171. "dsb",
  172. "el",
  173. "en-CA",
  174. "en-GB",
  175. "es-AR",
  176. "es-CL",
  177. "es-ES",
  178. "es-MX",
  179. "et",
  180. "eu",
  181. "fa",
  182. "fi",
  183. "fr",
  184. "fy-NL",
  185. "gn",
  186. "he",
  187. "hr",
  188. "hsb",
  189. "hu",
  190. "hus",
  191. "hy-AM",
  192. "ia",
  193. "id",
  194. "it",
  195. "ja",
  196. "ka",
  197. "kab",
  198. "ko",
  199. "lt",
  200. "meh",
  201. "mix",
  202. "ml",
  203. "nb-NO",
  204. "nl",
  205. "nn-NO",
  206. "oc",
  207. "pa-IN",
  208. "pl",
  209. "ppl",
  210. "pt-BR",
  211. "pt-PT",
  212. "quc",
  213. "ro",
  214. "ru",
  215. "sk",
  216. "sl",
  217. "sq",
  218. "sr",
  219. "su",
  220. "sv-SE",
  221. "te",
  222. "th",
  223. "tr",
  224. "uk",
  225. "vi",
  226. "zgh",
  227. "zh-CN",
  228. "zh-TW"
  229. ]
  230. }