if (process.platform !== `win32`) { throw `node-simconnect: The only supported platform is Windows (win32). Found: ${process.platform}`; } let nodeSimconnect = undefined; try { const TEXT_COLOR = '\x1b[30m\x1b[44m%s\x1b[0m'; // Try loading manual build first try { nodeSimconnect = require(`./build/Release/node_simconnect`); console.info(TEXT_COLOR, `node-simconnect: Local Debug build loaded`); } catch { nodeSimconnect = require(`./build/Debug/node_simconnect`); console.info(TEXT_COLOR, `node-simconnect: Local Release build loaded`); } } catch (ex) { // If it fails, load the included binary console.info(`node-simconnect: Failed to load manual build (${ex.code})`); console.info(`node-simconnect: Loading pre-built binary`); if (process.arch === `x64`) { throw `node-simconnect: The pre-built binary only works with the 32-bit version of Node.js`; } nodeSimconnect = require(`./bin/win_ia32/node_simconnect`); console.info(`node-simconnect: Pre-built binary loaded`); } module.exports = { SimConnect: nodeSimconnect.SimConnect, ...require("./src/generated/constants") };