@virtualstate/union
Version:
Concurrent union
22 lines • 793 B
JavaScript
export const DefaultUnionTask = Symbol.for("@virtualstate/union/DefaultTask");
export function defaultTask(fn) {
if (typeof window !== "undefined" && typeof window[DefaultUnionTask] === "function") {
window[DefaultUnionTask](fn);
}
else if (typeof global !== "undefined" && typeof global[DefaultUnionTask] === "function") {
global[DefaultUnionTask](fn);
}
else if (typeof globalThis !== "undefined" && typeof globalThis[DefaultUnionTask] === "function") {
globalThis[DefaultUnionTask](fn);
}
else if (typeof queueMicrotask === "function") {
queueMicrotask(fn);
}
else if (typeof setImmediate === "function") {
setImmediate(fn);
}
else {
setTimeout(fn, 0);
}
}
//# sourceMappingURL=microtask.js.map