vue-cli-plugin-envhot
Version:
hot reloading your .env files, never worry about restarting yor wde
40 lines (39 loc) • 1.59 kB
JavaScript
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "dotenv", "fs", "path", "./storage"], factory);
}
})(function (require, exports) {
"use strict";
exports.__esModule = true;
var dotenv_1 = require("dotenv");
var fs_1 = require("fs");
var path_1 = require("path");
var storage_1 = require("./storage");
exports["default"] = (function (files) {
var oldLength = Reflect.ownKeys(process.env).length;
storage_1["default"].push();
files
.map(function (file) { return path_1.resolve(file); })
.map(function (file) {
if (fs_1.existsSync(file)) {
var _a = dotenv_1.config({ path: file }), error = _a.error, parsed = _a.parsed;
if (error)
throw new Error("error parsing " + file + ": " + error);
Object.entries(parsed).forEach(function (_a) {
var k = _a[0], v = _a[1];
return storage_1["default"].setValue(k, v);
});
}
});
Object.entries(storage_1["default"].getCurrent).forEach(function (_a) {
var key = _a[0], val = _a[1];
return (process.env[key] = val);
});
storage_1["default"].compare();
return Reflect.ownKeys(process.env).length !== oldLength;
});
});