@zip.js/zip.js 2.8.17 → 2.8.18
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/deno.json +1 -1
- package/dist/zip-core.js +25 -15
- package/dist/zip-core.min.js +1 -1
- package/dist/zip-fs-core.js +25 -15
- package/dist/zip-fs-core.min.js +1 -1
- package/dist/zip-fs-native.js +25 -15
- package/dist/zip-fs-native.min.js +1 -1
- package/dist/zip-fs.js +25 -15
- package/dist/zip-fs.min.js +1 -1
- package/dist/zip-legacy.js +25 -15
- package/dist/zip-legacy.min.js +1 -1
- package/dist/zip-native.js +25 -15
- package/dist/zip-native.min.js +1 -1
- package/dist/zip.js +25 -15
- package/dist/zip.min.js +1 -1
- package/index-native.cjs +25 -15
- package/index-native.min.js +1 -1
- package/index.cjs +25 -15
- package/index.d.ts +7 -0
- package/index.min.js +1 -1
- package/lib/core/codec-worker.js +16 -5
- package/lib/core/options.js +2 -0
- package/lib/core/zip-writer.js +10 -11
- package/package.json +3 -3
package/dist/zip-fs.js
CHANGED
|
@@ -1964,6 +1964,8 @@
|
|
|
1964
1964
|
*/
|
|
1965
1965
|
|
|
1966
1966
|
|
|
1967
|
+
const MODULE_WORKER_OPTIONS = { type: "module" };
|
|
1968
|
+
|
|
1967
1969
|
let webWorkerSupported, webWorkerURI, webWorkerOptions;
|
|
1968
1970
|
let transferStreamsSupported = true;
|
|
1969
1971
|
let initModule$1 = () => { };
|
|
@@ -2176,11 +2178,8 @@
|
|
|
2176
2178
|
return { writable, closed };
|
|
2177
2179
|
}
|
|
2178
2180
|
|
|
2179
|
-
function getWebWorker(url, baseURI, workerData, isModuleType
|
|
2181
|
+
function getWebWorker(url, baseURI, workerData, isModuleType, useBlobURI = true) {
|
|
2180
2182
|
let worker, resolvedURI, resolvedOptions;
|
|
2181
|
-
if (isModuleType) {
|
|
2182
|
-
resolvedOptions = { type: "module" };
|
|
2183
|
-
}
|
|
2184
2183
|
if (webWorkerURI === UNDEFINED_VALUE) {
|
|
2185
2184
|
// deno-lint-ignore valid-typeof
|
|
2186
2185
|
const isFunctionURI = typeof url == FUNCTION_TYPE;
|
|
@@ -2192,6 +2191,12 @@
|
|
|
2192
2191
|
const isDataURI = resolvedURI.startsWith("data:");
|
|
2193
2192
|
const isBlobURI = resolvedURI.startsWith("blob:");
|
|
2194
2193
|
if (isDataURI || isBlobURI) {
|
|
2194
|
+
if (isModuleType === UNDEFINED_VALUE) {
|
|
2195
|
+
isModuleType = false;
|
|
2196
|
+
}
|
|
2197
|
+
if (isModuleType) {
|
|
2198
|
+
resolvedOptions = MODULE_WORKER_OPTIONS;
|
|
2199
|
+
}
|
|
2195
2200
|
try {
|
|
2196
2201
|
worker = new Worker(resolvedURI, resolvedOptions);
|
|
2197
2202
|
} catch (error) {
|
|
@@ -2211,6 +2216,12 @@
|
|
|
2211
2216
|
}
|
|
2212
2217
|
}
|
|
2213
2218
|
} else {
|
|
2219
|
+
if (isModuleType === UNDEFINED_VALUE) {
|
|
2220
|
+
isModuleType = true;
|
|
2221
|
+
}
|
|
2222
|
+
if (isModuleType) {
|
|
2223
|
+
resolvedOptions = MODULE_WORKER_OPTIONS;
|
|
2224
|
+
}
|
|
2214
2225
|
try {
|
|
2215
2226
|
resolvedURI = new URL(resolvedURI, baseURI);
|
|
2216
2227
|
} catch {
|
|
@@ -2220,7 +2231,7 @@
|
|
|
2220
2231
|
worker = new Worker(resolvedURI, resolvedOptions);
|
|
2221
2232
|
} catch (error) {
|
|
2222
2233
|
if (!isModuleType) {
|
|
2223
|
-
return getWebWorker(url, baseURI, workerData,
|
|
2234
|
+
return getWebWorker(url, baseURI, workerData, false, useBlobURI);
|
|
2224
2235
|
} else {
|
|
2225
2236
|
throw error;
|
|
2226
2237
|
}
|
|
@@ -4894,7 +4905,6 @@
|
|
|
4894
4905
|
let writingBufferedEntryData;
|
|
4895
4906
|
let writingEntryData;
|
|
4896
4907
|
let fileWriter;
|
|
4897
|
-
let blobPromise;
|
|
4898
4908
|
files.set(name, fileEntry);
|
|
4899
4909
|
try {
|
|
4900
4910
|
let lockPreviousFileEntry;
|
|
@@ -4903,7 +4913,7 @@
|
|
|
4903
4913
|
requestLockCurrentFileEntry();
|
|
4904
4914
|
}
|
|
4905
4915
|
if ((options.bufferedWrite || zipWriter.writerLocked || (zipWriter.bufferedWrites && keepOrder) || !dataDescriptor) && !usdz) {
|
|
4906
|
-
fileWriter = new TransformStream();
|
|
4916
|
+
fileWriter = new TransformStream(undefined, undefined, { highWaterMark: Infinity });
|
|
4907
4917
|
fileWriter.size = 0;
|
|
4908
4918
|
bufferedWrite = true;
|
|
4909
4919
|
zipWriter.bufferedWrites++;
|
|
@@ -4934,20 +4944,20 @@
|
|
|
4934
4944
|
await skipDiskIfNeeded(writable);
|
|
4935
4945
|
}
|
|
4936
4946
|
const { diskNumber } = writer;
|
|
4937
|
-
writingEntryData = true;
|
|
4938
4947
|
fileEntry.diskNumberStart = diskNumber;
|
|
4939
|
-
if (bufferedWrite) {
|
|
4940
|
-
|
|
4941
|
-
} else {
|
|
4948
|
+
if (!bufferedWrite) {
|
|
4949
|
+
writingEntryData = true;
|
|
4942
4950
|
await writeData(fileWriter, localHeaderArray);
|
|
4943
4951
|
}
|
|
4944
4952
|
fileEntry = await createFileEntry(reader, fileWriter, fileEntry, entryInfo, zipWriter.config, options);
|
|
4945
4953
|
const { zip64 } = fileEntry;
|
|
4946
|
-
|
|
4954
|
+
if (!bufferedWrite) {
|
|
4955
|
+
writingEntryData = false;
|
|
4956
|
+
}
|
|
4947
4957
|
files.set(name, fileEntry);
|
|
4948
4958
|
fileEntry.filename = name;
|
|
4949
4959
|
if (bufferedWrite) {
|
|
4950
|
-
|
|
4960
|
+
await Promise.all([fileWriter.writable.getWriter().close(), lockPreviousFileEntry]);
|
|
4951
4961
|
await requestLockWriter();
|
|
4952
4962
|
writingBufferedEntryData = true;
|
|
4953
4963
|
fileEntry.diskNumberStart = writer.diskNumber;
|
|
@@ -4958,7 +4968,7 @@
|
|
|
4958
4968
|
updateLocalHeader(fileEntry, localHeaderView, options);
|
|
4959
4969
|
await skipDiskIfNeeded(writable);
|
|
4960
4970
|
await writeData(writer, localHeaderArray);
|
|
4961
|
-
await
|
|
4971
|
+
await fileWriter.readable.pipeTo(writable, { preventClose: true, preventAbort: true, signal });
|
|
4962
4972
|
writer.size += fileWriter.size;
|
|
4963
4973
|
writingBufferedEntryData = false;
|
|
4964
4974
|
} else {
|
|
@@ -4973,7 +4983,7 @@
|
|
|
4973
4983
|
zipWriter.offset += fileEntry.size;
|
|
4974
4984
|
return fileEntry;
|
|
4975
4985
|
} catch (error) {
|
|
4976
|
-
if (
|
|
4986
|
+
if (writingBufferedEntryData || writingEntryData) {
|
|
4977
4987
|
zipWriter.hasCorruptedEntries = true;
|
|
4978
4988
|
if (error) {
|
|
4979
4989
|
try {
|