470 lines
9.7 KiB
JavaScript
470 lines
9.7 KiB
JavaScript
module.exports = (function() {
|
|
var __MODS__ = {};
|
|
var __DEFINE__ = function(modId, func, req) { var m = { exports: {}, _tempexports: {} }; __MODS__[modId] = { status: 0, func: func, req: req, m: m }; };
|
|
var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; };
|
|
var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } };
|
|
var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; };
|
|
__DEFINE__(1656641689790, function(require, module, exports) {
|
|
|
|
|
|
if (process.env.NODE_ENV === "production") {
|
|
module.exports = require("./react-spring-rafz.cjs.prod.js");
|
|
} else {
|
|
module.exports = require("./react-spring-rafz.cjs.dev.js");
|
|
}
|
|
|
|
}, function(modId) {var map = {"./react-spring-rafz.cjs.prod.js":1656641689791,"./react-spring-rafz.cjs.dev.js":1656641689792}; return __REQUIRE__(map[modId], modId); })
|
|
__DEFINE__(1656641689791, function(require, module, exports) {
|
|
|
|
|
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
|
let updateQueue = makeQueue();
|
|
const raf = fn => schedule(fn, updateQueue);
|
|
let writeQueue = makeQueue();
|
|
|
|
raf.write = fn => schedule(fn, writeQueue);
|
|
|
|
let onStartQueue = makeQueue();
|
|
|
|
raf.onStart = fn => schedule(fn, onStartQueue);
|
|
|
|
let onFrameQueue = makeQueue();
|
|
|
|
raf.onFrame = fn => schedule(fn, onFrameQueue);
|
|
|
|
let onFinishQueue = makeQueue();
|
|
|
|
raf.onFinish = fn => schedule(fn, onFinishQueue);
|
|
|
|
let timeouts = [];
|
|
|
|
raf.setTimeout = (handler, ms) => {
|
|
let time = raf.now() + ms;
|
|
|
|
let cancel = () => {
|
|
let i = timeouts.findIndex(t => t.cancel == cancel);
|
|
if (~i) timeouts.splice(i, 1);
|
|
pendingCount -= ~i ? 1 : 0;
|
|
};
|
|
|
|
let timeout = {
|
|
time,
|
|
handler,
|
|
cancel
|
|
};
|
|
timeouts.splice(findTimeout(time), 0, timeout);
|
|
pendingCount += 1;
|
|
start();
|
|
return timeout;
|
|
};
|
|
|
|
let findTimeout = time => ~(~timeouts.findIndex(t => t.time > time) || ~timeouts.length);
|
|
|
|
raf.cancel = fn => {
|
|
onStartQueue.delete(fn);
|
|
onFrameQueue.delete(fn);
|
|
updateQueue.delete(fn);
|
|
writeQueue.delete(fn);
|
|
onFinishQueue.delete(fn);
|
|
};
|
|
|
|
raf.sync = fn => {
|
|
sync = true;
|
|
raf.batchedUpdates(fn);
|
|
sync = false;
|
|
};
|
|
|
|
raf.throttle = fn => {
|
|
let lastArgs;
|
|
|
|
function queuedFn() {
|
|
try {
|
|
fn(...lastArgs);
|
|
} finally {
|
|
lastArgs = null;
|
|
}
|
|
}
|
|
|
|
function throttled(...args) {
|
|
lastArgs = args;
|
|
raf.onStart(queuedFn);
|
|
}
|
|
|
|
throttled.handler = fn;
|
|
|
|
throttled.cancel = () => {
|
|
onStartQueue.delete(queuedFn);
|
|
lastArgs = null;
|
|
};
|
|
|
|
return throttled;
|
|
};
|
|
|
|
let nativeRaf = typeof window != 'undefined' ? window.requestAnimationFrame : () => {};
|
|
|
|
raf.use = impl => nativeRaf = impl;
|
|
|
|
raf.now = typeof performance != 'undefined' ? () => performance.now() : Date.now;
|
|
|
|
raf.batchedUpdates = fn => fn();
|
|
|
|
raf.catch = console.error;
|
|
raf.frameLoop = 'always';
|
|
|
|
raf.advance = () => {
|
|
if (raf.frameLoop !== 'demand') {
|
|
console.warn('Cannot call the manual advancement of rafz whilst frameLoop is not set as demand');
|
|
} else {
|
|
update();
|
|
}
|
|
};
|
|
|
|
let ts = -1;
|
|
let pendingCount = 0;
|
|
let sync = false;
|
|
|
|
function schedule(fn, queue) {
|
|
if (sync) {
|
|
queue.delete(fn);
|
|
fn(0);
|
|
} else {
|
|
queue.add(fn);
|
|
start();
|
|
}
|
|
}
|
|
|
|
function start() {
|
|
if (ts < 0) {
|
|
ts = 0;
|
|
|
|
if (raf.frameLoop !== 'demand') {
|
|
nativeRaf(loop);
|
|
}
|
|
}
|
|
}
|
|
|
|
function stop() {
|
|
ts = -1;
|
|
}
|
|
|
|
function loop() {
|
|
if (~ts) {
|
|
nativeRaf(loop);
|
|
raf.batchedUpdates(update);
|
|
}
|
|
}
|
|
|
|
function update() {
|
|
let prevTs = ts;
|
|
ts = raf.now();
|
|
let count = findTimeout(ts);
|
|
|
|
if (count) {
|
|
eachSafely(timeouts.splice(0, count), t => t.handler());
|
|
pendingCount -= count;
|
|
}
|
|
|
|
onStartQueue.flush();
|
|
updateQueue.flush(prevTs ? Math.min(64, ts - prevTs) : 16.667);
|
|
onFrameQueue.flush();
|
|
writeQueue.flush();
|
|
onFinishQueue.flush();
|
|
|
|
if (!pendingCount) {
|
|
stop();
|
|
}
|
|
}
|
|
|
|
function makeQueue() {
|
|
let next = new Set();
|
|
let current = next;
|
|
return {
|
|
add(fn) {
|
|
pendingCount += current == next && !next.has(fn) ? 1 : 0;
|
|
next.add(fn);
|
|
},
|
|
|
|
delete(fn) {
|
|
pendingCount -= current == next && next.has(fn) ? 1 : 0;
|
|
return next.delete(fn);
|
|
},
|
|
|
|
flush(arg) {
|
|
if (current.size) {
|
|
next = new Set();
|
|
pendingCount -= current.size;
|
|
eachSafely(current, fn => fn(arg) && next.add(fn));
|
|
pendingCount += next.size;
|
|
current = next;
|
|
}
|
|
}
|
|
|
|
};
|
|
}
|
|
|
|
function eachSafely(values, each) {
|
|
values.forEach(value => {
|
|
try {
|
|
each(value);
|
|
} catch (e) {
|
|
raf.catch(e);
|
|
}
|
|
});
|
|
}
|
|
|
|
const __raf = {
|
|
count() {
|
|
return pendingCount;
|
|
},
|
|
|
|
isRunning() {
|
|
return ts >= 0;
|
|
},
|
|
|
|
clear() {
|
|
ts = -1;
|
|
timeouts = [];
|
|
onStartQueue = makeQueue();
|
|
updateQueue = makeQueue();
|
|
onFrameQueue = makeQueue();
|
|
writeQueue = makeQueue();
|
|
onFinishQueue = makeQueue();
|
|
pendingCount = 0;
|
|
}
|
|
|
|
};
|
|
|
|
exports.__raf = __raf;
|
|
exports.raf = raf;
|
|
|
|
}, function(modId) { var map = {}; return __REQUIRE__(map[modId], modId); })
|
|
__DEFINE__(1656641689792, function(require, module, exports) {
|
|
|
|
|
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
|
let updateQueue = makeQueue();
|
|
const raf = fn => schedule(fn, updateQueue);
|
|
let writeQueue = makeQueue();
|
|
|
|
raf.write = fn => schedule(fn, writeQueue);
|
|
|
|
let onStartQueue = makeQueue();
|
|
|
|
raf.onStart = fn => schedule(fn, onStartQueue);
|
|
|
|
let onFrameQueue = makeQueue();
|
|
|
|
raf.onFrame = fn => schedule(fn, onFrameQueue);
|
|
|
|
let onFinishQueue = makeQueue();
|
|
|
|
raf.onFinish = fn => schedule(fn, onFinishQueue);
|
|
|
|
let timeouts = [];
|
|
|
|
raf.setTimeout = (handler, ms) => {
|
|
let time = raf.now() + ms;
|
|
|
|
let cancel = () => {
|
|
let i = timeouts.findIndex(t => t.cancel == cancel);
|
|
if (~i) timeouts.splice(i, 1);
|
|
pendingCount -= ~i ? 1 : 0;
|
|
};
|
|
|
|
let timeout = {
|
|
time,
|
|
handler,
|
|
cancel
|
|
};
|
|
timeouts.splice(findTimeout(time), 0, timeout);
|
|
pendingCount += 1;
|
|
start();
|
|
return timeout;
|
|
};
|
|
|
|
let findTimeout = time => ~(~timeouts.findIndex(t => t.time > time) || ~timeouts.length);
|
|
|
|
raf.cancel = fn => {
|
|
onStartQueue.delete(fn);
|
|
onFrameQueue.delete(fn);
|
|
updateQueue.delete(fn);
|
|
writeQueue.delete(fn);
|
|
onFinishQueue.delete(fn);
|
|
};
|
|
|
|
raf.sync = fn => {
|
|
sync = true;
|
|
raf.batchedUpdates(fn);
|
|
sync = false;
|
|
};
|
|
|
|
raf.throttle = fn => {
|
|
let lastArgs;
|
|
|
|
function queuedFn() {
|
|
try {
|
|
fn(...lastArgs);
|
|
} finally {
|
|
lastArgs = null;
|
|
}
|
|
}
|
|
|
|
function throttled(...args) {
|
|
lastArgs = args;
|
|
raf.onStart(queuedFn);
|
|
}
|
|
|
|
throttled.handler = fn;
|
|
|
|
throttled.cancel = () => {
|
|
onStartQueue.delete(queuedFn);
|
|
lastArgs = null;
|
|
};
|
|
|
|
return throttled;
|
|
};
|
|
|
|
let nativeRaf = typeof window != 'undefined' ? window.requestAnimationFrame : () => {};
|
|
|
|
raf.use = impl => nativeRaf = impl;
|
|
|
|
raf.now = typeof performance != 'undefined' ? () => performance.now() : Date.now;
|
|
|
|
raf.batchedUpdates = fn => fn();
|
|
|
|
raf.catch = console.error;
|
|
raf.frameLoop = 'always';
|
|
|
|
raf.advance = () => {
|
|
if (raf.frameLoop !== 'demand') {
|
|
console.warn('Cannot call the manual advancement of rafz whilst frameLoop is not set as demand');
|
|
} else {
|
|
update();
|
|
}
|
|
};
|
|
|
|
let ts = -1;
|
|
let pendingCount = 0;
|
|
let sync = false;
|
|
|
|
function schedule(fn, queue) {
|
|
if (sync) {
|
|
queue.delete(fn);
|
|
fn(0);
|
|
} else {
|
|
queue.add(fn);
|
|
start();
|
|
}
|
|
}
|
|
|
|
function start() {
|
|
if (ts < 0) {
|
|
ts = 0;
|
|
|
|
if (raf.frameLoop !== 'demand') {
|
|
nativeRaf(loop);
|
|
}
|
|
}
|
|
}
|
|
|
|
function stop() {
|
|
ts = -1;
|
|
}
|
|
|
|
function loop() {
|
|
if (~ts) {
|
|
nativeRaf(loop);
|
|
raf.batchedUpdates(update);
|
|
}
|
|
}
|
|
|
|
function update() {
|
|
let prevTs = ts;
|
|
ts = raf.now();
|
|
let count = findTimeout(ts);
|
|
|
|
if (count) {
|
|
eachSafely(timeouts.splice(0, count), t => t.handler());
|
|
pendingCount -= count;
|
|
}
|
|
|
|
onStartQueue.flush();
|
|
updateQueue.flush(prevTs ? Math.min(64, ts - prevTs) : 16.667);
|
|
onFrameQueue.flush();
|
|
writeQueue.flush();
|
|
onFinishQueue.flush();
|
|
|
|
if (!pendingCount) {
|
|
stop();
|
|
}
|
|
}
|
|
|
|
function makeQueue() {
|
|
let next = new Set();
|
|
let current = next;
|
|
return {
|
|
add(fn) {
|
|
pendingCount += current == next && !next.has(fn) ? 1 : 0;
|
|
next.add(fn);
|
|
},
|
|
|
|
delete(fn) {
|
|
pendingCount -= current == next && next.has(fn) ? 1 : 0;
|
|
return next.delete(fn);
|
|
},
|
|
|
|
flush(arg) {
|
|
if (current.size) {
|
|
next = new Set();
|
|
pendingCount -= current.size;
|
|
eachSafely(current, fn => fn(arg) && next.add(fn));
|
|
pendingCount += next.size;
|
|
current = next;
|
|
}
|
|
}
|
|
|
|
};
|
|
}
|
|
|
|
function eachSafely(values, each) {
|
|
values.forEach(value => {
|
|
try {
|
|
each(value);
|
|
} catch (e) {
|
|
raf.catch(e);
|
|
}
|
|
});
|
|
}
|
|
|
|
const __raf = {
|
|
count() {
|
|
return pendingCount;
|
|
},
|
|
|
|
isRunning() {
|
|
return ts >= 0;
|
|
},
|
|
|
|
clear() {
|
|
ts = -1;
|
|
timeouts = [];
|
|
onStartQueue = makeQueue();
|
|
updateQueue = makeQueue();
|
|
onFrameQueue = makeQueue();
|
|
writeQueue = makeQueue();
|
|
onFinishQueue = makeQueue();
|
|
pendingCount = 0;
|
|
}
|
|
|
|
};
|
|
|
|
exports.__raf = __raf;
|
|
exports.raf = raf;
|
|
|
|
}, function(modId) { var map = {}; return __REQUIRE__(map[modId], modId); })
|
|
return __REQUIRE__(1656641689790);
|
|
})()
|
|
//miniprogram-npm-outsideDeps=[]
|
|
//# sourceMappingURL=index.js.map
|