datasquirel/dist/package-shared/utils/parse-env.js
Benjamin Toby 2618d472dc Updates
2025-05-22 10:04:18 +01:00

41 lines
1.3 KiB
JavaScript

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = parseEnv;
const fs_1 = __importDefault(require("fs"));
function parseEnv(envFile) {
if (!fs_1.default.existsSync(envFile))
return undefined;
const envTextContent = fs_1.default.readFileSync(envFile, "utf-8");
const envLines = envTextContent
.split("\n")
.map((ln) => ln.trim())
.filter((ln) => {
const commentLine = ln.match(/^\#/);
const validEnv = ln.match(/.*\=/);
if (commentLine)
return false;
if (validEnv)
return true;
return false;
});
const newEnvObj = {};
for (let i = 0; i < envLines.length; i++) {
const emvLine = envLines[i];
const envLineArr = emvLine.split("=");
const envTitle = envLineArr[0];
const envValue = envLineArr[1];
if (!(envTitle === null || envTitle === void 0 ? void 0 : envTitle.match(/./)))
continue;
if (envValue === null || envValue === void 0 ? void 0 : envValue.match(/./)) {
newEnvObj[envTitle] = envValue;
}
else {
newEnvObj[envTitle] = "";
}
}
return newEnvObj;
}