@j0hanz/fs-context-mcp 2.1.1 → 2.1.2
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/package.json +4 -4
- package/dist/__tests__/lib/errors-classify.test.d.ts +0 -2
- package/dist/__tests__/lib/errors-classify.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors-classify.test.js +0 -53
- package/dist/__tests__/lib/errors-classify.test.js.map +0 -1
- package/dist/__tests__/lib/errors-detailed.test.d.ts +0 -2
- package/dist/__tests__/lib/errors-detailed.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors-detailed.test.js +0 -38
- package/dist/__tests__/lib/errors-detailed.test.js.map +0 -1
- package/dist/__tests__/lib/errors-is-node-error.test.d.ts +0 -2
- package/dist/__tests__/lib/errors-is-node-error.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors-is-node-error.test.js +0 -21
- package/dist/__tests__/lib/errors-is-node-error.test.js.map +0 -1
- package/dist/__tests__/lib/errors-mcp-error.test.d.ts +0 -2
- package/dist/__tests__/lib/errors-mcp-error.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors-mcp-error.test.js +0 -29
- package/dist/__tests__/lib/errors-mcp-error.test.js.map +0 -1
- package/dist/__tests__/lib/errors-node-map.test.d.ts +0 -2
- package/dist/__tests__/lib/errors-node-map.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors-node-map.test.js +0 -16
- package/dist/__tests__/lib/errors-node-map.test.js.map +0 -1
- package/dist/__tests__/lib/errors-suggestion.test.d.ts +0 -2
- package/dist/__tests__/lib/errors-suggestion.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors-suggestion.test.js +0 -11
- package/dist/__tests__/lib/errors-suggestion.test.js.map +0 -1
- package/dist/__tests__/lib/errors.test.d.ts +0 -2
- package/dist/__tests__/lib/errors.test.d.ts.map +0 -1
- package/dist/__tests__/lib/errors.test.js +0 -171
- package/dist/__tests__/lib/errors.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/analyze-directory-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/analyze-directory-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/analyze-directory-edge-cases.test.js +0 -15
- package/dist/__tests__/lib/file-operations/analyze-directory-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/analyze-directory.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/analyze-directory.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/analyze-directory.test.js +0 -28
- package/dist/__tests__/lib/file-operations/analyze-directory.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/compute-checksums.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/compute-checksums.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/compute-checksums.test.js +0 -59
- package/dist/__tests__/lib/file-operations/compute-checksums.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/directory-tree-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/directory-tree-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/directory-tree-edge-cases.test.js +0 -29
- package/dist/__tests__/lib/file-operations/directory-tree-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/directory-tree.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/directory-tree.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/directory-tree.test.js +0 -75
- package/dist/__tests__/lib/file-operations/directory-tree.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/get-file-info.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/get-file-info.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/get-file-info.test.js +0 -17
- package/dist/__tests__/lib/file-operations/get-file-info.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.js +0 -46
- package/dist/__tests__/lib/file-operations/get-multiple-file-info.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/list-directory-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/list-directory-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/list-directory-edge-cases.test.js +0 -21
- package/dist/__tests__/lib/file-operations/list-directory-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/list-directory.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/list-directory.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/list-directory.test.js +0 -31
- package/dist/__tests__/lib/file-operations/list-directory.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/read-media-file.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/read-media-file.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/read-media-file.test.js +0 -21
- package/dist/__tests__/lib/file-operations/read-media-file.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.js +0 -40
- package/dist/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/read-multiple-files.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/read-multiple-files.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/read-multiple-files.test.js +0 -57
- package/dist/__tests__/lib/file-operations/read-multiple-files.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-content-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/search-content-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-content-edge-cases.test.js +0 -57
- package/dist/__tests__/lib/file-operations/search-content-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-content.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/search-content.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-content.test.js +0 -73
- package/dist/__tests__/lib/file-operations/search-content.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-definitions-helpers.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/search-definitions-helpers.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-definitions-helpers.test.js +0 -43
- package/dist/__tests__/lib/file-operations/search-definitions-helpers.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-definitions.fixtures.d.ts +0 -7
- package/dist/__tests__/lib/file-operations/search-definitions.fixtures.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-definitions.fixtures.js +0 -113
- package/dist/__tests__/lib/file-operations/search-definitions.fixtures.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-definitions.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/search-definitions.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-definitions.test.js +0 -163
- package/dist/__tests__/lib/file-operations/search-definitions.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-files-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/search-files-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-files-edge-cases.test.js +0 -13
- package/dist/__tests__/lib/file-operations/search-files-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/search-files.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/search-files.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/search-files.test.js +0 -31
- package/dist/__tests__/lib/file-operations/search-files.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations/sorting.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations/sorting.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations/sorting.test.js +0 -22
- package/dist/__tests__/lib/file-operations/sorting.test.js.map +0 -1
- package/dist/__tests__/lib/file-operations.test.d.ts +0 -2
- package/dist/__tests__/lib/file-operations.test.d.ts.map +0 -1
- package/dist/__tests__/lib/file-operations.test.js +0 -475
- package/dist/__tests__/lib/file-operations.test.js.map +0 -1
- package/dist/__tests__/lib/fixtures/file-ops-fixture.d.ts +0 -7
- package/dist/__tests__/lib/fixtures/file-ops-fixture.d.ts.map +0 -1
- package/dist/__tests__/lib/fixtures/file-ops-fixture.js +0 -87
- package/dist/__tests__/lib/fixtures/file-ops-fixture.js.map +0 -1
- package/dist/__tests__/lib/fixtures/file-ops-hooks.d.ts +0 -2
- package/dist/__tests__/lib/fixtures/file-ops-hooks.d.ts.map +0 -1
- package/dist/__tests__/lib/fixtures/file-ops-hooks.js +0 -13
- package/dist/__tests__/lib/fixtures/file-ops-hooks.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/file-type.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/file-type.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/file-type.test.js +0 -15
- package/dist/__tests__/lib/fs-helpers/file-type.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/head-file-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/head-file-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/head-file-edge-cases.test.js +0 -19
- package/dist/__tests__/lib/fs-helpers/head-file-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/head-file.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/head-file.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/head-file.test.js +0 -12
- package/dist/__tests__/lib/fs-helpers/head-file.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/is-hidden.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/is-hidden.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/is-hidden.test.js +0 -7
- package/dist/__tests__/lib/fs-helpers/is-hidden.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/is-probably-binary.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/is-probably-binary.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/is-probably-binary.test.js +0 -33
- package/dist/__tests__/lib/fs-helpers/is-probably-binary.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/read-file-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/read-file-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/read-file-edge-cases.test.js +0 -57
- package/dist/__tests__/lib/fs-helpers/read-file-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/read-file.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/read-file.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/read-file.test.js +0 -21
- package/dist/__tests__/lib/fs-helpers/read-file.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/tail-file-edge-cases.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/tail-file-edge-cases.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/tail-file-edge-cases.test.js +0 -26
- package/dist/__tests__/lib/fs-helpers/tail-file-edge-cases.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/tail-file.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/tail-file.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/tail-file.test.js +0 -11
- package/dist/__tests__/lib/fs-helpers/tail-file.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers/utf8.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers/utf8.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers/utf8.test.js +0 -43
- package/dist/__tests__/lib/fs-helpers/utf8.test.js.map +0 -1
- package/dist/__tests__/lib/fs-helpers.test.d.ts +0 -2
- package/dist/__tests__/lib/fs-helpers.test.d.ts.map +0 -1
- package/dist/__tests__/lib/fs-helpers.test.js +0 -183
- package/dist/__tests__/lib/fs-helpers.test.js.map +0 -1
- package/dist/__tests__/lib/path-validation-errors.test.d.ts +0 -2
- package/dist/__tests__/lib/path-validation-errors.test.d.ts.map +0 -1
- package/dist/__tests__/lib/path-validation-errors.test.js +0 -35
- package/dist/__tests__/lib/path-validation-errors.test.js.map +0 -1
- package/dist/__tests__/lib/path-validation-roots.test.d.ts +0 -2
- package/dist/__tests__/lib/path-validation-roots.test.d.ts.map +0 -1
- package/dist/__tests__/lib/path-validation-roots.test.js +0 -42
- package/dist/__tests__/lib/path-validation-roots.test.js.map +0 -1
- package/dist/__tests__/lib/path-validation.test.d.ts +0 -2
- package/dist/__tests__/lib/path-validation.test.d.ts.map +0 -1
- package/dist/__tests__/lib/path-validation.test.js +0 -127
- package/dist/__tests__/lib/path-validation.test.js.map +0 -1
- package/dist/__tests__/schemas/validators.test.d.ts +0 -2
- package/dist/__tests__/schemas/validators.test.d.ts.map +0 -1
- package/dist/__tests__/schemas/validators.test.js +0 -114
- package/dist/__tests__/schemas/validators.test.js.map +0 -1
- package/dist/__tests__/security/filesystem-boundary.test.d.ts +0 -2
- package/dist/__tests__/security/filesystem-boundary.test.d.ts.map +0 -1
- package/dist/__tests__/security/filesystem-boundary.test.js +0 -64
- package/dist/__tests__/security/filesystem-boundary.test.js.map +0 -1
- package/dist/config/formatting.d.ts +0 -7
- package/dist/config/formatting.d.ts.map +0 -1
- package/dist/config/formatting.js +0 -18
- package/dist/config/formatting.js.map +0 -1
- package/dist/config/types.d.ts +0 -111
- package/dist/config/types.d.ts.map +0 -1
- package/dist/config/types.js +0 -14
- package/dist/config/types.js.map +0 -1
- package/dist/lib/constants/binary-extensions.d.ts +0 -2
- package/dist/lib/constants/binary-extensions.d.ts.map +0 -1
- package/dist/lib/constants/binary-extensions.js +0 -43
- package/dist/lib/constants/binary-extensions.js.map +0 -1
- package/dist/lib/constants/exclude-patterns.d.ts +0 -2
- package/dist/lib/constants/exclude-patterns.d.ts.map +0 -1
- package/dist/lib/constants/exclude-patterns.js +0 -26
- package/dist/lib/constants/exclude-patterns.js.map +0 -1
- package/dist/lib/constants/mime-types.d.ts +0 -2
- package/dist/lib/constants/mime-types.d.ts.map +0 -1
- package/dist/lib/constants/mime-types.js +0 -63
- package/dist/lib/constants/mime-types.js.map +0 -1
- package/dist/lib/file-operations/analyze-directory-helpers.d.ts +0 -24
- package/dist/lib/file-operations/analyze-directory-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/analyze-directory-helpers.js +0 -50
- package/dist/lib/file-operations/analyze-directory-helpers.js.map +0 -1
- package/dist/lib/file-operations/analyze-directory.d.ts +0 -10
- package/dist/lib/file-operations/analyze-directory.d.ts.map +0 -1
- package/dist/lib/file-operations/analyze-directory.js +0 -120
- package/dist/lib/file-operations/analyze-directory.js.map +0 -1
- package/dist/lib/file-operations/batch-results.d.ts +0 -13
- package/dist/lib/file-operations/batch-results.d.ts.map +0 -1
- package/dist/lib/file-operations/batch-results.js +0 -23
- package/dist/lib/file-operations/batch-results.js.map +0 -1
- package/dist/lib/file-operations/compute-checksums.d.ts +0 -10
- package/dist/lib/file-operations/compute-checksums.d.ts.map +0 -1
- package/dist/lib/file-operations/compute-checksums.js +0 -134
- package/dist/lib/file-operations/compute-checksums.js.map +0 -1
- package/dist/lib/file-operations/directory-helpers.d.ts +0 -18
- package/dist/lib/file-operations/directory-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/directory-helpers.js +0 -80
- package/dist/lib/file-operations/directory-helpers.js.map +0 -1
- package/dist/lib/file-operations/directory-items.d.ts +0 -20
- package/dist/lib/file-operations/directory-items.d.ts.map +0 -1
- package/dist/lib/file-operations/directory-items.js +0 -85
- package/dist/lib/file-operations/directory-items.js.map +0 -1
- package/dist/lib/file-operations/directory-iteration.d.ts +0 -17
- package/dist/lib/file-operations/directory-iteration.d.ts.map +0 -1
- package/dist/lib/file-operations/directory-iteration.js +0 -55
- package/dist/lib/file-operations/directory-iteration.js.map +0 -1
- package/dist/lib/file-operations/directory-tree-builders.d.ts +0 -7
- package/dist/lib/file-operations/directory-tree-builders.d.ts.map +0 -1
- package/dist/lib/file-operations/directory-tree-builders.js +0 -58
- package/dist/lib/file-operations/directory-tree-builders.js.map +0 -1
- package/dist/lib/file-operations/directory-tree-helpers.d.ts +0 -33
- package/dist/lib/file-operations/directory-tree-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/directory-tree-helpers.js +0 -124
- package/dist/lib/file-operations/directory-tree-helpers.js.map +0 -1
- package/dist/lib/file-operations/directory-tree.d.ts +0 -10
- package/dist/lib/file-operations/directory-tree.d.ts.map +0 -1
- package/dist/lib/file-operations/directory-tree.js +0 -60
- package/dist/lib/file-operations/directory-tree.js.map +0 -1
- package/dist/lib/file-operations/get-multiple-file-info.d.ts +0 -8
- package/dist/lib/file-operations/get-multiple-file-info.d.ts.map +0 -1
- package/dist/lib/file-operations/get-multiple-file-info.js +0 -80
- package/dist/lib/file-operations/get-multiple-file-info.js.map +0 -1
- package/dist/lib/file-operations/list-directory-entry.d.ts +0 -20
- package/dist/lib/file-operations/list-directory-entry.d.ts.map +0 -1
- package/dist/lib/file-operations/list-directory-entry.js +0 -46
- package/dist/lib/file-operations/list-directory-entry.js.map +0 -1
- package/dist/lib/file-operations/list-directory-helpers.d.ts +0 -21
- package/dist/lib/file-operations/list-directory-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/list-directory-helpers.js +0 -110
- package/dist/lib/file-operations/list-directory-helpers.js.map +0 -1
- package/dist/lib/file-operations/list-directory-matching.d.ts +0 -6
- package/dist/lib/file-operations/list-directory-matching.d.ts.map +0 -1
- package/dist/lib/file-operations/list-directory-matching.js +0 -94
- package/dist/lib/file-operations/list-directory-matching.js.map +0 -1
- package/dist/lib/file-operations/pattern-complexity.d.ts +0 -16
- package/dist/lib/file-operations/pattern-complexity.d.ts.map +0 -1
- package/dist/lib/file-operations/pattern-complexity.js +0 -86
- package/dist/lib/file-operations/pattern-complexity.js.map +0 -1
- package/dist/lib/file-operations/pattern-validator.d.ts +0 -5
- package/dist/lib/file-operations/pattern-validator.d.ts.map +0 -1
- package/dist/lib/file-operations/pattern-validator.js +0 -70
- package/dist/lib/file-operations/pattern-validator.js.map +0 -1
- package/dist/lib/file-operations/read-media-file.d.ts +0 -5
- package/dist/lib/file-operations/read-media-file.d.ts.map +0 -1
- package/dist/lib/file-operations/read-media-file.js +0 -35
- package/dist/lib/file-operations/read-media-file.js.map +0 -1
- package/dist/lib/file-operations/read-multiple-budget.d.ts +0 -12
- package/dist/lib/file-operations/read-multiple-budget.d.ts.map +0 -1
- package/dist/lib/file-operations/read-multiple-budget.js +0 -40
- package/dist/lib/file-operations/read-multiple-budget.js.map +0 -1
- package/dist/lib/file-operations/read-multiple-files-helpers.d.ts +0 -47
- package/dist/lib/file-operations/read-multiple-files-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/read-multiple-files-helpers.js +0 -73
- package/dist/lib/file-operations/read-multiple-files-helpers.js.map +0 -1
- package/dist/lib/file-operations/read-multiple-utils.d.ts +0 -78
- package/dist/lib/file-operations/read-multiple-utils.d.ts.map +0 -1
- package/dist/lib/file-operations/read-multiple-utils.js +0 -120
- package/dist/lib/file-operations/read-multiple-utils.js.map +0 -1
- package/dist/lib/file-operations/search/context-manager.d.ts +0 -19
- package/dist/lib/file-operations/search/context-manager.d.ts.map +0 -1
- package/dist/lib/file-operations/search/context-manager.js +0 -82
- package/dist/lib/file-operations/search/context-manager.js.map +0 -1
- package/dist/lib/file-operations/search/engine-options.d.ts +0 -19
- package/dist/lib/file-operations/search/engine-options.d.ts.map +0 -1
- package/dist/lib/file-operations/search/engine-options.js +0 -25
- package/dist/lib/file-operations/search/engine-options.js.map +0 -1
- package/dist/lib/file-operations/search/engine-stream-state.d.ts +0 -17
- package/dist/lib/file-operations/search/engine-stream-state.d.ts.map +0 -1
- package/dist/lib/file-operations/search/engine-stream-state.js +0 -122
- package/dist/lib/file-operations/search/engine-stream-state.js.map +0 -1
- package/dist/lib/file-operations/search/engine-stream.d.ts +0 -6
- package/dist/lib/file-operations/search/engine-stream.d.ts.map +0 -1
- package/dist/lib/file-operations/search/engine-stream.js +0 -158
- package/dist/lib/file-operations/search/engine-stream.js.map +0 -1
- package/dist/lib/file-operations/search/engine.d.ts +0 -4
- package/dist/lib/file-operations/search/engine.d.ts.map +0 -1
- package/dist/lib/file-operations/search/engine.js +0 -116
- package/dist/lib/file-operations/search/engine.js.map +0 -1
- package/dist/lib/file-operations/search/file-processor.d.ts +0 -4
- package/dist/lib/file-operations/search/file-processor.d.ts.map +0 -1
- package/dist/lib/file-operations/search/file-processor.js +0 -148
- package/dist/lib/file-operations/search/file-processor.js.map +0 -1
- package/dist/lib/file-operations/search/line-iterator.d.ts +0 -3
- package/dist/lib/file-operations/search/line-iterator.d.ts.map +0 -1
- package/dist/lib/file-operations/search/line-iterator.js +0 -86
- package/dist/lib/file-operations/search/line-iterator.js.map +0 -1
- package/dist/lib/file-operations/search/match-strategy.d.ts +0 -8
- package/dist/lib/file-operations/search/match-strategy.d.ts.map +0 -1
- package/dist/lib/file-operations/search/match-strategy.js +0 -111
- package/dist/lib/file-operations/search/match-strategy.js.map +0 -1
- package/dist/lib/file-operations/search/options.d.ts +0 -23
- package/dist/lib/file-operations/search/options.d.ts.map +0 -1
- package/dist/lib/file-operations/search/options.js +0 -25
- package/dist/lib/file-operations/search/options.js.map +0 -1
- package/dist/lib/file-operations/search/scan-collector.d.ts +0 -20
- package/dist/lib/file-operations/search/scan-collector.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-collector.js +0 -82
- package/dist/lib/file-operations/search/scan-collector.js.map +0 -1
- package/dist/lib/file-operations/search/scan-file.d.ts +0 -11
- package/dist/lib/file-operations/search/scan-file.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-file.js +0 -87
- package/dist/lib/file-operations/search/scan-file.js.map +0 -1
- package/dist/lib/file-operations/search/scan-helpers.d.ts +0 -42
- package/dist/lib/file-operations/search/scan-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-helpers.js +0 -56
- package/dist/lib/file-operations/search/scan-helpers.js.map +0 -1
- package/dist/lib/file-operations/search/scan-runner.d.ts +0 -14
- package/dist/lib/file-operations/search/scan-runner.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-runner.js +0 -111
- package/dist/lib/file-operations/search/scan-runner.js.map +0 -1
- package/dist/lib/file-operations/search/scan-strategy-parallel.d.ts +0 -5
- package/dist/lib/file-operations/search/scan-strategy-parallel.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-strategy-parallel.js +0 -136
- package/dist/lib/file-operations/search/scan-strategy-parallel.js.map +0 -1
- package/dist/lib/file-operations/search/scan-strategy-shared.d.ts +0 -12
- package/dist/lib/file-operations/search/scan-strategy-shared.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-strategy-shared.js +0 -25
- package/dist/lib/file-operations/search/scan-strategy-shared.js.map +0 -1
- package/dist/lib/file-operations/search/scan-strategy.d.ts +0 -5
- package/dist/lib/file-operations/search/scan-strategy.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-strategy.js +0 -27
- package/dist/lib/file-operations/search/scan-strategy.js.map +0 -1
- package/dist/lib/file-operations/search/scan-types.d.ts +0 -19
- package/dist/lib/file-operations/search/scan-types.d.ts.map +0 -1
- package/dist/lib/file-operations/search/scan-types.js +0 -2
- package/dist/lib/file-operations/search/scan-types.js.map +0 -1
- package/dist/lib/file-operations/search/search-worker.d.ts +0 -30
- package/dist/lib/file-operations/search/search-worker.d.ts.map +0 -1
- package/dist/lib/file-operations/search/search-worker.js +0 -112
- package/dist/lib/file-operations/search/search-worker.js.map +0 -1
- package/dist/lib/file-operations/search/types.d.ts +0 -39
- package/dist/lib/file-operations/search/types.d.ts.map +0 -1
- package/dist/lib/file-operations/search/types.js +0 -2
- package/dist/lib/file-operations/search/types.js.map +0 -1
- package/dist/lib/file-operations/search/worker-client.d.ts +0 -20
- package/dist/lib/file-operations/search/worker-client.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker-client.js +0 -144
- package/dist/lib/file-operations/search/worker-client.js.map +0 -1
- package/dist/lib/file-operations/search/worker-pool-helpers.d.ts +0 -10
- package/dist/lib/file-operations/search/worker-pool-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker-pool-helpers.js +0 -69
- package/dist/lib/file-operations/search/worker-pool-helpers.js.map +0 -1
- package/dist/lib/file-operations/search/worker-pool-manager.d.ts +0 -3
- package/dist/lib/file-operations/search/worker-pool-manager.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker-pool-manager.js +0 -21
- package/dist/lib/file-operations/search/worker-pool-manager.js.map +0 -1
- package/dist/lib/file-operations/search/worker-pool-types.d.ts +0 -39
- package/dist/lib/file-operations/search/worker-pool-types.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker-pool-types.js +0 -2
- package/dist/lib/file-operations/search/worker-pool-types.js.map +0 -1
- package/dist/lib/file-operations/search/worker-pool.d.ts +0 -28
- package/dist/lib/file-operations/search/worker-pool.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker-pool.js +0 -154
- package/dist/lib/file-operations/search/worker-pool.js.map +0 -1
- package/dist/lib/file-operations/search/worker-scan.d.ts +0 -26
- package/dist/lib/file-operations/search/worker-scan.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker-scan.js +0 -24
- package/dist/lib/file-operations/search/worker-scan.js.map +0 -1
- package/dist/lib/file-operations/search/worker.d.ts +0 -23
- package/dist/lib/file-operations/search/worker.d.ts.map +0 -1
- package/dist/lib/file-operations/search/worker.js +0 -28
- package/dist/lib/file-operations/search/worker.js.map +0 -1
- package/dist/lib/file-operations/search-content-scan.d.ts +0 -29
- package/dist/lib/file-operations/search-content-scan.d.ts.map +0 -1
- package/dist/lib/file-operations/search-content-scan.js +0 -468
- package/dist/lib/file-operations/search-content-scan.js.map +0 -1
- package/dist/lib/file-operations/search-content-worker-api.d.ts +0 -56
- package/dist/lib/file-operations/search-content-worker-api.d.ts.map +0 -1
- package/dist/lib/file-operations/search-content-worker-api.js +0 -239
- package/dist/lib/file-operations/search-content-worker-api.js.map +0 -1
- package/dist/lib/file-operations/search-definitions/matchers.d.ts +0 -12
- package/dist/lib/file-operations/search-definitions/matchers.d.ts.map +0 -1
- package/dist/lib/file-operations/search-definitions/matchers.js +0 -122
- package/dist/lib/file-operations/search-definitions/matchers.js.map +0 -1
- package/dist/lib/file-operations/search-definitions/patterns.d.ts +0 -14
- package/dist/lib/file-operations/search-definitions/patterns.d.ts.map +0 -1
- package/dist/lib/file-operations/search-definitions/patterns.js +0 -83
- package/dist/lib/file-operations/search-definitions/patterns.js.map +0 -1
- package/dist/lib/file-operations/search-definitions.d.ts +0 -6
- package/dist/lib/file-operations/search-definitions.d.ts.map +0 -1
- package/dist/lib/file-operations/search-definitions.js +0 -42
- package/dist/lib/file-operations/search-definitions.js.map +0 -1
- package/dist/lib/file-operations/search-files-collector.d.ts +0 -10
- package/dist/lib/file-operations/search-files-collector.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-collector.js +0 -123
- package/dist/lib/file-operations/search-files-collector.js.map +0 -1
- package/dist/lib/file-operations/search-files-helpers.d.ts +0 -17
- package/dist/lib/file-operations/search-files-helpers.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-helpers.js +0 -19
- package/dist/lib/file-operations/search-files-helpers.js.map +0 -1
- package/dist/lib/file-operations/search-files-options.d.ts +0 -33
- package/dist/lib/file-operations/search-files-options.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-options.js +0 -33
- package/dist/lib/file-operations/search-files-options.js.map +0 -1
- package/dist/lib/file-operations/search-files-state.d.ts +0 -12
- package/dist/lib/file-operations/search-files-state.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-state.js +0 -26
- package/dist/lib/file-operations/search-files-state.js.map +0 -1
- package/dist/lib/file-operations/search-files-stream-processor.d.ts +0 -7
- package/dist/lib/file-operations/search-files-stream-processor.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-stream-processor.js +0 -171
- package/dist/lib/file-operations/search-files-stream-processor.js.map +0 -1
- package/dist/lib/file-operations/search-files-stream-types.d.ts +0 -6
- package/dist/lib/file-operations/search-files-stream-types.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-stream-types.js +0 -2
- package/dist/lib/file-operations/search-files-stream-types.js.map +0 -1
- package/dist/lib/file-operations/search-files-stream.d.ts +0 -9
- package/dist/lib/file-operations/search-files-stream.d.ts.map +0 -1
- package/dist/lib/file-operations/search-files-stream.js +0 -74
- package/dist/lib/file-operations/search-files-stream.js.map +0 -1
- package/dist/lib/file-operations/sorting.d.ts +0 -9
- package/dist/lib/file-operations/sorting.d.ts.map +0 -1
- package/dist/lib/file-operations/sorting.js +0 -51
- package/dist/lib/file-operations/sorting.js.map +0 -1
- package/dist/lib/file-operations/stream-control.d.ts +0 -15
- package/dist/lib/file-operations/stream-control.d.ts.map +0 -1
- package/dist/lib/file-operations/stream-control.js +0 -60
- package/dist/lib/file-operations/stream-control.js.map +0 -1
- package/dist/lib/file-operations.d.ts +0 -8
- package/dist/lib/file-operations.d.ts.map +0 -1
- package/dist/lib/file-operations.js +0 -8
- package/dist/lib/file-operations.js.map +0 -1
- package/dist/lib/fs-helpers/abort.d.ts +0 -7
- package/dist/lib/fs-helpers/abort.d.ts.map +0 -1
- package/dist/lib/fs-helpers/abort.js +0 -109
- package/dist/lib/fs-helpers/abort.js.map +0 -1
- package/dist/lib/fs-helpers/binary-detect.d.ts +0 -3
- package/dist/lib/fs-helpers/binary-detect.d.ts.map +0 -1
- package/dist/lib/fs-helpers/binary-detect.js +0 -60
- package/dist/lib/fs-helpers/binary-detect.js.map +0 -1
- package/dist/lib/fs-helpers/concurrency.d.ts +0 -10
- package/dist/lib/fs-helpers/concurrency.d.ts.map +0 -1
- package/dist/lib/fs-helpers/concurrency.js +0 -106
- package/dist/lib/fs-helpers/concurrency.js.map +0 -1
- package/dist/lib/fs-helpers/fs-utils.d.ts +0 -5
- package/dist/lib/fs-helpers/fs-utils.d.ts.map +0 -1
- package/dist/lib/fs-helpers/fs-utils.js +0 -13
- package/dist/lib/fs-helpers/fs-utils.js.map +0 -1
- package/dist/lib/fs-helpers/readers/binary-check.d.ts +0 -3
- package/dist/lib/fs-helpers/readers/binary-check.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/binary-check.js +0 -11
- package/dist/lib/fs-helpers/readers/binary-check.js.map +0 -1
- package/dist/lib/fs-helpers/readers/head-file.d.ts +0 -3
- package/dist/lib/fs-helpers/readers/head-file.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/head-file.js +0 -21
- package/dist/lib/fs-helpers/readers/head-file.js.map +0 -1
- package/dist/lib/fs-helpers/readers/line-range.d.ts +0 -9
- package/dist/lib/fs-helpers/readers/line-range.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/line-range.js +0 -86
- package/dist/lib/fs-helpers/readers/line-range.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-buffer.d.ts +0 -3
- package/dist/lib/fs-helpers/readers/read-buffer.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-buffer.js +0 -43
- package/dist/lib/fs-helpers/readers/read-buffer.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file-content.d.ts +0 -16
- package/dist/lib/fs-helpers/readers/read-file-content.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file-content.js +0 -29
- package/dist/lib/fs-helpers/readers/read-file-content.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file-types.d.ts +0 -40
- package/dist/lib/fs-helpers/readers/read-file-types.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file-types.js +0 -2
- package/dist/lib/fs-helpers/readers/read-file-types.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file-utils.d.ts +0 -43
- package/dist/lib/fs-helpers/readers/read-file-utils.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file-utils.js +0 -128
- package/dist/lib/fs-helpers/readers/read-file-utils.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file.d.ts +0 -5
- package/dist/lib/fs-helpers/readers/read-file.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-file.js +0 -42
- package/dist/lib/fs-helpers/readers/read-file.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-modes.d.ts +0 -5
- package/dist/lib/fs-helpers/readers/read-modes.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-modes.js +0 -61
- package/dist/lib/fs-helpers/readers/read-modes.js.map +0 -1
- package/dist/lib/fs-helpers/readers/read-options.d.ts +0 -28
- package/dist/lib/fs-helpers/readers/read-options.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/read-options.js +0 -21
- package/dist/lib/fs-helpers/readers/read-options.js.map +0 -1
- package/dist/lib/fs-helpers/readers/stream-lines.d.ts +0 -7
- package/dist/lib/fs-helpers/readers/stream-lines.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/stream-lines.js +0 -61
- package/dist/lib/fs-helpers/readers/stream-lines.js.map +0 -1
- package/dist/lib/fs-helpers/readers/tail-file.d.ts +0 -3
- package/dist/lib/fs-helpers/readers/tail-file.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/tail-file.js +0 -94
- package/dist/lib/fs-helpers/readers/tail-file.js.map +0 -1
- package/dist/lib/fs-helpers/readers/utf8.d.ts +0 -3
- package/dist/lib/fs-helpers/readers/utf8.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers/utf8.js +0 -33
- package/dist/lib/fs-helpers/readers/utf8.js.map +0 -1
- package/dist/lib/fs-helpers/readers.d.ts +0 -4
- package/dist/lib/fs-helpers/readers.d.ts.map +0 -1
- package/dist/lib/fs-helpers/readers.js +0 -4
- package/dist/lib/fs-helpers/readers.js.map +0 -1
- package/dist/lib/line-range.d.ts +0 -22
- package/dist/lib/line-range.d.ts.map +0 -1
- package/dist/lib/line-range.js +0 -54
- package/dist/lib/line-range.js.map +0 -1
- package/dist/lib/merge-defined.d.ts +0 -2
- package/dist/lib/merge-defined.d.ts.map +0 -1
- package/dist/lib/merge-defined.js +0 -8
- package/dist/lib/merge-defined.js.map +0 -1
- package/dist/lib/observability/diagnostics-helpers.d.ts +0 -3
- package/dist/lib/observability/diagnostics-helpers.d.ts.map +0 -1
- package/dist/lib/observability/diagnostics-helpers.js +0 -50
- package/dist/lib/observability/diagnostics-helpers.js.map +0 -1
- package/dist/lib/observability/diagnostics.d.ts +0 -15
- package/dist/lib/observability/diagnostics.d.ts.map +0 -1
- package/dist/lib/observability/diagnostics.js +0 -142
- package/dist/lib/observability/diagnostics.js.map +0 -1
- package/dist/lib/observability/perf.d.ts +0 -4
- package/dist/lib/observability/perf.d.ts.map +0 -1
- package/dist/lib/observability/perf.js +0 -8
- package/dist/lib/observability/perf.js.map +0 -1
- package/dist/lib/path-utils.d.ts +0 -3
- package/dist/lib/path-utils.d.ts.map +0 -1
- package/dist/lib/path-utils.js +0 -29
- package/dist/lib/path-utils.js.map +0 -1
- package/dist/lib/path-validation/allowed-directories.d.ts +0 -5
- package/dist/lib/path-validation/allowed-directories.d.ts.map +0 -1
- package/dist/lib/path-validation/allowed-directories.js +0 -68
- package/dist/lib/path-validation/allowed-directories.js.map +0 -1
- package/dist/lib/path-validation/errors.d.ts +0 -4
- package/dist/lib/path-validation/errors.d.ts.map +0 -1
- package/dist/lib/path-validation/errors.js +0 -47
- package/dist/lib/path-validation/errors.js.map +0 -1
- package/dist/lib/path-validation/path-errors.d.ts +0 -4
- package/dist/lib/path-validation/path-errors.d.ts.map +0 -1
- package/dist/lib/path-validation/path-errors.js +0 -51
- package/dist/lib/path-validation/path-errors.js.map +0 -1
- package/dist/lib/path-validation/path-rules.d.ts +0 -3
- package/dist/lib/path-validation/path-rules.d.ts.map +0 -1
- package/dist/lib/path-validation/path-rules.js +0 -88
- package/dist/lib/path-validation/path-rules.js.map +0 -1
- package/dist/lib/path-validation/roots.d.ts +0 -3
- package/dist/lib/path-validation/roots.d.ts.map +0 -1
- package/dist/lib/path-validation/roots.js +0 -56
- package/dist/lib/path-validation/roots.js.map +0 -1
- package/dist/lib/path-validation/validate-existing.d.ts +0 -10
- package/dist/lib/path-validation/validate-existing.d.ts.map +0 -1
- package/dist/lib/path-validation/validate-existing.js +0 -71
- package/dist/lib/path-validation/validate-existing.js.map +0 -1
- package/dist/lib/path-validation/validators.d.ts +0 -10
- package/dist/lib/path-validation/validators.d.ts.map +0 -1
- package/dist/lib/path-validation/validators.js +0 -113
- package/dist/lib/path-validation/validators.js.map +0 -1
- package/dist/lib/performance/monitor.d.ts +0 -25
- package/dist/lib/performance/monitor.d.ts.map +0 -1
- package/dist/lib/performance/monitor.js +0 -84
- package/dist/lib/performance/monitor.js.map +0 -1
- package/dist/lib/strict-stdio-transport.d.ts +0 -31
- package/dist/lib/strict-stdio-transport.d.ts.map +0 -1
- package/dist/lib/strict-stdio-transport.js +0 -158
- package/dist/lib/strict-stdio-transport.js.map +0 -1
- package/dist/schemas/common.d.ts +0 -14
- package/dist/schemas/common.d.ts.map +0 -1
- package/dist/schemas/common.js +0 -9
- package/dist/schemas/common.js.map +0 -1
- package/dist/schemas/error-schema.d.ts +0 -8
- package/dist/schemas/error-schema.d.ts.map +0 -1
- package/dist/schemas/error-schema.js +0 -8
- package/dist/schemas/error-schema.js.map +0 -1
- package/dist/schemas/file-type-schema.d.ts +0 -8
- package/dist/schemas/file-type-schema.d.ts.map +0 -1
- package/dist/schemas/file-type-schema.js +0 -3
- package/dist/schemas/file-type-schema.js.map +0 -1
- package/dist/schemas/index.d.ts +0 -3
- package/dist/schemas/index.d.ts.map +0 -1
- package/dist/schemas/index.js +0 -4
- package/dist/schemas/index.js.map +0 -1
- package/dist/schemas/input-helpers.d.ts +0 -38
- package/dist/schemas/input-helpers.d.ts.map +0 -1
- package/dist/schemas/input-helpers.js +0 -127
- package/dist/schemas/input-helpers.js.map +0 -1
- package/dist/schemas/inputs/checksums.d.ts +0 -8
- package/dist/schemas/inputs/checksums.d.ts.map +0 -1
- package/dist/schemas/inputs/checksums.js +0 -25
- package/dist/schemas/inputs/checksums.js.map +0 -1
- package/dist/schemas/inputs/directory.d.ts +0 -18
- package/dist/schemas/inputs/directory.d.ts.map +0 -1
- package/dist/schemas/inputs/directory.js +0 -70
- package/dist/schemas/inputs/directory.js.map +0 -1
- package/dist/schemas/inputs/file-info.d.ts +0 -8
- package/dist/schemas/inputs/file-info.d.ts.map +0 -1
- package/dist/schemas/inputs/file-info.js +0 -17
- package/dist/schemas/inputs/file-info.js.map +0 -1
- package/dist/schemas/inputs/helpers.d.ts +0 -2
- package/dist/schemas/inputs/helpers.d.ts.map +0 -1
- package/dist/schemas/inputs/helpers.js +0 -13
- package/dist/schemas/inputs/helpers.js.map +0 -1
- package/dist/schemas/inputs/read.d.ts +0 -10
- package/dist/schemas/inputs/read.d.ts.map +0 -1
- package/dist/schemas/inputs/read.js +0 -20
- package/dist/schemas/inputs/read.js.map +0 -1
- package/dist/schemas/inputs/roots.d.ts +0 -3
- package/dist/schemas/inputs/roots.d.ts.map +0 -1
- package/dist/schemas/inputs/roots.js +0 -5
- package/dist/schemas/inputs/roots.js.map +0 -1
- package/dist/schemas/inputs/safe-glob.d.ts +0 -2
- package/dist/schemas/inputs/safe-glob.d.ts.map +0 -1
- package/dist/schemas/inputs/safe-glob.js +0 -13
- package/dist/schemas/inputs/safe-glob.js.map +0 -1
- package/dist/schemas/inputs/search.d.ts +0 -26
- package/dist/schemas/inputs/search.d.ts.map +0 -1
- package/dist/schemas/inputs/search.js +0 -149
- package/dist/schemas/inputs/search.js.map +0 -1
- package/dist/schemas/inputs.d.ts +0 -6
- package/dist/schemas/inputs.d.ts.map +0 -1
- package/dist/schemas/inputs.js +0 -6
- package/dist/schemas/inputs.js.map +0 -1
- package/dist/schemas/line-range-schemas.d.ts +0 -3
- package/dist/schemas/line-range-schemas.d.ts.map +0 -1
- package/dist/schemas/line-range-schemas.js +0 -8
- package/dist/schemas/line-range-schemas.js.map +0 -1
- package/dist/schemas/output-helpers.d.ts +0 -25
- package/dist/schemas/output-helpers.d.ts.map +0 -1
- package/dist/schemas/output-helpers.js +0 -21
- package/dist/schemas/output-helpers.js.map +0 -1
- package/dist/schemas/outputs/checksums.d.ts +0 -93
- package/dist/schemas/outputs/checksums.d.ts.map +0 -1
- package/dist/schemas/outputs/checksums.js +0 -18
- package/dist/schemas/outputs/checksums.js.map +0 -1
- package/dist/schemas/outputs/directory.d.ts +0 -35
- package/dist/schemas/outputs/directory.d.ts.map +0 -1
- package/dist/schemas/outputs/directory.js +0 -24
- package/dist/schemas/outputs/directory.js.map +0 -1
- package/dist/schemas/outputs/file-info.d.ts +0 -65
- package/dist/schemas/outputs/file-info.d.ts.map +0 -1
- package/dist/schemas/outputs/file-info.js +0 -21
- package/dist/schemas/outputs/file-info.js.map +0 -1
- package/dist/schemas/outputs/read.d.ts +0 -35
- package/dist/schemas/outputs/read.d.ts.map +0 -1
- package/dist/schemas/outputs/read.js +0 -25
- package/dist/schemas/outputs/read.js.map +0 -1
- package/dist/schemas/outputs/search.d.ts +0 -36
- package/dist/schemas/outputs/search.d.ts.map +0 -1
- package/dist/schemas/outputs/search.js +0 -31
- package/dist/schemas/outputs/search.js.map +0 -1
- package/dist/schemas/outputs.d.ts +0 -5
- package/dist/schemas/outputs.d.ts.map +0 -1
- package/dist/schemas/outputs.js +0 -5
- package/dist/schemas/outputs.js.map +0 -1
- package/dist/server/cli.d.ts +0 -7
- package/dist/server/cli.d.ts.map +0 -1
- package/dist/server/cli.js +0 -81
- package/dist/server/cli.js.map +0 -1
- package/dist/server/roots.d.ts +0 -10
- package/dist/server/roots.d.ts.map +0 -1
- package/dist/server/roots.js +0 -130
- package/dist/server/roots.js.map +0 -1
- package/dist/tooling/tool-response.d.ts +0 -32
- package/dist/tooling/tool-response.d.ts.map +0 -1
- package/dist/tooling/tool-response.js +0 -63
- package/dist/tooling/tool-response.js.map +0 -1
- package/dist/tooling/tools-registry.d.ts +0 -5
- package/dist/tooling/tools-registry.d.ts.map +0 -1
- package/dist/tooling/tools-registry.js +0 -532
- package/dist/tooling/tools-registry.js.map +0 -1
- package/dist/tools/analyze-directory.d.ts +0 -3
- package/dist/tools/analyze-directory.d.ts.map +0 -1
- package/dist/tools/analyze-directory.js +0 -99
- package/dist/tools/analyze-directory.js.map +0 -1
- package/dist/tools/compute-checksums.d.ts +0 -3
- package/dist/tools/compute-checksums.d.ts.map +0 -1
- package/dist/tools/compute-checksums.js +0 -69
- package/dist/tools/compute-checksums.js.map +0 -1
- package/dist/tools/directory-tree.d.ts +0 -3
- package/dist/tools/directory-tree.d.ts.map +0 -1
- package/dist/tools/directory-tree.js +0 -82
- package/dist/tools/directory-tree.js.map +0 -1
- package/dist/tools/get-file-info.d.ts +0 -3
- package/dist/tools/get-file-info.d.ts.map +0 -1
- package/dist/tools/get-file-info.js +0 -50
- package/dist/tools/get-file-info.js.map +0 -1
- package/dist/tools/get-multiple-file-info.d.ts +0 -3
- package/dist/tools/get-multiple-file-info.d.ts.map +0 -1
- package/dist/tools/get-multiple-file-info.js +0 -75
- package/dist/tools/get-multiple-file-info.js.map +0 -1
- package/dist/tools/index.d.ts +0 -3
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -19
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/list-allowed-dirs.d.ts +0 -3
- package/dist/tools/list-allowed-dirs.d.ts.map +0 -1
- package/dist/tools/list-allowed-dirs.js +0 -41
- package/dist/tools/list-allowed-dirs.js.map +0 -1
- package/dist/tools/list-directory-formatting.d.ts +0 -5
- package/dist/tools/list-directory-formatting.d.ts.map +0 -1
- package/dist/tools/list-directory-formatting.js +0 -35
- package/dist/tools/list-directory-formatting.js.map +0 -1
- package/dist/tools/list-directory.d.ts +0 -3
- package/dist/tools/list-directory.d.ts.map +0 -1
- package/dist/tools/list-directory.js +0 -78
- package/dist/tools/list-directory.js.map +0 -1
- package/dist/tools/read-file.d.ts +0 -3
- package/dist/tools/read-file.d.ts.map +0 -1
- package/dist/tools/read-file.js +0 -57
- package/dist/tools/read-file.js.map +0 -1
- package/dist/tools/read-media-file.d.ts +0 -3
- package/dist/tools/read-media-file.d.ts.map +0 -1
- package/dist/tools/read-media-file.js +0 -52
- package/dist/tools/read-media-file.js.map +0 -1
- package/dist/tools/read-multiple-files.d.ts +0 -3
- package/dist/tools/read-multiple-files.d.ts.map +0 -1
- package/dist/tools/read-multiple-files.js +0 -74
- package/dist/tools/read-multiple-files.js.map +0 -1
- package/dist/tools/search-content.d.ts +0 -3
- package/dist/tools/search-content.d.ts.map +0 -1
- package/dist/tools/search-content.js +0 -76
- package/dist/tools/search-content.js.map +0 -1
- package/dist/tools/search-definitions.d.ts +0 -3
- package/dist/tools/search-definitions.d.ts.map +0 -1
- package/dist/tools/search-definitions.js +0 -133
- package/dist/tools/search-definitions.js.map +0 -1
- package/dist/tools/search-files.d.ts +0 -3
- package/dist/tools/search-files.d.ts.map +0 -1
- package/dist/tools/search-files.js +0 -71
- package/dist/tools/search-files.js.map +0 -1
- package/dist/tools/shared/abort.d.ts +0 -5
- package/dist/tools/shared/abort.d.ts.map +0 -1
- package/dist/tools/shared/abort.js +0 -41
- package/dist/tools/shared/abort.js.map +0 -1
- package/dist/tools/shared/file-info.d.ts +0 -19
- package/dist/tools/shared/file-info.d.ts.map +0 -1
- package/dist/tools/shared/file-info.js +0 -35
- package/dist/tools/shared/file-info.js.map +0 -1
- package/dist/tools/shared/formatting.d.ts +0 -18
- package/dist/tools/shared/formatting.d.ts.map +0 -1
- package/dist/tools/shared/formatting.js +0 -51
- package/dist/tools/shared/formatting.js.map +0 -1
- package/dist/tools/shared/read-range.d.ts +0 -7
- package/dist/tools/shared/read-range.d.ts.map +0 -1
- package/dist/tools/shared/read-range.js +0 -22
- package/dist/tools/shared/read-range.js.map +0 -1
- package/dist/tools/shared/resolve-path.d.ts +0 -2
- package/dist/tools/shared/resolve-path.d.ts.map +0 -1
- package/dist/tools/shared/resolve-path.js +0 -11
- package/dist/tools/shared/resolve-path.js.map +0 -1
- package/dist/tools/shared/search-formatting.d.ts +0 -8
- package/dist/tools/shared/search-formatting.d.ts.map +0 -1
- package/dist/tools/shared/search-formatting.js +0 -100
- package/dist/tools/shared/search-formatting.js.map +0 -1
- package/dist/tools/shared/with-timed-signal.d.ts +0 -2
- package/dist/tools/shared/with-timed-signal.d.ts.map +0 -1
- package/dist/tools/shared/with-timed-signal.js +0 -11
- package/dist/tools/shared/with-timed-signal.js.map +0 -1
- package/dist/tools/tool-response.d.ts +0 -31
- package/dist/tools/tool-response.d.ts.map +0 -1
- package/dist/tools/tool-response.js +0 -53
- package/dist/tools/tool-response.js.map +0 -1
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as os from 'node:os';
|
|
3
|
-
import * as path from 'node:path';
|
|
4
|
-
import { afterAll, beforeAll, expect, it } from 'vitest';
|
|
5
|
-
import { computeChecksums } from '../../../lib/file-operations.js';
|
|
6
|
-
import { setAllowedDirectoriesResolved } from '../../../lib/path-validation.js';
|
|
7
|
-
let tempDir;
|
|
8
|
-
let testFile1;
|
|
9
|
-
let testFile2;
|
|
10
|
-
beforeAll(async () => {
|
|
11
|
-
tempDir = await fs.mkdtemp(path.join(os.tmpdir(), 'checksum-test-'));
|
|
12
|
-
testFile1 = path.join(tempDir, 'file1.txt');
|
|
13
|
-
testFile2 = path.join(tempDir, 'file2.txt');
|
|
14
|
-
await fs.writeFile(testFile1, 'Hello World');
|
|
15
|
-
await fs.writeFile(testFile2, 'Hello World'); // Same content
|
|
16
|
-
await setAllowedDirectoriesResolved([tempDir]);
|
|
17
|
-
});
|
|
18
|
-
afterAll(async () => {
|
|
19
|
-
await fs.rm(tempDir, { recursive: true, force: true });
|
|
20
|
-
});
|
|
21
|
-
it('should compute SHA-256 checksums by default', async () => {
|
|
22
|
-
const result = await computeChecksums([testFile1]);
|
|
23
|
-
expect(result.summary.total).toBe(1);
|
|
24
|
-
expect(result.summary.succeeded).toBe(1);
|
|
25
|
-
expect(result.results[0]?.checksum).toBeDefined();
|
|
26
|
-
expect(result.results[0]?.algorithm).toBe('sha256');
|
|
27
|
-
expect(result.results[0]?.checksum).toHaveLength(64); // SHA-256 hex is 64 chars
|
|
28
|
-
});
|
|
29
|
-
it('should detect identical content with same checksum', async () => {
|
|
30
|
-
const result = await computeChecksums([testFile1, testFile2]);
|
|
31
|
-
expect(result.summary.succeeded).toBe(2);
|
|
32
|
-
expect(result.results[0]?.checksum).toBe(result.results[1]?.checksum);
|
|
33
|
-
});
|
|
34
|
-
it('should support different algorithms', async () => {
|
|
35
|
-
const md5Result = await computeChecksums([testFile1], { algorithm: 'md5' });
|
|
36
|
-
const sha512Result = await computeChecksums([testFile1], {
|
|
37
|
-
algorithm: 'sha512',
|
|
38
|
-
});
|
|
39
|
-
expect(md5Result.results[0]?.checksum).toHaveLength(32); // MD5 hex
|
|
40
|
-
expect(sha512Result.results[0]?.checksum).toHaveLength(128); // SHA-512 hex
|
|
41
|
-
});
|
|
42
|
-
it('should support base64 encoding', async () => {
|
|
43
|
-
const result = await computeChecksums([testFile1], { encoding: 'base64' });
|
|
44
|
-
expect(result.results[0]?.checksum).toMatch(/^[A-Za-z0-9+/=]+$/);
|
|
45
|
-
});
|
|
46
|
-
it('should handle non-existent files gracefully', async () => {
|
|
47
|
-
const nonExistent = path.join(tempDir, 'nonexistent.txt');
|
|
48
|
-
const result = await computeChecksums([testFile1, nonExistent]);
|
|
49
|
-
expect(result.summary.succeeded).toBe(1);
|
|
50
|
-
expect(result.summary.failed).toBe(1);
|
|
51
|
-
const errorResult = result.results.find((r) => r.path === nonExistent);
|
|
52
|
-
expect(errorResult?.error).toBeDefined();
|
|
53
|
-
});
|
|
54
|
-
it('should return empty result for empty array', async () => {
|
|
55
|
-
const result = await computeChecksums([]);
|
|
56
|
-
expect(result.summary.total).toBe(0);
|
|
57
|
-
expect(result.results).toHaveLength(0);
|
|
58
|
-
});
|
|
59
|
-
//# sourceMappingURL=compute-checksums.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compute-checksums.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/compute-checksums.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"directory-tree-edge-cases.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/directory-tree-edge-cases.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { expect, it } from 'vitest';
|
|
2
|
-
import { getDirectoryTree } from '../../../lib/file-operations.js';
|
|
3
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
4
|
-
const getTestDir = useFileOpsFixture();
|
|
5
|
-
function firstIndexOfType(children, type) {
|
|
6
|
-
const index = children.findIndex((child) => child.type === type);
|
|
7
|
-
return index >= 0 ? index : null;
|
|
8
|
-
}
|
|
9
|
-
function lastIndexOfType(children, type) {
|
|
10
|
-
for (let i = children.length - 1; i >= 0; i--) {
|
|
11
|
-
if (children[i]?.type === type)
|
|
12
|
-
return i;
|
|
13
|
-
}
|
|
14
|
-
return null;
|
|
15
|
-
}
|
|
16
|
-
it('getDirectoryTree handles deep nesting with truncation', async () => {
|
|
17
|
-
const result = await getDirectoryTree(getTestDir(), { maxDepth: 0 });
|
|
18
|
-
expect(result.summary.truncated).toBe(true);
|
|
19
|
-
});
|
|
20
|
-
it('getDirectoryTree sorts entries with directories first', async () => {
|
|
21
|
-
const result = await getDirectoryTree(getTestDir());
|
|
22
|
-
const children = result.tree.children ?? [];
|
|
23
|
-
const lastDirIndex = lastIndexOfType(children, 'directory');
|
|
24
|
-
const firstFileIndex = firstIndexOfType(children, 'file');
|
|
25
|
-
if (lastDirIndex !== null && firstFileIndex !== null) {
|
|
26
|
-
expect(lastDirIndex).toBeLessThan(firstFileIndex);
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
//# sourceMappingURL=directory-tree-edge-cases.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"directory-tree-edge-cases.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/directory-tree-edge-cases.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAMlE,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;AAEvC,SAAS,gBAAgB,CAAC,QAAqB,EAAE,IAAY;IAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACjE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACnC,CAAC;AAED,SAAS,eAAe,CAAC,QAAqB,EAAE,IAAY;IAC1D,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI;YAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;IACrE,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;IACrE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;IACrE,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC5C,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,YAAY,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QACrD,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACpD,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"directory-tree.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/directory-tree.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as os from 'node:os';
|
|
3
|
-
import * as path from 'node:path';
|
|
4
|
-
import { expect, it } from 'vitest';
|
|
5
|
-
import { getDirectoryTree } from '../../../lib/file-operations.js';
|
|
6
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
7
|
-
const getTestDir = useFileOpsFixture();
|
|
8
|
-
function containsName(entry, name) {
|
|
9
|
-
if (entry.name === name)
|
|
10
|
-
return true;
|
|
11
|
-
if (!entry.children)
|
|
12
|
-
return false;
|
|
13
|
-
return entry.children.some((child) => containsName(child, name));
|
|
14
|
-
}
|
|
15
|
-
async function createOutsideDirectory() {
|
|
16
|
-
const outsideDir = await fs.mkdtemp(path.join(os.tmpdir(), 'mcp-outside-'));
|
|
17
|
-
await fs.writeFile(path.join(outsideDir, 'outside.txt'), 'outside');
|
|
18
|
-
return outsideDir;
|
|
19
|
-
}
|
|
20
|
-
async function tryCreateSymlink(baseDir, outsideDir) {
|
|
21
|
-
const linkPath = path.join(baseDir, 'escape');
|
|
22
|
-
const linkType = process.platform === 'win32' ? 'junction' : 'dir';
|
|
23
|
-
try {
|
|
24
|
-
await fs.symlink(outsideDir, linkPath, linkType);
|
|
25
|
-
return { linkPath, created: true };
|
|
26
|
-
}
|
|
27
|
-
catch {
|
|
28
|
-
return { linkPath, created: false };
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
async function cleanupSymlink(linkPath, outsideDir) {
|
|
32
|
-
await fs.rm(linkPath, { recursive: true, force: true }).catch(() => { });
|
|
33
|
-
await fs.rm(outsideDir, { recursive: true, force: true }).catch(() => { });
|
|
34
|
-
}
|
|
35
|
-
it('getDirectoryTree returns tree structure', async () => {
|
|
36
|
-
const result = await getDirectoryTree(getTestDir());
|
|
37
|
-
expect(result.tree.type).toBe('directory');
|
|
38
|
-
expect(result.tree.children).toBeDefined();
|
|
39
|
-
expect(result.tree.children?.length).toBeGreaterThan(0);
|
|
40
|
-
});
|
|
41
|
-
it('getDirectoryTree respects maxDepth', async () => {
|
|
42
|
-
const result = await getDirectoryTree(getTestDir(), { maxDepth: 1 });
|
|
43
|
-
expect(result.summary.maxDepthReached).toBeLessThanOrEqual(1);
|
|
44
|
-
});
|
|
45
|
-
it('getDirectoryTree excludes patterns', async () => {
|
|
46
|
-
const result = await getDirectoryTree(getTestDir(), {
|
|
47
|
-
excludePatterns: ['docs'],
|
|
48
|
-
});
|
|
49
|
-
const hasDocsDir = result.tree.children?.some((c) => c.name === 'docs');
|
|
50
|
-
expect(hasDocsDir).toBe(false);
|
|
51
|
-
});
|
|
52
|
-
it('getDirectoryTree includes sizes when specified', async () => {
|
|
53
|
-
const result = await getDirectoryTree(getTestDir(), { includeSize: true });
|
|
54
|
-
const fileEntry = result.tree.children?.find((c) => c.type === 'file');
|
|
55
|
-
expect(fileEntry?.size).toBeDefined();
|
|
56
|
-
});
|
|
57
|
-
it('getDirectoryTree skips symlinks that escape allowed directories', async () => {
|
|
58
|
-
const outsideDir = await createOutsideDirectory();
|
|
59
|
-
const { linkPath, created } = await tryCreateSymlink(getTestDir(), outsideDir);
|
|
60
|
-
try {
|
|
61
|
-
if (!created) {
|
|
62
|
-
expect(created).toBe(false);
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
const result = await getDirectoryTree(getTestDir(), { maxDepth: 3 });
|
|
66
|
-
const childNames = (result.tree.children ?? []).map((c) => c.name);
|
|
67
|
-
expect(childNames.includes('escape')).toBe(false);
|
|
68
|
-
expect(containsName(result.tree, 'outside.txt')).toBe(false);
|
|
69
|
-
expect(result.summary.symlinksNotFollowed).toBeGreaterThanOrEqual(1);
|
|
70
|
-
}
|
|
71
|
-
finally {
|
|
72
|
-
await cleanupSymlink(linkPath, outsideDir);
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
//# sourceMappingURL=directory-tree.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"directory-tree.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/directory-tree.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-file-info.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/get-file-info.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import * as path from 'node:path';
|
|
2
|
-
import { expect, it } from 'vitest';
|
|
3
|
-
import { getFileInfo } from '../../../lib/file-operations.js';
|
|
4
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
5
|
-
const getTestDir = useFileOpsFixture();
|
|
6
|
-
it('getFileInfo returns file metadata', async () => {
|
|
7
|
-
const info = await getFileInfo(path.join(getTestDir(), 'README.md'));
|
|
8
|
-
expect(info.name).toBe('README.md');
|
|
9
|
-
expect(info.type).toBe('file');
|
|
10
|
-
expect(info.size).toBeGreaterThan(0);
|
|
11
|
-
expect(info.created).toBeInstanceOf(Date);
|
|
12
|
-
});
|
|
13
|
-
it('getFileInfo returns directory metadata', async () => {
|
|
14
|
-
const info = await getFileInfo(getTestDir());
|
|
15
|
-
expect(info.type).toBe('directory');
|
|
16
|
-
});
|
|
17
|
-
//# sourceMappingURL=get-file-info.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-file-info.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/get-file-info.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;AAEvC,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACjD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IACrE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;IACtD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-multiple-file-info.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/get-multiple-file-info.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as os from 'node:os';
|
|
3
|
-
import * as path from 'node:path';
|
|
4
|
-
import { afterAll, beforeAll, expect, it } from 'vitest';
|
|
5
|
-
import { getMultipleFileInfo } from '../../../lib/file-operations.js';
|
|
6
|
-
import { setAllowedDirectoriesResolved } from '../../../lib/path-validation.js';
|
|
7
|
-
let tempDir;
|
|
8
|
-
let testFile1;
|
|
9
|
-
let testFile2;
|
|
10
|
-
beforeAll(async () => {
|
|
11
|
-
tempDir = await fs.mkdtemp(path.join(os.tmpdir(), 'mfi-test-'));
|
|
12
|
-
testFile1 = path.join(tempDir, 'file1.txt');
|
|
13
|
-
testFile2 = path.join(tempDir, 'file2.json');
|
|
14
|
-
await fs.writeFile(testFile1, 'Hello World');
|
|
15
|
-
await fs.writeFile(testFile2, '{"key": "value"}');
|
|
16
|
-
await setAllowedDirectoriesResolved([tempDir]);
|
|
17
|
-
});
|
|
18
|
-
afterAll(async () => {
|
|
19
|
-
await fs.rm(tempDir, { recursive: true, force: true });
|
|
20
|
-
});
|
|
21
|
-
it('should return info for multiple files', async () => {
|
|
22
|
-
const result = await getMultipleFileInfo([testFile1, testFile2]);
|
|
23
|
-
expect(result.summary.total).toBe(2);
|
|
24
|
-
expect(result.summary.succeeded).toBe(2);
|
|
25
|
-
expect(result.summary.failed).toBe(0);
|
|
26
|
-
expect(result.results).toHaveLength(2);
|
|
27
|
-
const info1 = result.results.find((r) => r.path === testFile1)?.info;
|
|
28
|
-
expect(info1).toBeDefined();
|
|
29
|
-
expect(info1?.name).toBe('file1.txt');
|
|
30
|
-
expect(info1?.type).toBe('file');
|
|
31
|
-
});
|
|
32
|
-
it('should handle non-existent files gracefully', async () => {
|
|
33
|
-
const nonExistent = path.join(tempDir, 'nonexistent.txt');
|
|
34
|
-
const result = await getMultipleFileInfo([testFile1, nonExistent]);
|
|
35
|
-
expect(result.summary.total).toBe(2);
|
|
36
|
-
expect(result.summary.succeeded).toBe(1);
|
|
37
|
-
expect(result.summary.failed).toBe(1);
|
|
38
|
-
const errorResult = result.results.find((r) => r.path === nonExistent);
|
|
39
|
-
expect(errorResult?.error).toBeDefined();
|
|
40
|
-
});
|
|
41
|
-
it('should return empty result for empty array', async () => {
|
|
42
|
-
const result = await getMultipleFileInfo([]);
|
|
43
|
-
expect(result.summary.total).toBe(0);
|
|
44
|
-
expect(result.results).toHaveLength(0);
|
|
45
|
-
});
|
|
46
|
-
//# sourceMappingURL=get-multiple-file-info.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-multiple-file-info.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/get-multiple-file-info.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-directory-edge-cases.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/list-directory-edge-cases.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as path from 'node:path';
|
|
3
|
-
import { expect, it } from 'vitest';
|
|
4
|
-
import { listDirectory } from '../../../lib/file-operations.js';
|
|
5
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
6
|
-
const getTestDir = useFileOpsFixture();
|
|
7
|
-
it('listDirectory handles maxDepth=0', async () => {
|
|
8
|
-
const result = await listDirectory(getTestDir(), {
|
|
9
|
-
recursive: true,
|
|
10
|
-
maxDepth: 0,
|
|
11
|
-
});
|
|
12
|
-
expect(result.summary.maxDepthReached).toBe(0);
|
|
13
|
-
});
|
|
14
|
-
it('listDirectory handles empty directory', async () => {
|
|
15
|
-
const emptyDir = path.join(getTestDir(), 'empty-dir');
|
|
16
|
-
await fs.mkdir(emptyDir, { recursive: true });
|
|
17
|
-
const result = await listDirectory(emptyDir);
|
|
18
|
-
expect(result.entries.length).toBe(0);
|
|
19
|
-
await fs.rm(emptyDir, { recursive: true });
|
|
20
|
-
});
|
|
21
|
-
//# sourceMappingURL=list-directory-edge-cases.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-directory-edge-cases.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/list-directory-edge-cases.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;AAEvC,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;IAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,EAAE;QAC/C,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,CAAC;KACZ,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;IACtD,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEtC,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-directory.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/list-directory.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import * as path from 'node:path';
|
|
2
|
-
import { expect, it } from 'vitest';
|
|
3
|
-
import { listDirectory } from '../../../lib/file-operations.js';
|
|
4
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
5
|
-
const getTestDir = useFileOpsFixture();
|
|
6
|
-
it('listDirectory lists directory contents', async () => {
|
|
7
|
-
const result = await listDirectory(getTestDir());
|
|
8
|
-
expect(result.entries.length).toBeGreaterThan(0);
|
|
9
|
-
expect(result.summary.totalEntries).toBeGreaterThan(0);
|
|
10
|
-
});
|
|
11
|
-
it('listDirectory throws when path is a file', async () => {
|
|
12
|
-
await expect(listDirectory(path.join(getTestDir(), 'README.md'))).rejects.toThrow(/Not a directory/i);
|
|
13
|
-
});
|
|
14
|
-
it('listDirectory lists recursively when specified', async () => {
|
|
15
|
-
const result = await listDirectory(getTestDir(), { recursive: true });
|
|
16
|
-
expect(result.entries.some((e) => e.name === 'index.ts')).toBe(true);
|
|
17
|
-
});
|
|
18
|
-
it('listDirectory includes hidden files when specified', async () => {
|
|
19
|
-
const result = await listDirectory(getTestDir(), { includeHidden: true });
|
|
20
|
-
expect(result.entries.some((e) => e.name === '.hidden')).toBe(true);
|
|
21
|
-
});
|
|
22
|
-
it('listDirectory excludes hidden files by default', async () => {
|
|
23
|
-
const result = await listDirectory(getTestDir(), { includeHidden: false });
|
|
24
|
-
expect(result.entries.some((e) => e.name === '.hidden')).toBe(false);
|
|
25
|
-
});
|
|
26
|
-
it('listDirectory respects maxEntries limit', async () => {
|
|
27
|
-
const result = await listDirectory(getTestDir(), { maxEntries: 2 });
|
|
28
|
-
expect(result.entries.length).toBeLessThanOrEqual(2);
|
|
29
|
-
expect(result.summary.truncated).toBe(true);
|
|
30
|
-
});
|
|
31
|
-
//# sourceMappingURL=list-directory.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-directory.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/list-directory.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;AAEvC,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;IACtD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;IACxD,MAAM,MAAM,CACV,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC,CACpD,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;IAC9D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;IAClE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;IAC9D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACvD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IACpE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-media-file.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/read-media-file.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import * as path from 'node:path';
|
|
2
|
-
import { expect, it } from 'vitest';
|
|
3
|
-
import { readMediaFile } from '../../../lib/file-operations.js';
|
|
4
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
5
|
-
const getTestDir = useFileOpsFixture();
|
|
6
|
-
it('readMediaFile reads binary file as base64', async () => {
|
|
7
|
-
const result = await readMediaFile(path.join(getTestDir(), 'image.png'));
|
|
8
|
-
expect(result.mimeType).toBe('image/png');
|
|
9
|
-
expect(result.data).toBeTruthy();
|
|
10
|
-
expect(result.size).toBeGreaterThan(0);
|
|
11
|
-
});
|
|
12
|
-
it('readMediaFile returns correct MIME type for markdown files', async () => {
|
|
13
|
-
const result = await readMediaFile(path.join(getTestDir(), 'README.md'));
|
|
14
|
-
expect(result.mimeType).toBe('text/markdown');
|
|
15
|
-
expect(result.data).toBeTruthy();
|
|
16
|
-
expect(result.size).toBeGreaterThan(0);
|
|
17
|
-
});
|
|
18
|
-
it('readMediaFile rejects files too large', async () => {
|
|
19
|
-
await expect(readMediaFile(path.join(getTestDir(), 'image.png'), { maxSize: 1 })).rejects.toThrow('too large');
|
|
20
|
-
});
|
|
21
|
-
//# sourceMappingURL=read-media-file.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-media-file.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/read-media-file.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;AAEvC,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IACzE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;IAC1E,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC;IACzE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,MAAM,CACV,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CACpE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-multiple-files-edge-cases.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as path from 'node:path';
|
|
3
|
-
import { expect, it } from 'vitest';
|
|
4
|
-
import { readMultipleFiles } from '../../../lib/file-operations.js';
|
|
5
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
6
|
-
const getTestDir = useFileOpsFixture();
|
|
7
|
-
it('readMultipleFiles handles empty array', async () => {
|
|
8
|
-
const results = await readMultipleFiles([]);
|
|
9
|
-
expect(results.length).toBe(0);
|
|
10
|
-
});
|
|
11
|
-
it('readMultipleFiles handles all files failing', async () => {
|
|
12
|
-
const paths = [
|
|
13
|
-
path.join(getTestDir(), 'nonexistent1.txt'),
|
|
14
|
-
path.join(getTestDir(), 'nonexistent2.txt'),
|
|
15
|
-
];
|
|
16
|
-
const results = await readMultipleFiles(paths);
|
|
17
|
-
expect(results.length).toBe(2);
|
|
18
|
-
expect(results.every((r) => r.error !== undefined)).toBe(true);
|
|
19
|
-
});
|
|
20
|
-
it('readMultipleFiles rejects line range with head/tail', async () => {
|
|
21
|
-
const filePath = path.join(getTestDir(), 'multiline.txt');
|
|
22
|
-
await expect(readMultipleFiles([filePath], {
|
|
23
|
-
lineStart: 1,
|
|
24
|
-
lineEnd: 2,
|
|
25
|
-
head: 1,
|
|
26
|
-
})).rejects.toThrow('Cannot specify multiple');
|
|
27
|
-
});
|
|
28
|
-
it('readMultipleFiles applies maxTotalSize per entry even with duplicates', async () => {
|
|
29
|
-
const filePath = path.join(getTestDir(), 'big-duplicate.log');
|
|
30
|
-
const largeContent = 'A'.repeat(50_000);
|
|
31
|
-
await fs.writeFile(filePath, largeContent);
|
|
32
|
-
const results = await readMultipleFiles([filePath, filePath], {
|
|
33
|
-
head: 1,
|
|
34
|
-
maxTotalSize: 10,
|
|
35
|
-
});
|
|
36
|
-
expect(results.length).toBe(2);
|
|
37
|
-
expect(results.every((r) => r.error !== undefined)).toBe(true);
|
|
38
|
-
await fs.rm(filePath).catch(() => { });
|
|
39
|
-
});
|
|
40
|
-
//# sourceMappingURL=read-multiple-files-edge-cases.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-multiple-files-edge-cases.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/read-multiple-files-edge-cases.test.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;AAEvC,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;IACrD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC5C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,KAAK,GAAG;QACZ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,kBAAkB,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,kBAAkB,CAAC;KAC5C,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;IACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC;IAC1D,MAAM,MAAM,CACV,iBAAiB,CAAC,CAAC,QAAQ,CAAC,EAAE;QAC5B,SAAS,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,CAAC;KACR,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;IACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAE3C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;QAC5D,IAAI,EAAE,CAAC;QACP,YAAY,EAAE,EAAE;KACjB,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-multiple-files.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/read-multiple-files.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as path from 'node:path';
|
|
3
|
-
import { expect, it } from 'vitest';
|
|
4
|
-
import { readMultipleFiles } from '../../../lib/file-operations.js';
|
|
5
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
6
|
-
const getTestDir = useFileOpsFixture();
|
|
7
|
-
it('readMultipleFiles reads multiple files in parallel', async () => {
|
|
8
|
-
const paths = [
|
|
9
|
-
path.join(getTestDir(), 'README.md'),
|
|
10
|
-
path.join(getTestDir(), 'src', 'index.ts'),
|
|
11
|
-
];
|
|
12
|
-
const results = await readMultipleFiles(paths);
|
|
13
|
-
expect(results.length).toBe(2);
|
|
14
|
-
expect(results.every((r) => r.content !== undefined)).toBe(true);
|
|
15
|
-
});
|
|
16
|
-
it('readMultipleFiles handles individual file errors gracefully', async () => {
|
|
17
|
-
const paths = [
|
|
18
|
-
path.join(getTestDir(), 'README.md'),
|
|
19
|
-
path.join(getTestDir(), 'non-existent.txt'),
|
|
20
|
-
];
|
|
21
|
-
const results = await readMultipleFiles(paths);
|
|
22
|
-
expect(results.length).toBe(2);
|
|
23
|
-
expect(results[0]?.content).toBeDefined();
|
|
24
|
-
expect(results[1]?.error).toBeDefined();
|
|
25
|
-
});
|
|
26
|
-
it('readMultipleFiles preserves requested paths for duplicates', async () => {
|
|
27
|
-
const filePath = path.join(getTestDir(), 'README.md');
|
|
28
|
-
const results = await readMultipleFiles([filePath, filePath]);
|
|
29
|
-
expect(results.length).toBe(2);
|
|
30
|
-
expect(results[0]?.path).toBe(filePath);
|
|
31
|
-
expect(results[1]?.path).toBe(filePath);
|
|
32
|
-
});
|
|
33
|
-
it('readMultipleFiles enforces total size cap for head/tail reads', async () => {
|
|
34
|
-
const big1 = path.join(getTestDir(), 'big1.log');
|
|
35
|
-
const big2 = path.join(getTestDir(), 'big2.log');
|
|
36
|
-
const largeContent = 'A'.repeat(50_000);
|
|
37
|
-
await fs.writeFile(big1, largeContent);
|
|
38
|
-
await fs.writeFile(big2, largeContent);
|
|
39
|
-
const results = await readMultipleFiles([big1, big2], {
|
|
40
|
-
head: 1,
|
|
41
|
-
maxTotalSize: 10,
|
|
42
|
-
});
|
|
43
|
-
expect(results.every((r) => r.error !== undefined)).toBe(true);
|
|
44
|
-
await Promise.all([fs.rm(big1), fs.rm(big2)]).catch(() => { });
|
|
45
|
-
});
|
|
46
|
-
it('readMultipleFiles supports line range reads', async () => {
|
|
47
|
-
const filePath = path.join(getTestDir(), 'multiline.txt');
|
|
48
|
-
const results = await readMultipleFiles([filePath], {
|
|
49
|
-
lineStart: 2,
|
|
50
|
-
lineEnd: 4,
|
|
51
|
-
});
|
|
52
|
-
const content = results[0]?.content ?? '';
|
|
53
|
-
expect(content.split('\n')[0]).toBe('Line 2');
|
|
54
|
-
expect(content.split('\n')[2]).toBe('Line 4');
|
|
55
|
-
expect(results[0]?.truncated).toBe(true);
|
|
56
|
-
});
|
|
57
|
-
//# sourceMappingURL=read-multiple-files.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-multiple-files.test.js","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/read-multiple-files.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"search-content-edge-cases.test.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/lib/file-operations/search-content-edge-cases.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { expect, it } from 'vitest';
|
|
2
|
-
import { searchContent } from '../../../lib/file-operations.js';
|
|
3
|
-
import { useFileOpsFixture } from '../fixtures/file-ops-hooks.js';
|
|
4
|
-
const getTestDir = useFileOpsFixture();
|
|
5
|
-
it('searchContent handles empty search results', async () => {
|
|
6
|
-
const result = await searchContent(getTestDir(), 'xyznonexistent123', {
|
|
7
|
-
filePattern: '**/*.ts',
|
|
8
|
-
});
|
|
9
|
-
expect(result.matches.length).toBe(0);
|
|
10
|
-
expect(result.summary.filesMatched).toBe(0);
|
|
11
|
-
});
|
|
12
|
-
it('searchContent handles special regex characters safely', async () => {
|
|
13
|
-
const result = await searchContent(getTestDir(), 'hello\\.world', {
|
|
14
|
-
filePattern: '**/*.ts',
|
|
15
|
-
});
|
|
16
|
-
expect(result).toBeDefined();
|
|
17
|
-
});
|
|
18
|
-
it('searchContent throws on invalid regex syntax', async () => {
|
|
19
|
-
await expect(searchContent(getTestDir(), '(?')).rejects.toThrow(/Invalid regular expression|ReDoS/i);
|
|
20
|
-
});
|
|
21
|
-
it('searchContent respects maxResults limit', async () => {
|
|
22
|
-
const result = await searchContent(getTestDir(), '\\w+', {
|
|
23
|
-
filePattern: '**/*.ts',
|
|
24
|
-
maxResults: 1,
|
|
25
|
-
});
|
|
26
|
-
expect(result.matches.length).toBeLessThanOrEqual(1);
|
|
27
|
-
if (result.matches.length === 1) {
|
|
28
|
-
expect(result.summary.truncated).toBe(true);
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
it('searchContent respects maxFilesScanned limit', async () => {
|
|
32
|
-
const result = await searchContent(getTestDir(), 'export', {
|
|
33
|
-
filePattern: '**/*',
|
|
34
|
-
maxFilesScanned: 1,
|
|
35
|
-
});
|
|
36
|
-
expect(result.summary.filesScanned).toBeLessThanOrEqual(1);
|
|
37
|
-
});
|
|
38
|
-
it('searchContent handles timeout correctly', async () => {
|
|
39
|
-
const result = await searchContent(getTestDir(), 'export', {
|
|
40
|
-
filePattern: '**/*',
|
|
41
|
-
timeoutMs: 10,
|
|
42
|
-
});
|
|
43
|
-
expect(result).toBeDefined();
|
|
44
|
-
});
|
|
45
|
-
it('searchContent stops early when maxResults is 0', async () => {
|
|
46
|
-
const result = await searchContent(getTestDir(), 'Line', { maxResults: 0 });
|
|
47
|
-
expect(result.summary.truncated).toBe(true);
|
|
48
|
-
expect(result.summary.stoppedReason).toBe('maxResults');
|
|
49
|
-
});
|
|
50
|
-
it('searchContent matches literal strings when isLiteral=true', async () => {
|
|
51
|
-
const result = await searchContent(getTestDir(), 'Test.*Project', {
|
|
52
|
-
isLiteral: true,
|
|
53
|
-
filePattern: '**/*.md',
|
|
54
|
-
});
|
|
55
|
-
expect(result.matches.length).toBe(0);
|
|
56
|
-
});
|
|
57
|
-
//# sourceMappingURL=search-content-edge-cases.test.js.map
|