* test(e2e): de-flake service-worker
* feat: rm stale cache storage
* fix: put not del
* fix: staging and test
* test: include staging
* fix: log
* test: rm console.log
* fix: unregister before
* test: deflake by restoring state afterwards
* build: extend cypress tsconfig from build tsconfig
* build: exclude node_modules from watch to improve typechecking perf
* fix: even tighter tsconfigs
* fix: even tighter
* fix: tailor cypress tsconfig to testing
* fix: split them up again
* fix: pr comments
* fix: always-fresh service worker cache
* chore: clarify service-worker
* fix: cache in CacheStorage
* feat: set __isDocumentCached
* add back in manifest precaching
* add unit tests (incomplete)
* test: simplify test env
* test: add service-worker cypress test
* test: service-worker document handler
* fix: CachedDocument ctor
* fix: Readable for ReadableStream in jest
* build: clean up module loading
* fix: rename commands->ethereum
* build: simplify package.json deps
* build: clean up cypress usage
* build: clean up yarn.lock
* build: record cypress runs
* build: disable chromeWebSecurity in cypress tests
* build: rm babel
* build: disable sw in ci cypress
* build: nits
* build: update workbox version
* chore: fix merge
* test: cache
* test: cypress-ify the before hook
* test: clear sw before each test
* fix: cy then
* test: cypress shenanigans
* style: lint
* chore: rm todo
* test: fail fast for service worker with dev builds
* docs: update contributing to tests
* fix: clean up tests after merge
- Add fast fail in case of dev server, which lacks ServiceWorker
* fix: inject ethereum
* test: service worker
* test: increase sw timeout
* test: sw state
* test: run cypress in chrome
* feat: add on-demand caching to improve sw startup time
* test: test dynamically
* fix: simplify cached doc
* fix: optional sw
* fix: expose response on cached doc
* fix: stub out sw req
* fix: intercept
Co-authored-by: Christine Legge <christine.legge@uniswap.org>