31 lines
1.4 KiB
JavaScript
31 lines
1.4 KiB
JavaScript
const path = require('path');
|
|
|
|
function createWebConfig() {
|
|
const mediaDir = path.join(__dirname, '..', '..', '..', 'media');
|
|
const uploadsDir = path.join(mediaDir, 'uploads');
|
|
const thumbnailsDir = path.join(mediaDir, 'thumbnails');
|
|
const assetDir = path.join(__dirname, '..', 'public');
|
|
const playerInternalUrl = (process.env.PLAYER_INTERNAL_URL || process.env.PLAYER_BASE_URL || 'http://player:8081').replace(/\/$/, '');
|
|
const bridgeInternalUrl = (process.env.BRIDGE_INTERNAL_URL || 'http://player-bridge:8090').replace(/\/$/, '');
|
|
const webInternalUrl = (process.env.WEB_INTERNAL_URL || `http://127.0.0.1:${Number(process.env.WEB_PORT || 8080)}`).replace(/\/$/, '');
|
|
const sessionCookieName = 'digital_signage_session';
|
|
const sessionMaxAgeMs = 14 * 24 * 60 * 60 * 1000;
|
|
const port = Number(process.env.WEB_PORT || 8080);
|
|
const dataSourceStartupRefreshStaggerMs = Math.max(100, Number(process.env.DATA_SOURCE_STARTUP_REFRESH_STAGGER_MS || 250));
|
|
|
|
return {
|
|
port: port,
|
|
mediaDir: mediaDir,
|
|
uploadsDir: uploadsDir,
|
|
thumbnailsDir: thumbnailsDir,
|
|
assetDir: assetDir,
|
|
playerInternalUrl: playerInternalUrl,
|
|
bridgeInternalUrl: bridgeInternalUrl,
|
|
webInternalUrl: webInternalUrl,
|
|
sessionCookieName: sessionCookieName,
|
|
sessionMaxAgeMs: sessionMaxAgeMs,
|
|
dataSourceStartupRefreshStaggerMs: dataSourceStartupRefreshStaggerMs
|
|
};
|
|
}
|
|
|
|
module.exports = { createWebConfig }; |