Skip to content

FileScanner

reference
1 min readUpdated

Kind: Class

Source: atloria-monorepo/libs/parser-core/src/utils/file-scanner.ts

File Scanner Class

Provides methods for scanning directories, finding files by glob patterns, and respecting .gitignore rules.

Methods

MethodSignatureReturns
scanscan(config: FileScannerConfig)Promise<ScannedFile[]>
scanWithContentscanWithContent(config: FileScannerConfig)Promise<ScannedFile[]>
getFileStatsgetFileStats(filePath: string)`Promise<FileStats
readFilereadFile(filePath: string)`Promise<string
matchesPatternmatchesPattern(filePath: string, pattern: string)boolean
parseGitignoreparseGitignore(rootDir: string)Promise<string[]>
countFilescountFiles(config: FileScannerConfig)Promise<number>
groupByExtensiongroupByExtension(files: ScannedFile[])Record<string, ScannedFile[]>
groupByDirectorygroupByDirectory(files: ScannedFile[])Record<string, ScannedFile[]>
getSupportedExtensionsgetSupportedExtensions()ExtensionCategories
createPatternForExtensionscreatePatternForExtensions(extensions: string[])string
getTypescriptPatternsgetTypescriptPatterns()string[]
getDefaultExcludePatternsgetDefaultExcludePatterns()string[]

Where it refuses work

  • FileScanner stops the work with an early return when !stat.isDirectory().

When something fails

  • FileScanner handles failure in 6 places: it turns it into a return value in 4, and logs it and continues in 2.

Was this page helpful?

Download as PDF