UNPKG

@opengis/fastify-table

Version:

core-plugins

31 lines (22 loc) 1.16 kB
// import dotenv from 'dotenv'; import { existsSync, readFileSync } from 'node:fs'; import unflattenObject from './server/plugins/util/funcs/unflattenObject.js'; const fileName = ['config.json', '/data/local/config.json'].find(el => (existsSync(el) ? el : null)); const config = fileName ? JSON.parse(readFileSync(fileName)) : {}; const { skipKeys = ['windir'] } = config; // npm run dev === cross-env NODE_ENV=development // alt: node --env=development Object.assign(config, { storageList: {}, allTemplates: config?.allTemplates || {}, skipCheckPolicyRoutes: [], env: process.env?.NODE_ENV, }); function loadEnvConfig() { // node --env-file-if-exists=.env.dev --env-file-if-exists=.env server if (config.trace) { console.log(Object.keys(process.env)); } const configKeys = Object.keys(process.env).filter(key => !key.startsWith('npm_') && !skipKeys.includes(key) && (key.charAt(0) === key.charAt(0)?.toLowerCase?.() || key.includes('.'))).reduce((acc, curr) => ({ ...acc, [curr]: process.env[curr] }), {}); Object.assign(config, unflattenObject(configKeys)); } loadEnvConfig(); export default config;