vue-cli-plugin-envhot
Version:
hot reloading your .env files, never worry about restarting yor wde
53 lines (52 loc) • 1.99 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", "./storage", "./EventEmitter", "./events"], factory);
}
})(function (require, exports) {
"use strict";
exports.__esModule = true;
var storage_1 = require("./storage");
var EventEmitter_1 = require("./EventEmitter");
var events_1 = require("./events");
// const webpack = require("../ss/node_modules/webpack");
var webpack = require("webpack");
var initialized = false;
function runtimeValueFactory(args) {
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
var prop = "process.env";
var arg = Object.assign({}, args[0]);
Object.keys(arg[prop]).forEach(function (key) {
if (!initialized) {
console.log(arg[prop][key]);
storage_1["default"].setValue(key, arg[prop][key]);
}
arg[prop][key] = webpack.DefinePlugin.runtimeValue(function () {
return JSON.stringify(storage_1["default"].getValue(key));
}, true);
});
EventEmitter_1["default"].on(events_1.ADDED_KEY, function (key) {
arg[prop][key] = webpack.DefinePlugin.runtimeValue(function () {
return JSON.stringify(storage_1["default"].getValue(key));
}, true);
});
EventEmitter_1["default"].on(events_1.DELETED_KEY, function (key) {
delete arg[prop][key];
console.log(key);
});
if (!initialized) {
initialized = true;
storage_1["default"].push();
}
initialized = true;
//
return [arg];
}
exports["default"] = runtimeValueFactory;
});