@j0hanz/fs-context-mcp 2.1.0 → 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/dist/server.d.ts.map +1 -1
- package/dist/server.js +26 -9
- package/dist/server.js.map +1 -1
- package/dist/tools.d.ts +7 -5
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +122 -29
- package/dist/tools.js.map +1 -1
- package/package.json +6 -6
- 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,144 +0,0 @@
|
|
|
1
|
-
import { existsSync } from 'node:fs';
|
|
2
|
-
import { fileURLToPath } from 'node:url';
|
|
3
|
-
import { Worker } from 'node:worker_threads';
|
|
4
|
-
function isWorkerScanResponse(value) {
|
|
5
|
-
if (!value || typeof value !== 'object')
|
|
6
|
-
return false;
|
|
7
|
-
const candidate = value;
|
|
8
|
-
return typeof candidate.id === 'number' && typeof candidate.ok === 'boolean';
|
|
9
|
-
}
|
|
10
|
-
function getAbortError(signal) {
|
|
11
|
-
const { reason } = signal;
|
|
12
|
-
if (reason instanceof Error) {
|
|
13
|
-
return reason;
|
|
14
|
-
}
|
|
15
|
-
return new Error('Operation aborted');
|
|
16
|
-
}
|
|
17
|
-
function getAbortReason(signal) {
|
|
18
|
-
const { reason } = signal;
|
|
19
|
-
if (reason instanceof Error) {
|
|
20
|
-
return reason.message;
|
|
21
|
-
}
|
|
22
|
-
if (typeof reason === 'string') {
|
|
23
|
-
return reason;
|
|
24
|
-
}
|
|
25
|
-
return undefined;
|
|
26
|
-
}
|
|
27
|
-
function resolveWorkerUrl() {
|
|
28
|
-
const workerJsUrl = new URL('./worker.js', import.meta.url);
|
|
29
|
-
const workerJsPath = fileURLToPath(workerJsUrl);
|
|
30
|
-
if (existsSync(workerJsPath)) {
|
|
31
|
-
return workerJsUrl;
|
|
32
|
-
}
|
|
33
|
-
const workerTsUrl = new URL('./worker.ts', import.meta.url);
|
|
34
|
-
const workerTsPath = fileURLToPath(workerTsUrl);
|
|
35
|
-
if (existsSync(workerTsPath)) {
|
|
36
|
-
return workerTsUrl;
|
|
37
|
-
}
|
|
38
|
-
throw new Error(`Search worker entrypoint not found at ${workerJsPath} or ${workerTsPath}`);
|
|
39
|
-
}
|
|
40
|
-
export function createSearchWorker() {
|
|
41
|
-
const worker = new Worker(resolveWorkerUrl());
|
|
42
|
-
let nextId = 1;
|
|
43
|
-
let closed = false;
|
|
44
|
-
const pending = new Map();
|
|
45
|
-
const cleanupPendingRecord = (record) => {
|
|
46
|
-
if (record.signal && record.onAbort) {
|
|
47
|
-
record.signal.removeEventListener('abort', record.onAbort);
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
const rejectPending = (error) => {
|
|
51
|
-
for (const record of pending.values()) {
|
|
52
|
-
cleanupPendingRecord(record);
|
|
53
|
-
const { reject } = record;
|
|
54
|
-
reject(error);
|
|
55
|
-
}
|
|
56
|
-
pending.clear();
|
|
57
|
-
};
|
|
58
|
-
worker.on('message', (message) => {
|
|
59
|
-
if (!isWorkerScanResponse(message))
|
|
60
|
-
return;
|
|
61
|
-
const record = pending.get(message.id);
|
|
62
|
-
if (!record)
|
|
63
|
-
return;
|
|
64
|
-
pending.delete(message.id);
|
|
65
|
-
cleanupPendingRecord(record);
|
|
66
|
-
if (message.ok) {
|
|
67
|
-
record.resolve(message.result);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
record.reject(new Error(message.error));
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
worker.on('error', (error) => {
|
|
74
|
-
if (closed)
|
|
75
|
-
return;
|
|
76
|
-
closed = true;
|
|
77
|
-
rejectPending(error);
|
|
78
|
-
});
|
|
79
|
-
worker.on('exit', (code) => {
|
|
80
|
-
if (closed)
|
|
81
|
-
return;
|
|
82
|
-
closed = true;
|
|
83
|
-
const error = new Error(`Search worker exited with code ${String(code)}`);
|
|
84
|
-
rejectPending(error);
|
|
85
|
-
});
|
|
86
|
-
return {
|
|
87
|
-
scan: async (payload, signal) => {
|
|
88
|
-
if (closed) {
|
|
89
|
-
throw new Error('Search worker is closed');
|
|
90
|
-
}
|
|
91
|
-
if (signal?.aborted) {
|
|
92
|
-
throw getAbortError(signal);
|
|
93
|
-
}
|
|
94
|
-
const id = nextId++;
|
|
95
|
-
return await new Promise((resolve, reject) => {
|
|
96
|
-
let aborted = false;
|
|
97
|
-
const onAbort = () => {
|
|
98
|
-
if (aborted)
|
|
99
|
-
return;
|
|
100
|
-
aborted = true;
|
|
101
|
-
pending.delete(id);
|
|
102
|
-
try {
|
|
103
|
-
const cancelRequest = {
|
|
104
|
-
id,
|
|
105
|
-
type: 'cancel',
|
|
106
|
-
reason: signal ? getAbortReason(signal) : undefined,
|
|
107
|
-
};
|
|
108
|
-
worker.postMessage(cancelRequest);
|
|
109
|
-
}
|
|
110
|
-
catch {
|
|
111
|
-
// Ignore postMessage failures after abort.
|
|
112
|
-
}
|
|
113
|
-
reject(signal ? getAbortError(signal) : new Error('Operation aborted'));
|
|
114
|
-
};
|
|
115
|
-
if (signal) {
|
|
116
|
-
signal.addEventListener('abort', onAbort, { once: true });
|
|
117
|
-
}
|
|
118
|
-
pending.set(id, { resolve, reject, signal, onAbort });
|
|
119
|
-
if (signal?.aborted) {
|
|
120
|
-
onAbort();
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
try {
|
|
124
|
-
worker.postMessage({ id, type: 'scan', payload });
|
|
125
|
-
}
|
|
126
|
-
catch (error) {
|
|
127
|
-
pending.delete(id);
|
|
128
|
-
if (signal) {
|
|
129
|
-
signal.removeEventListener('abort', onAbort);
|
|
130
|
-
}
|
|
131
|
-
reject(error instanceof Error ? error : new Error(String(error)));
|
|
132
|
-
}
|
|
133
|
-
});
|
|
134
|
-
},
|
|
135
|
-
close: async () => {
|
|
136
|
-
if (closed)
|
|
137
|
-
return;
|
|
138
|
-
closed = true;
|
|
139
|
-
rejectPending(new Error('Search worker closed'));
|
|
140
|
-
await worker.terminate();
|
|
141
|
-
},
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=worker-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-client.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAuC7C,SAAS,oBAAoB,CAAC,KAAc;IAC1C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,SAAS,GAAG,KAAuC,CAAC;IAC1D,OAAO,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,SAAS,CAAC,EAAE,KAAK,SAAS,CAAC;AAC/E,CAAC;AACD,SAAS,aAAa,CAAC,MAAmB;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,MAA8B,CAAC;IAClD,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,cAAc,CAAC,MAAmB;IACzC,MAAM,EAAE,MAAM,EAAE,GAAG,MAA8B,CAAC;IAClD,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yCAAyC,YAAY,OAAO,YAAY,EAAE,CAC3E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC9C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,GAAG,EAQpB,CAAC;IAEJ,MAAM,oBAAoB,GAAG,CAAC,MAG7B,EAAQ,EAAE;QACT,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,KAAY,EAAQ,EAAE;QAC3C,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACtC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC7B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAC1B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAgB,EAAE,EAAE;QACxC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;YAAE,OAAO;QAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3B,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAC3B,IAAI,MAAM;YAAE,OAAO;QACnB,MAAM,GAAG,IAAI,CAAC;QACd,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,MAAM;YAAE,OAAO;QACnB,MAAM,GAAG,IAAI,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,kCAAkC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1E,aAAa,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9B,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YACD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;YACpB,OAAO,MAAM,IAAI,OAAO,CAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC3D,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,MAAM,OAAO,GAAG,GAAS,EAAE;oBACzB,IAAI,OAAO;wBAAE,OAAO;oBACpB,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACnB,IAAI,CAAC;wBACH,MAAM,aAAa,GAAwB;4BACzC,EAAE;4BACF,IAAI,EAAE,QAAQ;4BACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;yBACpD,CAAC;wBACF,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;oBACpC,CAAC;oBAAC,MAAM,CAAC;wBACP,2CAA2C;oBAC7C,CAAC;oBACD,MAAM,CACJ,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAChE,CAAC;gBACJ,CAAC,CAAC;gBAEF,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5D,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;gBACtD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;oBACpB,OAAO,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;gBACpD,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBACxB,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACnB,IAAI,MAAM,EAAE,CAAC;wBACX,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC/C,CAAC;oBACD,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,KAAK,EAAE,KAAK,IAAI,EAAE;YAChB,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,aAAa,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACjD,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { Worker } from 'node:worker_threads';
|
|
2
|
-
import type { WorkerSlot } from './worker-pool-types.js';
|
|
3
|
-
type LogFn = (message: string) => void;
|
|
4
|
-
export declare function selectSlot(slots: WorkerSlot[], nextSlotIndex: number, maxRespawns: number): {
|
|
5
|
-
slot: WorkerSlot | null;
|
|
6
|
-
nextSlotIndex: number;
|
|
7
|
-
};
|
|
8
|
-
export declare function attachWorkerHandlers(worker: Worker, slot: WorkerSlot, getClosed: () => boolean, maxRespawns: number, log: LogFn): void;
|
|
9
|
-
export {};
|
|
10
|
-
//# sourceMappingURL=worker-pool-helpers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-helpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,KAAK,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAqEvC,wBAAgB,UAAU,CACxB,KAAK,EAAE,UAAU,EAAE,EACnB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB;IAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAepD;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,MAAM,OAAO,EACxB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,KAAK,GACT,IAAI,CAYN"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
function handleWorkerMessage(slot, message, log) {
|
|
2
|
-
const pending = slot.pending.get(message.id);
|
|
3
|
-
if (!pending) {
|
|
4
|
-
log(`Received message for unknown request ${String(message.id)}`);
|
|
5
|
-
return;
|
|
6
|
-
}
|
|
7
|
-
slot.pending.delete(message.id);
|
|
8
|
-
if (message.type === 'result') {
|
|
9
|
-
pending.resolve(message.result);
|
|
10
|
-
}
|
|
11
|
-
else {
|
|
12
|
-
pending.reject(new Error(message.error));
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function handleWorkerError(slot, error, log) {
|
|
16
|
-
log(`Worker ${String(slot.index)} error: ${error.message}`);
|
|
17
|
-
for (const [, pending] of slot.pending) {
|
|
18
|
-
pending.reject(new Error(`Worker error: ${error.message}`));
|
|
19
|
-
}
|
|
20
|
-
slot.pending.clear();
|
|
21
|
-
slot.worker?.terminate().catch(() => { });
|
|
22
|
-
slot.worker = null;
|
|
23
|
-
}
|
|
24
|
-
function handleWorkerExit(slot, code, isClosed, maxRespawns, log) {
|
|
25
|
-
log(`Worker ${String(slot.index)} exited with code ${String(code)}`);
|
|
26
|
-
if (isClosed) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
if (slot.pending.size > 0) {
|
|
30
|
-
const error = new Error(`Worker exited unexpectedly with code ${String(code)}`);
|
|
31
|
-
for (const [, pending] of slot.pending) {
|
|
32
|
-
pending.reject(error);
|
|
33
|
-
}
|
|
34
|
-
slot.pending.clear();
|
|
35
|
-
}
|
|
36
|
-
slot.worker = null;
|
|
37
|
-
if (code !== 0 && slot.respawnCount < maxRespawns) {
|
|
38
|
-
slot.respawnCount++;
|
|
39
|
-
log(`Worker ${String(slot.index)} will be respawned on next request (attempt ${String(slot.respawnCount)}/${String(maxRespawns)})`);
|
|
40
|
-
}
|
|
41
|
-
else if (slot.respawnCount >= maxRespawns) {
|
|
42
|
-
log(`Worker ${String(slot.index)} exceeded max respawns, slot disabled`);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
export function selectSlot(slots, nextSlotIndex, maxRespawns) {
|
|
46
|
-
let attempts = 0;
|
|
47
|
-
let index = nextSlotIndex;
|
|
48
|
-
while (attempts < slots.length) {
|
|
49
|
-
const slot = slots[index];
|
|
50
|
-
index = (index + 1) % slots.length;
|
|
51
|
-
attempts++;
|
|
52
|
-
if (slot && (slot.worker || slot.respawnCount < maxRespawns)) {
|
|
53
|
-
return { slot, nextSlotIndex: index };
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
return { slot: null, nextSlotIndex: index };
|
|
57
|
-
}
|
|
58
|
-
export function attachWorkerHandlers(worker, slot, getClosed, maxRespawns, log) {
|
|
59
|
-
worker.on('message', (message) => {
|
|
60
|
-
handleWorkerMessage(slot, message, log);
|
|
61
|
-
});
|
|
62
|
-
worker.on('error', (error) => {
|
|
63
|
-
handleWorkerError(slot, error, log);
|
|
64
|
-
});
|
|
65
|
-
worker.on('exit', (code) => {
|
|
66
|
-
handleWorkerExit(slot, code, getClosed(), maxRespawns, log);
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=worker-pool-helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-helpers.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-manager.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAMpD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,KAAK,UAAQ,GACZ,gBAAgB,CAmBlB"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { SearchWorkerPool } from './worker-pool.js';
|
|
2
|
-
// Singleton pool instance
|
|
3
|
-
let poolInstance = null;
|
|
4
|
-
let poolSize = 0;
|
|
5
|
-
export function getSearchWorkerPool(size, debug = false) {
|
|
6
|
-
if (size <= 0) {
|
|
7
|
-
throw new Error('Pool size must be positive');
|
|
8
|
-
}
|
|
9
|
-
// Reuse existing pool if size matches
|
|
10
|
-
if (poolInstance && poolSize === size) {
|
|
11
|
-
return poolInstance;
|
|
12
|
-
}
|
|
13
|
-
// Close existing pool if size changed
|
|
14
|
-
if (poolInstance) {
|
|
15
|
-
void poolInstance.close();
|
|
16
|
-
}
|
|
17
|
-
poolInstance = new SearchWorkerPool({ size, debug });
|
|
18
|
-
poolSize = size;
|
|
19
|
-
return poolInstance;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=worker-pool-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-manager.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,0BAA0B;AAC1B,IAAI,YAAY,GAA4B,IAAI,CAAC;AACjD,IAAI,QAAQ,GAAG,CAAC,CAAC;AAEjB,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,KAAK,GAAG,KAAK;IAEb,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,sCAAsC;IACtC,IAAI,YAAY,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtC,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,sCAAsC;IACtC,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,YAAY,GAAG,IAAI,gBAAgB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACrD,QAAQ,GAAG,IAAI,CAAC;IAEhB,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type { Worker } from 'node:worker_threads';
|
|
2
|
-
import type { ContentMatch } from '../../../config/types.js';
|
|
3
|
-
import type { MatcherOptions, ScanFileOptions } from './scan-file.js';
|
|
4
|
-
import type { ScanRequest, ScanResult } from './search-worker.js';
|
|
5
|
-
export interface PendingTask {
|
|
6
|
-
resolve: (result: ScanResult['result']) => void;
|
|
7
|
-
reject: (error: Error) => void;
|
|
8
|
-
request: ScanRequest;
|
|
9
|
-
}
|
|
10
|
-
export interface WorkerSlot {
|
|
11
|
-
worker: Worker | null;
|
|
12
|
-
pending: Map<number, PendingTask>;
|
|
13
|
-
respawnCount: number;
|
|
14
|
-
index: number;
|
|
15
|
-
}
|
|
16
|
-
export interface PoolOptions {
|
|
17
|
-
size: number;
|
|
18
|
-
debug?: boolean;
|
|
19
|
-
}
|
|
20
|
-
export interface WorkerScanRequest {
|
|
21
|
-
resolvedPath: string;
|
|
22
|
-
requestedPath: string;
|
|
23
|
-
pattern: string;
|
|
24
|
-
matcherOptions: MatcherOptions;
|
|
25
|
-
scanOptions: ScanFileOptions;
|
|
26
|
-
maxMatches: number;
|
|
27
|
-
}
|
|
28
|
-
export interface WorkerScanResult {
|
|
29
|
-
matches: readonly ContentMatch[];
|
|
30
|
-
matched: boolean;
|
|
31
|
-
skippedTooLarge: boolean;
|
|
32
|
-
skippedBinary: boolean;
|
|
33
|
-
}
|
|
34
|
-
export interface ScanTask {
|
|
35
|
-
id: number;
|
|
36
|
-
promise: Promise<WorkerScanResult>;
|
|
37
|
-
cancel: () => void;
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=worker-pool-types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-types.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IAChD,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,eAAe,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-types.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { PoolOptions, ScanTask, WorkerScanRequest } from './worker-pool-types.js';
|
|
2
|
-
export declare class SearchWorkerPool {
|
|
3
|
-
private readonly slots;
|
|
4
|
-
private readonly debug;
|
|
5
|
-
private nextRequestId;
|
|
6
|
-
private nextSlotIndex;
|
|
7
|
-
private closed;
|
|
8
|
-
constructor(options: PoolOptions);
|
|
9
|
-
private log;
|
|
10
|
-
private spawnWorker;
|
|
11
|
-
private getWorker;
|
|
12
|
-
private ensureOpen;
|
|
13
|
-
private selectAvailableSlot;
|
|
14
|
-
private buildScanRequest;
|
|
15
|
-
private createScanPromise;
|
|
16
|
-
private createCancel;
|
|
17
|
-
/**
|
|
18
|
-
* Scan a file for content matches using a worker thread.
|
|
19
|
-
*/
|
|
20
|
-
scan(request: WorkerScanRequest): ScanTask;
|
|
21
|
-
/**
|
|
22
|
-
* Close the pool and terminate all workers.
|
|
23
|
-
*/
|
|
24
|
-
close(): Promise<void>;
|
|
25
|
-
}
|
|
26
|
-
export declare function isWorkerPoolAvailable(): boolean;
|
|
27
|
-
export type { ScanTask, WorkerScanResult } from './worker-pool-types.js';
|
|
28
|
-
//# sourceMappingURL=worker-pool.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EACR,iBAAiB,EAGlB,MAAM,wBAAwB,CAAC;AAchC,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAU;IAChC,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,EAAE,WAAW;IAchC,OAAO,CAAC,GAAG;IAMX,OAAO,CAAC,WAAW;IA4BnB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,QAAQ;IAW1C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CA2B7B;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
import * as path from 'node:path';
|
|
2
|
-
import { fileURLToPath } from 'node:url';
|
|
3
|
-
import { Worker } from 'node:worker_threads';
|
|
4
|
-
import { attachWorkerHandlers, selectSlot } from './worker-pool-helpers.js';
|
|
5
|
-
const currentDir = path.dirname(fileURLToPath(import.meta.url));
|
|
6
|
-
// Support both source (.ts via tsx) and compiled (.js) contexts
|
|
7
|
-
const currentFile = fileURLToPath(import.meta.url);
|
|
8
|
-
const isSourceContext = currentFile.endsWith('.ts');
|
|
9
|
-
const WORKER_SCRIPT_PATH = path.join(currentDir, isSourceContext ? 'search-worker.ts' : 'search-worker.js');
|
|
10
|
-
// Maximum respawns per worker slot before giving up
|
|
11
|
-
const MAX_RESPAWNS = 3;
|
|
12
|
-
export class SearchWorkerPool {
|
|
13
|
-
slots;
|
|
14
|
-
debug;
|
|
15
|
-
nextRequestId = 0;
|
|
16
|
-
nextSlotIndex = 0;
|
|
17
|
-
closed = false;
|
|
18
|
-
constructor(options) {
|
|
19
|
-
this.debug = options.debug ?? false;
|
|
20
|
-
this.slots = [];
|
|
21
|
-
for (let i = 0; i < options.size; i++) {
|
|
22
|
-
this.slots.push({
|
|
23
|
-
worker: null,
|
|
24
|
-
pending: new Map(),
|
|
25
|
-
respawnCount: 0,
|
|
26
|
-
index: i,
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
log(message) {
|
|
31
|
-
if (this.debug) {
|
|
32
|
-
console.error(`[SearchWorkerPool] ${message}`);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
spawnWorker(slot) {
|
|
36
|
-
this.log(`Spawning worker for slot ${String(slot.index)}`);
|
|
37
|
-
const workerOptions = {
|
|
38
|
-
workerData: {
|
|
39
|
-
debug: this.debug,
|
|
40
|
-
threadId: slot.index,
|
|
41
|
-
},
|
|
42
|
-
execArgv: isSourceContext ? ['--import', 'tsx'] : undefined,
|
|
43
|
-
};
|
|
44
|
-
const worker = new Worker(WORKER_SCRIPT_PATH, workerOptions);
|
|
45
|
-
// Unref so worker doesn't keep process alive
|
|
46
|
-
worker.unref();
|
|
47
|
-
const logEntry = (entry) => {
|
|
48
|
-
this.log(entry);
|
|
49
|
-
};
|
|
50
|
-
attachWorkerHandlers(worker, slot, () => this.closed, MAX_RESPAWNS, logEntry);
|
|
51
|
-
return worker;
|
|
52
|
-
}
|
|
53
|
-
getWorker(slot) {
|
|
54
|
-
slot.worker ??= this.spawnWorker(slot);
|
|
55
|
-
return slot.worker;
|
|
56
|
-
}
|
|
57
|
-
ensureOpen() {
|
|
58
|
-
if (this.closed) {
|
|
59
|
-
throw new Error('Worker pool is closed');
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
selectAvailableSlot() {
|
|
63
|
-
const selection = selectSlot(this.slots, this.nextSlotIndex, MAX_RESPAWNS);
|
|
64
|
-
this.nextSlotIndex = selection.nextSlotIndex;
|
|
65
|
-
if (!selection.slot) {
|
|
66
|
-
throw new Error('All worker slots are disabled');
|
|
67
|
-
}
|
|
68
|
-
return selection.slot;
|
|
69
|
-
}
|
|
70
|
-
buildScanRequest(id, request) {
|
|
71
|
-
return {
|
|
72
|
-
type: 'scan',
|
|
73
|
-
id,
|
|
74
|
-
...request,
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
createScanPromise(slot, worker, scanRequest) {
|
|
78
|
-
let settled = false;
|
|
79
|
-
return new Promise((resolve, reject) => {
|
|
80
|
-
const safeResolve = (result) => {
|
|
81
|
-
if (settled)
|
|
82
|
-
return;
|
|
83
|
-
settled = true;
|
|
84
|
-
resolve(result);
|
|
85
|
-
};
|
|
86
|
-
const safeReject = (error) => {
|
|
87
|
-
if (settled)
|
|
88
|
-
return;
|
|
89
|
-
settled = true;
|
|
90
|
-
reject(error);
|
|
91
|
-
};
|
|
92
|
-
slot.pending.set(scanRequest.id, {
|
|
93
|
-
resolve: safeResolve,
|
|
94
|
-
reject: safeReject,
|
|
95
|
-
request: scanRequest,
|
|
96
|
-
});
|
|
97
|
-
worker.postMessage(scanRequest);
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
createCancel(slot, worker, id) {
|
|
101
|
-
return () => {
|
|
102
|
-
const pending = slot.pending.get(id);
|
|
103
|
-
if (!pending)
|
|
104
|
-
return;
|
|
105
|
-
slot.pending.delete(id);
|
|
106
|
-
worker.postMessage({ type: 'cancel', id });
|
|
107
|
-
pending.reject(new Error('Scan cancelled'));
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Scan a file for content matches using a worker thread.
|
|
112
|
-
*/
|
|
113
|
-
scan(request) {
|
|
114
|
-
this.ensureOpen();
|
|
115
|
-
const slot = this.selectAvailableSlot();
|
|
116
|
-
const worker = this.getWorker(slot);
|
|
117
|
-
const id = this.nextRequestId++;
|
|
118
|
-
const scanRequest = this.buildScanRequest(id, request);
|
|
119
|
-
const promise = this.createScanPromise(slot, worker, scanRequest);
|
|
120
|
-
const cancel = this.createCancel(slot, worker, id);
|
|
121
|
-
return { id, promise, cancel };
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Close the pool and terminate all workers.
|
|
125
|
-
*/
|
|
126
|
-
async close() {
|
|
127
|
-
if (this.closed)
|
|
128
|
-
return;
|
|
129
|
-
this.closed = true;
|
|
130
|
-
this.log('Closing worker pool');
|
|
131
|
-
// Cancel all pending requests
|
|
132
|
-
for (const slot of this.slots) {
|
|
133
|
-
for (const [, pending] of slot.pending) {
|
|
134
|
-
pending.reject(new Error('Worker pool closed'));
|
|
135
|
-
}
|
|
136
|
-
slot.pending.clear();
|
|
137
|
-
}
|
|
138
|
-
// Terminate all workers
|
|
139
|
-
const terminatePromises = [];
|
|
140
|
-
for (const slot of this.slots) {
|
|
141
|
-
if (slot.worker) {
|
|
142
|
-
slot.worker.postMessage({ type: 'shutdown' });
|
|
143
|
-
terminatePromises.push(slot.worker.terminate());
|
|
144
|
-
slot.worker = null;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
await Promise.allSettled(terminatePromises);
|
|
148
|
-
this.log('Worker pool closed');
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
export function isWorkerPoolAvailable() {
|
|
152
|
-
return !isSourceContext;
|
|
153
|
-
}
|
|
154
|
-
//# sourceMappingURL=worker-pool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Worker-safe file scanning function.
|
|
3
|
-
*
|
|
4
|
-
* This module provides a file scanning function that can be used within
|
|
5
|
-
* worker threads. It doesn't rely on any shared state from the main thread.
|
|
6
|
-
*/
|
|
7
|
-
import type { FileHandle } from 'node:fs/promises';
|
|
8
|
-
import type { ContentMatch } from '../../../config/types.js';
|
|
9
|
-
import type { Matcher, ScanFileOptions } from './scan-types.js';
|
|
10
|
-
type BinaryDetector = (path: string, handle: FileHandle, signal?: AbortSignal) => Promise<boolean>;
|
|
11
|
-
export interface WorkerScanResult {
|
|
12
|
-
readonly matches: readonly ContentMatch[];
|
|
13
|
-
readonly matched: boolean;
|
|
14
|
-
readonly skippedTooLarge: boolean;
|
|
15
|
-
readonly skippedBinary: boolean;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Scans a file for content matches within a worker thread.
|
|
19
|
-
*
|
|
20
|
-
* This function is similar to scanFileResolved but designed for worker threads:
|
|
21
|
-
* - Takes a cancellation check function instead of AbortSignal
|
|
22
|
-
* - Takes binary detector as a parameter to avoid module-level state
|
|
23
|
-
*/
|
|
24
|
-
export declare function scanFileInWorker(resolvedPath: string, requestedPath: string, matcher: Matcher, options: ScanFileOptions, maxMatches: number, isCancelled: () => boolean, isProbablyBinary: BinaryDetector): Promise<WorkerScanResult>;
|
|
25
|
-
export {};
|
|
26
|
-
//# sourceMappingURL=worker-scan.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-scan.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-scan.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEhE,KAAK,cAAc,GAAG,CACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,MAAM,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,OAAO,EAC1B,gBAAgB,EAAE,cAAc,GAC/B,OAAO,CAAC,gBAAgB,CAAC,CAc3B"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { scanFileWithMatcher } from './scan-runner.js';
|
|
2
|
-
/**
|
|
3
|
-
* Scans a file for content matches within a worker thread.
|
|
4
|
-
*
|
|
5
|
-
* This function is similar to scanFileResolved but designed for worker threads:
|
|
6
|
-
* - Takes a cancellation check function instead of AbortSignal
|
|
7
|
-
* - Takes binary detector as a parameter to avoid module-level state
|
|
8
|
-
*/
|
|
9
|
-
export async function scanFileInWorker(resolvedPath, requestedPath, matcher, options, maxMatches, isCancelled, isProbablyBinary) {
|
|
10
|
-
const result = await scanFileWithMatcher(resolvedPath, requestedPath, {
|
|
11
|
-
matcher,
|
|
12
|
-
options,
|
|
13
|
-
maxMatches,
|
|
14
|
-
isCancelled,
|
|
15
|
-
isProbablyBinary,
|
|
16
|
-
});
|
|
17
|
-
return {
|
|
18
|
-
matches: result.matches,
|
|
19
|
-
matched: result.matched,
|
|
20
|
-
skippedTooLarge: result.skippedTooLarge,
|
|
21
|
-
skippedBinary: result.skippedBinary,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=worker-scan.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker-scan.js","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker-scan.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAgBvD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,YAAoB,EACpB,aAAqB,EACrB,OAAgB,EAChB,OAAwB,EACxB,UAAkB,EAClB,WAA0B,EAC1B,gBAAgC;IAEhC,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,YAAY,EAAE,aAAa,EAAE;QACpE,OAAO;QACP,OAAO;QACP,UAAU;QACV,WAAW;QACX,gBAAgB;KACjB,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,aAAa,EAAE,MAAM,CAAC,aAAa;KACpC,CAAC;AACJ,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { ContentMatch } from '../../../config/types.js';
|
|
2
|
-
import { type MatcherOptions, type ScanFileOptions } from './scan-file.js';
|
|
3
|
-
/** Task sent from main thread */
|
|
4
|
-
export interface ScanTask {
|
|
5
|
-
id: number;
|
|
6
|
-
resolvedPath: string;
|
|
7
|
-
requestedPath: string;
|
|
8
|
-
pattern: string;
|
|
9
|
-
matcherOptions: MatcherOptions;
|
|
10
|
-
scanOptions: ScanFileOptions;
|
|
11
|
-
maxMatches: number;
|
|
12
|
-
}
|
|
13
|
-
/** Result sent back to main thread */
|
|
14
|
-
export interface ScanResult {
|
|
15
|
-
id: number;
|
|
16
|
-
ok: boolean;
|
|
17
|
-
matches?: readonly ContentMatch[];
|
|
18
|
-
matched?: boolean;
|
|
19
|
-
skippedTooLarge?: boolean;
|
|
20
|
-
skippedBinary?: boolean;
|
|
21
|
-
error?: string;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=worker.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../../src/lib/file-operations/search/worker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,eAAe,EAErB,MAAM,gBAAgB,CAAC;AAExB,iCAAiC;AACjC,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,eAAe,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { parentPort, workerData } from 'node:worker_threads';
|
|
2
|
-
import { buildMatcher, scanFileResolved, } from './scan-file.js';
|
|
3
|
-
// Only run worker logic when loaded as a worker
|
|
4
|
-
if (workerData === 'search-worker' && parentPort) {
|
|
5
|
-
const port = parentPort;
|
|
6
|
-
port.on('message', async (task) => {
|
|
7
|
-
try {
|
|
8
|
-
const matcher = buildMatcher(task.pattern, task.matcherOptions);
|
|
9
|
-
const result = await scanFileResolved(task.resolvedPath, task.requestedPath, matcher, task.scanOptions, undefined, task.maxMatches);
|
|
10
|
-
port.postMessage({
|
|
11
|
-
id: task.id,
|
|
12
|
-
ok: true,
|
|
13
|
-
matches: result.matches,
|
|
14
|
-
matched: result.matched,
|
|
15
|
-
skippedTooLarge: result.skippedTooLarge,
|
|
16
|
-
skippedBinary: result.skippedBinary,
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
catch (error) {
|
|
20
|
-
port.postMessage({
|
|
21
|
-
id: task.id,
|
|
22
|
-
ok: false,
|
|
23
|
-
error: error instanceof Error ? error.message : String(error),
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=worker.js.map
|