UNPKG

comment-remover-cli

Version:

A CLI tool to remove comments from Svelte and TypeScript files while preserving JSDoc

34 lines (33 loc) 1.49 kB
#!/usr/bin/env node "use strict"; // This file initializes the comment removal process and integrates the processors for Svelte and TypeScript files. Object.defineProperty(exports, "__esModule", { value: true }); exports.removeComments = void 0; const fileScanner_1 = require("./utils/fileScanner"); const svelteProcessor_1 = require("./processors/svelteProcessor"); const tsProcessor_1 = require("./processors/tsProcessor"); const removeComments = async (directory) => { console.log(`Scanning directory: ${directory}`); const svelteFiles = await (0, fileScanner_1.scanFiles)(directory, ".svelte"); const tsFiles = await (0, fileScanner_1.scanFiles)(directory, ".ts"); console.log(`Found ${svelteFiles.length} Svelte files and ${tsFiles.length} TypeScript files`); await (0, svelteProcessor_1.processSvelteFiles)(svelteFiles); await (0, tsProcessor_1.processTsFiles)(tsFiles); console.log("All files processed successfully"); }; exports.removeComments = removeComments; // Run as CLI if this file is executed directly if (require.main === module) { const args = process.argv.slice(2); if (args.length === 0) { console.log("Usage: comment-remover-cli <directory>"); process.exit(1); } const directory = args[0]; (0, exports.removeComments)(directory) .then(() => console.log("✅ Comment removal complete")) .catch((error) => { console.error("❌ Error:", error); process.exit(1); }); }