scanoss 0.30.1 → 0.31.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -1
- package/build/main/sdk/Clients/Dependency/DependencyGRPCClient.js +18 -8
- package/build/main/sdk/Clients/Grpc/BaseGRPCClient.js +18 -8
- package/build/main/sdk/Clients/Grpc/scanoss/api/components/v2/scanoss-components_grpc_pb.d.ts +8 -8
- package/build/main/sdk/Clients/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +8 -8
- package/build/main/sdk/Clients/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +4 -4
- package/build/main/sdk/Decompress/DecompressionManager.js +6 -2
- package/build/main/sdk/Decompress/Decompressor/DecompressGz.d.ts +10 -0
- package/build/main/sdk/Decompress/Decompressor/DecompressGz.js +32 -0
- package/build/main/sdk/Decompress/Decompressor/DecompressLibarchive.d.ts +10 -0
- package/build/main/sdk/Decompress/Decompressor/DecompressLibarchive.js +103 -0
- package/build/main/sdk/Decompress/Decompressor/DecompressTgz.js +36 -6
- package/build/main/sdk/Filtering/Filtering.js +18 -8
- package/build/main/sdk/scanner/Scannable/ScannableItem.d.ts +1 -1
- package/build/main/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
- package/build/main/tsconfig.tsbuildinfo +1 -1
- package/build/module/sdk/Clients/Grpc/scanoss/api/components/v2/scanoss-components_grpc_pb.d.ts +8 -8
- package/build/module/sdk/Clients/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +8 -8
- package/build/module/sdk/Clients/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +4 -4
- package/build/module/sdk/Decompress/DecompressionManager.js +6 -2
- package/build/module/sdk/Decompress/Decompressor/DecompressGz.d.ts +10 -0
- package/build/module/sdk/Decompress/Decompressor/DecompressGz.js +25 -0
- package/build/module/sdk/Decompress/Decompressor/DecompressLibarchive.d.ts +10 -0
- package/build/module/sdk/Decompress/Decompressor/DecompressLibarchive.js +63 -0
- package/build/module/sdk/Decompress/Decompressor/DecompressTgz.js +2 -2
- package/build/module/sdk/scanner/Scannable/ScannableItem.d.ts +1 -1
- package/build/module/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
- package/build/module/tsconfig.module.tsbuildinfo +1 -1
- package/package.json +6 -5
package/build/module/sdk/Clients/Grpc/scanoss/api/components/v2/scanoss-components_grpc_pb.d.ts
CHANGED
|
@@ -61,21 +61,21 @@ export namespace ComponentsService {
|
|
|
61
61
|
}
|
|
62
62
|
export const ComponentsClient: grpc.ServiceClientConstructor;
|
|
63
63
|
import scanoss_api_common_v2_scanoss$common_pb = require("../../../../scanoss/api/common/v2/scanoss-common_pb.js");
|
|
64
|
-
declare function serialize_scanoss_api_common_v2_EchoRequest(arg: any): Buffer
|
|
64
|
+
declare function serialize_scanoss_api_common_v2_EchoRequest(arg: any): Buffer<ArrayBuffer>;
|
|
65
65
|
declare function deserialize_scanoss_api_common_v2_EchoRequest(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.EchoRequest;
|
|
66
|
-
declare function serialize_scanoss_api_common_v2_EchoResponse(arg: any): Buffer
|
|
66
|
+
declare function serialize_scanoss_api_common_v2_EchoResponse(arg: any): Buffer<ArrayBuffer>;
|
|
67
67
|
declare function deserialize_scanoss_api_common_v2_EchoResponse(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.EchoResponse;
|
|
68
|
-
declare function serialize_scanoss_api_components_v2_CompSearchRequest(arg: any): Buffer
|
|
68
|
+
declare function serialize_scanoss_api_components_v2_CompSearchRequest(arg: any): Buffer<any>;
|
|
69
69
|
declare function deserialize_scanoss_api_components_v2_CompSearchRequest(buffer_arg: any): any;
|
|
70
|
-
declare function serialize_scanoss_api_components_v2_CompSearchResponse(arg: any): Buffer
|
|
70
|
+
declare function serialize_scanoss_api_components_v2_CompSearchResponse(arg: any): Buffer<any>;
|
|
71
71
|
declare function deserialize_scanoss_api_components_v2_CompSearchResponse(buffer_arg: any): any;
|
|
72
|
-
declare function serialize_scanoss_api_components_v2_CompVersionRequest(arg: any): Buffer
|
|
72
|
+
declare function serialize_scanoss_api_components_v2_CompVersionRequest(arg: any): Buffer<any>;
|
|
73
73
|
declare function deserialize_scanoss_api_components_v2_CompVersionRequest(buffer_arg: any): any;
|
|
74
|
-
declare function serialize_scanoss_api_components_v2_CompVersionResponse(arg: any): Buffer
|
|
74
|
+
declare function serialize_scanoss_api_components_v2_CompVersionResponse(arg: any): Buffer<any>;
|
|
75
75
|
declare function deserialize_scanoss_api_components_v2_CompVersionResponse(buffer_arg: any): any;
|
|
76
|
-
declare function serialize_scanoss_api_common_v2_PurlRequest(arg: any): Buffer
|
|
76
|
+
declare function serialize_scanoss_api_common_v2_PurlRequest(arg: any): Buffer<ArrayBuffer>;
|
|
77
77
|
declare function deserialize_scanoss_api_common_v2_PurlRequest(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.PurlRequest;
|
|
78
|
-
declare function serialize_scanoss_api_components_v2_CompStatisticResponse(arg: any): Buffer
|
|
78
|
+
declare function serialize_scanoss_api_components_v2_CompStatisticResponse(arg: any): Buffer<any>;
|
|
79
79
|
declare function deserialize_scanoss_api_components_v2_CompStatisticResponse(buffer_arg: any): any;
|
|
80
80
|
import grpc = require("@grpc/grpc-js");
|
|
81
81
|
export {};
|
package/build/module/sdk/Clients/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts
CHANGED
|
@@ -93,22 +93,22 @@ export namespace CryptographyService {
|
|
|
93
93
|
}
|
|
94
94
|
export const CryptographyClient: grpc.ServiceClientConstructor;
|
|
95
95
|
import scanoss_api_common_v2_scanoss$common_pb = require("../../../../scanoss/api/common/v2/scanoss-common_pb.js");
|
|
96
|
-
declare function serialize_scanoss_api_common_v2_EchoRequest(arg: any): Buffer
|
|
96
|
+
declare function serialize_scanoss_api_common_v2_EchoRequest(arg: any): Buffer<ArrayBuffer>;
|
|
97
97
|
declare function deserialize_scanoss_api_common_v2_EchoRequest(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.EchoRequest;
|
|
98
|
-
declare function serialize_scanoss_api_common_v2_EchoResponse(arg: any): Buffer
|
|
98
|
+
declare function serialize_scanoss_api_common_v2_EchoResponse(arg: any): Buffer<ArrayBuffer>;
|
|
99
99
|
declare function deserialize_scanoss_api_common_v2_EchoResponse(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.EchoResponse;
|
|
100
100
|
import scanoss_api_cryptography_v2_scanoss$cryptography_pb = require("../../../../scanoss/api/cryptography/v2/scanoss-cryptography_pb.js");
|
|
101
|
-
declare function serialize_scanoss_api_common_v2_PurlRequest(arg: any): Buffer
|
|
101
|
+
declare function serialize_scanoss_api_common_v2_PurlRequest(arg: any): Buffer<ArrayBuffer>;
|
|
102
102
|
declare function deserialize_scanoss_api_common_v2_PurlRequest(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.PurlRequest;
|
|
103
|
-
declare function serialize_scanoss_api_cryptography_v2_AlgorithmResponse(arg: any): Buffer
|
|
103
|
+
declare function serialize_scanoss_api_cryptography_v2_AlgorithmResponse(arg: any): Buffer<ArrayBuffer>;
|
|
104
104
|
declare function deserialize_scanoss_api_cryptography_v2_AlgorithmResponse(buffer_arg: any): scanoss_api_cryptography_v2_scanoss$cryptography_pb.AlgorithmResponse;
|
|
105
|
-
declare function serialize_scanoss_api_cryptography_v2_AlgorithmsInRangeResponse(arg: any): Buffer
|
|
105
|
+
declare function serialize_scanoss_api_cryptography_v2_AlgorithmsInRangeResponse(arg: any): Buffer<ArrayBuffer>;
|
|
106
106
|
declare function deserialize_scanoss_api_cryptography_v2_AlgorithmsInRangeResponse(buffer_arg: any): scanoss_api_cryptography_v2_scanoss$cryptography_pb.AlgorithmsInRangeResponse;
|
|
107
|
-
declare function serialize_scanoss_api_cryptography_v2_VersionsInRangeResponse(arg: any): Buffer
|
|
107
|
+
declare function serialize_scanoss_api_cryptography_v2_VersionsInRangeResponse(arg: any): Buffer<ArrayBuffer>;
|
|
108
108
|
declare function deserialize_scanoss_api_cryptography_v2_VersionsInRangeResponse(buffer_arg: any): scanoss_api_cryptography_v2_scanoss$cryptography_pb.VersionsInRangeResponse;
|
|
109
|
-
declare function serialize_scanoss_api_cryptography_v2_HintsInRangeResponse(arg: any): Buffer
|
|
109
|
+
declare function serialize_scanoss_api_cryptography_v2_HintsInRangeResponse(arg: any): Buffer<ArrayBuffer>;
|
|
110
110
|
declare function deserialize_scanoss_api_cryptography_v2_HintsInRangeResponse(buffer_arg: any): scanoss_api_cryptography_v2_scanoss$cryptography_pb.HintsInRangeResponse;
|
|
111
|
-
declare function serialize_scanoss_api_cryptography_v2_HintsResponse(arg: any): Buffer
|
|
111
|
+
declare function serialize_scanoss_api_cryptography_v2_HintsResponse(arg: any): Buffer<ArrayBuffer>;
|
|
112
112
|
declare function deserialize_scanoss_api_cryptography_v2_HintsResponse(buffer_arg: any): scanoss_api_cryptography_v2_scanoss$cryptography_pb.HintsResponse;
|
|
113
113
|
import grpc = require("@grpc/grpc-js");
|
|
114
114
|
export {};
|
package/build/module/sdk/Clients/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts
CHANGED
|
@@ -29,14 +29,14 @@ export namespace DependenciesService {
|
|
|
29
29
|
}
|
|
30
30
|
export const DependenciesClient: grpc.ServiceClientConstructor;
|
|
31
31
|
import scanoss_api_common_v2_scanoss$common_pb = require("../../../../scanoss/api/common/v2/scanoss-common_pb.js");
|
|
32
|
-
declare function serialize_scanoss_api_common_v2_EchoRequest(arg: any): Buffer
|
|
32
|
+
declare function serialize_scanoss_api_common_v2_EchoRequest(arg: any): Buffer<ArrayBuffer>;
|
|
33
33
|
declare function deserialize_scanoss_api_common_v2_EchoRequest(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.EchoRequest;
|
|
34
|
-
declare function serialize_scanoss_api_common_v2_EchoResponse(arg: any): Buffer
|
|
34
|
+
declare function serialize_scanoss_api_common_v2_EchoResponse(arg: any): Buffer<ArrayBuffer>;
|
|
35
35
|
declare function deserialize_scanoss_api_common_v2_EchoResponse(buffer_arg: any): scanoss_api_common_v2_scanoss$common_pb.EchoResponse;
|
|
36
36
|
import scanoss_api_dependencies_v2_scanoss$dependencies_pb = require("../../../../scanoss/api/dependencies/v2/scanoss-dependencies_pb.js");
|
|
37
|
-
declare function serialize_scanoss_api_dependencies_v2_DependencyRequest(arg: any): Buffer
|
|
37
|
+
declare function serialize_scanoss_api_dependencies_v2_DependencyRequest(arg: any): Buffer<ArrayBuffer>;
|
|
38
38
|
declare function deserialize_scanoss_api_dependencies_v2_DependencyRequest(buffer_arg: any): scanoss_api_dependencies_v2_scanoss$dependencies_pb.DependencyRequest;
|
|
39
|
-
declare function serialize_scanoss_api_dependencies_v2_DependencyResponse(arg: any): Buffer
|
|
39
|
+
declare function serialize_scanoss_api_dependencies_v2_DependencyResponse(arg: any): Buffer<ArrayBuffer>;
|
|
40
40
|
declare function deserialize_scanoss_api_dependencies_v2_DependencyResponse(buffer_arg: any): scanoss_api_dependencies_v2_scanoss$dependencies_pb.DependencyResponse;
|
|
41
41
|
import grpc = require("@grpc/grpc-js");
|
|
42
42
|
export {};
|
|
@@ -4,6 +4,8 @@ import { Tree } from '../tree/Tree';
|
|
|
4
4
|
import { DecompressionFilter } from '../tree/Filters/DecompressionFilter';
|
|
5
5
|
import { DecompressZip } from './Decompressor/DecompressZips';
|
|
6
6
|
import { DecompressTgz } from './Decompressor/DecompressTgz';
|
|
7
|
+
import { DecompressLibarchive } from './Decompressor/DecompressLibarchive';
|
|
8
|
+
import { DecompressGz } from './Decompressor/DecompressGz';
|
|
7
9
|
export class DecompressionManager {
|
|
8
10
|
decompressorList;
|
|
9
11
|
decompressionLevel;
|
|
@@ -16,7 +18,9 @@ export class DecompressionManager {
|
|
|
16
18
|
this.suffix = suffix;
|
|
17
19
|
this.decompressorList = [
|
|
18
20
|
new DecompressTgz(),
|
|
19
|
-
new DecompressZip()
|
|
21
|
+
new DecompressZip(),
|
|
22
|
+
new DecompressLibarchive(),
|
|
23
|
+
new DecompressGz()
|
|
20
24
|
];
|
|
21
25
|
}
|
|
22
26
|
addDecompressor(d) {
|
|
@@ -75,4 +79,4 @@ export class DecompressionManager {
|
|
|
75
79
|
}
|
|
76
80
|
}
|
|
77
81
|
}
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc2lvbk1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL0RlY29tcHJlc3MvRGVjb21wcmVzc2lvbk1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUNwQixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE1BQU0sT0FBTyxvQkFBb0I7SUFFdkIsZ0JBQWdCLENBQXFCO0lBRXJDLGtCQUFrQixDQUFTO0lBRTNCLE1BQU0sQ0FBUztJQUVmLGtCQUFrQixDQUFVLENBQUUsa0ZBQWtGO0lBQ2xGLGlIQUFpSDtJQUV2SixZQUFZLHFCQUE2QixDQUFDLEVBQUUsU0FBaUIsV0FBVyxFQUFFLHFCQUE4QixLQUFLO1FBQzNHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztRQUM3QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUM7UUFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGdCQUFnQixHQUFHO1lBQ3RCLElBQUksYUFBYSxFQUFFO1lBQ25CLElBQUksYUFBYSxFQUFFO1lBQ25CLElBQUksb0JBQW9CLEVBQUU7WUFDMUIsSUFBSSxZQUFZLEVBQUU7U0FDbkIsQ0FBQztJQUVKLENBQUM7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
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Decompressor } from './Decompressor';
|
|
2
|
+
/**
|
|
3
|
+
* Decompressor for single-file gzip compressed formats (.gz).
|
|
4
|
+
* Uses Node.js built-in zlib for decompression.
|
|
5
|
+
* Output filename is derived by stripping the .gz extension.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DecompressGz extends Decompressor {
|
|
8
|
+
constructor();
|
|
9
|
+
run(archivePath: string, destPath: string): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import zlib from 'zlib';
|
|
4
|
+
import { Decompressor } from './Decompressor';
|
|
5
|
+
/**
|
|
6
|
+
* Decompressor for single-file gzip compressed formats (.gz).
|
|
7
|
+
* Uses Node.js built-in zlib for decompression.
|
|
8
|
+
* Output filename is derived by stripping the .gz extension.
|
|
9
|
+
*/
|
|
10
|
+
export class DecompressGz extends Decompressor {
|
|
11
|
+
constructor() {
|
|
12
|
+
super();
|
|
13
|
+
this.supportedFormats = ['.gz'];
|
|
14
|
+
}
|
|
15
|
+
async run(archivePath, destPath) {
|
|
16
|
+
const buffer = fs.readFileSync(archivePath);
|
|
17
|
+
const basename = path.basename(archivePath);
|
|
18
|
+
const dotIndex = basename.lastIndexOf('.');
|
|
19
|
+
const outputName = dotIndex > 0 ? basename.slice(0, dotIndex) : basename;
|
|
20
|
+
const outputPath = path.join(destPath, outputName);
|
|
21
|
+
const decompressed = zlib.gunzipSync(buffer);
|
|
22
|
+
fs.writeFileSync(outputPath, decompressed);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc0d6LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Nkay9EZWNvbXByZXNzL0RlY29tcHJlc3Nvci9EZWNvbXByZXNzR3oudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3BCLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUN4QixPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFDeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTlDOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sWUFBYSxTQUFRLFlBQVk7SUFDNUM7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQW1CLEVBQUUsUUFBZ0I7UUFDcEQsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0MsTUFBTSxVQUFVLEdBQUcsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUN6RSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRiJ9
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Decompressor } from './Decompressor';
|
|
2
|
+
/**
|
|
3
|
+
* Decompressor for multi-file archive formats supported by libarchive.js (WASM-based).
|
|
4
|
+
* Handles .rar, .rpm, .7z, .tar.bz2, .tar.lzma, .tar.xz, .tbz2, and .txz.
|
|
5
|
+
*/
|
|
6
|
+
export declare class DecompressLibarchive extends Decompressor {
|
|
7
|
+
constructor();
|
|
8
|
+
run(archivePath: string, destPath: string): Promise<void>;
|
|
9
|
+
private writeExtractedFiles;
|
|
10
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { Decompressor } from './Decompressor';
|
|
4
|
+
import { File as NodeFile } from 'node:buffer';
|
|
5
|
+
if (typeof globalThis.File === 'undefined') {
|
|
6
|
+
globalThis.File = NodeFile;
|
|
7
|
+
}
|
|
8
|
+
let _Archive;
|
|
9
|
+
async function getArchive() {
|
|
10
|
+
if (!_Archive) {
|
|
11
|
+
const mod = await import('libarchive.js/dist/libarchive-node.mjs');
|
|
12
|
+
_Archive = mod.Archive;
|
|
13
|
+
}
|
|
14
|
+
return _Archive;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Decompressor for multi-file archive formats supported by libarchive.js (WASM-based).
|
|
18
|
+
* Handles .rar, .rpm, .7z, .tar.bz2, .tar.lzma, .tar.xz, .tbz2, and .txz.
|
|
19
|
+
*/
|
|
20
|
+
export class DecompressLibarchive extends Decompressor {
|
|
21
|
+
constructor() {
|
|
22
|
+
super();
|
|
23
|
+
this.supportedFormats = [
|
|
24
|
+
'.rar',
|
|
25
|
+
'.rpm',
|
|
26
|
+
'.tar.bz2',
|
|
27
|
+
'.tar.lzma',
|
|
28
|
+
'.tar.xz',
|
|
29
|
+
'.tbz2',
|
|
30
|
+
'.txz',
|
|
31
|
+
'.7z',
|
|
32
|
+
];
|
|
33
|
+
}
|
|
34
|
+
async run(archivePath, destPath) {
|
|
35
|
+
const buffer = fs.readFileSync(archivePath);
|
|
36
|
+
const file = new NodeFile([buffer], path.basename(archivePath));
|
|
37
|
+
const Archive = await getArchive();
|
|
38
|
+
const archive = await Archive.open(file);
|
|
39
|
+
try {
|
|
40
|
+
const filesObject = await archive.extractFiles();
|
|
41
|
+
await this.writeExtractedFiles(filesObject, destPath);
|
|
42
|
+
}
|
|
43
|
+
finally {
|
|
44
|
+
await archive.close();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
async writeExtractedFiles(obj, destPath) {
|
|
48
|
+
for (const key of Object.keys(obj)) {
|
|
49
|
+
const value = obj[key];
|
|
50
|
+
const fullPath = path.join(destPath, key);
|
|
51
|
+
if (value instanceof File) {
|
|
52
|
+
fs.mkdirSync(path.dirname(fullPath), { recursive: true });
|
|
53
|
+
const arrayBuffer = await value.arrayBuffer();
|
|
54
|
+
fs.writeFileSync(fullPath, Buffer.from(arrayBuffer));
|
|
55
|
+
}
|
|
56
|
+
else if (value !== null && typeof value === 'object') {
|
|
57
|
+
fs.mkdirSync(fullPath, { recursive: true });
|
|
58
|
+
await this.writeExtractedFiles(value, fullPath);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc0xpYmFyY2hpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL0RlY29tcHJlc3MvRGVjb21wcmVzc29yL0RlY29tcHJlc3NMaWJhcmNoaXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUNwQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFDeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxJQUFJLElBQUksUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRS9DLElBQUksT0FBTyxVQUFVLENBQUMsSUFBSSxLQUFLLFdBQVcsRUFBRSxDQUFDO0lBQzFDLFVBQWtCLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztBQUN0QyxDQUFDO0FBRUQsSUFBSSxRQUFhLENBQUM7QUFDbEIsS0FBSyxVQUFVLFVBQVU7SUFDdkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2QsTUFBTSxHQUFHLEdBQUcsTUFBTSxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQztRQUNuRSxRQUFRLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBQ0QsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUdEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxZQUFZO0lBQ3BEO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsZ0JBQWdCLEdBQUc7WUFDdEIsTUFBTTtZQUNOLE1BQU07WUFDTixVQUFVO1lBQ1YsV0FBVztZQUNYLFNBQVM7WUFDVCxPQUFPO1lBQ1AsTUFBTTtZQUNOLEtBQUs7U0FDTixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBbUIsRUFBRSxRQUFnQjtRQUNwRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sSUFBSSxHQUFHLElBQUksUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sT0FBTyxHQUFHLE1BQU0sVUFBVSxFQUFFLENBQUM7UUFDbkMsTUFBTSxPQUFPLEdBQUcsTUFBTSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQztZQUNILE1BQU0sV0FBVyxHQUFHLE1BQU0sT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2pELE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN4RCxDQUFDO2dCQUFTLENBQUM7WUFDVCxNQUFNLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN4QixDQUFDO0lBQ0gsQ0FBQztJQUVPLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxHQUFRLEVBQUUsUUFBZ0I7UUFDMUQsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbkMsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLElBQUksS0FBSyxZQUFZLElBQUksRUFBRSxDQUFDO2dCQUMxQixFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDMUQsTUFBTSxXQUFXLEdBQUcsTUFBTSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQzlDLEVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUN2RCxDQUFDO2lCQUFNLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdkQsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDNUMsTUFBTSxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztDQUNGIn0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Decompressor } from './Decompressor';
|
|
2
|
-
import tar from 'tar';
|
|
2
|
+
import * as tar from 'tar';
|
|
3
3
|
export class DecompressTgz extends Decompressor {
|
|
4
4
|
constructor() {
|
|
5
5
|
super();
|
|
@@ -13,4 +13,4 @@ export class DecompressTgz extends Decompressor {
|
|
|
13
13
|
return tar.x({ C: destPath, file: archivePath });
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc1Rnei5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvRGVjb21wcmVzcy9EZWNvbXByZXNzb3IvRGVjb21wcmVzc1Rnei50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxLQUFLLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFFM0IsTUFBTSxPQUFPLGFBQWMsU0FBUSxZQUFZO0lBRTdDO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsZ0JBQWdCLEdBQUc7WUFDdEIsU0FBUztZQUNULE1BQU07WUFDTixNQUFNO1NBQ1AsQ0FBQTtJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQW1CLEVBQUUsUUFBZ0I7UUFDbEQsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFDLENBQUMsQ0FBQztJQUNuRCxDQUFDO0NBRUYifQ==
|
|
@@ -6,7 +6,7 @@ export declare class ScannableItem {
|
|
|
6
6
|
private fingerprint;
|
|
7
7
|
private maxSizeWfp;
|
|
8
8
|
constructor(content: Buffer, contentSource: string, winnowingMode: any, maxSizeWfp: number);
|
|
9
|
-
getContent(): Buffer
|
|
9
|
+
getContent(): Buffer<ArrayBufferLike>;
|
|
10
10
|
getContentSource(): string;
|
|
11
11
|
getFingerprint(): any;
|
|
12
12
|
getWinnowingMode(): WinnowingMode;
|
|
@@ -8,7 +8,7 @@ export declare class WfpCalculator extends WfpProvider {
|
|
|
8
8
|
constructor(scannerCfg?: ScannerCfg);
|
|
9
9
|
init(): void;
|
|
10
10
|
prepareWorker(): void;
|
|
11
|
-
recoveryIndex():
|
|
11
|
+
recoveryIndex(): 0 | -1;
|
|
12
12
|
forceStopWorker(): void;
|
|
13
13
|
getNextScannableItem(): Promise<ScannableItem>;
|
|
14
14
|
readFile(path: string): Promise<Buffer>;
|