* chore(npm): Install blurhash
* feat(media): Show blurhash
* fix(media/blurhash): Better sensitive video handling
* feat(media): Preference for using blurhash
* chore(utils/blurhash): Add performance marks
* fix(utils/blurhash): Performance marks
* fix(utils/blurhash): Use correct dimension
* refactor(utils/blurhash): Use constant for number of pixels
* refactor(media): Simplify logic for displaying blurhash
* chore(tests/spec): Attempt to adjust sensitivity tests for blurhash
* chore(tests/spec): Update sensitivity tests for blurhash
* chore(tests/spec): Check for sensitive
* fix(media/blurhash): Handle videos
* fix: Video handling
* fix: Videos
* minor refactoring, fix Svelte warning
* fix: Large inline images and videos
* feat(settings): Rename blurhash setting
* refactor: Use toBlob, block media rendering until blurhash ready
* refactor: Move computations to Web Worker
* fix(workers/blurhash): More error handling
* feat(workers/blurhash): Use quick-lru for caching
* fix: Don't create Context2D needlessly
* fix(workers/blurhash): Increase cache size to 100
* fix(workers/blurhash): Don't resolve promise twice
* fix(utils/decode-image): Ignore data URLs
Throws exception which prevents the image from loading.
* feat: add option to disable infinite scroll
fixes#391 and fixes#270. Also makes me less nervous about #1251 because now keyboard users can disable infinite load and easily access the "reload" button in the snackbar footer.
* fix test
* fix: update to latest sapper
fixes#416
* fix error and debug pages
* requestIdleCallback makes column switching feel way nicer than double rAF
* add export feature
* add better csp info
* workaround for sapper sub-page issue
* clarify in readme about exporting
* fix now config
* switch from rIC to triple raf
* style-loader is no longer used
* update theming guide