UNPKG

lingotags

Version:

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![npm version](https://img.shields.io/npm/v/lingotags.svg)](https://www.npmjs.com/package/lingotags)

77 lines 2.99 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.initConfig = void 0; const fs_1 = __importDefault(require("fs")); const inquirer_1 = __importDefault(require("inquirer")); const DEFAULT_CONFIG_PATH = "./config.json"; const initConfig = async () => { try { if (fs_1.default.existsSync(DEFAULT_CONFIG_PATH)) { const { overwrite } = await inquirer_1.default.prompt([ { type: "confirm", name: "overwrite", message: "Config file already exists. Do you want to overwrite?", default: false, }, ]); if (!overwrite) { console.log("Configuration initialization cancelled."); return; } } const config = await inquirer_1.default.prompt([ { type: "input", name: "searchDirectory", message: "Enter search directory:", default: "./src", validate: (input) => input.trim().length > 0 ? true : "Search directory is required", }, { type: "input", name: "outputFile", message: "Enter output file name:", default: "translations.json", validate: (input) => input.trim().length > 0 ? true : "Output file name is required", }, { type: "input", name: "manifest", message: "Enter manifest file name for reverts:", default: "lingotags-manifest.json", validate: (input) => input.trim().length > 0 ? true : "manifest file name is required", }, { type: "input", name: "filePattern", message: "Enter file pattern to search:", default: "**/*.{html,tsx,jsx}", }, { type: "input", name: "defaultLanguage", message: "Enter default language code (e.g. en, fr, es):", default: "en", validate: (input) => /^[a-z]{2}$/.test(input) ? true : "Must be 2-letter language code", }, { type: "confirm", name: "verbose", message: "Enable verbose logging?", default: false, }, ]); fs_1.default.writeFileSync(DEFAULT_CONFIG_PATH, JSON.stringify(config, null, 2), "utf-8"); console.log(`✅ Configuration file created: ${DEFAULT_CONFIG_PATH}`); } catch (error) { console.error("Error creating configuration:", error); process.exit(1); } }; exports.initConfig = initConfig; //# sourceMappingURL=init.js.map