idle-until-urgent

1.0.0 • Public • Published

idle-until-urgent

Fetch resources lazily - either whenever the browser is next idle, or when you request the resource.

In a browser that doesn't have requestIdleTimeout, or in node.js, falls back to setTimeout(fn, 1000).

Inspired directly by this 💯 post by Philip Walton, but uses a function-based API instead of classes. It's also about a third the size of idlize/defineIdleProperty.mjs (after minification) by avoiding classes and using the dumbest possible requestIdleTimeout fallback.

Install

npm i idle-until-urgent
const makeIdleGetter = require('idle-until-urgent')

Usage

const getFormatter = makeIdleGetter(() => new Intl.DateTimeFormat('en-US', {
    timeZone: 'America/Los_Angeles',
}))
 
// later in your code, presumably not during the first tick...
 
getFormatter().format(new Date(1537452915210)) // => '9/20/2018'
 

License

WTFPL

Dependencies (0)

    Dev Dependencies (7)

    Package Sidebar

    Install

    npm i idle-until-urgent

    Weekly Downloads

    87

    Version

    1.0.0

    License

    WTFPL

    Unpacked Size

    3.53 kB

    Total Files

    6

    Last publish

    Collaborators

    • tehshrike