UNPKG

@nestjs-mod/common

Version:

A collection of utilities for unifying NestJS applications and modules

55 lines 1.93 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ProcessEnvPropertyValueExtractor = void 0; class ProcessEnvPropertyValueExtractor { constructor() { this.name = 'process.env'; } setDemoMode(active) { if (active) { this.processEnvStorage = {}; } else { this.processEnvStorage = null; } } example({ formattedPropertyName, }) { if (this.processEnvStorage) { return { options: { 'process.env': JSON.stringify({ [formattedPropertyName]: this.processEnvStorage[formattedPropertyName], }), formattedPropertyName, }, logic: `process.env[formattedPropertyName]`, example: `process.env['${formattedPropertyName}']`, }; } return { options: { 'process.env': JSON.stringify({ [formattedPropertyName]: process.env[formattedPropertyName], }), formattedPropertyName, }, logic: `process.env[formattedPropertyName]`, example: `process.env['${formattedPropertyName}']`, }; } extract({ formattedPropertyName, }) { if (this.processEnvStorage) { return this.processEnvStorage[formattedPropertyName]; } const keys = Object.keys(process.env); let value = process.env[formattedPropertyName]; if (value !== undefined) { for (const key of keys) { value = String(value).replace(new RegExp(`%${key}%`, 'ig'), process.env[key] || ''); } } return value; } } exports.ProcessEnvPropertyValueExtractor = ProcessEnvPropertyValueExtractor; //# sourceMappingURL=process-env-property-value.extractor.js.map