@nguyenmv2/buy-button
Version:
BuyButton.js allows merchants to build Shopify interfaces into any website
35 lines (31 loc) • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var frameUtils = {};
var lastTime = 0;
var vendors = ['ms', 'moz', 'webkit', 'o'];
if (window.requestAnimationFrame && window.cancelAnimationFrame) {
frameUtils.requestAnimationFrame = window.requestAnimationFrame;
frameUtils.cancelAnimationFrame = window.cancelAnimationFrame;
} else {
for (var x = 0; x < vendors.length && !frameUtils.requestAnimationFrame; ++x) {
frameUtils.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];
frameUtils.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];
}
if (!frameUtils.requestAnimationFrame) frameUtils.requestAnimationFrame = function (callback, element) {
var currTime = new Date().getTime();
var timeToCall = Math.max(0, 16 - (currTime - lastTime));
var id = window.setTimeout(function () {
callback(currTime + timeToCall);
}, timeToCall);
lastTime = currTime + timeToCall;
return id;
};
if (!frameUtils.cancelAnimationFrame) frameUtils.cancelAnimationFrame = function (id) {
clearTimeout(id);
};
}
var _default = frameUtils;
exports.default = _default;