@xtcry/bull-arena
Version:
An interactive UI dashboard for Bee/Bull Queue
34 lines (33 loc) • 1.27 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const express = require("express");
const bodyParser = require("body-parser");
const handlebars = require("handlebars");
const exphbs = require("express-handlebars");
const queue_1 = require("../arena/queue");
const flow_1 = require("../arena/flow");
const handlebars_1 = require("./helpers/handlebars");
exports.default = (config) => {
const hbs = exphbs.create({
defaultLayout: `${__dirname}/../../views/layout`,
handlebars,
partialsDir: `${__dirname}/../../views/partials/`,
extname: 'hbs',
});
const app = express();
const queues = new queue_1.default(config);
const flows = new flow_1.default(config);
handlebars_1.default(handlebars, { queues });
app.locals.Queues = queues;
app.locals.Flows = flows;
app.locals.appBasePath = '';
app.locals.vendorPath = '/vendor';
app.locals.customCssPath = config.customCssPath;
app.locals.customJsPath = config.customJsPath;
app.set('views', `${__dirname}/../../views`);
app.set('view engine', 'hbs');
app.set('json spaces', 2);
app.engine('hbs', hbs.engine);
app.use(bodyParser.json());
return { app, queues };
};