lingotags
Version:
[](https://opensource.org/licenses/MIT) [](https://www.npmjs.com/package/lingotags)
77 lines • 2.99 kB
JavaScript
;
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