UNPKG

dir-analysis-tool

Version:

A comprehensive cross-platform CLI tool for advanced directory analysis with file classification, duplicate detection, large file identification, interactive mode, HTML reports, and multiple export formats. Perfect for disk cleanup, storage audits, and pr

57 lines 1.88 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.EMOJIS = void 0; exports.formatSize = formatSize; exports.formatSizeInMB = formatSizeInMB; exports.shouldExcludeDirectory = shouldExcludeDirectory; exports.shouldExcludeFile = shouldExcludeFile; const pretty_bytes_1 = __importDefault(require("pretty-bytes")); function formatSize(bytes) { return (0, pretty_bytes_1.default)(bytes); } function formatSizeInMB(bytes) { return Math.round((bytes / (1024 * 1024)) * 10) / 10; } function shouldExcludeDirectory(dirName, excludePatterns = []) { const defaultExcludes = ['node_modules', '.git', '.svn', '.hg', 'dist', 'build', '.cache']; const allExcludes = [...defaultExcludes, ...excludePatterns]; return allExcludes.some(pattern => { if (pattern.includes('*')) { const regex = new RegExp(pattern.replace(/\*/g, '.*')); return regex.test(dirName); } return dirName === pattern; }); } function shouldExcludeFile(fileName, excludePatterns = []) { return excludePatterns.some(pattern => { if (pattern.includes('*')) { const regex = new RegExp(pattern.replace(/\*/g, '.*')); return regex.test(fileName); } return fileName.endsWith(pattern) || fileName === pattern; }); } exports.EMOJIS = { folder: '📂', package: '📦', folderIcon: '📁', fileIcon: '📄', types: '🗂', images: '📷', videos: '🎬', documents: '📄', audio: '🎵', code: '🧑‍💻', archives: '🗃️', other: '❓', largeFile: '🚨', duplicates: '🔄', progress: '🔍', success: '✅', csv: '📄' }; //# sourceMappingURL=utils.js.map