UNPKG

env-manage-plugin

Version:

A dev env plugin that integrates an Express server with request proxying capabilities.

36 lines (35 loc) 1.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.initConfig = void 0; const tslib_1 = require("tslib"); const fs = tslib_1.__importStar(require("fs")); const path_1 = require("path"); const Utils_js_1 = tslib_1.__importDefault(require("./Utils.js")); /** * 初始化配置文件 * @param {boolean} force - 是否强制覆盖 */ const initConfig = async (force = false) => { const isESModule = await Utils_js_1.default.isESModuleByPackageJson(); const FILE_EXT = isESModule ? ".mjs" : ".js"; const CONFIG_FILE_NAME = `envm.config${FILE_EXT}`; // 模板文件路径 const TEMPLATE_PATH = (0, path_1.join)(__dirname, `..`, `templates`, `${CONFIG_FILE_NAME}`); // 目标文件路径 const TARGET_PATH = (0, path_1.join)(process.cwd(), CONFIG_FILE_NAME); try { // 检查目标文件是否存在 const isTargetExist = fs.existsSync(TARGET_PATH); if (isTargetExist && !force) { console.log(`${CONFIG_FILE_NAME} already exists. Use --force to overwrite.`); return; } // 拷贝模板文件到目标路径 fs.copyFileSync(TEMPLATE_PATH, TARGET_PATH); console.log(`${CONFIG_FILE_NAME} ${isTargetExist ? "overwritten" : "created"} successfully!`); } catch (err) { console.error("Failed to initialize envm.config.js:", err); } }; exports.initConfig = initConfig;