@j0hanz/filesystem-context-mcp 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +17 -17
  2. package/dist/lib/constants.d.ts.map +1 -1
  3. package/dist/lib/constants.js +7 -1
  4. package/dist/lib/constants.js.map +1 -1
  5. package/dist/lib/file-operations/analyze-directory.js +1 -1
  6. package/dist/lib/file-operations/analyze-directory.js.map +1 -1
  7. package/dist/lib/file-operations/directory-helpers.d.ts +35 -0
  8. package/dist/lib/file-operations/directory-helpers.d.ts.map +1 -0
  9. package/dist/lib/file-operations/directory-helpers.js +136 -0
  10. package/dist/lib/file-operations/directory-helpers.js.map +1 -0
  11. package/dist/lib/file-operations/directory-tree.js +1 -1
  12. package/dist/lib/file-operations/directory-tree.js.map +1 -1
  13. package/dist/lib/file-operations/pattern-complexity.d.ts +16 -0
  14. package/dist/lib/file-operations/pattern-complexity.d.ts.map +1 -0
  15. package/dist/lib/file-operations/pattern-complexity.js +86 -0
  16. package/dist/lib/file-operations/pattern-complexity.js.map +1 -0
  17. package/dist/lib/file-operations/pattern-validator.d.ts +15 -0
  18. package/dist/lib/file-operations/pattern-validator.d.ts.map +1 -0
  19. package/dist/lib/file-operations/pattern-validator.js +69 -0
  20. package/dist/lib/file-operations/pattern-validator.js.map +1 -0
  21. package/dist/lib/file-operations/read-multiple-files.d.ts.map +1 -1
  22. package/dist/lib/file-operations/read-multiple-files.js +19 -17
  23. package/dist/lib/file-operations/read-multiple-files.js.map +1 -1
  24. package/dist/lib/file-operations/search-content.d.ts +2 -0
  25. package/dist/lib/file-operations/search-content.d.ts.map +1 -1
  26. package/dist/lib/file-operations/search-content.js +8 -3
  27. package/dist/lib/file-operations/search-content.js.map +1 -1
  28. package/dist/lib/file-operations/search-files.d.ts +2 -0
  29. package/dist/lib/file-operations/search-files.d.ts.map +1 -1
  30. package/dist/lib/file-operations/search-files.js +8 -4
  31. package/dist/lib/file-operations/search-files.js.map +1 -1
  32. package/dist/lib/fs-helpers/readers/stream-lines.d.ts +7 -0
  33. package/dist/lib/fs-helpers/readers/stream-lines.d.ts.map +1 -0
  34. package/dist/lib/fs-helpers/readers/stream-lines.js +61 -0
  35. package/dist/lib/fs-helpers/readers/stream-lines.js.map +1 -0
  36. package/dist/lib/performance/monitor.d.ts +25 -0
  37. package/dist/lib/performance/monitor.d.ts.map +1 -0
  38. package/dist/lib/performance/monitor.js +84 -0
  39. package/dist/lib/performance/monitor.js.map +1 -0
  40. package/dist/schemas/input-helpers.d.ts +19 -0
  41. package/dist/schemas/input-helpers.d.ts.map +1 -1
  42. package/dist/schemas/input-helpers.js +133 -1
  43. package/dist/schemas/input-helpers.js.map +1 -1
  44. package/dist/schemas/inputs.d.ts +6 -2
  45. package/dist/schemas/inputs.d.ts.map +1 -1
  46. package/dist/schemas/inputs.js +41 -190
  47. package/dist/schemas/inputs.js.map +1 -1
  48. package/dist/server.d.ts.map +1 -1
  49. package/dist/server.js +1 -3
  50. package/dist/server.js.map +1 -1
  51. package/dist/tools/search-content.d.ts.map +1 -1
  52. package/dist/tools/search-content.js +3 -1
  53. package/dist/tools/search-content.js.map +1 -1
  54. package/dist/tools/search-files.d.ts.map +1 -1
  55. package/dist/tools/search-files.js +3 -1
  56. package/dist/tools/search-files.js.map +1 -1
  57. package/package.json +1 -1
@@ -11,25 +11,27 @@ function assertHeadTailOptions(head, tail) {
11
11
  function createOutputSkeleton(filePaths) {
12
12
  return filePaths.map((filePath) => ({ path: filePath }));
13
13
  }
14
- async function collectFileBudget(filePaths, isPartialRead, maxTotalSize, maxSize) {
14
+ async function collectFileBudget(filePaths, isPartialRead, maxTotalSize) {
15
15
  const skippedBudget = new Set();
16
+ // If performing partial read (head/tail), skip size checks
17
+ if (isPartialRead) {
18
+ return { skippedBudget };
19
+ }
20
+ // Gather file sizes
21
+ const { results } = await processInParallel(filePaths.map((filePath, index) => ({ filePath, index })), async ({ filePath, index }) => {
22
+ const validPath = await validateExistingPath(filePath);
23
+ const stats = await fs.stat(validPath);
24
+ return { filePath, index, size: stats.size };
25
+ }, PARALLEL_CONCURRENCY);
26
+ // Determine which files to skip based on budget
16
27
  let totalSize = 0;
17
- for (const filePath of filePaths) {
18
- try {
19
- const validPath = await validateExistingPath(filePath);
20
- const stats = await fs.stat(validPath);
21
- const estimatedSize = isPartialRead
22
- ? Math.min(stats.size, maxSize)
23
- : stats.size;
24
- if (totalSize + estimatedSize > maxTotalSize) {
25
- skippedBudget.add(filePath);
26
- continue;
27
- }
28
- totalSize += estimatedSize;
29
- }
30
- catch {
31
- // Ignore per-file size errors; handled during read.
28
+ const orderedResults = [...results].sort((a, b) => a.index - b.index);
29
+ for (const result of orderedResults) {
30
+ if (totalSize + result.size > maxTotalSize) {
31
+ skippedBudget.add(result.filePath);
32
+ continue;
32
33
  }
34
+ totalSize += result.size;
33
35
  }
34
36
  return { skippedBudget };
35
37
  }
@@ -68,7 +70,7 @@ export async function readMultipleFiles(filePaths, options = {}) {
68
70
  assertHeadTailOptions(head, tail);
69
71
  const output = createOutputSkeleton(filePaths);
70
72
  const isPartialRead = head !== undefined || tail !== undefined;
71
- const { skippedBudget } = await collectFileBudget(filePaths, isPartialRead, maxTotalSize, maxSize);
73
+ const { skippedBudget } = await collectFileBudget(filePaths, isPartialRead, maxTotalSize);
72
74
  const filesToProcess = buildProcessTargets(filePaths, skippedBudget);
73
75
  const { results, errors } = await processInParallel(filesToProcess, async ({ filePath, index }) => {
74
76
  const result = await readFile(filePath, {
@@ -1 +1 @@
1
- {"version":3,"file":"read-multiple-files.js","sourceRoot":"","sources":["../../../src/lib/file-operations/read-multiple-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-multiple-files.js","sourceRoot":"","sources":["../../../src/lib/file-operations/read-multiple-files.ts"],"names":[],"mappings":"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"}
@@ -12,5 +12,7 @@ export declare function searchContent(basePath: string, searchPattern: string, o
12
12
  wholeWord?: boolean;
13
13
  isLiteral?: boolean;
14
14
  includeHidden?: boolean;
15
+ baseNameMatch?: boolean;
16
+ caseSensitiveFileMatch?: boolean;
15
17
  }): Promise<SearchContentResult>;
16
18
  //# sourceMappingURL=search-content.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-content.d.ts","sourceRoot":"","sources":["../../../src/lib/file-operations/search-content.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAgB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAqnB/E,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE;IACP,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,GACL,OAAO,CAAC,mBAAmB,CAAC,CAyE9B"}
1
+ {"version":3,"file":"search-content.d.ts","sourceRoot":"","sources":["../../../src/lib/file-operations/search-content.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAgB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA0nB/E,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE;IACP,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAC7B,GACL,OAAO,CAAC,mBAAmB,CAAC,CAiF9B"}
@@ -7,6 +7,7 @@ import { DEFAULT_MAX_RESULTS, DEFAULT_SEARCH_MAX_FILES, DEFAULT_SEARCH_TIMEOUT_M
7
7
  import { ErrorCode, McpError } from '../errors.js';
8
8
  import { isProbablyBinary } from '../fs-helpers.js';
9
9
  import { validateExistingPath, validateExistingPathDetailed, } from '../path-validation.js';
10
+ import { validateGlobPatternOrThrow } from './pattern-validator.js';
10
11
  function initSearchContentState() {
11
12
  return {
12
13
  matches: [],
@@ -336,7 +337,7 @@ function updateStateFromScan(state, scanResult) {
336
337
  if (scanResult.fileHadMatches)
337
338
  state.filesMatched++;
338
339
  }
339
- function createSearchStream(basePath, filePattern, excludePatterns, includeHidden) {
340
+ function createSearchStream(basePath, filePattern, excludePatterns, includeHidden, baseNameMatch = false, caseSensitiveFileMatch = true) {
340
341
  return fg.stream(filePattern, {
341
342
  cwd: basePath,
342
343
  absolute: true,
@@ -345,6 +346,8 @@ function createSearchStream(basePath, filePattern, excludePatterns, includeHidde
345
346
  ignore: excludePatterns,
346
347
  suppressErrors: true,
347
348
  followSymbolicLinks: false,
349
+ baseNameMatch,
350
+ caseSensitiveMatch: caseSensitiveFileMatch,
348
351
  });
349
352
  }
350
353
  async function scanSearchStream(stream, state, options, regex) {
@@ -380,8 +383,10 @@ async function scanSearchStream(stream, state, options, regex) {
380
383
  }
381
384
  }
382
385
  export async function searchContent(basePath, searchPattern, options = {}) {
383
- const { filePattern = '**/*', excludePatterns = [], caseSensitive = false, maxResults = DEFAULT_MAX_RESULTS, maxFileSize = MAX_SEARCHABLE_FILE_SIZE, maxFilesScanned = DEFAULT_SEARCH_MAX_FILES, timeoutMs = DEFAULT_SEARCH_TIMEOUT_MS, skipBinary = true, contextLines = 0, wholeWord = false, isLiteral = false, includeHidden = false, } = options;
386
+ const { filePattern = '**/*', excludePatterns = [], caseSensitive = false, maxResults = DEFAULT_MAX_RESULTS, maxFileSize = MAX_SEARCHABLE_FILE_SIZE, maxFilesScanned = DEFAULT_SEARCH_MAX_FILES, timeoutMs = DEFAULT_SEARCH_TIMEOUT_MS, skipBinary = true, contextLines = 0, wholeWord = false, isLiteral = false, includeHidden = false, baseNameMatch, caseSensitiveFileMatch, } = options;
384
387
  const validPath = await validateExistingPath(basePath);
388
+ // Validate file pattern
389
+ validateGlobPatternOrThrow(filePattern, validPath);
385
390
  const deadlineMs = timeoutMs ? Date.now() + timeoutMs : undefined;
386
391
  const { regex } = buildSearchRegex(searchPattern, {
387
392
  isLiteral,
@@ -390,7 +395,7 @@ export async function searchContent(basePath, searchPattern, options = {}) {
390
395
  basePath,
391
396
  });
392
397
  const state = initSearchContentState();
393
- const stream = createSearchStream(validPath, filePattern, excludePatterns, includeHidden);
398
+ const stream = createSearchStream(validPath, filePattern, excludePatterns, includeHidden, baseNameMatch ?? false, caseSensitiveFileMatch ?? true);
394
399
  try {
395
400
  await scanSearchStream(stream, state, {
396
401
  deadlineMs,
@@ -1 +1 @@
1
- {"version":3,"file":"search-content.js","sourceRoot":"","sources":["../../../src/lib/file-operations/search-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-content.js","sourceRoot":"","sources":["../../../src/lib/file-operations/search-content.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAE,MAAM,WAAW,CAAC;AAC3B,OAAO,SAAS,MAAM,aAAa,CAAC;AAGpC,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAuBpE,SAAS,sBAAsB;IAC7B,OAAO;QACL,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC;QAClB,aAAa,EAAE,CAAC;QAChB,mBAAmB,EAAE,CAAC;QACtB,6BAA6B,EAAE,CAAC;QAChC,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,SAAS;KACzB,CAAC;AACJ,CAAC;AAID,SAAS,mBAAmB,CAC1B,UAA8B,EAC9B,eAAmC,EACnC,UAAkB,EAClB,YAAoB,EACpB,UAAkB;IAElB,IAAI,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU;QAAE,OAAO,SAAS,CAAC;IAC1E,IAAI,eAAe,KAAK,SAAS,IAAI,YAAY,IAAI,eAAe,EAAE,CAAC;QACrE,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,UAAU,IAAI,UAAU;QAAE,OAAO,YAAY,CAAC;IAClD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CACtB,KAAyB,EACzB,MAAwB;IAExB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;AAC/B,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAyB,EACzB,OAIC;IAED,OAAO,mBAAmB,CACxB,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,UAAU,EAClB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,OAAO,CAAC,MAAM,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAyB,EACzB,MAAoC;IAEpC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAe;IAC1C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,uBAAuB,GAAG,sBAAsB,CAAC;IACvD,IAAI,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;IACpD,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,QAAQ,KAAK,SAAS;YAAE,SAAS;QAErC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAC3B,aAAqB,EACrB,OAAqD;IAErD,IAAI,YAAY,GAAG,aAAa,CAAC;IAEjC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,YAAY,GAAG,MAAM,YAAY,KAAK,CAAC;IACzC,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,iBAAiB,CACxB,YAAoB,EACpB,aAAqB,EACrB,QAAgB,EAChB,eAAwB;IAExB,IAAI,CAAC,eAAe,IAAI,SAAS,CAAC,YAAY,CAAC;QAAE,OAAO;IAExD,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,iBAAiB,EAC3B,uDAAuD,aAAa,IAAI;QACtE,gGAAgG,EAClG,QAAQ,EACR,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAClC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,YAAoB,EACpB,aAAsB,EACtB,QAAgB;IAEhB,IAAI,CAAC;QACH,OAAO,IAAI,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,iBAAiB,EAC3B,+BAA+B,YAAY,KAAK,OAAO,GAAG,EAC1D,QAAQ,EACR,EAAE,aAAa,EAAE,YAAY,EAAE,CAChC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,aAAqB,EACrB,OAKC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAClE,MAAM,YAAY,GAAG,oBAAoB,CAAC,aAAa,EAAE;QACvD,SAAS;QACT,SAAS;KACV,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,CAAC,SAAS,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACzE,iBAAiB,CAAC,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IAE1E,OAAO;QACL,KAAK,EAAE,YAAY,CAAC,YAAY,EAAE,aAAa,EAAE,QAAQ,CAAC;QAC1D,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAY,EACZ,YAAoB,EACpB,aAAsB;IAEtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAE7D,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3D,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAEzE,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,OAAO,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACpD,KAAK,EAAE,CAAC;QACR,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAY,EACZ,KAAa,EACb,YAAoB,sBAAsB;IAE1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAEhC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;IACpB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IACxC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IACvD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3C,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,CAAC;QAEb,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;QAC1C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YACpB,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC;QAExB,MAAM,kBAAkB,GACtB,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/B,CAAC,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5C,IACE,CAAC,kBAAkB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;YAC7C,UAAU,GAAG,aAAa,EAC1B,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAgB,EAChB,KAAa,EACb,OAUC;IAMD,MAAM,KAAK,GAAG;QACZ,OAAO,EAAE,EAAoB;QAC7B,6BAA6B,EAAE,CAAC;QAChC,cAAc,EAAE,KAAK;QACrB,UAAU,EAAE,CAAC;QACb,aAAa,EAAE,EAAc;QAC7B,cAAc,EAAE,EAGb;KACJ,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAU,EAAE,CAChD,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC;IAEvD,MAAM,aAAa,GAAG,CAAC,IAAY,EAAU,EAAE;QAC7C,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACpE,OAAO,mBAAmB,CACxB,IAAI,EACJ,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,aAAa,IAAI,KAAK,CAC/B,CAAC;QACJ,CAAC;QACD,OAAO,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,WAAmB,EAAQ,EAAE;QAClD,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YAC3C,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,KAAK,CAAC,YAAY,KAAK,EAAE,CAAC;gBAClC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC7C,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE,CAAC;YAClD,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,WAAmB,EAAQ,EAAE;QACpD,IAAI,OAAO,CAAC,YAAY,IAAI,CAAC;YAAE,OAAO;QACtC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;YACtD,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CACjB,IAAY,EACZ,OAAe,EACf,UAAkB,EACJ,EAAE;QAChB,MAAM,KAAK,GAAiB;YAC1B,IAAI,EAAE,QAAQ;YACd,IAAI;YACJ,OAAO;YACP,UAAU;SACX,CAAC;QACF,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,KAAK,CAAC,aAAa,GAAG,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,KAAmB,EAAQ,EAAE;QAC/C,IAAI,OAAO,CAAC,YAAY,IAAI,CAAC;YAAE,OAAO;QACtC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,IAAY,EAAW,EAAE;QAC3C,KAAK,CAAC,UAAU,EAAE,CAAC;QACnB,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IACE,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,iBAAiB;YAChD,OAAO,CAAC,UAAU,EAClB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvC,aAAa,CAAC,OAAO,CAAC,CAAC;QAEvB,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,6BAA6B,EAAE,CAAC;YACtC,eAAe,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;YAC5B,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAC5D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,UAAU,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;QAED,eAAe,CAAC,OAAO,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE;QAC3B,MAAM,UAAU,GACd,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC;YACnC,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,KAAK;SACjB,CAAC,IAAI,gBAAgB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC;YACtC,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC5C,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,CAAC,KAAK,IAAI,EAAE;QACjB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;gBAC5B,IAAI,UAAU,CAAC,IAAI,CAAC;oBAAE,MAAM;YAC9B,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;QAED,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,6BAA6B,EAAE,KAAK,CAAC,6BAA6B;YAClE,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CAAC;IACJ,CAAC,CAAC,EAAE,CAAC;AACP,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,OAAe;IAEf,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAClE,OAAO;YACL,QAAQ,EAAE,aAAa,CAAC,YAAY;YACpC,WAAW,EAAE,aAAa,CAAC,aAAa;SACzC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAuB,EACvB,WAAmB;IAEnB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,eAAe,CACtB,OAAgB,EAChB,eAAwB,EACxB,aAAsB;IAEtB,OAAO;QACL,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,KAAK;QACrB,6BAA6B,EAAE,CAAC;QAChC,eAAe;QACf,aAAa;QACb,OAAO;KACR,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,MAAqB,EACrB,QAAgB,EAChB,WAAmB,EACnB,KAAa,EACb,OAWC;IAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GACd,MAAM,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE;QACxC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;QACnE,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU,EAAE,MAAM;KACnB,CAAC,CAAC;IAEL,MAAM,aAAa,GAAG,uBAAuB,CAC3C,UAAU,CAAC,OAAO,EAClB,WAAW,CACZ,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,aAAa;QACtB,cAAc,EAAE,UAAU,CAAC,cAAc;QACzC,6BAA6B,EAAE,UAAU,CAAC,6BAA6B;QACvE,eAAe,EAAE,KAAK;QACtB,aAAa,EAAE,KAAK;QACpB,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,QAAgB,EAChB,WAAmB,EACnB,KAAa,EACb,OAWC;IAED,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,OAAO,MAAM,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAyB,EACzB,UAA+B;IAE/B,IAAI,UAAU,CAAC,OAAO;QAAE,KAAK,CAAC,YAAY,EAAE,CAAC;IAC7C,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;QAC/B,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IACD,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;QAC7B,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAC1C,KAAK,CAAC,6BAA6B;QACjC,UAAU,CAAC,6BAA6B,CAAC;IAC3C,IAAI,UAAU,CAAC,cAAc;QAAE,KAAK,CAAC,YAAY,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAgB,EAChB,WAAmB,EACnB,eAAyB,EACzB,aAAsB,EACtB,aAAa,GAAG,KAAK,EACrB,sBAAsB,GAAG,IAAI;IAE7B,OAAO,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE;QAC5B,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;QACf,GAAG,EAAE,aAAa;QAClB,MAAM,EAAE,eAAe;QACvB,cAAc,EAAE,IAAI;QACpB,mBAAmB,EAAE,KAAK;QAC1B,aAAa;QACb,kBAAkB,EAAE,sBAAsB;KAC3C,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,MAAsC,EACtC,KAAyB,EACzB,OAWC,EACD,KAAa;IAEb,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAC5B,SAAS;QACX,CAAC;QAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAAE,MAAM;QAExE,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,iBAAiB,CACxC,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,WAAW,EACpB,KAAK,EACL;gBACE,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;gBACvC,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CACF,CAAC;YAEF,mBAAmB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAAE,MAAM;IAC1E,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,aAAqB,EACrB,UAeI,EAAE;IAEN,MAAM,EACJ,WAAW,GAAG,MAAM,EACpB,eAAe,GAAG,EAAE,EACpB,aAAa,GAAG,KAAK,EACrB,UAAU,GAAG,mBAAmB,EAChC,WAAW,GAAG,wBAAwB,EACtC,eAAe,GAAG,wBAAwB,EAC1C,SAAS,GAAG,yBAAyB,EACrC,UAAU,GAAG,IAAI,EACjB,YAAY,GAAG,CAAC,EAChB,SAAS,GAAG,KAAK,EACjB,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,aAAa,EACb,sBAAsB,GACvB,GAAG,OAAO,CAAC;IAEZ,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEvD,wBAAwB;IACxB,0BAA0B,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAEnD,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,aAAa,EAAE;QAChD,SAAS;QACT,SAAS;QACT,aAAa;QACb,QAAQ;KACT,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,kBAAkB,CAC/B,SAAS,EACT,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,IAAI,KAAK,EACtB,sBAAsB,IAAI,IAAI,CAC/B,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,gBAAgB,CACpB,MAAM,EACN,KAAK,EACL;YACE,UAAU;YACV,eAAe;YACf,UAAU;YACV,WAAW;YACX,UAAU;YACV,SAAS;YACT,aAAa;YACb,aAAa;YACb,YAAY;YACZ,SAAS;SACV,EACD,KAAK,CACN,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,OAAO,EAAE,GAAG,MAAkC,CAAC;QACvD,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,OAAO,EAAE,aAAa;QACtB,WAAW;QACX,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE;YACP,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;YAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;YAC9C,6BAA6B,EAAE,KAAK,CAAC,6BAA6B;YAClE,aAAa,EAAE,KAAK,CAAC,aAAa;SACnC;KACF,CAAC;AACJ,CAAC"}
@@ -5,5 +5,7 @@ export declare function searchFiles(basePath: string, pattern: string, excludePa
5
5
  maxDepth?: number;
6
6
  maxFilesScanned?: number;
7
7
  timeoutMs?: number;
8
+ baseNameMatch?: boolean;
9
+ skipSymlinks?: boolean;
8
10
  }): Promise<SearchFilesResult>;
9
11
  //# sourceMappingURL=search-files.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-files.d.ts","sourceRoot":"","sources":["../../../src/lib/file-operations/search-files.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAgB,MAAM,uBAAuB,CAAC;AAyK7E,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,eAAe,GAAE,MAAM,EAAO,EAC9B,OAAO,GAAE;IACP,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACf,GACL,OAAO,CAAC,iBAAiB,CAAC,CA6C5B"}
1
+ {"version":3,"file":"search-files.d.ts","sourceRoot":"","sources":["../../../src/lib/file-operations/search-files.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAgB,MAAM,uBAAuB,CAAC;AA6K7E,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,eAAe,GAAE,MAAM,EAAO,EAC9B,OAAO,GAAE;IACP,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CACnB,GACL,OAAO,CAAC,iBAAiB,CAAC,CAqD5B"}
@@ -3,6 +3,7 @@ import fg from 'fast-glob';
3
3
  import { DEFAULT_MAX_RESULTS, DEFAULT_SEARCH_MAX_FILES, DEFAULT_SEARCH_TIMEOUT_MS, PARALLEL_CONCURRENCY, } from '../constants.js';
4
4
  import { getFileType } from '../fs-helpers.js';
5
5
  import { validateExistingPath, validateExistingPathDetailed, } from '../path-validation.js';
6
+ import { validateGlobPatternOrThrow } from './pattern-validator.js';
6
7
  import { sortSearchResults } from './sorting.js';
7
8
  function initSearchFilesState() {
8
9
  return {
@@ -91,7 +92,7 @@ async function scanStream(stream, state, options) {
91
92
  await processBatch(batch, state, options);
92
93
  }
93
94
  }
94
- function createSearchStream(basePath, pattern, excludePatterns, maxDepth) {
95
+ function createSearchStream(basePath, pattern, excludePatterns, maxDepth, baseNameMatch = false, skipSymlinks = true) {
95
96
  return fg.stream(pattern, {
96
97
  cwd: basePath,
97
98
  absolute: true,
@@ -99,17 +100,20 @@ function createSearchStream(basePath, pattern, excludePatterns, maxDepth) {
99
100
  dot: true,
100
101
  ignore: excludePatterns,
101
102
  suppressErrors: true,
102
- followSymbolicLinks: false,
103
+ followSymbolicLinks: !skipSymlinks,
103
104
  deep: maxDepth,
105
+ baseNameMatch,
104
106
  });
105
107
  }
106
108
  export async function searchFiles(basePath, pattern, excludePatterns = [], options = {}) {
107
109
  const validPath = await validateExistingPath(basePath);
108
- const { maxResults, sortBy = 'path', maxDepth, maxFilesScanned = DEFAULT_SEARCH_MAX_FILES, timeoutMs = DEFAULT_SEARCH_TIMEOUT_MS, } = options;
110
+ // Validate pattern
111
+ validateGlobPatternOrThrow(pattern, validPath);
112
+ const { maxResults, sortBy = 'path', maxDepth, maxFilesScanned = DEFAULT_SEARCH_MAX_FILES, timeoutMs = DEFAULT_SEARCH_TIMEOUT_MS, baseNameMatch, skipSymlinks, } = options;
109
113
  const effectiveMaxResults = maxResults ?? DEFAULT_MAX_RESULTS;
110
114
  const deadlineMs = timeoutMs ? Date.now() + timeoutMs : undefined;
111
115
  const state = initSearchFilesState();
112
- const stream = createSearchStream(validPath, pattern, excludePatterns, maxDepth);
116
+ const stream = createSearchStream(validPath, pattern, excludePatterns, maxDepth, baseNameMatch ?? false, skipSymlinks ?? true);
113
117
  try {
114
118
  await scanStream(stream, state, {
115
119
  deadlineMs,
@@ -1 +1 @@
1
- {"version":3,"file":"search-files.js","sourceRoot":"","sources":["../../../src/lib/file-operations/search-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-files.js","sourceRoot":"","sources":["../../../src/lib/file-operations/search-files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEvC,OAAO,EAAE,MAAM,WAAW,CAAC;AAG3B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAUjD,SAAS,oBAAoB;IAC3B,OAAO;QACL,OAAO,EAAE,EAAE;QACX,mBAAmB,EAAE,CAAC;QACtB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,SAAS;KACzB,CAAC;AACJ,CAAC;AAID,SAAS,aAAa,CACpB,KAAuB,EACvB,MAAwB;IAExB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC;AAC/B,CAAC;AAED,SAAS,aAAa,CACpB,KAAuB,EACvB,OAIC;IAED,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACxE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IACE,OAAO,CAAC,eAAe,KAAK,SAAS;QACrC,KAAK,CAAC,YAAY,IAAI,OAAO,CAAC,eAAe,EAC7C,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QAC/C,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAuB,EACvB,MAAoC;IAEpC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,KAAa;IAEb,IAAI,CAAC;QACH,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,GAC9C,MAAM,4BAA4B,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;YAChD,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YAC7C,QAAQ,EAAE,KAAK,CAAC,KAAK;SACtB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,KAAe,EACf,KAAuB,EACvB,OAIC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC/B,IAAI,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAAE,OAAO;IAEpE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CACtD,CAAC;IAEF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAAE,MAAM;QACnE,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,IAAI,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC5B,KAAK,CAAC,mBAAmB,EAAE,CAAC;gBAC5B,SAAS;YACX,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,MAAsC,EACtC,KAAuB,EACvB,OAIC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,IAAI,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAAE,MAAM;QACnE,MAAM,SAAS,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpE,KAAK,CAAC,YAAY,EAAE,CAAC;QACrB,IAAI,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAAE,MAAM;QAEnE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,IAAI,KAAK,CAAC,MAAM,IAAI,oBAAoB,EAAE,CAAC;YACzC,MAAM,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAgB,EAChB,OAAe,EACf,eAAyB,EACzB,QAA4B,EAC5B,aAAa,GAAG,KAAK,EACrB,YAAY,GAAG,IAAI;IAEnB,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE;QACxB,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;QACf,GAAG,EAAE,IAAI;QACT,MAAM,EAAE,eAAe;QACvB,cAAc,EAAE,IAAI;QACpB,mBAAmB,EAAE,CAAC,YAAY;QAClC,IAAI,EAAE,QAAQ;QACd,aAAa;KACd,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,OAAe,EACf,kBAA4B,EAAE,EAC9B,UAQI,EAAE;IAEN,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEvD,mBAAmB;IACnB,0BAA0B,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE/C,MAAM,EACJ,UAAU,EACV,MAAM,GAAG,MAAM,EACf,QAAQ,EACR,eAAe,GAAG,wBAAwB,EAC1C,SAAS,GAAG,yBAAyB,EACrC,aAAa,EACb,YAAY,GACb,GAAG,OAAO,CAAC;IACZ,MAAM,mBAAmB,GAAG,UAAU,IAAI,mBAAmB,CAAC;IAC9D,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAElE,MAAM,KAAK,GAAG,oBAAoB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,kBAAkB,CAC/B,SAAS,EACT,OAAO,EACP,eAAe,EACf,QAAQ,EACR,aAAa,IAAI,KAAK,EACtB,YAAY,IAAI,IAAI,CACrB,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE;YAC9B,UAAU;YACV,eAAe;YACf,UAAU,EAAE,mBAAmB;SAChC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,OAAO,EAAE,GAAG,MAAkC,CAAC;QACvD,IAAI,OAAO,OAAO,KAAK,UAAU;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEzC,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,OAAO;QACP,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE;YACP,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;YAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;YAC9C,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,aAAa,EAAE,KAAK,CAAC,aAAa;SACnC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare function readLinesIterator(filePath: string, options?: {
2
+ encoding?: BufferEncoding;
3
+ }): AsyncGenerator<string, void, undefined>;
4
+ export declare function headFileStreaming(filePath: string, count: number, encoding?: BufferEncoding): Promise<string[]>;
5
+ export declare function tailFileStreaming(filePath: string, count: number, encoding?: BufferEncoding): Promise<string[]>;
6
+ export declare function countLines(filePath: string): Promise<number>;
7
+ //# sourceMappingURL=stream-lines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream-lines.d.ts","sourceRoot":"","sources":["../../../../src/lib/fs-helpers/readers/stream-lines.ts"],"names":[],"mappings":"AAKA,wBAAuB,iBAAiB,CACtC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,cAAc,CAAA;CAAE,GACtC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAgBzC;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,cAAuB,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,cAAuB,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAsBnB;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOlE"}
@@ -0,0 +1,61 @@
1
+ import { createReadStream } from 'node:fs';
2
+ import { createInterface } from 'node:readline';
3
+ import { validateExistingPath } from '../../path-validation.js';
4
+ export async function* readLinesIterator(filePath, options) {
5
+ const validPath = await validateExistingPath(filePath);
6
+ const fileStream = createReadStream(validPath, options);
7
+ const rl = createInterface({
8
+ input: fileStream,
9
+ crlfDelay: Infinity,
10
+ });
11
+ try {
12
+ for await (const line of rl) {
13
+ yield line;
14
+ }
15
+ }
16
+ finally {
17
+ rl.close();
18
+ fileStream.destroy();
19
+ }
20
+ }
21
+ export async function headFileStreaming(filePath, count, encoding = 'utf8') {
22
+ if (count <= 0)
23
+ return [];
24
+ const lines = [];
25
+ for await (const line of readLinesIterator(filePath, { encoding })) {
26
+ lines.push(line);
27
+ if (lines.length >= count)
28
+ break;
29
+ }
30
+ return lines;
31
+ }
32
+ export async function tailFileStreaming(filePath, count, encoding = 'utf8') {
33
+ if (count <= 0)
34
+ return [];
35
+ const buffer = [];
36
+ let index = 0;
37
+ for await (const line of readLinesIterator(filePath, { encoding })) {
38
+ if (buffer.length < count) {
39
+ buffer.push(line);
40
+ }
41
+ else {
42
+ buffer[index % count] = line;
43
+ index++;
44
+ }
45
+ }
46
+ // Rotate buffer if we filled it and kept going
47
+ if (buffer.length === count && index > 0) {
48
+ const startIdx = index % count;
49
+ return [...buffer.slice(startIdx), ...buffer.slice(0, startIdx)];
50
+ }
51
+ return buffer;
52
+ }
53
+ export async function countLines(filePath) {
54
+ let count = 0;
55
+ for await (const line of readLinesIterator(filePath)) {
56
+ void line;
57
+ count++;
58
+ }
59
+ return count;
60
+ }
61
+ //# sourceMappingURL=stream-lines.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream-lines.js","sourceRoot":"","sources":["../../../../src/lib/fs-helpers/readers/stream-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,iBAAiB,CACtC,QAAgB,EAChB,OAAuC;IAEvC,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxD,MAAM,EAAE,GAAG,eAAe,CAAC;QACzB,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC;QACb,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,UAAU,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,KAAa,EACb,WAA2B,MAAM;IAEjC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAE1B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,iBAAiB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;YAAE,MAAM;IACnC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,KAAa,EACb,WAA2B,MAAM;IAEjC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAE1B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,iBAAiB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACnE,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;YAC7B,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,+CAA+C;IAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;QAC/B,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,KAAK,IAAI,CAAC;QACV,KAAK,EAAE,CAAC;IACV,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,25 @@
1
+ interface OperationMetrics {
2
+ operation: string;
3
+ duration: number;
4
+ timestamp: number;
5
+ }
6
+ declare class PerformanceMonitor {
7
+ private observer?;
8
+ private metrics;
9
+ private readonly enabled;
10
+ constructor(enabled?: boolean);
11
+ private initObserver;
12
+ startOperation(name: string): void;
13
+ endOperation(name: string): void;
14
+ getMetrics(): OperationMetrics[];
15
+ getSummary(): Record<string, {
16
+ count: number;
17
+ avgDuration: number;
18
+ totalDuration: number;
19
+ }>;
20
+ clear(): void;
21
+ dispose(): void;
22
+ }
23
+ export declare const perfMonitor: PerformanceMonitor;
24
+ export {};
25
+ //# sourceMappingURL=monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../../src/lib/performance/monitor.ts"],"names":[],"mappings":"AAEA,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,cAAM,kBAAkB;IACtB,OAAO,CAAC,QAAQ,CAAC,CAAsB;IACvC,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAEtB,OAAO,UAAQ;IAO3B,OAAO,CAAC,YAAY;IAoBpB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKlC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAOhC,UAAU,IAAI,gBAAgB,EAAE;IAIhC,UAAU,IAAI,MAAM,CAClB,MAAM,EACN;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAC9D;IA6BD,KAAK,IAAI,IAAI;IAMb,OAAO,IAAI,IAAI;CAGhB;AAID,eAAO,MAAM,WAAW,oBAAoC,CAAC"}
@@ -0,0 +1,84 @@
1
+ import { performance, PerformanceObserver } from 'node:perf_hooks';
2
+ class PerformanceMonitor {
3
+ observer;
4
+ metrics = [];
5
+ enabled;
6
+ constructor(enabled = false) {
7
+ this.enabled = enabled;
8
+ if (this.enabled) {
9
+ this.initObserver();
10
+ }
11
+ }
12
+ initObserver() {
13
+ this.observer = new PerformanceObserver((list) => {
14
+ for (const entry of list.getEntries()) {
15
+ this.metrics.push({
16
+ operation: entry.name,
17
+ duration: entry.duration,
18
+ timestamp: entry.startTime,
19
+ });
20
+ // Log slow operations (>1s) to console
21
+ if (entry.duration > 1000) {
22
+ console.warn(`[PERF] Slow operation: ${entry.name} took ${entry.duration.toFixed(2)}ms`);
23
+ }
24
+ }
25
+ });
26
+ this.observer.observe({ entryTypes: ['measure'] });
27
+ }
28
+ startOperation(name) {
29
+ if (!this.enabled)
30
+ return;
31
+ performance.mark(`${name}-start`);
32
+ }
33
+ endOperation(name) {
34
+ if (!this.enabled)
35
+ return;
36
+ const endMark = `${name}-end`;
37
+ performance.mark(endMark);
38
+ performance.measure(name, `${name}-start`, endMark);
39
+ }
40
+ getMetrics() {
41
+ return [...this.metrics];
42
+ }
43
+ getSummary() {
44
+ const summary = {};
45
+ for (const metric of this.metrics) {
46
+ summary[metric.operation] ??= {
47
+ count: 0,
48
+ avgDuration: 0,
49
+ totalDuration: 0,
50
+ };
51
+ const entry = summary[metric.operation];
52
+ if (entry) {
53
+ entry.count++;
54
+ entry.totalDuration += metric.duration;
55
+ }
56
+ }
57
+ for (const op of Object.keys(summary)) {
58
+ const stats = summary[op];
59
+ if (stats) {
60
+ stats.avgDuration = stats.totalDuration / stats.count;
61
+ }
62
+ }
63
+ return summary;
64
+ }
65
+ clear() {
66
+ this.metrics = [];
67
+ performance.clearMarks();
68
+ performance.clearMeasures();
69
+ }
70
+ dispose() {
71
+ this.observer?.disconnect();
72
+ }
73
+ }
74
+ // Enable via environment variable
75
+ const isEnabled = process.env.ENABLE_PERF_MONITORING === 'true';
76
+ export const perfMonitor = new PerformanceMonitor(isEnabled);
77
+ // Cleanup on process exit
78
+ process.on('beforeExit', () => {
79
+ if (isEnabled) {
80
+ console.error('[PERF] Summary:', perfMonitor.getSummary());
81
+ }
82
+ perfMonitor.dispose();
83
+ });
84
+ //# sourceMappingURL=monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../src/lib/performance/monitor.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,23 @@ export declare const ReadFileMaxSizeSchema: z.ZodDefault<z.ZodOptional<z.ZodNumb
5
5
  export declare const ReadMultipleFilesMaxSizeSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
6
6
  export declare const ExcludePatternsSchema: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>>;
7
7
  export declare const BasicExcludePatternsSchema: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
8
+ export declare const MaxDepthSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
9
+ export declare const MaxResultsSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
10
+ export declare const MaxFilesScannedSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
11
+ export declare const TimeoutMsSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
12
+ export declare const TopNSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
13
+ export declare const TreeMaxDepthSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
14
+ export declare const IncludeHiddenSchema: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
15
+ export declare const SortByFileSchema: z.ZodDefault<z.ZodOptional<z.ZodEnum<["name", "size", "modified", "path"]>>>;
16
+ export declare const SortByDirectorySchema: z.ZodDefault<z.ZodOptional<z.ZodEnum<["name", "size", "modified", "type"]>>>;
17
+ export declare const MaxEntriesSchema: z.ZodOptional<z.ZodNumber>;
18
+ export declare const CaseSensitiveSchema: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
19
+ export declare const SkipBinarySchema: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
20
+ export declare const BaseNameMatchSchema: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
21
+ export declare const MaxFileSizeSearchSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
22
+ export declare const ContextLinesSchema: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
23
+ export declare const HeadLinesSchema: z.ZodOptional<z.ZodNumber>;
24
+ export declare const TailLinesSchema: z.ZodOptional<z.ZodNumber>;
25
+ export declare const LineStartSchema: z.ZodOptional<z.ZodNumber>;
26
+ export declare const LineEndSchema: z.ZodOptional<z.ZodNumber>;
8
27
  //# sourceMappingURL=input-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-helpers.d.ts","sourceRoot":"","sources":["../../src/schemas/input-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAaxD;AAED,eAAO,MAAM,cAAc,+FAIC,CAAC;AAU7B,eAAO,MAAM,qBAAqB,0CAEjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,0CAE1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,4FAWpB,CAAC;AAEf,eAAO,MAAM,0BAA0B,8DAIzB,CAAC"}
1
+ {"version":3,"file":"input-helpers.d.ts","sourceRoot":"","sources":["../../src/schemas/input-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAaxD;AAED,eAAO,MAAM,cAAc,+FAIC,CAAC;AAU7B,eAAO,MAAM,qBAAqB,0CAEjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,0CAE1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,4FAWpB,CAAC;AAEf,eAAO,MAAM,0BAA0B,8DAIzB,CAAC;AAQf,eAAO,MAAM,cAAc,0CAOuB,CAAC;AAEnD,eAAO,MAAM,gBAAgB,0CAOqB,CAAC;AAEnD,eAAO,MAAM,qBAAqB,0CAO4B,CAAC;AAE/D,eAAO,MAAM,eAAe,0CAO4B,CAAC;AAEzD,eAAO,MAAM,UAAU,0CAOqB,CAAC;AAE7C,eAAO,MAAM,kBAAkB,0CAOqB,CAAC;AAErD,eAAO,MAAM,mBAAmB,2CAImB,CAAC;AAEpD,eAAO,MAAM,gBAAgB,8EAIgC,CAAC;AAE9D,eAAO,MAAM,qBAAqB,8EAI2B,CAAC;AAE9D,eAAO,MAAM,gBAAgB,4BAM+C,CAAC;AAE7E,eAAO,MAAM,mBAAmB,2CAII,CAAC;AAErC,eAAO,MAAM,gBAAgB,2CAIwB,CAAC;AAEtD,eAAO,MAAM,mBAAmB,2CAM7B,CAAC;AAEJ,eAAO,MAAM,uBAAuB,0CAO+B,CAAC;AAEpE,eAAO,MAAM,kBAAkB,0CAO6C,CAAC;AAE7E,eAAO,MAAM,eAAe,4BAMc,CAAC;AAE3C,eAAO,MAAM,eAAe,4BAMa,CAAC;AAE1C,eAAO,MAAM,eAAe,4BAK6B,CAAC;AAE1D,eAAO,MAAM,aAAa,4BAK6B,CAAC"}