2022-04-29 11:21:51 -04:00
|
|
|
require('dotenv').config();
|
2022-04-29 12:30:40 -04:00
|
|
|
require('./lib/Systray.js')
|
2022-04-29 11:21:51 -04:00
|
|
|
const sd = require('./lib/Deck');
|
|
|
|
const web = require('./webserver/WebServer');
|
|
|
|
const cm = require('./lib/ConfigManager');
|
|
|
|
const pl = require('./lib/PluginLoader');
|
|
|
|
|
|
|
|
const EventEmitter = require('events');
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Extend the default EventEmitter to have the ability to return an object.
|
|
|
|
* Normal normal events work as expected
|
|
|
|
* https://stackoverflow.com/questions/42802931/node-js-how-can-i-return-a-value-from-an-event-listener
|
|
|
|
*/
|
|
|
|
class EventObjectEmitter extends EventEmitter {
|
|
|
|
emitObject(event, obj = {}){
|
|
|
|
this.emit(event, obj);
|
|
|
|
return obj;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
global.eventBus = new EventObjectEmitter();
|
|
|
|
|
|
|
|
console.log("Staring")
|
|
|
|
|
|
|
|
sd.init();
|
|
|
|
web.init();
|
|
|
|
|
|
|
|
global.pluginloader = new pl();
|
|
|
|
pluginloader.loadFromFolder();
|
|
|
|
|
|
|
|
//config last to be loaded
|
2022-07-18 17:16:27 -04:00
|
|
|
//It fires off the config_ready event that signals the app is ready
|
2022-04-29 11:21:51 -04:00
|
|
|
cm.init();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
console.log("Ready!")
|