@j0hanz/fs-context-mcp 2.0.0 → 2.0.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.
- package/README.md +22 -17
- package/dist/config.d.ts +117 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +31 -0
- package/dist/config.js.map +1 -0
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/constants.d.ts +3 -3
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +129 -3
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/errors.d.ts +1 -1
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +9 -9
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/file-operations/file-info.d.ts +7 -1
- package/dist/lib/file-operations/file-info.d.ts.map +1 -1
- package/dist/lib/file-operations/file-info.js +84 -8
- package/dist/lib/file-operations/file-info.js.map +1 -1
- package/dist/lib/file-operations/get-multiple-file-info.d.ts.map +1 -1
- package/dist/lib/file-operations/get-multiple-file-info.js +8 -4
- package/dist/lib/file-operations/get-multiple-file-info.js.map +1 -1
- package/dist/lib/file-operations/glob-engine.d.ts.map +1 -1
- package/dist/lib/file-operations/glob-engine.js +46 -19
- package/dist/lib/file-operations/glob-engine.js.map +1 -1
- package/dist/lib/file-operations/list-directory-entry.d.ts.map +1 -1
- package/dist/lib/file-operations/list-directory-entry.js +5 -3
- package/dist/lib/file-operations/list-directory-entry.js.map +1 -1
- package/dist/lib/file-operations/list-directory-helpers.d.ts.map +1 -1
- package/dist/lib/file-operations/list-directory-helpers.js +11 -4
- package/dist/lib/file-operations/list-directory-helpers.js.map +1 -1
- package/dist/lib/file-operations/list-directory.d.ts +12 -2
- package/dist/lib/file-operations/list-directory.d.ts.map +1 -1
- package/dist/lib/file-operations/list-directory.js +155 -3
- package/dist/lib/file-operations/list-directory.js.map +1 -1
- package/dist/lib/file-operations/read-multiple-files-helpers.d.ts.map +1 -1
- package/dist/lib/file-operations/read-multiple-files-helpers.js +40 -19
- package/dist/lib/file-operations/read-multiple-files-helpers.js.map +1 -1
- package/dist/lib/file-operations/read-multiple-files.d.ts +18 -1
- package/dist/lib/file-operations/read-multiple-files.d.ts.map +1 -1
- package/dist/lib/file-operations/read-multiple-files.js +107 -2
- package/dist/lib/file-operations/read-multiple-files.js.map +1 -1
- package/dist/lib/file-operations/search/engine.d.ts.map +1 -1
- package/dist/lib/file-operations/search/engine.js +7 -2
- package/dist/lib/file-operations/search/engine.js.map +1 -1
- package/dist/lib/file-operations/search/scan-file.d.ts.map +1 -1
- package/dist/lib/file-operations/search/scan-file.js +6 -3
- package/dist/lib/file-operations/search/scan-file.js.map +1 -1
- package/dist/lib/file-operations/search/scan-runner.d.ts.map +1 -1
- package/dist/lib/file-operations/search/scan-runner.js +21 -16
- package/dist/lib/file-operations/search/scan-runner.js.map +1 -1
- package/dist/lib/file-operations/search-content.d.ts +64 -17
- package/dist/lib/file-operations/search-content.d.ts.map +1 -1
- package/dist/lib/file-operations/search-content.js +828 -3
- package/dist/lib/file-operations/search-content.js.map +1 -1
- package/dist/lib/file-operations/search-files-collector.d.ts +2 -2
- package/dist/lib/file-operations/search-files-collector.d.ts.map +1 -1
- package/dist/lib/file-operations/search-files-collector.js +23 -11
- package/dist/lib/file-operations/search-files-collector.js.map +1 -1
- package/dist/lib/file-operations/search-files-helpers.d.ts.map +1 -1
- package/dist/lib/file-operations/search-files-helpers.js +5 -2
- package/dist/lib/file-operations/search-files-helpers.js.map +1 -1
- package/dist/lib/file-operations/search-files.d.ts +20 -2
- package/dist/lib/file-operations/search-files.d.ts.map +1 -1
- package/dist/lib/file-operations/search-files.js +192 -5
- package/dist/lib/file-operations/search-files.js.map +1 -1
- package/dist/lib/file-operations/search-worker.d.ts +30 -0
- package/dist/lib/file-operations/search-worker.d.ts.map +1 -0
- package/dist/lib/file-operations/search-worker.js +98 -0
- package/dist/lib/file-operations/search-worker.js.map +1 -0
- package/dist/lib/fs-helpers/readers/read-modes.d.ts.map +1 -1
- package/dist/lib/fs-helpers/readers/read-modes.js +6 -4
- package/dist/lib/fs-helpers/readers/read-modes.js.map +1 -1
- package/dist/lib/fs-helpers/readers/read-options.d.ts.map +1 -1
- package/dist/lib/fs-helpers/readers/read-options.js +8 -3
- package/dist/lib/fs-helpers/readers/read-options.js.map +1 -1
- package/dist/lib/fs-helpers.d.ts +49 -5
- package/dist/lib/fs-helpers.d.ts.map +1 -1
- package/dist/lib/fs-helpers.js +479 -5
- package/dist/lib/fs-helpers.js.map +1 -1
- package/dist/lib/observability/diagnostics-helpers.d.ts +3 -0
- package/dist/lib/observability/diagnostics-helpers.d.ts.map +1 -0
- package/dist/lib/observability/diagnostics-helpers.js +50 -0
- package/dist/lib/observability/diagnostics-helpers.js.map +1 -0
- package/dist/lib/observability/diagnostics.d.ts.map +1 -1
- package/dist/lib/observability/diagnostics.js +24 -59
- package/dist/lib/observability/diagnostics.js.map +1 -1
- package/dist/lib/observability.d.ts +15 -0
- package/dist/lib/observability.d.ts.map +1 -0
- package/dist/lib/observability.js +196 -0
- package/dist/lib/observability.js.map +1 -0
- package/dist/lib/path-validation/validate-existing.js +1 -1
- package/dist/lib/path-validation/validate-existing.js.map +1 -1
- package/dist/lib/path-validation.d.ts +22 -5
- package/dist/lib/path-validation.d.ts.map +1 -1
- package/dist/lib/path-validation.js +340 -5
- package/dist/lib/path-validation.js.map +1 -1
- package/dist/schemas/inputs/directory.d.ts +1 -1
- package/dist/schemas/inputs/directory.d.ts.map +1 -1
- package/dist/schemas/inputs/directory.js +1 -12
- package/dist/schemas/inputs/directory.js.map +1 -1
- package/dist/schemas/inputs/helpers.d.ts +2 -0
- package/dist/schemas/inputs/helpers.d.ts.map +1 -0
- package/dist/schemas/inputs/helpers.js +13 -0
- package/dist/schemas/inputs/helpers.js.map +1 -0
- package/dist/schemas/inputs/safe-glob.d.ts +2 -0
- package/dist/schemas/inputs/safe-glob.d.ts.map +1 -0
- package/dist/schemas/inputs/safe-glob.js +13 -0
- package/dist/schemas/inputs/safe-glob.js.map +1 -0
- package/dist/schemas/inputs/search.d.ts.map +1 -1
- package/dist/schemas/inputs/search.js +2 -13
- package/dist/schemas/inputs/search.js.map +1 -1
- package/dist/schemas/output-helpers.d.ts +6 -1
- package/dist/schemas/output-helpers.d.ts.map +1 -1
- package/dist/schemas/output-helpers.js +5 -0
- package/dist/schemas/output-helpers.js.map +1 -1
- package/dist/schemas/outputs/file-info.d.ts +2 -2
- package/dist/schemas/outputs/file-info.d.ts.map +1 -1
- package/dist/schemas/outputs/file-info.js +2 -8
- package/dist/schemas/outputs/file-info.js.map +1 -1
- package/dist/schemas/outputs/read.d.ts.map +1 -1
- package/dist/schemas/outputs/read.js +2 -7
- package/dist/schemas/outputs/read.js.map +1 -1
- package/dist/schemas.d.ts +256 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +379 -0
- package/dist/schemas.js.map +1 -0
- package/dist/server/roots.d.ts.map +1 -1
- package/dist/server/roots.js +19 -15
- package/dist/server/roots.js.map +1 -1
- package/dist/server.d.ts +11 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +212 -10
- package/dist/server.js.map +1 -1
- package/dist/tools/get-file-info.d.ts.map +1 -1
- package/dist/tools/get-file-info.js +5 -1
- package/dist/tools/get-file-info.js.map +1 -1
- package/dist/tools/get-multiple-file-info.d.ts.map +1 -1
- package/dist/tools/get-multiple-file-info.js +6 -3
- package/dist/tools/get-multiple-file-info.js.map +1 -1
- package/dist/tools/list-directory-formatting.d.ts.map +1 -1
- package/dist/tools/list-directory-formatting.js +7 -1
- package/dist/tools/list-directory-formatting.js.map +1 -1
- package/dist/tools/list-directory.d.ts.map +1 -1
- package/dist/tools/list-directory.js +5 -4
- package/dist/tools/list-directory.js.map +1 -1
- package/dist/tools/read-file.d.ts.map +1 -1
- package/dist/tools/read-file.js +9 -4
- package/dist/tools/read-file.js.map +1 -1
- package/dist/tools/read-multiple-files.d.ts.map +1 -1
- package/dist/tools/read-multiple-files.js +9 -4
- package/dist/tools/read-multiple-files.js.map +1 -1
- package/dist/tools/search-content.d.ts.map +1 -1
- package/dist/tools/search-content.js +19 -17
- package/dist/tools/search-content.js.map +1 -1
- package/dist/tools/search-files.d.ts.map +1 -1
- package/dist/tools/search-files.js +15 -12
- package/dist/tools/search-files.js.map +1 -1
- package/dist/tools/shared/file-info.d.ts +4 -2
- package/dist/tools/shared/file-info.d.ts.map +1 -1
- package/dist/tools/shared/file-info.js +4 -2
- package/dist/tools/shared/file-info.js.map +1 -1
- package/dist/tools/shared/resolve-path.d.ts +2 -0
- package/dist/tools/shared/resolve-path.d.ts.map +1 -0
- package/dist/tools/shared/resolve-path.js +11 -0
- package/dist/tools/shared/resolve-path.js.map +1 -0
- package/dist/tools/shared/search-formatting.d.ts.map +1 -1
- package/dist/tools/shared/search-formatting.js +58 -38
- package/dist/tools/shared/search-formatting.js.map +1 -1
- package/dist/tools/tool-response.d.ts.map +1 -1
- package/dist/tools/tool-response.js +11 -6
- package/dist/tools/tool-response.js.map +1 -1
- package/dist/tools.d.ts +41 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +624 -0
- package/dist/tools.js.map +1 -0
- package/package.json +5 -2
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ A secure, read-only MCP server for filesystem scanning, searching, and analysis
|
|
|
8
8
|
[](LICENSE)
|
|
9
9
|
[](https://nodejs.org)
|
|
10
10
|
[](https://www.typescriptlang.org/)
|
|
11
|
-
[](https://modelcontextprotocol.io)
|
|
12
12
|
|
|
13
13
|
## One-Click Install
|
|
14
14
|
|
|
@@ -19,7 +19,7 @@ A secure, read-only MCP server for filesystem scanning, searching, and analysis
|
|
|
19
19
|
## Features
|
|
20
20
|
|
|
21
21
|
- Directory listing (immediate contents)
|
|
22
|
-
-
|
|
22
|
+
- File search with glob patterns
|
|
23
23
|
- Content search with regex and context lines
|
|
24
24
|
- File reading with head previews (first N lines)
|
|
25
25
|
- Batch reads and metadata lookups in parallel
|
|
@@ -30,7 +30,7 @@ A secure, read-only MCP server for filesystem scanning, searching, and analysis
|
|
|
30
30
|
| Task | Tool |
|
|
31
31
|
| ------------------------------- | ----------- |
|
|
32
32
|
| Explore project structure | `ls` |
|
|
33
|
-
| Find files
|
|
33
|
+
| Find files | `find` |
|
|
34
34
|
| Search for code patterns/text | `grep` |
|
|
35
35
|
| Read source code | `read` |
|
|
36
36
|
| Batch read multiple files | `read_many` |
|
|
@@ -149,7 +149,8 @@ Returns: Allowed directory paths. Structured output includes `ok` and
|
|
|
149
149
|
### `ls`
|
|
150
150
|
|
|
151
151
|
List the immediate contents of a directory (non-recursive). Omit `path` to use
|
|
152
|
-
the first allowed root.
|
|
152
|
+
the first allowed root. If `pattern` is provided, listing is recursive up to
|
|
153
|
+
`maxDepth`.
|
|
153
154
|
|
|
154
155
|
| Parameter | Type | Required | Default | Description |
|
|
155
156
|
| ----------------------- | -------- | -------- | ------------ | -------------------------------------------------------- |
|
|
@@ -170,9 +171,9 @@ Structured output includes `ok`, `path`, `entries`, and `totalEntries`.
|
|
|
170
171
|
|
|
171
172
|
### `find`
|
|
172
173
|
|
|
173
|
-
Search for files using glob patterns.
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
Search for files using glob patterns. Omit `path` to search from the first
|
|
175
|
+
allowed root. `find` does not apply a built-in exclude list; scope your pattern
|
|
176
|
+
to avoid dependency/build directories (e.g., `src/**/*.ts`).
|
|
176
177
|
|
|
177
178
|
| Parameter | Type | Required | Default | Description |
|
|
178
179
|
| ------------ | ------ | -------- | ------------ | ------------------------------------------------------ |
|
|
@@ -197,7 +198,8 @@ Read the contents of a text file.
|
|
|
197
198
|
Notes:
|
|
198
199
|
|
|
199
200
|
- Reads are UTF-8 text only; binary files are rejected.
|
|
200
|
-
-
|
|
201
|
+
- Full reads are capped by `MAX_FILE_SIZE` (default 10MB). When `head` is set,
|
|
202
|
+
output stops at the line limit or size budget, whichever comes first.
|
|
201
203
|
|
|
202
204
|
Returns: File content plus structured metadata (`ok`, `path`, `content`,
|
|
203
205
|
`truncated`, `totalLines`).
|
|
@@ -284,10 +286,11 @@ Matched line content is trimmed to 200 characters.
|
|
|
284
286
|
|
|
285
287
|
---
|
|
286
288
|
|
|
287
|
-
Built-in exclude list
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
289
|
+
Built-in exclude list (used by `grep` when `excludePatterns` is not provided and
|
|
290
|
+
`includeIgnored` is false) includes common dependency/build/output directories
|
|
291
|
+
and files: `node_modules`, `dist`, `build`, `coverage`, `.git`, `.vscode`,
|
|
292
|
+
`.idea`, `.DS_Store`, `.next`, `.nuxt`, `.output`, `.svelte-kit`, `.cache`,
|
|
293
|
+
`.yarn`, `jspm_packages`, `bower_components`, `out`, `tmp`, `.temp`,
|
|
291
294
|
`npm-debug.log`, `yarn-debug.log`, `yarn-error.log`, `Thumbs.db`. Pass
|
|
292
295
|
`excludePatterns: []` or `includeIgnored: true` to disable it.
|
|
293
296
|
|
|
@@ -442,13 +445,15 @@ This server implements multiple layers of security:
|
|
|
442
445
|
src/
|
|
443
446
|
index.ts # CLI entry point
|
|
444
447
|
server.ts # MCP server wiring and roots handling
|
|
448
|
+
tools.ts # MCP tool registration + response helpers
|
|
449
|
+
schemas.ts # Zod input/output schemas
|
|
450
|
+
config.ts # Shared types and formatting helpers
|
|
445
451
|
instructions.md # Tool usage instructions (bundled in dist)
|
|
446
|
-
config/ # Shared types and formatting helpers
|
|
447
452
|
lib/ # Core logic and filesystem operations
|
|
448
|
-
schemas/ # Zod input/output schemas
|
|
449
|
-
tools/ # MCP tool registration
|
|
450
453
|
__tests__/ # node:test + tsx tests
|
|
451
|
-
node-tests/ #
|
|
454
|
+
node-tests/ # Additional Node.js checks
|
|
455
|
+
docs/ # Static docs assets
|
|
456
|
+
dist/ # Build output (generated)
|
|
452
457
|
```
|
|
453
458
|
|
|
454
459
|
## Troubleshooting
|
|
@@ -469,7 +474,7 @@ Contributions are welcome! Please follow these steps:
|
|
|
469
474
|
|
|
470
475
|
1. Fork the repository
|
|
471
476
|
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
|
|
472
|
-
3. Run
|
|
477
|
+
3. Run format, lint, type-check, build, and tests (`npm run format && npm run lint && npm run type-check && npm run build && npm run test`)
|
|
473
478
|
4. Commit your changes (`git commit -m 'Add amazing feature'`)
|
|
474
479
|
5. Push to the branch (`git push origin feature/amazing-feature`)
|
|
475
480
|
6. Open a Pull Request
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
export type FileType = 'file' | 'directory' | 'symlink' | 'other';
|
|
2
|
+
export interface FileInfo {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly path: string;
|
|
5
|
+
readonly type: FileType;
|
|
6
|
+
readonly size: number;
|
|
7
|
+
readonly created: Date;
|
|
8
|
+
readonly modified: Date;
|
|
9
|
+
readonly accessed: Date;
|
|
10
|
+
readonly permissions: string;
|
|
11
|
+
readonly isHidden: boolean;
|
|
12
|
+
readonly mimeType?: string;
|
|
13
|
+
readonly symlinkTarget?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface DirectoryEntry {
|
|
16
|
+
readonly name: string;
|
|
17
|
+
readonly path: string;
|
|
18
|
+
readonly relativePath: string;
|
|
19
|
+
readonly type: FileType;
|
|
20
|
+
readonly size?: number;
|
|
21
|
+
readonly modified?: Date;
|
|
22
|
+
readonly symlinkTarget?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface ListDirectoryResult {
|
|
25
|
+
readonly path: string;
|
|
26
|
+
readonly entries: readonly DirectoryEntry[];
|
|
27
|
+
readonly summary: {
|
|
28
|
+
readonly totalEntries: number;
|
|
29
|
+
readonly entriesScanned?: number;
|
|
30
|
+
readonly entriesVisible?: number;
|
|
31
|
+
readonly totalFiles: number;
|
|
32
|
+
readonly totalDirectories: number;
|
|
33
|
+
readonly maxDepthReached: number;
|
|
34
|
+
readonly truncated: boolean;
|
|
35
|
+
readonly stoppedReason?: 'maxEntries' | 'aborted';
|
|
36
|
+
readonly skippedInaccessible: number;
|
|
37
|
+
readonly symlinksNotFollowed: number;
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export interface SearchResult {
|
|
41
|
+
readonly path: string;
|
|
42
|
+
readonly type: FileType;
|
|
43
|
+
readonly size?: number;
|
|
44
|
+
readonly modified?: Date;
|
|
45
|
+
}
|
|
46
|
+
export interface SearchFilesResult {
|
|
47
|
+
readonly basePath: string;
|
|
48
|
+
readonly pattern: string;
|
|
49
|
+
readonly results: readonly SearchResult[];
|
|
50
|
+
readonly summary: {
|
|
51
|
+
readonly matched: number;
|
|
52
|
+
readonly truncated: boolean;
|
|
53
|
+
readonly skippedInaccessible: number;
|
|
54
|
+
readonly filesScanned: number;
|
|
55
|
+
readonly stoppedReason?: 'maxResults' | 'maxFiles' | 'timeout';
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
export interface ContentMatch {
|
|
59
|
+
readonly file: string;
|
|
60
|
+
readonly line: number;
|
|
61
|
+
readonly content: string;
|
|
62
|
+
readonly contextBefore?: readonly string[];
|
|
63
|
+
readonly contextAfter?: readonly string[];
|
|
64
|
+
readonly matchCount: number;
|
|
65
|
+
}
|
|
66
|
+
export interface SearchContentResult {
|
|
67
|
+
readonly basePath: string;
|
|
68
|
+
readonly pattern: string;
|
|
69
|
+
readonly filePattern: string;
|
|
70
|
+
readonly matches: readonly ContentMatch[];
|
|
71
|
+
readonly summary: {
|
|
72
|
+
readonly filesScanned: number;
|
|
73
|
+
readonly filesMatched: number;
|
|
74
|
+
readonly matches: number;
|
|
75
|
+
readonly truncated: boolean;
|
|
76
|
+
readonly skippedTooLarge: number;
|
|
77
|
+
readonly skippedBinary: number;
|
|
78
|
+
readonly skippedInaccessible: number;
|
|
79
|
+
readonly linesSkippedDueToRegexTimeout: number;
|
|
80
|
+
readonly stoppedReason?: 'maxResults' | 'maxFiles' | 'timeout';
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
export interface MultipleFileInfoResult {
|
|
84
|
+
readonly path: string;
|
|
85
|
+
readonly info?: FileInfo;
|
|
86
|
+
readonly error?: string;
|
|
87
|
+
}
|
|
88
|
+
export interface GetMultipleFileInfoResult {
|
|
89
|
+
readonly results: readonly MultipleFileInfoResult[];
|
|
90
|
+
readonly summary: {
|
|
91
|
+
readonly total: number;
|
|
92
|
+
readonly succeeded: number;
|
|
93
|
+
readonly failed: number;
|
|
94
|
+
readonly totalSize: number;
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
export declare const ErrorCode: {
|
|
98
|
+
readonly E_ACCESS_DENIED: "E_ACCESS_DENIED";
|
|
99
|
+
readonly E_NOT_FOUND: "E_NOT_FOUND";
|
|
100
|
+
readonly E_NOT_FILE: "E_NOT_FILE";
|
|
101
|
+
readonly E_NOT_DIRECTORY: "E_NOT_DIRECTORY";
|
|
102
|
+
readonly E_TOO_LARGE: "E_TOO_LARGE";
|
|
103
|
+
readonly E_TIMEOUT: "E_TIMEOUT";
|
|
104
|
+
readonly E_INVALID_PATTERN: "E_INVALID_PATTERN";
|
|
105
|
+
readonly E_INVALID_INPUT: "E_INVALID_INPUT";
|
|
106
|
+
readonly E_PERMISSION_DENIED: "E_PERMISSION_DENIED";
|
|
107
|
+
readonly E_SYMLINK_NOT_ALLOWED: "E_SYMLINK_NOT_ALLOWED";
|
|
108
|
+
readonly E_UNKNOWN: "E_UNKNOWN";
|
|
109
|
+
};
|
|
110
|
+
export type ErrorCode = (typeof ErrorCode)[keyof typeof ErrorCode];
|
|
111
|
+
export declare function formatBytes(bytes: number): string;
|
|
112
|
+
export declare function joinLines(lines: readonly string[]): string;
|
|
113
|
+
export declare function formatOperationSummary(summary: {
|
|
114
|
+
truncated?: boolean;
|
|
115
|
+
truncatedReason?: string;
|
|
116
|
+
}): string;
|
|
117
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export const ErrorCode = {
|
|
2
|
+
E_ACCESS_DENIED: 'E_ACCESS_DENIED',
|
|
3
|
+
E_NOT_FOUND: 'E_NOT_FOUND',
|
|
4
|
+
E_NOT_FILE: 'E_NOT_FILE',
|
|
5
|
+
E_NOT_DIRECTORY: 'E_NOT_DIRECTORY',
|
|
6
|
+
E_TOO_LARGE: 'E_TOO_LARGE',
|
|
7
|
+
E_TIMEOUT: 'E_TIMEOUT',
|
|
8
|
+
E_INVALID_PATTERN: 'E_INVALID_PATTERN',
|
|
9
|
+
E_INVALID_INPUT: 'E_INVALID_INPUT',
|
|
10
|
+
E_PERMISSION_DENIED: 'E_PERMISSION_DENIED',
|
|
11
|
+
E_SYMLINK_NOT_ALLOWED: 'E_SYMLINK_NOT_ALLOWED',
|
|
12
|
+
E_UNKNOWN: 'E_UNKNOWN',
|
|
13
|
+
};
|
|
14
|
+
const BYTE_UNIT_LABELS = ['B', 'KB', 'MB', 'GB', 'TB'];
|
|
15
|
+
export function formatBytes(bytes) {
|
|
16
|
+
if (bytes === 0)
|
|
17
|
+
return '0 B';
|
|
18
|
+
const unitIndex = Math.floor(Math.log(bytes) / Math.log(1024));
|
|
19
|
+
const unit = BYTE_UNIT_LABELS[unitIndex] ?? 'B';
|
|
20
|
+
const value = bytes / Math.pow(1024, unitIndex);
|
|
21
|
+
return `${parseFloat(value.toFixed(2))} ${unit}`;
|
|
22
|
+
}
|
|
23
|
+
export function joinLines(lines) {
|
|
24
|
+
return lines.join('\n');
|
|
25
|
+
}
|
|
26
|
+
export function formatOperationSummary(summary) {
|
|
27
|
+
if (!summary.truncated)
|
|
28
|
+
return '';
|
|
29
|
+
return `\n[truncated: ${summary.truncatedReason ?? 'limit reached'}]`;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AA0GA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,eAAe,EAAE,iBAAiB;IAClC,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,iBAAiB;IAClC,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,iBAAiB,EAAE,mBAAmB;IACtC,eAAe,EAAE,iBAAiB;IAClC,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,SAAS,EAAE,WAAW;CACd,CAAC;AAIX,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC;AAEhE,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC;IAChD,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChD,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAwB;IAChD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAGtC;IACC,IAAI,CAAC,OAAO,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,iBAAiB,OAAO,CAAC,eAAe,IAAI,eAAe,GAAG,CAAC;AACxE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { DEFAULT_SEARCH_TIMEOUT_MS } from './lib/constants.js';
|
|
3
|
-
import { createTimedAbortSignal } from './lib/fs-helpers
|
|
4
|
-
import { setAllowedDirectoriesResolved } from './lib/path-validation
|
|
3
|
+
import { createTimedAbortSignal } from './lib/fs-helpers.js';
|
|
4
|
+
import { setAllowedDirectoriesResolved } from './lib/path-validation.js';
|
|
5
5
|
import { createServer, parseArgs, startServer } from './server.js';
|
|
6
6
|
const SHUTDOWN_TIMEOUT_MS = 5000;
|
|
7
7
|
let activeServer;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/constants.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export declare const DEFAULT_LIST_MAX_ENTRIES = 10000;
|
|
|
13
13
|
export declare const DEFAULT_SEARCH_MAX_FILES = 20000;
|
|
14
14
|
export declare const MAX_LINE_CONTENT_LENGTH = 200;
|
|
15
15
|
export declare const BINARY_CHECK_BUFFER_SIZE = 512;
|
|
16
|
-
export
|
|
17
|
-
export
|
|
18
|
-
export
|
|
16
|
+
export declare const KNOWN_BINARY_EXTENSIONS: Set<string>;
|
|
17
|
+
export declare const DEFAULT_EXCLUDE_PATTERNS: string[];
|
|
18
|
+
export declare function getMimeType(ext: string): string;
|
|
19
19
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAG5D,eAAO,MAAM,wBAAwB,QAKpC,CAAC;AACF,eAAO,MAAM,kBAAkB,QAK9B,CAAC;AACF,eAAO,MAAM,yBAAyB,QAKrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAK1B,CAAC;AAGF,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAG9C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,oBAAoB,QAA0B,CAAC;AAG5D,eAAO,MAAM,wBAAwB,QAKpC,CAAC;AACF,eAAO,MAAM,kBAAkB,QAK9B,CAAC;AACF,eAAO,MAAM,yBAAyB,QAKrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,QAK1B,CAAC;AAGF,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAG9C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C,eAAO,MAAM,uBAAuB,aAyClC,CAAC;AAEH,eAAO,MAAM,wBAAwB,UAwBpC,CAAC;AA6DF,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C"}
|
package/dist/lib/constants.js
CHANGED
|
@@ -35,7 +35,133 @@ export const DEFAULT_SEARCH_MAX_FILES = 20000;
|
|
|
35
35
|
// Non-configurable constants
|
|
36
36
|
export const MAX_LINE_CONTENT_LENGTH = 200;
|
|
37
37
|
export const BINARY_CHECK_BUFFER_SIZE = 512;
|
|
38
|
-
export
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
export const KNOWN_BINARY_EXTENSIONS = new Set([
|
|
39
|
+
'.png',
|
|
40
|
+
'.jpg',
|
|
41
|
+
'.jpeg',
|
|
42
|
+
'.gif',
|
|
43
|
+
'.webp',
|
|
44
|
+
'.bmp',
|
|
45
|
+
'.ico',
|
|
46
|
+
'.mp3',
|
|
47
|
+
'.wav',
|
|
48
|
+
'.flac',
|
|
49
|
+
'.mp4',
|
|
50
|
+
'.mov',
|
|
51
|
+
'.avi',
|
|
52
|
+
'.mkv',
|
|
53
|
+
'.webm',
|
|
54
|
+
'.zip',
|
|
55
|
+
'.tar',
|
|
56
|
+
'.gz',
|
|
57
|
+
'.7z',
|
|
58
|
+
'.rar',
|
|
59
|
+
'.exe',
|
|
60
|
+
'.dll',
|
|
61
|
+
'.so',
|
|
62
|
+
'.dylib',
|
|
63
|
+
'.ttf',
|
|
64
|
+
'.otf',
|
|
65
|
+
'.woff',
|
|
66
|
+
'.woff2',
|
|
67
|
+
'.pdf',
|
|
68
|
+
'.doc',
|
|
69
|
+
'.docx',
|
|
70
|
+
'.xls',
|
|
71
|
+
'.xlsx',
|
|
72
|
+
'.ppt',
|
|
73
|
+
'.pptx',
|
|
74
|
+
'.sqlite',
|
|
75
|
+
'.db',
|
|
76
|
+
'.wasm',
|
|
77
|
+
'.bin',
|
|
78
|
+
'.dat',
|
|
79
|
+
]);
|
|
80
|
+
export const DEFAULT_EXCLUDE_PATTERNS = [
|
|
81
|
+
'**/node_modules/**',
|
|
82
|
+
'**/dist/**',
|
|
83
|
+
'**/build/**',
|
|
84
|
+
'**/coverage/**',
|
|
85
|
+
'**/.git/**',
|
|
86
|
+
'**/.vscode/**',
|
|
87
|
+
'**/.idea/**',
|
|
88
|
+
'**/.DS_Store',
|
|
89
|
+
'**/.next/**',
|
|
90
|
+
'**/.nuxt/**',
|
|
91
|
+
'**/.output/**',
|
|
92
|
+
'**/.svelte-kit/**',
|
|
93
|
+
'**/.cache/**',
|
|
94
|
+
'**/.yarn/**',
|
|
95
|
+
'**/jspm_packages/**',
|
|
96
|
+
'**/bower_components/**',
|
|
97
|
+
'**/out/**',
|
|
98
|
+
'**/tmp/**',
|
|
99
|
+
'**/.temp/**',
|
|
100
|
+
'**/npm-debug.log',
|
|
101
|
+
'**/yarn-debug.log',
|
|
102
|
+
'**/yarn-error.log',
|
|
103
|
+
'**/Thumbs.db',
|
|
104
|
+
];
|
|
105
|
+
const MIME_TYPES = new Map([
|
|
106
|
+
['.png', 'image/png'],
|
|
107
|
+
['.jpg', 'image/jpeg'],
|
|
108
|
+
['.jpeg', 'image/jpeg'],
|
|
109
|
+
['.gif', 'image/gif'],
|
|
110
|
+
['.webp', 'image/webp'],
|
|
111
|
+
['.svg', 'image/svg+xml'],
|
|
112
|
+
['.ico', 'image/x-icon'],
|
|
113
|
+
['.bmp', 'image/bmp'],
|
|
114
|
+
['.tiff', 'image/tiff'],
|
|
115
|
+
['.tif', 'image/tiff'],
|
|
116
|
+
['.avif', 'image/avif'],
|
|
117
|
+
['.heic', 'image/heic'],
|
|
118
|
+
['.heif', 'image/heif'],
|
|
119
|
+
['.mp3', 'audio/mpeg'],
|
|
120
|
+
['.wav', 'audio/wav'],
|
|
121
|
+
['.ogg', 'audio/ogg'],
|
|
122
|
+
['.flac', 'audio/flac'],
|
|
123
|
+
['.aac', 'audio/aac'],
|
|
124
|
+
['.m4a', 'audio/mp4'],
|
|
125
|
+
['.wma', 'audio/x-ms-wma'],
|
|
126
|
+
['.opus', 'audio/opus'],
|
|
127
|
+
['.mp4', 'video/mp4'],
|
|
128
|
+
['.webm', 'video/webm'],
|
|
129
|
+
['.avi', 'video/x-msvideo'],
|
|
130
|
+
['.mov', 'video/quicktime'],
|
|
131
|
+
['.wmv', 'video/x-ms-wmv'],
|
|
132
|
+
['.mkv', 'video/x-matroska'],
|
|
133
|
+
['.flv', 'video/x-flv'],
|
|
134
|
+
['.pdf', 'application/pdf'],
|
|
135
|
+
['.txt', 'text/plain'],
|
|
136
|
+
['.log', 'text/plain'],
|
|
137
|
+
['.md', 'text/markdown'],
|
|
138
|
+
['.markdown', 'text/markdown'],
|
|
139
|
+
['.json', 'application/json'],
|
|
140
|
+
['.jsonc', 'application/json'],
|
|
141
|
+
['.xml', 'application/xml'],
|
|
142
|
+
['.yaml', 'text/yaml'],
|
|
143
|
+
['.yml', 'text/yaml'],
|
|
144
|
+
['.html', 'text/html'],
|
|
145
|
+
['.htm', 'text/html'],
|
|
146
|
+
['.css', 'text/css'],
|
|
147
|
+
['.js', 'text/javascript'],
|
|
148
|
+
['.mjs', 'text/javascript'],
|
|
149
|
+
['.cjs', 'text/javascript'],
|
|
150
|
+
['.ts', 'text/typescript'],
|
|
151
|
+
['.tsx', 'text/typescript'],
|
|
152
|
+
['.zip', 'application/zip'],
|
|
153
|
+
['.tar', 'application/x-tar'],
|
|
154
|
+
['.gz', 'application/gzip'],
|
|
155
|
+
['.7z', 'application/x-7z-compressed'],
|
|
156
|
+
['.rar', 'application/vnd.rar'],
|
|
157
|
+
['.ttf', 'font/ttf'],
|
|
158
|
+
['.otf', 'font/otf'],
|
|
159
|
+
['.woff', 'font/woff'],
|
|
160
|
+
['.woff2', 'font/woff2'],
|
|
161
|
+
['.wasm', 'application/wasm'],
|
|
162
|
+
]);
|
|
163
|
+
export function getMimeType(ext) {
|
|
164
|
+
const lowerExt = ext.toLowerCase();
|
|
165
|
+
return MIME_TYPES.get(lowerExt) ?? 'application/octet-stream';
|
|
166
|
+
}
|
|
41
167
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C,+EAA+E;AAC/E,SAAS,WAAW,CAClB,MAAc,EACd,YAAoB,EACpB,GAAW,EACX,GAAW;IAEX,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK;QAAE,OAAO,YAAY,CAAC;IAEhC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,GAAG,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QACzD,OAAO,CAAC,KAAK,CACX,qBAAqB,MAAM,WAAW,KAAK,aAAa,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,YAAY,CAAC,EAAE,CAC9H,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8DAA8D;AAC9D,SAAS,qBAAqB;IAC5B,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,EAAE,CAAC;AAE5D,yCAAyC;AACzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,WAAW,CACjD,iBAAiB,EACjB,IAAI,GAAG,IAAI,EACX,GAAG,GAAG,IAAI,EACV,EAAE,GAAG,IAAI,GAAG,IAAI,CACjB,CAAC;AACF,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAC3C,eAAe,EACf,EAAE,GAAG,IAAI,GAAG,IAAI,EAChB,IAAI,GAAG,IAAI,EACX,GAAG,GAAG,IAAI,GAAG,IAAI,CAClB,CAAC;AACF,MAAM,CAAC,MAAM,yBAAyB,GAAG,WAAW,CAClD,wBAAwB,EACxB,KAAK,EACL,GAAG,EACH,OAAO,CACR,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CACvC,2BAA2B,EAC3B,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,EACnC,CAAC,EACD,EAAE,CACH,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAE9C,6BAA6B;AAC7B,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAC3C,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAE5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/errors.d.ts
CHANGED
package/dist/lib/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,UAAU,aAAa;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,cAAc,CAK1E;AA6BD,qBAAa,QAAS,SAAQ,KAAK;IAExB,IAAI,EAAE,SAAS;IAEf,IAAI,CAAC,EAAE,MAAM;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHjC,IAAI,EAAE,SAAS,EACtB,OAAO,EAAE,MAAM,EACR,IAAI,CAAC,EAAE,MAAM,YAAA,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA,EACxC,KAAK,CAAC,EAAE,OAAO;IAOjB,MAAM,CAAC,SAAS,CACd,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,OAAO,EACtB,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,QAAQ;CAOZ;AA8DD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,EACd,IAAI,CAAC,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC1C,aAAa,CAWf;AAqBD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAYhE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAErD"}
|
package/dist/lib/errors.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { joinLines } from '../config
|
|
2
|
-
import { ErrorCode } from '../config/types.js';
|
|
1
|
+
import { ErrorCode, joinLines } from '../config.js';
|
|
3
2
|
export { ErrorCode };
|
|
4
3
|
export function isNodeError(error) {
|
|
5
4
|
if (!(error instanceof Error))
|
|
@@ -100,13 +99,14 @@ export function createDetailedError(error, path, additionalDetails) {
|
|
|
100
99
|
const message = error instanceof Error ? error.message : String(error);
|
|
101
100
|
const code = classifyError(error);
|
|
102
101
|
const suggestion = ERROR_SUGGESTIONS[code];
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
102
|
+
const resolvedPath = resolveErrorPath(error, path);
|
|
103
|
+
const details = mergeErrorDetails(error, additionalDetails);
|
|
104
|
+
const result = { code, message, suggestion };
|
|
105
|
+
if (resolvedPath)
|
|
106
|
+
result.path = resolvedPath;
|
|
107
|
+
if (details)
|
|
108
|
+
result.details = details;
|
|
109
|
+
return result;
|
|
110
110
|
}
|
|
111
111
|
function resolveErrorPath(error, path) {
|
|
112
112
|
if (path)
|
package/dist/lib/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
-
import type { FileInfo } from '../../config
|
|
1
|
+
import type { FileInfo, GetMultipleFileInfoResult } from '../../config.js';
|
|
2
2
|
export declare function getFileInfo(filePath: string, options?: {
|
|
3
3
|
includeMimeType?: boolean;
|
|
4
4
|
signal?: AbortSignal;
|
|
5
5
|
}): Promise<FileInfo>;
|
|
6
|
+
interface GetMultipleFileInfoOptions {
|
|
7
|
+
includeMimeType?: boolean;
|
|
8
|
+
signal?: AbortSignal;
|
|
9
|
+
}
|
|
10
|
+
export declare function getMultipleFileInfo(paths: readonly string[], options?: GetMultipleFileInfoOptions): Promise<GetMultipleFileInfoResult>;
|
|
11
|
+
export {};
|
|
6
12
|
//# sourceMappingURL=file-info.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-info.d.ts","sourceRoot":"","sources":["../../../src/lib/file-operations/file-info.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"file-info.d.ts","sourceRoot":"","sources":["../../../src/lib/file-operations/file-info.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,QAAQ,EACR,yBAAyB,EAE1B,MAAM,iBAAiB,CAAC;AA2EzB,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GAChE,OAAO,CAAC,QAAQ,CAAC,CA0BnB;AAqBD,UAAU,0BAA0B;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAsGD,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,yBAAyB,CAAC,CAYpC"}
|