drop.chapril.org-firefoxsend/app
Danny Coates 6184a70ba4
fixes #1005
The upstream gcp aggressively closes the connection once it has
received Content-Length bytes. However the @google-cloud/storage
module doesn't handle this well and emits no event in this case.
We were setting Content-Length because it's slightly more
efficient and was important for our download progress
bar (not anymore). The download should function fine without
setting the Content-Length, and allows the storage stream to finish
before closing the upstream socket.
2018-11-14 16:38:46 -08:00
..
pages adjusted selectbox styles 2018-03-27 23:19:07 -07:00
routes disable nanotiming without localstorage (as of 7.3.0) 2018-02-20 16:00:19 -08:00
templates Remove bad role attribute 2018-06-15 10:12:34 -04:00
.eslintrc.yml a few changes to make A/B testing easier 2017-08-25 09:44:52 -07:00
api.js fixes #1005 2018-11-14 16:38:46 -08:00
base.css ignore some lint warnings 2018-03-01 21:36:45 -08:00
dragManager.js ignore some lint warnings 2018-03-01 21:36:45 -08:00
experiments.js exclude fxios from fxPromo banner. fixes #753 2018-02-15 11:49:41 -08:00
fileManager.js render header and footer only once. fixes #788 2018-03-12 10:15:11 -07:00
fileReceiver.js fixes #1005 2018-11-14 16:38:46 -08:00
fileSender.js MS Edge hacks 2018-03-12 12:24:43 -07:00
keychain.js sender no longer needs file nonce 2018-01-31 11:12:36 -08:00
main.css updated preview page 2018-02-21 16:40:52 -08:00
main.js Fix #843: Upload image on paste 2018-06-06 12:39:26 +08:00
metrics.js reinstate the 'exited' metric. fixes #653 2018-01-19 15:07:05 -08:00
ownedFile.js some frontend unit tests 2018-02-24 11:21:48 -08:00
pasteManager.js Add return to prevent multiple uploads 2018-06-07 10:46:55 +08:00
readme.md updated docs 2018-03-07 15:01:08 -08:00
storage.js sender no longer needs file nonce 2018-01-31 11:12:36 -08:00
utils.js fixed cryptofill on edge 2018-03-28 22:03:46 -07:00

Application Code

app/ contains the browser code that gets bundled into app.[hash].js. It's got all the logic, crypto, and UI. All of it gets used in the browser, and some of it by the server for server side rendering.

The main entrypoint for the browser is main.js and on the server routes/index.js gets imported by /server/routes/pages.js

  • pages contains display logic an markup for pages
  • routes contains route definitions and logic
  • templates contains ui elements smaller than pages