Files
LupiNex-Connect/configuration/mapping.js
T
2026-06-29 20:14:06 +02:00

57 lines
1.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
! /configuration/mapping.js Central Mapping Configuration
? This module maps system directories, and required dependencies for the ecosystem
*/
// % import nodejs packages
const path = require('path');
const fs = require('fs');
require('dotenv').config({ path: path.resolve(__dirname, '.env') });
// % declare directories
const rootDir = path.resolve(__dirname, '..');
const serverDir = path.resolve(rootDir, 'servers');
const dirs = {
rootDir: rootDir,
// § server directories
serverDir: serverDir,
gatewayDir: path.resolve(serverDir, 'gateway'),
dashboardDir: path.resolve(serverDir, 'dashboard'),
websocketDir: path.resolve(serverDir, 'websocket'),
// § data structure directories
configDir: path.resolve(rootDir, 'configuration'),
dataDir: path.resolve(rootDir, 'database'),
// § other directories
serviceDir: path.resolve(rootDir, 'services'),
interfaceDir: path.resolve(rootDir, 'ui')
};
// % declare database information
const databaseData = {
host: process.env.INTERNAL_DATABASE_HOST,
port: process.env.INTERNAL_DATABASE_PORT,
users: {
readonly: {
user: process.env.DATABASE_READONLY_USER,
pass: process.env.DATABASE_READONLY_PASS
}
},
databases: {
}
}
// $ parse all configuration files
const configFiles = fs.readdirSync(dirs.configDir).filter(file =>
/\.config\.(js|json|ya?ml)$/.test(file)
);
// § export module
module.exports = {
dirs,
configFiles,
databaseData
};