@zip.js/zip.js 2.6.34 → 2.6.35
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/zip-fs-full.js +29 -25
- package/dist/zip-fs-full.min.js +1 -1
- package/dist/zip-fs.js +29 -25
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-full.js +29 -25
- package/dist/zip-full.min.js +1 -1
- package/dist/zip-no-worker-deflate.min.js +1 -1
- package/dist/zip-no-worker-inflate.min.js +1 -1
- package/dist/zip-no-worker.min.js +1 -1
- package/dist/zip.js +29 -25
- package/dist/zip.min.js +1 -1
- package/index.cjs +29 -25
- package/index.d.ts +21 -7
- package/lib/core/io.js +29 -25
- package/package.json +1 -1
package/dist/zip-full.js
CHANGED
|
@@ -7161,14 +7161,14 @@
|
|
|
7161
7161
|
|
|
7162
7162
|
constructor(writerGenerator, maxSize = 4294967296) {
|
|
7163
7163
|
super();
|
|
7164
|
-
const
|
|
7165
|
-
Object.assign(
|
|
7164
|
+
const zipWriter = this;
|
|
7165
|
+
Object.assign(zipWriter, {
|
|
7166
7166
|
diskNumber: 0,
|
|
7167
7167
|
diskOffset: 0,
|
|
7168
7168
|
size: 0,
|
|
7169
7169
|
availableSize: maxSize
|
|
7170
7170
|
});
|
|
7171
|
-
let
|
|
7171
|
+
let diskSourceWriter, diskWritable, diskWriter;
|
|
7172
7172
|
const writable = new WritableStream({
|
|
7173
7173
|
async write(chunk) {
|
|
7174
7174
|
if (!diskWriter) {
|
|
@@ -7176,43 +7176,47 @@
|
|
|
7176
7176
|
if (done && !value) {
|
|
7177
7177
|
throw new Error(ERR_ITERATOR_COMPLETED_TOO_SOON);
|
|
7178
7178
|
} else {
|
|
7179
|
-
|
|
7180
|
-
|
|
7179
|
+
diskSourceWriter = value;
|
|
7180
|
+
diskSourceWriter.size = 0;
|
|
7181
7181
|
diskWritable = value.writable;
|
|
7182
7182
|
diskWriter = diskWritable.getWriter();
|
|
7183
7183
|
}
|
|
7184
7184
|
await this.write(chunk);
|
|
7185
|
-
} else if (
|
|
7186
|
-
|
|
7187
|
-
|
|
7188
|
-
await
|
|
7189
|
-
|
|
7190
|
-
|
|
7191
|
-
writer.size += chunkLength;
|
|
7192
|
-
writer.diskOffset += diskWritable.size = currentWriter.size;
|
|
7193
|
-
writer.diskNumber++;
|
|
7194
|
-
await diskWriter.close();
|
|
7185
|
+
} else if (diskSourceWriter.size + chunk.length >= maxSize) {
|
|
7186
|
+
const chunkLength = maxSize - diskSourceWriter.size;
|
|
7187
|
+
await writeChunk(chunk.slice(0, chunkLength));
|
|
7188
|
+
await closeDisk();
|
|
7189
|
+
zipWriter.diskOffset += diskSourceWriter.size;
|
|
7190
|
+
zipWriter.diskNumber++;
|
|
7195
7191
|
diskWriter = null;
|
|
7196
|
-
await this.write(chunk);
|
|
7197
|
-
} else {
|
|
7198
|
-
await
|
|
7199
|
-
await diskWriter.write(chunk);
|
|
7200
|
-
currentWriter.size += chunk.length;
|
|
7201
|
-
writer.size += chunk.length;
|
|
7192
|
+
await this.write(chunk.slice(chunkLength));
|
|
7193
|
+
} else if (chunk.length) {
|
|
7194
|
+
await writeChunk(chunk);
|
|
7202
7195
|
}
|
|
7203
|
-
|
|
7196
|
+
zipWriter.availableSize = maxSize - diskSourceWriter.size;
|
|
7204
7197
|
},
|
|
7205
7198
|
async close() {
|
|
7206
7199
|
await diskWriter.ready;
|
|
7207
|
-
|
|
7208
|
-
await diskWriter.close();
|
|
7200
|
+
await closeDisk();
|
|
7209
7201
|
}
|
|
7210
7202
|
});
|
|
7211
|
-
Object.defineProperty(
|
|
7203
|
+
Object.defineProperty(zipWriter, PROPERTY_NAME_WRITABLE, {
|
|
7212
7204
|
get() {
|
|
7213
7205
|
return writable;
|
|
7214
7206
|
}
|
|
7215
7207
|
});
|
|
7208
|
+
|
|
7209
|
+
async function writeChunk(chunk) {
|
|
7210
|
+
await diskWriter.ready;
|
|
7211
|
+
await diskWriter.write(chunk);
|
|
7212
|
+
diskSourceWriter.size += chunk.length;
|
|
7213
|
+
zipWriter.size += chunk.length;
|
|
7214
|
+
}
|
|
7215
|
+
|
|
7216
|
+
async function closeDisk() {
|
|
7217
|
+
diskWritable.size = diskSourceWriter.size;
|
|
7218
|
+
await diskWriter.close();
|
|
7219
|
+
}
|
|
7216
7220
|
}
|
|
7217
7221
|
}
|
|
7218
7222
|
|