diff options
author | Allan Wang <me@allanwang.ca> | 2019-02-05 22:13:41 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-02-05 22:13:41 -0500 |
commit | 330bf2857396b15752afadb030c981a1cb2848fe (patch) | |
tree | ce224b4ce241ccc58af32614052b2a407f3e89c0 /app/src/web/assets/js/document_watcher.ts | |
parent | c484c2728c1688ed695205a420eba3f2b2ba179d (diff) | |
download | frost-330bf2857396b15752afadb030c981a1cb2848fe.tar.gz frost-330bf2857396b15752afadb030c981a1cb2848fe.tar.bz2 frost-330bf2857396b15752afadb030c981a1cb2848fe.zip |
Enhancement/js (#1344)
* Attempt to add package json
* Add initial typescript components
* Convert remaining files
* Remove some null checks
* Reorganize folders
* Add missing js and tests for file paths
* Delete unused babelrc
* Remove unused packages
Diffstat (limited to 'app/src/web/assets/js/document_watcher.ts')
-rw-r--r-- | app/src/web/assets/js/document_watcher.ts | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/app/src/web/assets/js/document_watcher.ts b/app/src/web/assets/js/document_watcher.ts new file mode 100644 index 00000000..e671149c --- /dev/null +++ b/app/src/web/assets/js/document_watcher.ts @@ -0,0 +1,27 @@ +// Emit key once half the viewport is covered +(function () { + const isReady = () => { + return document.body.scrollHeight > innerHeight + 100 + }; + + if (isReady()) { + console.log('Already ready'); + Frost.isReady(); + return + } + + console.log('Injected document watcher'); + + const observer = new MutationObserver(() => { + if (isReady()) { + observer.disconnect(); + Frost.isReady(); + console.log(`Documented surpassed height in ${performance.now()}`); + } + }); + + observer.observe(document, { + childList: true, + subtree: true + }) +}).call(undefined); |