mirror of https://github.com/vizality/vizality
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.2 KiB
38 lines
1.2 KiB
// Perform checks
|
|
require('./env_check')();
|
|
|
|
const { promises: { writeFile } } = require('fs');
|
|
const { resolve } = require('path');
|
|
const main = require('./main.js');
|
|
|
|
let platformModule;
|
|
try {
|
|
platformModule = require(`./${process.platform}.js`);
|
|
} catch (err) {
|
|
if (err.code === 'MODULE_NOT_FOUND') {
|
|
console.log(`\x1b[1m\x1b[31mERROR: \x1b[0mUnsupported platform '${process.platform}'`);
|
|
process.exit(1);
|
|
}
|
|
}
|
|
|
|
(async () => {
|
|
if (process.argv[2] === 'inject') {
|
|
if (await main.inject(platformModule)) {
|
|
// To have it show the dashboard on startup for new users
|
|
await writeFile(
|
|
resolve(__dirname, '..', '__injected.txt'),
|
|
'Vizality successfully injected.'
|
|
);
|
|
|
|
console.log('\x1b[32mSUCCESS: \x1b[0mVizality has been injected!');
|
|
}
|
|
} else if (process.argv[2] === 'uninject') {
|
|
if (await main.uninject(platformModule)) {
|
|
console.log('\x1b[32mSUCCESS: \x1b[0mVizality has been uninjected.');
|
|
}
|
|
} else {
|
|
console.log(`\x1b[1m\x1b[31mERROR: \x1b[0mUnsupported argument '${process.argv[2]}'`);
|
|
process.exit(1);
|
|
}
|
|
})().catch(e => console.error('\x1b[1m\x1b[31mERROR: \x1b[0mHmm, something seems to have gone wrong...', e));
|