@neoware_inc/neozipkit 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +134 -0
- package/dist/browser/ZipkitBrowser.d.ts +27 -0
- package/dist/browser/ZipkitBrowser.d.ts.map +1 -0
- package/dist/browser/ZipkitBrowser.js +303 -0
- package/dist/browser/ZipkitBrowser.js.map +1 -0
- package/dist/browser/index.d.ts +9 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.esm.d.ts +12 -0
- package/dist/browser/index.esm.d.ts.map +1 -0
- package/dist/browser/index.esm.js +46 -0
- package/dist/browser/index.esm.js.map +1 -0
- package/dist/browser/index.js +38 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser-esm/index.d.ts +9 -0
- package/dist/browser-esm/index.js +50211 -0
- package/dist/browser-esm/index.js.map +7 -0
- package/dist/browser-umd/index.d.ts +9 -0
- package/dist/browser-umd/index.js +50221 -0
- package/dist/browser-umd/index.js.map +7 -0
- package/dist/browser-umd/index.min.js +39 -0
- package/dist/browser.d.ts +9 -0
- package/dist/browser.js +38 -0
- package/dist/core/ZipCompress.d.ts +99 -0
- package/dist/core/ZipCompress.d.ts.map +1 -0
- package/dist/core/ZipCompress.js +287 -0
- package/dist/core/ZipCompress.js.map +1 -0
- package/dist/core/ZipCopy.d.ts +175 -0
- package/dist/core/ZipCopy.d.ts.map +1 -0
- package/dist/core/ZipCopy.js +310 -0
- package/dist/core/ZipCopy.js.map +1 -0
- package/dist/core/ZipDecompress.d.ts +57 -0
- package/dist/core/ZipDecompress.d.ts.map +1 -0
- package/dist/core/ZipDecompress.js +155 -0
- package/dist/core/ZipDecompress.js.map +1 -0
- package/dist/core/ZipEntry.d.ts +138 -0
- package/dist/core/ZipEntry.d.ts.map +1 -0
- package/dist/core/ZipEntry.js +829 -0
- package/dist/core/ZipEntry.js.map +1 -0
- package/dist/core/Zipkit.d.ts +315 -0
- package/dist/core/Zipkit.d.ts.map +1 -0
- package/dist/core/Zipkit.js +647 -0
- package/dist/core/Zipkit.js.map +1 -0
- package/dist/core/ZstdManager.d.ts +56 -0
- package/dist/core/ZstdManager.d.ts.map +1 -0
- package/dist/core/ZstdManager.js +144 -0
- package/dist/core/ZstdManager.js.map +1 -0
- package/dist/core/components/HashCalculator.d.ts +138 -0
- package/dist/core/components/HashCalculator.d.ts.map +1 -0
- package/dist/core/components/HashCalculator.js +360 -0
- package/dist/core/components/HashCalculator.js.map +1 -0
- package/dist/core/components/Logger.d.ts +73 -0
- package/dist/core/components/Logger.d.ts.map +1 -0
- package/dist/core/components/Logger.js +156 -0
- package/dist/core/components/Logger.js.map +1 -0
- package/dist/core/components/ProgressTracker.d.ts +43 -0
- package/dist/core/components/ProgressTracker.d.ts.map +1 -0
- package/dist/core/components/ProgressTracker.js +112 -0
- package/dist/core/components/ProgressTracker.js.map +1 -0
- package/dist/core/components/Support.d.ts +64 -0
- package/dist/core/components/Support.d.ts.map +1 -0
- package/dist/core/components/Support.js +71 -0
- package/dist/core/components/Support.js.map +1 -0
- package/dist/core/components/Util.d.ts +26 -0
- package/dist/core/components/Util.d.ts.map +1 -0
- package/dist/core/components/Util.js +95 -0
- package/dist/core/components/Util.js.map +1 -0
- package/dist/core/constants/Errors.d.ts +52 -0
- package/dist/core/constants/Errors.d.ts.map +1 -0
- package/dist/core/constants/Errors.js +67 -0
- package/dist/core/constants/Errors.js.map +1 -0
- package/dist/core/constants/Headers.d.ts +170 -0
- package/dist/core/constants/Headers.d.ts.map +1 -0
- package/dist/core/constants/Headers.js +194 -0
- package/dist/core/constants/Headers.js.map +1 -0
- package/dist/core/encryption/Manager.d.ts +58 -0
- package/dist/core/encryption/Manager.d.ts.map +1 -0
- package/dist/core/encryption/Manager.js +121 -0
- package/dist/core/encryption/Manager.js.map +1 -0
- package/dist/core/encryption/ZipCrypto.d.ts +172 -0
- package/dist/core/encryption/ZipCrypto.d.ts.map +1 -0
- package/dist/core/encryption/ZipCrypto.js +554 -0
- package/dist/core/encryption/ZipCrypto.js.map +1 -0
- package/dist/core/encryption/index.d.ts +9 -0
- package/dist/core/encryption/index.d.ts.map +1 -0
- package/dist/core/encryption/index.js +17 -0
- package/dist/core/encryption/index.js.map +1 -0
- package/dist/core/encryption/types.d.ts +29 -0
- package/dist/core/encryption/types.d.ts.map +1 -0
- package/dist/core/encryption/types.js +12 -0
- package/dist/core/encryption/types.js.map +1 -0
- package/dist/core/index.d.ts +27 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +59 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/version.d.ts +5 -0
- package/dist/core/version.d.ts.map +1 -0
- package/dist/core/version.js +31 -0
- package/dist/core/version.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +38 -0
- package/dist/index.js.map +1 -0
- package/dist/node/ZipCompressNode.d.ts +123 -0
- package/dist/node/ZipCompressNode.d.ts.map +1 -0
- package/dist/node/ZipCompressNode.js +565 -0
- package/dist/node/ZipCompressNode.js.map +1 -0
- package/dist/node/ZipCopyNode.d.ts +165 -0
- package/dist/node/ZipCopyNode.d.ts.map +1 -0
- package/dist/node/ZipCopyNode.js +347 -0
- package/dist/node/ZipCopyNode.js.map +1 -0
- package/dist/node/ZipDecompressNode.d.ts +197 -0
- package/dist/node/ZipDecompressNode.d.ts.map +1 -0
- package/dist/node/ZipDecompressNode.js +678 -0
- package/dist/node/ZipDecompressNode.js.map +1 -0
- package/dist/node/ZipkitNode.d.ts +466 -0
- package/dist/node/ZipkitNode.d.ts.map +1 -0
- package/dist/node/ZipkitNode.js +1426 -0
- package/dist/node/ZipkitNode.js.map +1 -0
- package/dist/node/index.d.ts +25 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +54 -0
- package/dist/node/index.js.map +1 -0
- package/dist/types/index.d.ts +45 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +11 -0
- package/dist/types/index.js.map +1 -0
- package/examples/README.md +261 -0
- package/examples/append-data.json +44 -0
- package/examples/copy-zip-append.ts +139 -0
- package/examples/copy-zip.ts +152 -0
- package/examples/create-zip.ts +172 -0
- package/examples/extract-zip.ts +118 -0
- package/examples/list-zip.ts +161 -0
- package/examples/test-files/data.json +116 -0
- package/examples/test-files/document.md +80 -0
- package/examples/test-files/document.txt +6 -0
- package/examples/test-files/file1.txt +48 -0
- package/examples/test-files/file2.txt +80 -0
- package/examples/tsconfig.json +44 -0
- package/package.json +167 -0
- package/src/browser/ZipkitBrowser.ts +305 -0
- package/src/browser/index.esm.ts +32 -0
- package/src/browser/index.ts +19 -0
- package/src/core/ZipCompress.ts +370 -0
- package/src/core/ZipCopy.ts +434 -0
- package/src/core/ZipDecompress.ts +191 -0
- package/src/core/ZipEntry.ts +917 -0
- package/src/core/Zipkit.ts +794 -0
- package/src/core/ZstdManager.ts +165 -0
- package/src/core/components/HashCalculator.ts +384 -0
- package/src/core/components/Logger.ts +180 -0
- package/src/core/components/ProgressTracker.ts +134 -0
- package/src/core/components/Support.ts +77 -0
- package/src/core/components/Util.ts +91 -0
- package/src/core/constants/Errors.ts +78 -0
- package/src/core/constants/Headers.ts +205 -0
- package/src/core/encryption/Manager.ts +137 -0
- package/src/core/encryption/ZipCrypto.ts +650 -0
- package/src/core/encryption/index.ts +15 -0
- package/src/core/encryption/types.ts +33 -0
- package/src/core/index.ts +42 -0
- package/src/core/version.ts +33 -0
- package/src/index.ts +19 -0
- package/src/node/ZipCompressNode.ts +618 -0
- package/src/node/ZipCopyNode.ts +437 -0
- package/src/node/ZipDecompressNode.ts +793 -0
- package/src/node/ZipkitNode.ts +1706 -0
- package/src/node/index.ts +40 -0
- package/src/types/index.ts +68 -0
- package/src/types/modules.d.ts +22 -0
- package/src/types/opentimestamps.d.ts +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ZipEntry.js","sourceRoot":"","sources":["../../src/core/ZipEntry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
import ZipEntry from './ZipEntry';
|
|
2
|
+
import Errors from './constants/Errors';
|
|
3
|
+
import { CompressOptions } from './ZipCompress';
|
|
4
|
+
import { LOCAL_HDR, ENCRYPT_HDR_SIZE, CMP_METHOD, CENTRAL_END, CENTRAL_DIR, ZIP64_CENTRAL_END, ZIP64_CENTRAL_DIR, GP_FLAG, TIMESTAMP_SUBMITTED, TIMESTAMP_METADATA, TOKENIZED_METADATA, LOCAL_FILE_HEADER, CENTRAL_FILE_HEADER, CENTRAL_DIRECTORY_END, HDR_ID } from './constants/Headers';
|
|
5
|
+
/**
|
|
6
|
+
* Streaming file handle interface
|
|
7
|
+
* Used for file-based ZIP operations in server environments
|
|
8
|
+
*/
|
|
9
|
+
export interface StreamingFileHandle {
|
|
10
|
+
read(buffer: Buffer, offset: number, length: number, position: number): Promise<number>;
|
|
11
|
+
stat(): Promise<{
|
|
12
|
+
size: number;
|
|
13
|
+
}>;
|
|
14
|
+
close(): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
export { ZipEntry, Errors, CMP_METHOD, TIMESTAMP_METADATA, TIMESTAMP_SUBMITTED, TOKENIZED_METADATA, LOCAL_HDR, ENCRYPT_HDR_SIZE, CENTRAL_END, CENTRAL_DIR, ZIP64_CENTRAL_END, ZIP64_CENTRAL_DIR, GP_FLAG, LOCAL_FILE_HEADER, CENTRAL_FILE_HEADER, CENTRAL_DIRECTORY_END, HDR_ID };
|
|
17
|
+
export type { CompressOptions, CreateZipOptions } from './ZipCompress';
|
|
18
|
+
/**
|
|
19
|
+
* Configuration options for Zipkit instances
|
|
20
|
+
*
|
|
21
|
+
* Controls various aspects of ZIP file processing including memory usage,
|
|
22
|
+
* chunk sizes for streaming operations, and debug logging.
|
|
23
|
+
*
|
|
24
|
+
* @interface ZipkitConfig
|
|
25
|
+
* @property {number} [bufferSize] - Buffer size in bytes for streaming operations.
|
|
26
|
+
* Files larger than this size will be processed
|
|
27
|
+
* in chunks for memory efficiency. Default: 512KB (524288 bytes).
|
|
28
|
+
* @property {boolean} [debug] - Enable debug logging for detailed diagnostic information.
|
|
29
|
+
* When enabled, sets Logger level to 'debug'. Default: false.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* const zip = new Zipkit({
|
|
33
|
+
* bufferSize: 512 * 1024, // 512KB buffer
|
|
34
|
+
* debug: true
|
|
35
|
+
* });
|
|
36
|
+
*/
|
|
37
|
+
export interface ZipkitConfig {
|
|
38
|
+
bufferSize?: number;
|
|
39
|
+
debug?: boolean;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Zipkit - Enhanced ZIP File Processing Library with Dual Mode Support
|
|
43
|
+
*
|
|
44
|
+
* Core ZIP file processing library supporting both buffer-based (in-memory) and
|
|
45
|
+
* file-based (streaming) modes. See README.md for detailed documentation.
|
|
46
|
+
*
|
|
47
|
+
* @class Zipkit
|
|
48
|
+
* @static {string} version - Library version string
|
|
49
|
+
* @static {string} releaseDate - Library release date
|
|
50
|
+
*/
|
|
51
|
+
export default class Zipkit {
|
|
52
|
+
static readonly version: string;
|
|
53
|
+
static readonly releaseDate: string;
|
|
54
|
+
private config;
|
|
55
|
+
private inBuffer;
|
|
56
|
+
protected zipEntries: ZipEntry[];
|
|
57
|
+
private centralDirSize;
|
|
58
|
+
private centralDirOffset;
|
|
59
|
+
private zipComment;
|
|
60
|
+
private _zipkitCmp;
|
|
61
|
+
private _zipkitDeCmp;
|
|
62
|
+
/**
|
|
63
|
+
* Creates a new Zipkit instance with optional configuration
|
|
64
|
+
*
|
|
65
|
+
* @param config - Optional configuration object (ZipkitConfig)
|
|
66
|
+
* - bufferSize: Buffer size for streaming operations (default: 512KB)
|
|
67
|
+
* - debug: Enable debug logging (default: false)
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* const zip = new Zipkit({ bufferSize: 512 * 1024, debug: true });
|
|
71
|
+
*/
|
|
72
|
+
constructor(config?: ZipkitConfig);
|
|
73
|
+
/**
|
|
74
|
+
* Lazy-load ZipCompress instance
|
|
75
|
+
* @returns ZipCompress instance (created on first access)
|
|
76
|
+
*/
|
|
77
|
+
private getZipCompress;
|
|
78
|
+
/**
|
|
79
|
+
* Lazy-load ZipDecompress instance
|
|
80
|
+
* @returns ZipDecompress instance (created on first access)
|
|
81
|
+
*/
|
|
82
|
+
private getZipDecompress;
|
|
83
|
+
/**
|
|
84
|
+
* Get the configured buffer size for streaming operations
|
|
85
|
+
* @returns Buffer size in bytes (default: 512KB)
|
|
86
|
+
*/
|
|
87
|
+
getBufferSize(): number;
|
|
88
|
+
/**
|
|
89
|
+
* Check if ZIP is loaded in buffer mode
|
|
90
|
+
* @returns true if buffer-based ZIP is loaded
|
|
91
|
+
*/
|
|
92
|
+
hasInBuffer(): boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Compress data for a ZIP entry (Buffer-based only)
|
|
95
|
+
* Wrapper for ZipCompress.compressData()
|
|
96
|
+
*
|
|
97
|
+
* @param entry - ZIP entry to compress
|
|
98
|
+
* @param data - Buffer containing data to compress
|
|
99
|
+
* @param options - Compression options
|
|
100
|
+
* @param onOutputBuffer - Optional callback for streaming output
|
|
101
|
+
* @returns Promise resolving to Buffer containing compressed data
|
|
102
|
+
*/
|
|
103
|
+
compressData(entry: ZipEntry, data: Buffer, options?: CompressOptions, onOutputBuffer?: (data: Buffer) => Promise<void>): Promise<Buffer>;
|
|
104
|
+
/**
|
|
105
|
+
* Compress data using deflate algorithm with chunked processing
|
|
106
|
+
* Wrapper for ZipCompress.deflateCompress()
|
|
107
|
+
*
|
|
108
|
+
* @param data - Data to compress (Buffer or chunked reader)
|
|
109
|
+
* @param options - Compression options
|
|
110
|
+
* @param bufferSize - Size of buffer to read (default: 512KB)
|
|
111
|
+
* @param entry - Optional ZIP entry for hash calculation
|
|
112
|
+
* @param onOutputBuffer - Optional callback for streaming output
|
|
113
|
+
* @returns Promise resolving to Buffer containing compressed data
|
|
114
|
+
*/
|
|
115
|
+
deflateCompress(data: Buffer | {
|
|
116
|
+
totalSize: number;
|
|
117
|
+
onReadChunk: (position: number, size: number) => Buffer;
|
|
118
|
+
onOutChunk: (chunk: Buffer) => void;
|
|
119
|
+
}, options?: CompressOptions, bufferSize?: number, entry?: ZipEntry, onOutputBuffer?: (data: Buffer) => Promise<void>): Promise<Buffer>;
|
|
120
|
+
/**
|
|
121
|
+
* Compress data using deflate algorithm (synchronous, small buffers only)
|
|
122
|
+
* Wrapper for ZipCompress.deflate()
|
|
123
|
+
*
|
|
124
|
+
* @param inbuf - Buffer containing data to compress
|
|
125
|
+
* @param options - Compression options
|
|
126
|
+
* @returns Buffer containing compressed data
|
|
127
|
+
*/
|
|
128
|
+
deflate(inbuf: Buffer, options?: CompressOptions): Buffer;
|
|
129
|
+
/**
|
|
130
|
+
* Compress data using Zstandard (zstd) algorithm
|
|
131
|
+
* Wrapper for ZipCompress.zstdCompress()
|
|
132
|
+
*
|
|
133
|
+
* Note: ZSTD codec is lazily initialized on first use (module-level singleton).
|
|
134
|
+
* Initialization happens automatically when needed.
|
|
135
|
+
*
|
|
136
|
+
* @param input - Buffer to compress OR chunked reader object
|
|
137
|
+
* @param options - Compression options
|
|
138
|
+
* @param bufferSize - Size of buffer to read if using chunked reader (default: 512KB)
|
|
139
|
+
* @param entry - Optional ZIP entry for hash calculation
|
|
140
|
+
* @param onOutputBuffer - Optional callback for streaming output
|
|
141
|
+
* @returns Promise resolving to Buffer containing compressed data
|
|
142
|
+
*/
|
|
143
|
+
zstdCompress(input: Buffer | {
|
|
144
|
+
totalSize: number;
|
|
145
|
+
readChunk: (position: number, size: number) => Buffer;
|
|
146
|
+
}, options?: CompressOptions, bufferSize?: number, entry?: ZipEntry, onOutputBuffer?: (data: Buffer) => Promise<void>): Promise<Buffer>;
|
|
147
|
+
/**
|
|
148
|
+
* Compress file data in memory and return ZIP entry information as Buffer
|
|
149
|
+
* Wrapper for ZipCompress.compressFileBuffer()
|
|
150
|
+
*
|
|
151
|
+
* @param entry - ZIP entry to compress
|
|
152
|
+
* @param fileData - File data buffer to compress
|
|
153
|
+
* @param cmpOptions - Compression options
|
|
154
|
+
* @returns Promise resolving to Buffer containing local header + compressed data
|
|
155
|
+
*/
|
|
156
|
+
compressFileBuffer(entry: ZipEntry, fileData: Buffer, cmpOptions?: CompressOptions): Promise<Buffer>;
|
|
157
|
+
/**
|
|
158
|
+
* Extract file data (Buffer-based ZIP only)
|
|
159
|
+
* Wrapper for ZipDecompress.extract()
|
|
160
|
+
*
|
|
161
|
+
* @param entry - ZIP entry to extract
|
|
162
|
+
* @param skipHashCheck - Skip hash verification (CRC-32 or SHA-256)
|
|
163
|
+
* @returns Promise resolving to Buffer containing extracted data, or null if failed
|
|
164
|
+
* @throws Error if not a Buffer-based ZIP
|
|
165
|
+
*/
|
|
166
|
+
extract(entry: ZipEntry, skipHashCheck?: boolean): Promise<Buffer | null>;
|
|
167
|
+
/**
|
|
168
|
+
* Note: Logging for ZipCompress and ZipDecompress is controlled by their
|
|
169
|
+
* static loggingEnabled property. Set it directly:
|
|
170
|
+
* ZipCompress.loggingEnabled = true/false;
|
|
171
|
+
* ZipDecompress.loggingEnabled = true/false;
|
|
172
|
+
*/
|
|
173
|
+
/**
|
|
174
|
+
* Load ZIP file from buffer (in-memory mode)
|
|
175
|
+
*
|
|
176
|
+
* **Required**: You must call this method (or the appropriate load method for your platform)
|
|
177
|
+
* before calling `getDirectory()` or any other ZIP operations. This method:
|
|
178
|
+
* 1. Resets all ZIP data
|
|
179
|
+
* 2. Stores the buffer in this.inBuffer
|
|
180
|
+
* 3. Loads EOCD and parses central directory
|
|
181
|
+
* 4. Populates this.zipEntries[] array
|
|
182
|
+
*
|
|
183
|
+
* For browser applications, use `ZipkitBrowser.loadZipBlob()` instead.
|
|
184
|
+
* For server applications with file paths, use `ZipkitServer.loadZipFile()` instead.
|
|
185
|
+
*
|
|
186
|
+
* @param inBuf - Buffer containing the complete ZIP file data
|
|
187
|
+
* @returns ZipEntry[] Array of all entries in the ZIP file
|
|
188
|
+
*/
|
|
189
|
+
loadZip(inBuf: Buffer): ZipEntry[];
|
|
190
|
+
/**
|
|
191
|
+
* Reset all ZIP-related data to initial state
|
|
192
|
+
*
|
|
193
|
+
* Clears all internal state including zipEntries[], inBuffer, and zipComment.
|
|
194
|
+
*
|
|
195
|
+
* Note: ZipCompress and ZipDecompress instances are not recreated.
|
|
196
|
+
* ZSTD codec is a module-level singleton and is lazily initialized on first use,
|
|
197
|
+
* so no cleanup is needed. No memory buffers are allocated until compression/decompression
|
|
198
|
+
* operations are performed.
|
|
199
|
+
*/
|
|
200
|
+
private resetZipData;
|
|
201
|
+
/**
|
|
202
|
+
* Get central directory entries (synchronous, buffer-based only)
|
|
203
|
+
*
|
|
204
|
+
* Returns entries from zipEntries[] array which serves as unified storage.
|
|
205
|
+
*
|
|
206
|
+
* **Important**: This method does NOT load the ZIP file. You must call `loadZip()` first
|
|
207
|
+
* to populate zipEntries[]. If the ZIP is not loaded, this method returns an empty array.
|
|
208
|
+
*
|
|
209
|
+
* @param debug - Optional debug flag for logging
|
|
210
|
+
* @returns Array of ZipEntry objects, or empty array if ZIP not loaded
|
|
211
|
+
*/
|
|
212
|
+
getDirectory(debug?: boolean): ZipEntry[];
|
|
213
|
+
/**
|
|
214
|
+
* Get specific ZIP entry by filename from zipEntries[] array
|
|
215
|
+
*
|
|
216
|
+
* @param filename - The name/path of the file/directory to find
|
|
217
|
+
* @returns ZipEntry object if found, null if not found
|
|
218
|
+
*/
|
|
219
|
+
getZipEntry(filename: string): ZipEntry | null;
|
|
220
|
+
/**
|
|
221
|
+
* Ensure buffer is available (in-memory mode)
|
|
222
|
+
*/
|
|
223
|
+
ensureBuffer(): Buffer;
|
|
224
|
+
/**
|
|
225
|
+
* Parse local header (in-memory mode)
|
|
226
|
+
*/
|
|
227
|
+
parseLocalHeader(entry: ZipEntry, buffer: Buffer): Buffer;
|
|
228
|
+
/**
|
|
229
|
+
* Test CRC32 checksum
|
|
230
|
+
* Always checks CRC against entry.crc from central directory
|
|
231
|
+
* For DATA_DESC files, CRC is stored in central directory, not local header
|
|
232
|
+
*/
|
|
233
|
+
testCRC32(entry: ZipEntry, data: Buffer): boolean;
|
|
234
|
+
/**
|
|
235
|
+
* Test SHA256 hash
|
|
236
|
+
*/
|
|
237
|
+
testSHA256(entry: ZipEntry, data: Buffer): boolean;
|
|
238
|
+
/**
|
|
239
|
+
* Get memory usage statistics
|
|
240
|
+
*
|
|
241
|
+
* @returns Object containing backend type, total memory usage in bytes, and entry count
|
|
242
|
+
*/
|
|
243
|
+
getMemoryUsage(): {
|
|
244
|
+
backend: 'buffer' | 'file' | 'none';
|
|
245
|
+
memoryUsage: number;
|
|
246
|
+
entries: number;
|
|
247
|
+
};
|
|
248
|
+
/**
|
|
249
|
+
* Create a new ZIP entry and automatically add it to zipEntries[]
|
|
250
|
+
*
|
|
251
|
+
* @param filename - Entry filename
|
|
252
|
+
* @param data - Optional entry data (for CRC calculation)
|
|
253
|
+
* @param options - Optional entry options
|
|
254
|
+
* @returns Created ZipEntry instance
|
|
255
|
+
*/
|
|
256
|
+
createZipEntry(filename: string, data?: Buffer, options?: any): ZipEntry;
|
|
257
|
+
/**
|
|
258
|
+
* Copy entry from another ZIP (buffer-based only)
|
|
259
|
+
* For file-based ZIP operations, use ZipkitServer.copyEntry()
|
|
260
|
+
*/
|
|
261
|
+
copyEntry(sourceEntry: ZipEntry): Promise<Buffer>;
|
|
262
|
+
/**
|
|
263
|
+
* Central end header getter (for compatibility)
|
|
264
|
+
*
|
|
265
|
+
* Returns a function that creates the central end header using totalEntries from zipEntries[].
|
|
266
|
+
*
|
|
267
|
+
* @returns Function that creates central end header buffer
|
|
268
|
+
*/
|
|
269
|
+
get centralEndHdr(): (centralDirSize: number, centralDirOffset: number) => Buffer;
|
|
270
|
+
/**
|
|
271
|
+
* Get ZIP comment
|
|
272
|
+
*
|
|
273
|
+
* @returns ZIP file comment string or null
|
|
274
|
+
*/
|
|
275
|
+
getZipComment(): string | null;
|
|
276
|
+
/**
|
|
277
|
+
* Load EOCD from in-memory buffer (buffer mode)
|
|
278
|
+
*/
|
|
279
|
+
private loadEOCDFromBuffer;
|
|
280
|
+
/**
|
|
281
|
+
* Get directory from buffer (buffer mode only)
|
|
282
|
+
* Note: zipEntries[] in Zipkit is the single source of truth for caching.
|
|
283
|
+
* This method always parses fresh from the buffer.
|
|
284
|
+
*/
|
|
285
|
+
private getDirectoryFromBuffer;
|
|
286
|
+
/**
|
|
287
|
+
* Reset internal state (private method for Zipkit to call)
|
|
288
|
+
* Clears all ZIP-related data while keeping the instance alive
|
|
289
|
+
*/
|
|
290
|
+
private reset;
|
|
291
|
+
/**
|
|
292
|
+
* Create central end header
|
|
293
|
+
* Note: totalEntries must be passed as parameter since zipEntries[] in Zipkit is the cache
|
|
294
|
+
*/
|
|
295
|
+
private centralEndHdrMethod;
|
|
296
|
+
/**
|
|
297
|
+
* Calculate Merkle Root of the ZIP file
|
|
298
|
+
*
|
|
299
|
+
* Excludes metadata files (META-INF) to ensure consistent calculation.
|
|
300
|
+
* Simply calls getDirectory() and returns null if empty.
|
|
301
|
+
*
|
|
302
|
+
* @returns Merkle root string or null if calculation fails
|
|
303
|
+
*/
|
|
304
|
+
getMerkleRoot(): string | null;
|
|
305
|
+
/**
|
|
306
|
+
* Calculate Merkle Root of the ZIP file asynchronously
|
|
307
|
+
*
|
|
308
|
+
* Excludes metadata files (META-INF) to ensure consistent calculation.
|
|
309
|
+
* Works with both buffer-based and file-based ZIPs.
|
|
310
|
+
*
|
|
311
|
+
* @returns Promise resolving to Merkle root string or null if calculation fails
|
|
312
|
+
*/
|
|
313
|
+
getMerkleRootAsync(): Promise<string | null>;
|
|
314
|
+
}
|
|
315
|
+
//# sourceMappingURL=Zipkit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Zipkit.d.ts","sourceRoot":"","sources":["../../src/core/Zipkit.ts"],"names":[],"mappings":"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"}
|