pinkmine/src/configs/status-changes.config.ts
2022-07-25 06:44:48 +07:00

26 lines
727 B
TypeScript

import { readFileSync } from 'fs';
import { join } from 'path';
import { StatusChangesConfig } from 'src/models/status-changes-config.model';
import { parse } from 'jsonc-parser';
let statusChanges: StatusChangesConfig.Config;
export default (): StatusChangesConfig.Config => {
if (statusChanges) {
return statusChanges;
}
const userDefinedConfigPath =
process.env['ELTEX_REDMINE_HELPER_STATUS_CHANGES_CONFIG_PATH'];
const defaultConfigPath = join(
'configs',
'redmine-status-changes-config.jsonc',
);
const configPath = userDefinedConfigPath || defaultConfigPath;
const rawData = readFileSync(configPath, { encoding: 'utf-8' });
statusChanges = parse(rawData);
return statusChanges;
};