node-pkware 5.8.0 → 5.9.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 CHANGED
@@ -124,7 +124,7 @@ The returned function has the `(chunk: Buffer, encoding: string, callback: funct
124
124
  ### Examples
125
125
 
126
126
  There are 2 APIs: "node-pkware/simple" and "node-pkware/stream".
127
- The "simple" api is recommended as it is much more optimized compared to the "stream" api.
127
+ The "simple" api is recommended as it is much more performant compared to the "stream" api.
128
128
 
129
129
  #### Compressing ArrayBuffer with the "simple" API (works in browser too)
130
130
 
@@ -235,6 +235,17 @@ fs.createReadStream(`path-to-compressed-file`)
235
235
  )
236
236
  ```
237
237
 
238
+ ## Other infos
239
+
240
+ `TypedArray.byteLength` is much slower compared to caching the length of the TypedArray yourself, even though the
241
+ [documentation on MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer#instance_properties)
242
+ says that:
243
+
244
+ > The size, in bytes, of the ArrayBuffer. This is established when the array is constructed and can only be
245
+ > changed using the ArrayBuffer.prototype.resize() method if the ArrayBuffer is resizable.
246
+
247
+ _(tested in node v20.19.2)_
248
+
238
249
  ## Useful links
239
250
 
240
251
  ### Test files
@@ -251,7 +262,7 @@ https://github.com/arx-tools/pkware-test-files
251
262
 
252
263
  Implode was removed from Arx Libertatis at this commit: https://github.com/arx/ArxLibertatis/commit/2db9f0dd023fdd5d4da6f06c08a92d932e218187
253
264
 
254
- ### Miscellaneous info
265
+ ### Miscellaneous
255
266
 
256
267
  - https://stackoverflow.com/questions/2094666/pointers-in-c-when-to-use-the-ampersand-and-the-asterisk
257
268
  - https://stackoverflow.com/a/49394095/1806628
@@ -105,7 +105,7 @@ export declare function toHex(num: number, digits?: number, withoutPrefix?: bool
105
105
  * mergeSparseArrays(a, b) // -> [1, undefined, 2, 13, 3]
106
106
  * ```
107
107
  */
108
- export declare function mergeSparseArrays<T>(a: T[], b: T[]): (T | undefined)[];
108
+ export declare function mergeSparseArrays<T>(a: T[], b: T[]): Array<T | undefined>;
109
109
  /**
110
110
  * Builds a list from a seed value. Accepts an iterator function, which returns
111
111
  * either false to stop iteration or an array of length 2 containing the value
@@ -140,6 +140,11 @@ export declare function unfold<T, TResult>(fn: (seed: T) => [result: TResult, ne
140
140
  export declare function quotientAndRemainder(dividend: number, divisor: number): [quotient: number, remainder: number];
141
141
  /**
142
142
  * @see https://stackoverflow.com/a/49129872/1806628
143
+ *
143
144
  */
144
- export declare function concatArrayBuffers(buffers: ArrayBufferLike[]): ArrayBuffer;
145
+ export declare function concatArrayBuffersAndLengthedDatas(buffers: Array<ArrayBufferLike | {
146
+ data: number[];
147
+ byteLength: number;
148
+ }>, totalLength?: number): ArrayBuffer;
145
149
  export declare function sliceArrayBufferAt(buffer: ArrayBufferLike, at: number): [ArrayBuffer, ArrayBuffer];
150
+ export declare function uint8ArrayToArray(view: Uint8Array, from: number, length: number): number[];
package/dist/functions.js CHANGED
@@ -195,22 +195,33 @@ export function unfold(fn, seed) {
195
195
  export function quotientAndRemainder(dividend, divisor) {
196
196
  return [Math.floor(dividend / divisor), dividend % divisor];
197
197
  }
198
+ function isArrayBufferLike(buffer) {
199
+ return buffer instanceof ArrayBuffer || buffer instanceof SharedArrayBuffer;
200
+ }
198
201
  /**
199
202
  * @see https://stackoverflow.com/a/49129872/1806628
203
+ *
200
204
  */
201
- export function concatArrayBuffers(buffers) {
202
- if (buffers.length === 1) {
205
+ export function concatArrayBuffersAndLengthedDatas(buffers, totalLength) {
206
+ if (buffers.length === 1 && 'byteLength' in buffers[0]) {
203
207
  return buffers[0];
204
208
  }
205
- let totalLength = 0;
206
- for (const buffer of buffers) {
207
- totalLength = totalLength + buffer.byteLength;
209
+ if (totalLength === undefined) {
210
+ totalLength = 0;
211
+ for (const buffer of buffers) {
212
+ totalLength = totalLength + buffer.byteLength;
213
+ }
208
214
  }
209
215
  const combinedBuffer = new Uint8Array(totalLength);
210
216
  let offset = 0;
211
217
  for (const buffer of buffers) {
212
- const view = new Uint8Array(buffer);
213
- combinedBuffer.set(view, offset);
218
+ if (isArrayBufferLike(buffer)) {
219
+ const view = new Uint8Array(buffer);
220
+ combinedBuffer.set(view, offset);
221
+ }
222
+ else {
223
+ combinedBuffer.set(buffer.data, offset);
224
+ }
214
225
  offset = offset + buffer.byteLength;
215
226
  }
216
227
  return combinedBuffer.buffer;
@@ -221,4 +232,11 @@ export function sliceArrayBufferAt(buffer, at) {
221
232
  const right = view.slice(at).buffer;
222
233
  return [left, right];
223
234
  }
235
+ export function uint8ArrayToArray(view, from, length) {
236
+ const arr = [];
237
+ for (let i = 0; i < length; i++) {
238
+ arr.push(view[from + i]);
239
+ }
240
+ return arr;
241
+ }
224
242
  //# sourceMappingURL=functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,28 @@
1
1
  export declare class Explode {
2
+ private readonly inputBuffer;
3
+ /**
4
+ * Used for accessing the data within inputBuffer
5
+ */
6
+ private readonly inputBufferView;
7
+ /**
8
+ * Used for caching inputBuffer.byteLength as that getter is doing some uncached computation to measure the length of
9
+ * inputBuffer
10
+ */
11
+ private readonly inputBufferSize;
12
+ /**
13
+ * The explode algorithm works by trimming off the beginning of inputBuffer byte by byte. Instead of actually
14
+ * adjusting the inputBuffer every time a byte is handled we store the beginning of the unhandled section and use it
15
+ * when indexing data that is being read.
16
+ */
17
+ private inputBufferStartIndex;
18
+ private outputBuffer;
19
+ private outputBufferView;
20
+ private outputBufferSize;
2
21
  private needMoreInput;
3
22
  private extraBits;
4
23
  private bitBuffer;
5
24
  private readonly lengthCodes;
6
25
  private readonly distPosCodes;
7
- private readonly inputBuffer;
8
- private inputBufferStartIndex;
9
- private outputBuffer;
10
26
  private compressionType;
11
27
  private dictionarySize;
12
28
  private dictionarySizeMask;
@@ -29,24 +45,31 @@ export declare class Explode {
29
45
  private asciiTable2EB4;
30
46
  constructor(input: ArrayBufferLike);
31
47
  /**
32
- * @throws {InvalidCompressionTypeError}
33
- * @throws {InvalidDictionarySizeError}
34
- * @throws {AbortedError}
48
+ * @throws `InvalidCompressionTypeError`
49
+ * @throws `InvalidDictionarySizeError`
50
+ * @throws `AbortedError`
35
51
  */
36
52
  getResult(): ArrayBuffer;
37
53
  private generateAsciiTables;
38
54
  /**
39
- * @throws {@link AbortedError} when there isn't enough data to be wasted
55
+ * @throws `AbortedError` when there isn't enough data to be wasted
40
56
  */
41
57
  private wasteBits;
42
58
  /**
43
- * @throws {@link AbortedError}
59
+ * @throws `AbortedError`
44
60
  */
45
61
  private decodeNextLiteral;
46
62
  /**
47
- * @throws {@link AbortedError}
63
+ * @throws `AbortedError`
48
64
  */
49
65
  private decodeDistance;
50
66
  private processInput;
51
67
  private parseInitialData;
68
+ /**
69
+ * This function assumes there are at least 2 bytes of data in the buffer
70
+ *
71
+ * @throws `InvalidCompressionTypeError`
72
+ * @throws `InvalidDictionarySizeError`
73
+ */
74
+ private readHeader;
52
75
  }
@@ -1,48 +1,6 @@
1
1
  import { ChBitsAsc, ChCodeAsc, DistBits, DistCode, EMPTY_BUFFER, ExLenBits, LenBase, LenBits, LenCode, LITERAL_END_STREAM, } from '../constants.js';
2
2
  import { AbortedError, InvalidCompressionTypeError, InvalidDictionarySizeError } from '../errors.js';
3
- import { getLowestNBitsOf, mergeSparseArrays, nBitsOfOnes, repeat, unfold, concatArrayBuffers, sliceArrayBufferAt, } from '../functions.js';
4
- /**
5
- * This function assumes there are at least 2 bytes of data in the buffer
6
- */
7
- function readHeader(buffer) {
8
- let compressionType;
9
- const view = new Uint8Array(buffer);
10
- switch (view[0]) {
11
- case 0: {
12
- compressionType = 'binary';
13
- break;
14
- }
15
- case 1: {
16
- compressionType = 'ascii';
17
- break;
18
- }
19
- default: {
20
- throw new InvalidCompressionTypeError();
21
- }
22
- }
23
- let dictionarySize;
24
- switch (view[1]) {
25
- case 4: {
26
- dictionarySize = 'small';
27
- break;
28
- }
29
- case 5: {
30
- dictionarySize = 'medium';
31
- break;
32
- }
33
- case 6: {
34
- dictionarySize = 'large';
35
- break;
36
- }
37
- default: {
38
- throw new InvalidDictionarySizeError();
39
- }
40
- }
41
- return {
42
- compressionType,
43
- dictionarySize,
44
- };
45
- }
3
+ import { getLowestNBitsOf, mergeSparseArrays, nBitsOfOnes, repeat, unfold, concatArrayBuffersAndLengthedDatas, sliceArrayBufferAt, uint8ArrayToArray, } from '../functions.js';
46
4
  function generateDecodeTables(startIndexes, lengthBits) {
47
5
  const codes = repeat(0, 0x1_00);
48
6
  lengthBits.forEach((lengthBit, i) => {
@@ -74,14 +32,30 @@ function populateAsciiTable(value, index, bits, limit) {
74
32
  return table;
75
33
  }
76
34
  export class Explode {
35
+ inputBuffer;
36
+ /**
37
+ * Used for accessing the data within inputBuffer
38
+ */
39
+ inputBufferView;
40
+ /**
41
+ * Used for caching inputBuffer.byteLength as that getter is doing some uncached computation to measure the length of
42
+ * inputBuffer
43
+ */
44
+ inputBufferSize;
45
+ /**
46
+ * The explode algorithm works by trimming off the beginning of inputBuffer byte by byte. Instead of actually
47
+ * adjusting the inputBuffer every time a byte is handled we store the beginning of the unhandled section and use it
48
+ * when indexing data that is being read.
49
+ */
50
+ inputBufferStartIndex;
51
+ outputBuffer;
52
+ outputBufferView;
53
+ outputBufferSize;
77
54
  needMoreInput;
78
55
  extraBits;
79
56
  bitBuffer;
80
57
  lengthCodes;
81
58
  distPosCodes;
82
- inputBuffer;
83
- inputBufferStartIndex;
84
- outputBuffer;
85
59
  compressionType;
86
60
  dictionarySize;
87
61
  dictionarySizeMask;
@@ -109,8 +83,12 @@ export class Explode {
109
83
  this.lengthCodes = generateDecodeTables(LenCode, LenBits);
110
84
  this.distPosCodes = generateDecodeTables(DistCode, DistBits);
111
85
  this.inputBuffer = input;
86
+ this.inputBufferView = new Uint8Array(this.inputBuffer);
87
+ this.inputBufferSize = this.inputBuffer.byteLength;
112
88
  this.inputBufferStartIndex = 0;
113
89
  this.outputBuffer = EMPTY_BUFFER;
90
+ this.outputBufferView = new Uint8Array(this.outputBuffer);
91
+ this.outputBufferSize = 0;
114
92
  this.compressionType = 'unknown';
115
93
  this.dictionarySize = 'unknown';
116
94
  this.dictionarySizeMask = 0;
@@ -125,12 +103,12 @@ export class Explode {
125
103
  }
126
104
  }
127
105
  /**
128
- * @throws {InvalidCompressionTypeError}
129
- * @throws {InvalidDictionarySizeError}
130
- * @throws {AbortedError}
106
+ * @throws `InvalidCompressionTypeError`
107
+ * @throws `InvalidDictionarySizeError`
108
+ * @throws `AbortedError`
131
109
  */
132
110
  getResult() {
133
- return this.outputBuffer.slice(0, this.outputBuffer.byteLength);
111
+ return this.outputBuffer.slice(0, this.outputBufferSize);
134
112
  }
135
113
  generateAsciiTables() {
136
114
  this.chBitsAsc = ChBitsAsc.map((value, index) => {
@@ -153,10 +131,10 @@ export class Explode {
153
131
  });
154
132
  }
155
133
  /**
156
- * @throws {@link AbortedError} when there isn't enough data to be wasted
134
+ * @throws `AbortedError` when there isn't enough data to be wasted
157
135
  */
158
136
  wasteBits(numberOfBits) {
159
- if (numberOfBits > this.extraBits && this.inputBuffer.byteLength - this.inputBufferStartIndex === 0) {
137
+ if (numberOfBits > this.extraBits && this.inputBufferSize - this.inputBufferStartIndex === 0) {
160
138
  throw new AbortedError();
161
139
  }
162
140
  if (numberOfBits <= this.extraBits) {
@@ -164,14 +142,13 @@ export class Explode {
164
142
  this.extraBits = this.extraBits - numberOfBits;
165
143
  return;
166
144
  }
167
- const inputBufferView = new Uint8Array(this.inputBuffer);
168
- const nextByte = inputBufferView[this.inputBufferStartIndex];
145
+ const nextByte = this.inputBufferView[this.inputBufferStartIndex];
169
146
  this.inputBufferStartIndex = this.inputBufferStartIndex + 1;
170
147
  this.bitBuffer = ((this.bitBuffer >> this.extraBits) | (nextByte << 8)) >> (numberOfBits - this.extraBits);
171
148
  this.extraBits = this.extraBits + 8 - numberOfBits;
172
149
  }
173
150
  /**
174
- * @throws {@link AbortedError}
151
+ * @throws `AbortedError`
175
152
  */
176
153
  decodeNextLiteral() {
177
154
  const lastBit = getLowestNBitsOf(this.bitBuffer, 1);
@@ -221,7 +198,7 @@ export class Explode {
221
198
  return value;
222
199
  }
223
200
  /**
224
- * @throws {@link AbortedError}
201
+ * @throws `AbortedError`
225
202
  */
226
203
  decodeDistance(repeatLength) {
227
204
  const distPosCode = this.distPosCodes[getLowestNBitsOf(this.bitBuffer, 8)];
@@ -256,15 +233,10 @@ export class Explode {
256
233
  return distance + 1;
257
234
  }
258
235
  processInput() {
259
- if (this.inputBuffer.byteLength - this.inputBufferStartIndex === 0) {
236
+ const headerParsedSuccessfully = this.parseInitialData();
237
+ if (!headerParsedSuccessfully || this.inputBufferSize - this.inputBufferStartIndex === 0) {
260
238
  return;
261
239
  }
262
- if (this.compressionType === 'unknown') {
263
- const headerParsedSuccessfully = this.parseInitialData();
264
- if (!headerParsedSuccessfully || this.inputBuffer.byteLength - this.inputBufferStartIndex === 0) {
265
- return;
266
- }
267
- }
268
240
  this.needMoreInput = false;
269
241
  const additions = [];
270
242
  let additionsByteSum = 0;
@@ -275,10 +247,7 @@ export class Explode {
275
247
  while (nextLiteral !== LITERAL_END_STREAM) {
276
248
  // we have a character literal here
277
249
  if (nextLiteral < 0x1_00) {
278
- const addition = new ArrayBuffer(1);
279
- const additionView = new Uint8Array(addition);
280
- additionView[0] = nextLiteral;
281
- additions.push(addition);
250
+ additions.push({ data: [nextLiteral], byteLength: 1 });
282
251
  additionsByteSum = additionsByteSum + 1;
283
252
  nextLiteral = this.decodeNextLiteral();
284
253
  continue;
@@ -289,49 +258,61 @@ export class Explode {
289
258
  const repeatLength = nextLiteral - 0xfe;
290
259
  const minusDistance = this.decodeDistance(repeatLength);
291
260
  // dump the beginning of the output buffer if outputBuffer and the additions exceed 2 blocks
292
- if (this.outputBuffer.byteLength + additionsByteSum > blockSize * 2) {
293
- this.outputBuffer = concatArrayBuffers([this.outputBuffer, ...additions]);
261
+ if (this.outputBufferSize + additionsByteSum > blockSize * 2) {
262
+ this.outputBufferSize = this.outputBufferSize + additionsByteSum;
263
+ this.outputBuffer = concatArrayBuffersAndLengthedDatas([this.outputBuffer, ...additions], this.outputBufferSize);
264
+ this.outputBufferView = new Uint8Array(this.outputBuffer);
294
265
  additions.length = 0;
295
266
  additionsByteSum = 0;
296
267
  const [a, b] = sliceArrayBufferAt(this.outputBuffer, blockSize);
297
268
  finalizedChunks.push(a);
298
269
  this.outputBuffer = b;
270
+ this.outputBufferView = new Uint8Array(this.outputBuffer);
271
+ this.outputBufferSize = this.outputBufferSize - blockSize;
299
272
  }
300
- const start = this.outputBuffer.byteLength + additionsByteSum - minusDistance;
273
+ const start = this.outputBufferSize + additionsByteSum - minusDistance;
301
274
  // only add the additions if the "repetition" bleeds into the bytes of "additions"
302
- if (this.outputBuffer.byteLength < start + repeatLength) {
303
- this.outputBuffer = concatArrayBuffers([this.outputBuffer, ...additions]);
275
+ if (this.outputBufferSize < start + repeatLength) {
276
+ this.outputBufferSize = this.outputBufferSize + additionsByteSum;
277
+ this.outputBuffer = concatArrayBuffersAndLengthedDatas([this.outputBuffer, ...additions], this.outputBufferSize);
278
+ this.outputBufferView = new Uint8Array(this.outputBuffer);
304
279
  additions.length = 0;
305
280
  additionsByteSum = 0;
306
281
  }
307
- const availableData = this.outputBuffer.slice(start, start + repeatLength);
308
- let addition;
282
+ const availableDataLength = Math.min(start + repeatLength, this.outputBufferSize) - start;
283
+ const availableData = {
284
+ data: uint8ArrayToArray(this.outputBufferView, start, availableDataLength),
285
+ byteLength: availableDataLength,
286
+ };
309
287
  if (repeatLength > minusDistance) {
310
- const multipliedData = repeat(availableData, Math.ceil(repeatLength / availableData.byteLength));
311
- addition = concatArrayBuffers(multipliedData).slice(0, repeatLength);
288
+ const repeats = Math.ceil(repeatLength / availableData.byteLength);
289
+ const multipliedData = repeat(availableData, repeats);
290
+ const addition = concatArrayBuffersAndLengthedDatas(multipliedData, repeatLength * repeats).slice(0, repeatLength);
291
+ additions.push(addition);
292
+ additionsByteSum = additionsByteSum + repeatLength;
312
293
  }
313
294
  else {
314
- addition = availableData;
295
+ additions.push(availableData);
296
+ additionsByteSum = additionsByteSum + availableData.byteLength;
315
297
  }
316
- additions.push(addition);
317
- additionsByteSum = additionsByteSum + addition.byteLength;
318
298
  nextLiteral = this.decodeNextLiteral();
319
299
  }
320
300
  }
321
301
  catch {
322
302
  this.needMoreInput = true;
323
303
  }
324
- this.outputBuffer = concatArrayBuffers([...finalizedChunks, this.outputBuffer, ...additions]);
304
+ this.outputBufferSize = finalizedChunks.length * blockSize + this.outputBufferSize + additionsByteSum;
305
+ this.outputBuffer = concatArrayBuffersAndLengthedDatas([...finalizedChunks, this.outputBuffer, ...additions], this.outputBufferSize);
306
+ this.outputBufferView = new Uint8Array(this.outputBuffer);
325
307
  }
326
308
  parseInitialData() {
327
- if (this.inputBuffer.byteLength - this.inputBufferStartIndex < 4) {
309
+ if (this.inputBufferSize < 4) {
328
310
  return false;
329
311
  }
330
- const { compressionType, dictionarySize } = readHeader(this.inputBuffer.slice(this.inputBufferStartIndex, this.inputBufferStartIndex + 2));
312
+ const { compressionType, dictionarySize } = this.readHeader();
331
313
  this.compressionType = compressionType;
332
314
  this.dictionarySize = dictionarySize;
333
- const inputBufferView = new Uint8Array(this.inputBuffer);
334
- this.bitBuffer = inputBufferView[this.inputBufferStartIndex + 2];
315
+ this.bitBuffer = this.inputBufferView[this.inputBufferStartIndex + 2];
335
316
  this.inputBufferStartIndex = this.inputBufferStartIndex + 3;
336
317
  switch (dictionarySize) {
337
318
  case 'small': {
@@ -352,5 +333,49 @@ export class Explode {
352
333
  }
353
334
  return true;
354
335
  }
336
+ /**
337
+ * This function assumes there are at least 2 bytes of data in the buffer
338
+ *
339
+ * @throws `InvalidCompressionTypeError`
340
+ * @throws `InvalidDictionarySizeError`
341
+ */
342
+ readHeader() {
343
+ let compressionType;
344
+ switch (this.inputBufferView[0]) {
345
+ case 0: {
346
+ compressionType = 'binary';
347
+ break;
348
+ }
349
+ case 1: {
350
+ compressionType = 'ascii';
351
+ break;
352
+ }
353
+ default: {
354
+ throw new InvalidCompressionTypeError();
355
+ }
356
+ }
357
+ let dictionarySize;
358
+ switch (this.inputBufferView[1]) {
359
+ case 4: {
360
+ dictionarySize = 'small';
361
+ break;
362
+ }
363
+ case 5: {
364
+ dictionarySize = 'medium';
365
+ break;
366
+ }
367
+ case 6: {
368
+ dictionarySize = 'large';
369
+ break;
370
+ }
371
+ default: {
372
+ throw new InvalidDictionarySizeError();
373
+ }
374
+ }
375
+ return {
376
+ compressionType,
377
+ dictionarySize,
378
+ };
379
+ }
355
380
  }
356
381
  //# sourceMappingURL=Explode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Explode.js","sourceRoot":"","sources":["../../src/simple/Explode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Explode.js","sourceRoot":"","sources":["../../src/simple/Explode.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ export declare function explode(input: ArrayBufferLike): ArrayBuffer;
3
3
  export declare function implode(input: ArrayBufferLike, compressionType: CompressionType, dictionarySize: DictionarySize): ArrayBuffer;
4
4
  export { explode as decompress };
5
5
  export { implode as compress };
6
- export { concatArrayBuffers, sliceArrayBufferAt } from '../functions.js';
6
+ export { concatArrayBuffersAndLengthedDatas as concatArrayBuffers, sliceArrayBufferAt } from '../functions.js';
7
7
  export type { CompressionType, DictionarySize } from '../simple/types.js';
@@ -12,5 +12,5 @@ export { explode as decompress };
12
12
  export { implode as compress };
13
13
  // -----------------
14
14
  // utils and types
15
- export { concatArrayBuffers, sliceArrayBufferAt } from '../functions.js';
15
+ export { concatArrayBuffersAndLengthedDatas as concatArrayBuffers, sliceArrayBufferAt } from '../functions.js';
16
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/simple/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAGhD,MAAM,UAAU,OAAO,CAAC,KAAsB;IAC5C,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;IACnC,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,KAAsB,EACtB,eAAgC,EAChC,cAA8B;IAE9B,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE,cAAc,CAAC,CAAA;IACpE,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;AAC7B,CAAC;AAED,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,CAAA;AAChC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,CAAA;AAE9B,oBAAoB;AACpB,kBAAkB;AAElB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/simple/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAGhD,MAAM,UAAU,OAAO,CAAC,KAAsB;IAC5C,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAA;IACnC,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,KAAsB,EACtB,eAAgC,EAChC,cAA8B;IAE9B,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE,cAAc,CAAC,CAAA;IACpE,OAAO,QAAQ,CAAC,SAAS,EAAE,CAAA;AAC7B,CAAC;AAED,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,CAAA;AAChC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,CAAA;AAE9B,oBAAoB;AACpB,kBAAkB;AAElB,OAAO,EAAE,kCAAkC,IAAI,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA"}
@@ -26,15 +26,15 @@ export declare class Explode {
26
26
  private generateAsciiTables;
27
27
  private onInputFinished;
28
28
  /**
29
- * @throws {@link AbortedError} when there isn't enough data to be wasted
29
+ * @throws `AbortedError` when there isn't enough data to be wasted
30
30
  */
31
31
  private wasteBits;
32
32
  /**
33
- * @throws {@link AbortedError}
33
+ * @throws `AbortedError`
34
34
  */
35
35
  private decodeNextLiteral;
36
36
  /**
37
- * @throws {@link AbortedError}
37
+ * @throws `AbortedError`
38
38
  */
39
39
  private decodeDistance;
40
40
  private processChunkData;
@@ -160,7 +160,7 @@ export class Explode {
160
160
  callback(null, this.outputBuffer.read());
161
161
  }
162
162
  /**
163
- * @throws {@link AbortedError} when there isn't enough data to be wasted
163
+ * @throws `AbortedError` when there isn't enough data to be wasted
164
164
  */
165
165
  wasteBits(numberOfBits) {
166
166
  if (numberOfBits > this.extraBits && this.inputBuffer.isEmpty()) {
@@ -177,7 +177,7 @@ export class Explode {
177
177
  this.extraBits = this.extraBits + 8 - numberOfBits;
178
178
  }
179
179
  /**
180
- * @throws {@link AbortedError}
180
+ * @throws `AbortedError`
181
181
  */
182
182
  decodeNextLiteral() {
183
183
  const lastBit = getLowestNBitsOf(this.bitBuffer, 1);
@@ -227,7 +227,7 @@ export class Explode {
227
227
  return value;
228
228
  }
229
229
  /**
230
- * @throws {@link AbortedError}
230
+ * @throws `AbortedError`
231
231
  */
232
232
  decodeDistance(repeatLength) {
233
233
  const distPosCode = this.distPosCodes[getLowestNBitsOf(this.bitBuffer, 8)];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-pkware",
3
- "version": "5.8.0",
3
+ "version": "5.9.0",
4
4
  "description": "node.js implementation of StormLib's pkware compressor/de-compressor",
5
5
  "main": "dist/stream/index.js",
6
6
  "types": "dist/stream/index.d.ts",
package/xo.config.ts CHANGED
@@ -37,7 +37,12 @@ const xoConfig: FlatXoConfig = {
37
37
  { fixStyle: 'separate-type-imports', prefer: 'type-imports' },
38
38
  ],
39
39
  '@typescript-eslint/explicit-function-return-type': 'error',
40
- '@typescript-eslint/array-type': ['error', { default: 'array' }],
40
+ '@typescript-eslint/array-type': [
41
+ 'error',
42
+ {
43
+ default: 'array-simple',
44
+ },
45
+ ],
41
46
  '@typescript-eslint/parameter-properties': ['error', { prefer: 'class-property' }],
42
47
  'operator-assignment': ['error', 'never'],
43
48
  'logical-assignment-operators': ['error', 'never'],