1.0.0 • Published 4 years ago

wakelock-lazy-polyfill v1.0.0

Weekly downloads
2
License
ISC
Repository
github
Last release
4 years ago

wakelock-lazy-polyfill

npm i wakelock-lazy-polyfill

Polyfills WakeLock if not present by lazy-loading nosleep.js (but only when actually requested).

That means if it's natively supported this lib only adds ~800 bytes to your project.

Can also drop it in via CDN:

<script src="http://unpkg.com/wakelock-lazy-polyfill"></script>

Test site

https://wakelock-polyfill.joreteg.com/

Background

The Web is getting a wonderful WakeLock API to keep your screen awake, but it's not broadly available yet. As of this writing it's a Origin Trial in Chrome that should ship in the next version.

Regardless, there's been a clever hack, called nosleep.js that plays a hidden video in the background to trick the browser into staying awake. This works pretty well, but...

  1. I want to use native version if available
  2. I only want to load the polyfill at the point where it's going to be used

So, here we are.

License

MIT

Credits

Obviously props to @richtr for nosleep.js and Thomas Steiner for his work on making the WakeLock API "A Thing".

If you like this, follow @HenrikJoreteg on twitter.

1.0.0

4 years ago