pw-js-api
Version:
A PixelWalker Library, aims to be minimal with support for browsers.
18 lines • 1.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.customSetTimeout = customSetTimeout;
const tslib_1 = require("tslib");
const worker_timers_1 = require("worker-timers");
const jsEnv = tslib_1.__importStar(require("browser-or-node"));
function customSetTimeout(callback, ms) {
if (jsEnv.isBrowser) {
// setTimeout in browsers timeout for longer, when the tab is inactive due to throttling.
// However, running timeout in web worker avoids an inactive tab throttling problem, because timeouts in web worker are not throttled.
return (0, worker_timers_1.setTimeout)(callback, ms);
}
else {
// Other environments may not support web workers
return setTimeout(callback, ms);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZW91dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi91dGlsL1RpbWVvdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSw0Q0FTQzs7QUFaRCxpREFBK0Q7QUFDL0QsK0RBQXlDO0FBRXpDLFNBQWdCLGdCQUFnQixDQUFDLFFBQW9CLEVBQUUsRUFBVTtJQUM3RCxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQix5RkFBeUY7UUFDekYsc0lBQXNJO1FBQ3RJLE9BQU8sSUFBQSwwQkFBZ0IsRUFBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztTQUFNLENBQUM7UUFDSixpREFBaUQ7UUFDakQsT0FBTyxVQUFVLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7QUFDTCxDQUFDIn0=