36 lines
771 B
JavaScript
36 lines
771 B
JavaScript
require('dotenv').config();
|
|
|
|
const path = require('path');
|
|
|
|
const express = require('express');
|
|
const log = require('loglevel');
|
|
|
|
const dataLoaders = require('./lib/dataLoaders');
|
|
|
|
if (process.env.LOG != undefined) {
|
|
log.setLevel(process.env.LOG);
|
|
}
|
|
|
|
const widgetData = { };
|
|
|
|
const app = express();
|
|
|
|
app.get("/api/data", function(req, res) {
|
|
res.json(widgetData);
|
|
});
|
|
|
|
app.use("/", express.static(path.join(__dirname, "page")));
|
|
|
|
app.listen(process.env.PORT, process.env.ADDRESS, () => {
|
|
log.info(`Server is listening on ${process.env.ADDRESS}:${process.env.PORT}`);
|
|
});
|
|
|
|
for(let id in dataLoaders) {
|
|
dataLoaders[id].on("data", data => {
|
|
widgetData[id] = data;
|
|
});
|
|
|
|
widgetData[id] = dataLoaders[id].initial;
|
|
|
|
dataLoaders[id].start();
|
|
} |