UNPKG

nope-js-node

Version:

NoPE Runtime for Nodejs. For Browser-Support please use nope-browser

57 lines (56 loc) 1.87 kB
"use strict"; /** * @author Martin Karkowski * @email m.karkowski@zema.de * @desc [description] */ Object.defineProperty(exports, "__esModule", { value: true }); exports.RUNNINGINOSX = exports.RUNNINGINLINUX = exports.RUNNINGINWINDOWS = exports.RUNNINGINNODE = exports.callDirect = exports.callImmediate = void 0; const _runningInNode = typeof process !== "undefined" && typeof process.release !== "undefined" && process.release.name === "node"; /** * Function to call a function something direct async */ exports.callImmediate = _runningInNode ? (callback, ...args) => { // return setTimeout(callback, 0, ...args); const trace = new Error("Error for Bugtracing"); return setImmediate(() => { try { callback(...args); } catch (error) { console.error(error); console.log("Trancing Bug with the Following Error"); console.error(trace); } }); } : (callback, ...args) => { const trace = new Error("Error for Bugtracing"); return setTimeout(() => { try { callback(...args); } catch (error) { console.error(error); console.log("Trancing Bug with the Following Error"); console.error(trace); } }, 0); }; const callDirect = (callback, ...args) => { callback(...args); }; exports.callDirect = callDirect; exports.RUNNINGINNODE = _runningInNode; exports.RUNNINGINWINDOWS = _runningInNode ? process.platform === "win32" : false; exports.RUNNINGINLINUX = _runningInNode ? process.platform === "linux" : false; exports.RUNNINGINOSX = _runningInNode ? process.platform === "darwin" : false;