@j0hanz/fs-context-mcp 2.1.1 → 2.1.3
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 +54 -19
- package/dist/instructions.md +17 -5
- package/dist/lib/file-operations/search-content.js +1 -1
- package/dist/lib/file-operations/search-content.js.map +1 -1
- package/dist/lib/observability.d.ts.map +1 -1
- package/dist/lib/observability.js +9 -7
- package/dist/lib/observability.js.map +1 -1
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +6 -7
- package/dist/tools.js.map +1 -1
- 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,86 +0,0 @@
|
|
|
1
|
-
function createBufferState() {
|
|
2
|
-
return { buffer: '', overflow: false };
|
|
3
|
-
}
|
|
4
|
-
function attachAbortHandler(stream, signal) {
|
|
5
|
-
if (!signal)
|
|
6
|
-
return () => { };
|
|
7
|
-
const onAbort = () => {
|
|
8
|
-
stream.destroy();
|
|
9
|
-
};
|
|
10
|
-
if (signal.aborted) {
|
|
11
|
-
onAbort();
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
signal.addEventListener('abort', onAbort, { once: true });
|
|
15
|
-
}
|
|
16
|
-
return () => {
|
|
17
|
-
signal.removeEventListener('abort', onAbort);
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
function appendSegment(state, segment, maxLineLength) {
|
|
21
|
-
if (state.overflow)
|
|
22
|
-
return;
|
|
23
|
-
const available = maxLineLength - state.buffer.length;
|
|
24
|
-
if (available <= 0) {
|
|
25
|
-
state.overflow = true;
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
if (segment.length > available) {
|
|
29
|
-
state.buffer += segment.slice(0, available);
|
|
30
|
-
state.overflow = true;
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
state.buffer += segment;
|
|
34
|
-
}
|
|
35
|
-
function* processChunk(text, state, maxLineLength) {
|
|
36
|
-
let cursor = 0;
|
|
37
|
-
while (cursor < text.length) {
|
|
38
|
-
const newlineIndex = text.indexOf('\n', cursor);
|
|
39
|
-
const segmentEnd = newlineIndex === -1 ? text.length : newlineIndex;
|
|
40
|
-
const segment = text.slice(cursor, segmentEnd);
|
|
41
|
-
appendSegment(state, segment, maxLineLength);
|
|
42
|
-
if (newlineIndex === -1) {
|
|
43
|
-
cursor = segmentEnd;
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
yield state.buffer.replace(/\r$/, '');
|
|
47
|
-
state.buffer = '';
|
|
48
|
-
state.overflow = false;
|
|
49
|
-
cursor = newlineIndex + 1;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
function toChunkText(chunk) {
|
|
53
|
-
return typeof chunk === 'string' ? chunk : chunk.toString('utf-8');
|
|
54
|
-
}
|
|
55
|
-
function shouldFlushBuffer(state, signal) {
|
|
56
|
-
if (signal?.aborted)
|
|
57
|
-
return false;
|
|
58
|
-
return state.buffer.length > 0;
|
|
59
|
-
}
|
|
60
|
-
async function* iterateChunkLines(iterableStream, state, maxLineLength, signal) {
|
|
61
|
-
for await (const chunk of iterableStream) {
|
|
62
|
-
if (signal?.aborted)
|
|
63
|
-
return;
|
|
64
|
-
yield* processChunk(toChunkText(chunk), state, maxLineLength);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
function flushBuffer(state, signal) {
|
|
68
|
-
if (!shouldFlushBuffer(state, signal))
|
|
69
|
-
return undefined;
|
|
70
|
-
return state.buffer.replace(/\r$/, '');
|
|
71
|
-
}
|
|
72
|
-
export async function* iterateLines(stream, maxLineLength, signal) {
|
|
73
|
-
const state = createBufferState();
|
|
74
|
-
const detachAbort = attachAbortHandler(stream, signal);
|
|
75
|
-
const iterableStream = stream;
|
|
76
|
-
try {
|
|
77
|
-
yield* iterateChunkLines(iterableStream, state, maxLineLength, signal);
|
|
78
|
-
const flushed = flushBuffer(state, signal);
|
|
79
|
-
if (flushed !== undefined)
|
|
80
|
-
yield flushed;
|
|
81
|
-
}
|
|
82
|
-
finally {
|
|
83
|
-
detachAbort();
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
//# sourceMappingURL=line-iterator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"line-iterator.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/line-iterator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export type Matcher = (line: string) => number;
|
|
2
|
-
export declare function createMatcher(pattern: string, options: {
|
|
3
|
-
isLiteral: boolean;
|
|
4
|
-
wholeWord: boolean;
|
|
5
|
-
caseSensitive: boolean;
|
|
6
|
-
basePath: string;
|
|
7
|
-
}): Matcher;
|
|
8
|
-
//# sourceMappingURL=match-strategy.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"match-strategy.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/match-strategy.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAM/C,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;IACP,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAcT"}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import RE2 from 're2';
|
|
2
|
-
import safeRegex from 'safe-regex2';
|
|
3
|
-
import { REGEX_MATCH_TIMEOUT_MS } from '../../constants.js';
|
|
4
|
-
import { ErrorCode, McpError } from '../../errors.js';
|
|
5
|
-
export function createMatcher(pattern, options) {
|
|
6
|
-
const { isLiteral, wholeWord, caseSensitive, basePath } = options;
|
|
7
|
-
if (isLiteral && !wholeWord) {
|
|
8
|
-
return createLiteralMatcher(pattern, caseSensitive);
|
|
9
|
-
}
|
|
10
|
-
// Regex matcher
|
|
11
|
-
const finalPattern = preparePattern(pattern, isLiteral, wholeWord);
|
|
12
|
-
ensureSafePattern(finalPattern, pattern, basePath);
|
|
13
|
-
const regex = compileRegex(finalPattern, caseSensitive, basePath);
|
|
14
|
-
return createRegexMatcher(regex);
|
|
15
|
-
}
|
|
16
|
-
function createLiteralMatcher(pattern, caseSensitive) {
|
|
17
|
-
const needle = caseSensitive ? pattern : pattern.toLowerCase();
|
|
18
|
-
const haystackTransform = caseSensitive
|
|
19
|
-
? (s) => s
|
|
20
|
-
: (s) => s.toLowerCase();
|
|
21
|
-
return (line) => {
|
|
22
|
-
if (line.length === 0 || needle.length === 0)
|
|
23
|
-
return 0;
|
|
24
|
-
const haystack = haystackTransform(line);
|
|
25
|
-
let count = 0;
|
|
26
|
-
let pos = 0;
|
|
27
|
-
while ((pos = haystack.indexOf(needle, pos)) !== -1) {
|
|
28
|
-
count++;
|
|
29
|
-
pos += needle.length;
|
|
30
|
-
}
|
|
31
|
-
return count;
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
function createRegexMatcher(regex, timeoutMs = REGEX_MATCH_TIMEOUT_MS) {
|
|
35
|
-
return (line) => countRegexMatches(line, regex, timeoutMs);
|
|
36
|
-
}
|
|
37
|
-
function countRegexMatches(line, regex, timeoutMs) {
|
|
38
|
-
if (line.length === 0)
|
|
39
|
-
return 0;
|
|
40
|
-
regex.lastIndex = 0;
|
|
41
|
-
const deadline = Date.now() + timeoutMs;
|
|
42
|
-
const maxIterations = Math.min(line.length * 2, 10000);
|
|
43
|
-
return runRegexMatchLoop(line, regex, deadline, maxIterations);
|
|
44
|
-
}
|
|
45
|
-
function runRegexMatchLoop(line, regex, deadline, maxIterations) {
|
|
46
|
-
let count = 0;
|
|
47
|
-
let iterations = 0;
|
|
48
|
-
let lastIndex = 0;
|
|
49
|
-
let match;
|
|
50
|
-
while ((match = regex.exec(line)) !== null) {
|
|
51
|
-
count++;
|
|
52
|
-
iterations++;
|
|
53
|
-
const advance = advanceRegexIndex(match, regex, lastIndex);
|
|
54
|
-
if (advance.shouldAbort)
|
|
55
|
-
return -1;
|
|
56
|
-
lastIndex = advance.nextLastIndex;
|
|
57
|
-
if (shouldCheckTimeout(count, iterations, deadline, maxIterations)) {
|
|
58
|
-
return -1;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return count;
|
|
62
|
-
}
|
|
63
|
-
function advanceRegexIndex(match, regex, lastIndex) {
|
|
64
|
-
let nextIndex = regex.lastIndex;
|
|
65
|
-
if (match[0] === '') {
|
|
66
|
-
nextIndex = regex.lastIndex + 1;
|
|
67
|
-
regex.lastIndex = nextIndex;
|
|
68
|
-
}
|
|
69
|
-
if (nextIndex <= lastIndex) {
|
|
70
|
-
return { nextLastIndex: lastIndex, shouldAbort: true };
|
|
71
|
-
}
|
|
72
|
-
return { nextLastIndex: nextIndex, shouldAbort: false };
|
|
73
|
-
}
|
|
74
|
-
function shouldCheckTimeout(count, iterations, deadline, maxIterations) {
|
|
75
|
-
if (iterations > maxIterations)
|
|
76
|
-
return true;
|
|
77
|
-
if (!isCheckInterval(count, iterations))
|
|
78
|
-
return false;
|
|
79
|
-
return Date.now() > deadline;
|
|
80
|
-
}
|
|
81
|
-
function isCheckInterval(count, iterations) {
|
|
82
|
-
const countInterval = count > 0 && count % 10 === 0;
|
|
83
|
-
const iterationInterval = iterations > 0 && iterations % 50 === 0;
|
|
84
|
-
return countInterval || iterationInterval;
|
|
85
|
-
}
|
|
86
|
-
function preparePattern(pattern, isLiteral, wholeWord) {
|
|
87
|
-
let finalPattern = pattern;
|
|
88
|
-
if (isLiteral) {
|
|
89
|
-
finalPattern = finalPattern.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
90
|
-
}
|
|
91
|
-
if (wholeWord) {
|
|
92
|
-
finalPattern = `\\b${finalPattern}\\b`;
|
|
93
|
-
}
|
|
94
|
-
return finalPattern;
|
|
95
|
-
}
|
|
96
|
-
function ensureSafePattern(finalPattern, originalPattern, basePath) {
|
|
97
|
-
if (safeRegex(finalPattern))
|
|
98
|
-
return;
|
|
99
|
-
throw new McpError(ErrorCode.E_INVALID_PATTERN, `Potentially unsafe regular expression (ReDoS risk): ${originalPattern}. ` +
|
|
100
|
-
'Avoid patterns with nested quantifiers, overlapping alternations, or exponential backtracking.', basePath, { reason: 'ReDoS risk detected' });
|
|
101
|
-
}
|
|
102
|
-
function compileRegex(pattern, caseSensitive, basePath) {
|
|
103
|
-
try {
|
|
104
|
-
return new RE2(pattern, caseSensitive ? 'g' : 'gi');
|
|
105
|
-
}
|
|
106
|
-
catch (error) {
|
|
107
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
108
|
-
throw new McpError(ErrorCode.E_INVALID_PATTERN, `Invalid regular expression: ${pattern} (${message})`, basePath, { searchPattern: pattern });
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
//# sourceMappingURL=match-strategy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"match-strategy.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/match-strategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
interface SearchOptions {
|
|
2
|
-
filePattern: string;
|
|
3
|
-
excludePatterns: readonly string[];
|
|
4
|
-
caseSensitive: boolean;
|
|
5
|
-
maxResults: number;
|
|
6
|
-
maxFileSize: number;
|
|
7
|
-
maxFilesScanned: number;
|
|
8
|
-
timeoutMs: number;
|
|
9
|
-
skipBinary: boolean;
|
|
10
|
-
contextLines: number;
|
|
11
|
-
wholeWord: boolean;
|
|
12
|
-
isLiteral: boolean;
|
|
13
|
-
includeHidden: boolean;
|
|
14
|
-
baseNameMatch: boolean;
|
|
15
|
-
caseSensitiveFileMatch: boolean;
|
|
16
|
-
}
|
|
17
|
-
export interface SearchContentOptions extends Partial<SearchOptions> {
|
|
18
|
-
signal?: AbortSignal;
|
|
19
|
-
}
|
|
20
|
-
export type ResolvedOptions = SearchOptions;
|
|
21
|
-
export declare function mergeOptions(partial: SearchContentOptions): ResolvedOptions;
|
|
22
|
-
export {};
|
|
23
|
-
//# sourceMappingURL=options.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/options.ts"],"names":[],"mappings":"AASA,UAAU,aAAa;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,oBAAqB,SAAQ,OAAO,CAAC,aAAa,CAAC;IAClE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC;AAmB5C,wBAAgB,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAI3E"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { DEFAULT_SEARCH_MAX_FILES, DEFAULT_SEARCH_TIMEOUT_MS, MAX_SEARCHABLE_FILE_SIZE, } from '../../constants.js';
|
|
2
|
-
// Internal default for grep tool
|
|
3
|
-
const INTERNAL_MAX_RESULTS = 500;
|
|
4
|
-
const DEFAULTS = {
|
|
5
|
-
filePattern: '**/*',
|
|
6
|
-
excludePatterns: [],
|
|
7
|
-
caseSensitive: false,
|
|
8
|
-
maxResults: INTERNAL_MAX_RESULTS,
|
|
9
|
-
maxFileSize: MAX_SEARCHABLE_FILE_SIZE,
|
|
10
|
-
maxFilesScanned: DEFAULT_SEARCH_MAX_FILES,
|
|
11
|
-
timeoutMs: DEFAULT_SEARCH_TIMEOUT_MS,
|
|
12
|
-
skipBinary: true,
|
|
13
|
-
contextLines: 0,
|
|
14
|
-
wholeWord: false,
|
|
15
|
-
isLiteral: true,
|
|
16
|
-
includeHidden: false,
|
|
17
|
-
baseNameMatch: false,
|
|
18
|
-
caseSensitiveFileMatch: true,
|
|
19
|
-
};
|
|
20
|
-
export function mergeOptions(partial) {
|
|
21
|
-
const rest = { ...partial };
|
|
22
|
-
delete rest.signal;
|
|
23
|
-
return { ...DEFAULTS, ...rest };
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=options.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/options.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,iCAAiC;AACjC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAyBjC,MAAM,QAAQ,GAAkB;IAC9B,WAAW,EAAE,MAAM;IACnB,eAAe,EAAE,EAAE;IACnB,aAAa,EAAE,KAAK;IACpB,UAAU,EAAE,oBAAoB;IAChC,WAAW,EAAE,wBAAwB;IACrC,eAAe,EAAE,wBAAwB;IACzC,SAAS,EAAE,yBAAyB;IACpC,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,CAAC;IACf,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,IAAI;IACf,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,KAAK;IACpB,sBAAsB,EAAE,IAAI;CAC7B,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,OAA6B;IACxD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAC5B,OAAO,IAAI,CAAC,MAAM,CAAC;IACnB,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC;AAClC,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { SearchContentResult } from '../../../config/types.js';
|
|
2
|
-
import type { ResolvedOptions } from './options.js';
|
|
3
|
-
export interface ResolvedFile {
|
|
4
|
-
resolvedPath: string;
|
|
5
|
-
requestedPath: string;
|
|
6
|
-
}
|
|
7
|
-
export interface ScanSummary {
|
|
8
|
-
filesScanned: number;
|
|
9
|
-
filesMatched: number;
|
|
10
|
-
skippedTooLarge: number;
|
|
11
|
-
skippedBinary: number;
|
|
12
|
-
skippedInaccessible: number;
|
|
13
|
-
truncated: boolean;
|
|
14
|
-
stoppedReason: SearchContentResult['summary']['stoppedReason'];
|
|
15
|
-
}
|
|
16
|
-
export declare function collectFilesStream(root: string, opts: ResolvedOptions, allowedDirs: readonly string[], signal: AbortSignal): {
|
|
17
|
-
stream: AsyncGenerator<ResolvedFile>;
|
|
18
|
-
summary: ScanSummary;
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=scan-collector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-collector.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-collector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAMpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;CAChE;AAoFD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,eAAe,EACrB,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,MAAM,EAAE,WAAW,GAClB;IAAE,MAAM,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CAoBhE"}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { normalizePath } from '../../path-utils.js';
|
|
2
|
-
import { isPathWithinDirectories } from '../../path-validation/allowed-directories.js';
|
|
3
|
-
import { toAccessDeniedWithHint } from '../../path-validation/path-errors.js';
|
|
4
|
-
import { validateExistingPathDetailed } from '../../path-validation/validate-existing.js';
|
|
5
|
-
import { globEntries } from '../glob-engine.js';
|
|
6
|
-
function resolveNonSymlinkPath(entryPath, allowedDirs) {
|
|
7
|
-
const normalized = normalizePath(entryPath);
|
|
8
|
-
if (!isPathWithinDirectories(normalized, allowedDirs)) {
|
|
9
|
-
throw toAccessDeniedWithHint(entryPath, normalized, normalized);
|
|
10
|
-
}
|
|
11
|
-
return { resolvedPath: normalized, requestedPath: normalized };
|
|
12
|
-
}
|
|
13
|
-
function createScanSummary() {
|
|
14
|
-
return {
|
|
15
|
-
filesScanned: 0,
|
|
16
|
-
filesMatched: 0,
|
|
17
|
-
skippedTooLarge: 0,
|
|
18
|
-
skippedBinary: 0,
|
|
19
|
-
skippedInaccessible: 0,
|
|
20
|
-
truncated: false,
|
|
21
|
-
stoppedReason: undefined,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
function shouldStopCollecting(summary, maxFilesScanned, signal) {
|
|
25
|
-
if (signal.aborted) {
|
|
26
|
-
summary.truncated = true;
|
|
27
|
-
summary.stoppedReason = 'timeout';
|
|
28
|
-
return true;
|
|
29
|
-
}
|
|
30
|
-
if (summary.filesScanned >= maxFilesScanned) {
|
|
31
|
-
summary.truncated = true;
|
|
32
|
-
summary.stoppedReason = 'maxFiles';
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
return false;
|
|
36
|
-
}
|
|
37
|
-
async function resolveEntryPath(entry, allowedDirs, signal) {
|
|
38
|
-
try {
|
|
39
|
-
return entry.dirent.isSymbolicLink()
|
|
40
|
-
? await validateExistingPathDetailed(entry.path, signal)
|
|
41
|
-
: resolveNonSymlinkPath(entry.path, allowedDirs);
|
|
42
|
-
}
|
|
43
|
-
catch {
|
|
44
|
-
return null;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
async function* collectFromStream(stream, opts, allowedDirs, signal, summary) {
|
|
48
|
-
for await (const entry of stream) {
|
|
49
|
-
if (!entry.dirent.isFile())
|
|
50
|
-
continue;
|
|
51
|
-
if (shouldStopCollecting(summary, opts.maxFilesScanned, signal)) {
|
|
52
|
-
break;
|
|
53
|
-
}
|
|
54
|
-
const resolved = await resolveEntryPath(entry, allowedDirs, signal);
|
|
55
|
-
if (!resolved) {
|
|
56
|
-
summary.skippedInaccessible++;
|
|
57
|
-
continue;
|
|
58
|
-
}
|
|
59
|
-
summary.filesScanned++;
|
|
60
|
-
yield resolved;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
export function collectFilesStream(root, opts, allowedDirs, signal) {
|
|
64
|
-
const summary = createScanSummary();
|
|
65
|
-
const stream = globEntries({
|
|
66
|
-
cwd: root,
|
|
67
|
-
pattern: opts.filePattern,
|
|
68
|
-
excludePatterns: opts.excludePatterns,
|
|
69
|
-
includeHidden: opts.includeHidden,
|
|
70
|
-
baseNameMatch: opts.baseNameMatch,
|
|
71
|
-
caseSensitiveMatch: opts.caseSensitiveFileMatch,
|
|
72
|
-
followSymbolicLinks: false,
|
|
73
|
-
onlyFiles: true,
|
|
74
|
-
stats: false,
|
|
75
|
-
suppressErrors: true,
|
|
76
|
-
});
|
|
77
|
-
return {
|
|
78
|
-
stream: collectFromStream(stream, opts, allowedDirs, signal, summary),
|
|
79
|
-
summary,
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=scan-collector.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-collector.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-collector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Matcher, MatcherOptions, ScanFileOptions, ScanFileResult } from './scan-types.js';
|
|
2
|
-
export type { Matcher, MatcherOptions, ScanFileOptions } from './scan-types.js';
|
|
3
|
-
/**
|
|
4
|
-
* Validate a search pattern for safety (ReDoS protection).
|
|
5
|
-
* Throws an error if the pattern is unsafe.
|
|
6
|
-
* Call this before sending patterns to workers.
|
|
7
|
-
*/
|
|
8
|
-
export declare function validatePattern(pattern: string, options: MatcherOptions): void;
|
|
9
|
-
export declare function buildMatcher(pattern: string, options: MatcherOptions): Matcher;
|
|
10
|
-
export declare function scanFileResolved(resolvedPath: string, requestedPath: string, matcher: Matcher, options: ScanFileOptions, signal?: AbortSignal, maxMatches?: number): Promise<ScanFileResult>;
|
|
11
|
-
//# sourceMappingURL=scan-file.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-file.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-file.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,eAAe,EACf,cAAc,EACf,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEhF;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,GACtB,IAAI,CAQN;AAqDD,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,cAAc,GACtB,OAAO,CAgBT;AAED,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,eAAe,EACxB,MAAM,CAAC,EAAE,WAAW,EACpB,UAAU,GAAE,MAAiC,GAC5C,OAAO,CAAC,cAAc,CAAC,CAYzB"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import RE2 from 're2';
|
|
2
|
-
import safeRegex from 'safe-regex2';
|
|
3
|
-
import { isProbablyBinary } from '../../fs-helpers/binary-detect.js';
|
|
4
|
-
import { scanFileWithMatcher } from './scan-runner.js';
|
|
5
|
-
/**
|
|
6
|
-
* Validate a search pattern for safety (ReDoS protection).
|
|
7
|
-
* Throws an error if the pattern is unsafe.
|
|
8
|
-
* Call this before sending patterns to workers.
|
|
9
|
-
*/
|
|
10
|
-
export function validatePattern(pattern, options) {
|
|
11
|
-
// Literal patterns without wholeWord don't use regex, always safe
|
|
12
|
-
if (options.isLiteral && !options.wholeWord) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
const final = buildRegexPattern(pattern, options);
|
|
16
|
-
assertSafePattern(final, pattern);
|
|
17
|
-
}
|
|
18
|
-
function escapeLiteral(pattern) {
|
|
19
|
-
return pattern.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
20
|
-
}
|
|
21
|
-
function buildRegexPattern(pattern, options) {
|
|
22
|
-
const escaped = options.isLiteral ? escapeLiteral(pattern) : pattern;
|
|
23
|
-
return options.wholeWord ? `\\b${escaped}\\b` : escaped;
|
|
24
|
-
}
|
|
25
|
-
function assertSafePattern(final, original) {
|
|
26
|
-
if (!safeRegex(final)) {
|
|
27
|
-
throw new Error(`Potentially unsafe regular expression (ReDoS risk): ${original}`);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
function buildLiteralMatcher(pattern, options) {
|
|
31
|
-
const needle = options.caseSensitive ? pattern : pattern.toLowerCase();
|
|
32
|
-
return (line) => {
|
|
33
|
-
const hay = options.caseSensitive ? line : line.toLowerCase();
|
|
34
|
-
if (needle.length === 0 || hay.length === 0)
|
|
35
|
-
return 0;
|
|
36
|
-
let count = 0;
|
|
37
|
-
let pos = hay.indexOf(needle);
|
|
38
|
-
while (pos !== -1) {
|
|
39
|
-
count++;
|
|
40
|
-
pos = hay.indexOf(needle, pos + needle.length);
|
|
41
|
-
}
|
|
42
|
-
return count;
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
function buildRegexMatcher(final, caseSensitive) {
|
|
46
|
-
const regex = new RE2(final, caseSensitive ? 'g' : 'gi');
|
|
47
|
-
return (line) => {
|
|
48
|
-
regex.lastIndex = 0;
|
|
49
|
-
let count = 0;
|
|
50
|
-
let match;
|
|
51
|
-
while ((match = regex.exec(line)) !== null) {
|
|
52
|
-
count++;
|
|
53
|
-
if (match[0].length === 0) {
|
|
54
|
-
regex.lastIndex++;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return count;
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
export function buildMatcher(pattern, options) {
|
|
61
|
-
if (options.isLiteral && !options.wholeWord && !options.caseSensitive) {
|
|
62
|
-
if (pattern.length === 0) {
|
|
63
|
-
return () => 0;
|
|
64
|
-
}
|
|
65
|
-
return buildRegexMatcher(escapeLiteral(pattern), false);
|
|
66
|
-
}
|
|
67
|
-
if (options.isLiteral && !options.wholeWord) {
|
|
68
|
-
return buildLiteralMatcher(pattern, options);
|
|
69
|
-
}
|
|
70
|
-
const final = buildRegexPattern(pattern, options);
|
|
71
|
-
assertSafePattern(final, pattern);
|
|
72
|
-
return buildRegexMatcher(final, options.caseSensitive);
|
|
73
|
-
}
|
|
74
|
-
export async function scanFileResolved(resolvedPath, requestedPath, matcher, options, signal, maxMatches = Number.POSITIVE_INFINITY) {
|
|
75
|
-
const scanOptions = {
|
|
76
|
-
matcher,
|
|
77
|
-
options,
|
|
78
|
-
maxMatches,
|
|
79
|
-
isCancelled: () => Boolean(signal?.aborted),
|
|
80
|
-
isProbablyBinary,
|
|
81
|
-
};
|
|
82
|
-
if (signal) {
|
|
83
|
-
scanOptions.signal = signal;
|
|
84
|
-
}
|
|
85
|
-
return scanFileWithMatcher(resolvedPath, requestedPath, scanOptions);
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=scan-file.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-file.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Pending context lines to be added after a match.
|
|
3
|
-
*/
|
|
4
|
-
interface PendingAfter {
|
|
5
|
-
buffer: string[];
|
|
6
|
-
left: number;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* State for managing before/after context lines around matches.
|
|
10
|
-
*/
|
|
11
|
-
export interface ContextState {
|
|
12
|
-
before: string[];
|
|
13
|
-
pendingAfter: PendingAfter[];
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Create a fresh context state for tracking match context.
|
|
17
|
-
*/
|
|
18
|
-
export declare function makeContext(): ContextState;
|
|
19
|
-
/**
|
|
20
|
-
* Push a line into context buffers.
|
|
21
|
-
*
|
|
22
|
-
* - Adds to "before" ring buffer (capped at max)
|
|
23
|
-
* - Fills pending "after" buffers for recent matches
|
|
24
|
-
* - Cleans up completed "after" buffers
|
|
25
|
-
*
|
|
26
|
-
* @param ctx - Context state to update
|
|
27
|
-
* @param line - Line content to add
|
|
28
|
-
* @param max - Maximum context lines to keep
|
|
29
|
-
*/
|
|
30
|
-
export declare function pushContext(ctx: ContextState, line: string, max: number): void;
|
|
31
|
-
/**
|
|
32
|
-
* Trim line content for output.
|
|
33
|
-
*
|
|
34
|
-
* - Removes trailing whitespace
|
|
35
|
-
* - Truncates to MAX_LINE_CONTENT_LENGTH
|
|
36
|
-
*
|
|
37
|
-
* @param line - Raw line content
|
|
38
|
-
* @returns Trimmed line content
|
|
39
|
-
*/
|
|
40
|
-
export declare function trimContent(line: string): string;
|
|
41
|
-
export {};
|
|
42
|
-
//# sourceMappingURL=scan-helpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-helpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-helpers.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,YAAY,CAE1C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACV,IAAI,CAkBN;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared utilities for file content scanning.
|
|
3
|
-
*
|
|
4
|
-
* These helpers are used by both main-thread (scan-file.ts) and
|
|
5
|
-
* worker-thread (worker-scan.ts) scanning implementations.
|
|
6
|
-
*/
|
|
7
|
-
import { MAX_LINE_CONTENT_LENGTH } from '../../constants.js';
|
|
8
|
-
/**
|
|
9
|
-
* Create a fresh context state for tracking match context.
|
|
10
|
-
*/
|
|
11
|
-
export function makeContext() {
|
|
12
|
-
return { before: [], pendingAfter: [] };
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Push a line into context buffers.
|
|
16
|
-
*
|
|
17
|
-
* - Adds to "before" ring buffer (capped at max)
|
|
18
|
-
* - Fills pending "after" buffers for recent matches
|
|
19
|
-
* - Cleans up completed "after" buffers
|
|
20
|
-
*
|
|
21
|
-
* @param ctx - Context state to update
|
|
22
|
-
* @param line - Line content to add
|
|
23
|
-
* @param max - Maximum context lines to keep
|
|
24
|
-
*/
|
|
25
|
-
export function pushContext(ctx, line, max) {
|
|
26
|
-
if (max <= 0)
|
|
27
|
-
return;
|
|
28
|
-
// Update before context (ring buffer)
|
|
29
|
-
ctx.before.push(line);
|
|
30
|
-
if (ctx.before.length > max)
|
|
31
|
-
ctx.before.shift();
|
|
32
|
-
// Update pending after context for previous matches
|
|
33
|
-
for (const pending of ctx.pendingAfter) {
|
|
34
|
-
if (pending.left <= 0)
|
|
35
|
-
continue;
|
|
36
|
-
pending.buffer.push(line);
|
|
37
|
-
pending.left -= 1;
|
|
38
|
-
}
|
|
39
|
-
// Clean up completed pending buffers
|
|
40
|
-
while (ctx.pendingAfter.length > 0 && ctx.pendingAfter[0]?.left === 0) {
|
|
41
|
-
ctx.pendingAfter.shift();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Trim line content for output.
|
|
46
|
-
*
|
|
47
|
-
* - Removes trailing whitespace
|
|
48
|
-
* - Truncates to MAX_LINE_CONTENT_LENGTH
|
|
49
|
-
*
|
|
50
|
-
* @param line - Raw line content
|
|
51
|
-
* @returns Trimmed line content
|
|
52
|
-
*/
|
|
53
|
-
export function trimContent(line) {
|
|
54
|
-
return line.trimEnd().slice(0, MAX_LINE_CONTENT_LENGTH);
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=scan-helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-helpers.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAkB7D;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACzB,GAAiB,EACjB,IAAY,EACZ,GAAW;IAEX,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO;IAErB,sCAAsC;IACtC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG;QAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAEhD,oDAAoD;IACpD,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC;YAAE,SAAS;QAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,qCAAqC;IACrC,OAAO,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as fsp from 'node:fs/promises';
|
|
2
|
-
import type { Matcher, ScanFileOptions, ScanFileResult } from './scan-types.js';
|
|
3
|
-
type BinaryDetector = (path: string, handle: fsp.FileHandle, signal?: AbortSignal) => Promise<boolean>;
|
|
4
|
-
interface ScanLoopOptions {
|
|
5
|
-
matcher: Matcher;
|
|
6
|
-
options: ScanFileOptions;
|
|
7
|
-
maxMatches: number;
|
|
8
|
-
isCancelled: () => boolean;
|
|
9
|
-
isProbablyBinary: BinaryDetector;
|
|
10
|
-
signal?: AbortSignal;
|
|
11
|
-
}
|
|
12
|
-
export declare function scanFileWithMatcher(resolvedPath: string, requestedPath: string, options: ScanLoopOptions): Promise<ScanFileResult>;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=scan-runner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scan-runner.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/scan-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,kBAAkB,CAAC;AAMxC,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEhF,KAAK,cAAc,GAAG,CACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,GAAG,CAAC,UAAU,EACtB,MAAM,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,OAAO,CAAC;IAC3B,gBAAgB,EAAE,cAAc,CAAC;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAsMD,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CASzB"}
|