@loaders.gl/zip 4.0.0-alpha.22 → 4.0.0-alpha.23
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/dist.min.js +149 -174
- package/dist/es5/filesystems/zip-filesystem.js +4 -6
- package/dist/es5/filesystems/zip-filesystem.js.map +1 -1
- package/dist/es5/hash-file-utility.js.map +1 -1
- package/dist/es5/index.js +2 -17
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/parse-zip/cd-file-header.js.map +1 -1
- package/dist/es5/parse-zip/end-of-central-directory.js.map +1 -1
- package/dist/es5/parse-zip/local-file-header.js.map +1 -1
- package/dist/es5/parse-zip/search-from-the-end.js.map +1 -1
- package/dist/es5/tar-builder.js +8 -8
- package/dist/es5/tar-builder.js.map +1 -1
- package/dist/es5/zip-loader.js +2 -4
- package/dist/es5/zip-loader.js.map +1 -1
- package/dist/esm/filesystems/zip-filesystem.js +3 -3
- package/dist/esm/filesystems/zip-filesystem.js.map +1 -1
- package/dist/esm/hash-file-utility.js.map +1 -1
- package/dist/esm/index.js +1 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/parse-zip/cd-file-header.js.map +1 -1
- package/dist/esm/parse-zip/end-of-central-directory.js.map +1 -1
- package/dist/esm/parse-zip/local-file-header.js.map +1 -1
- package/dist/esm/parse-zip/search-from-the-end.js.map +1 -1
- package/dist/esm/tar-builder.js +2 -2
- package/dist/esm/tar-builder.js.map +1 -1
- package/dist/esm/zip-loader.js +1 -2
- package/dist/esm/zip-loader.js.map +1 -1
- package/dist/filesystems/zip-filesystem.d.ts +2 -2
- package/dist/filesystems/zip-filesystem.d.ts.map +1 -1
- package/dist/filesystems/zip-filesystem.js +6 -6
- package/dist/hash-file-utility.d.ts +1 -1
- package/dist/hash-file-utility.d.ts.map +1 -1
- package/dist/index.d.ts +1 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -9
- package/dist/parse-zip/cd-file-header.d.ts +1 -1
- package/dist/parse-zip/cd-file-header.d.ts.map +1 -1
- package/dist/parse-zip/end-of-central-directory.d.ts +1 -1
- package/dist/parse-zip/end-of-central-directory.d.ts.map +1 -1
- package/dist/parse-zip/local-file-header.d.ts +1 -1
- package/dist/parse-zip/local-file-header.d.ts.map +1 -1
- package/dist/parse-zip/search-from-the-end.d.ts +1 -1
- package/dist/parse-zip/search-from-the-end.d.ts.map +1 -1
- package/dist/tar-builder.d.ts +2 -2
- package/dist/tar-builder.d.ts.map +1 -1
- package/dist/tar-builder.js +4 -3
- package/dist/zip-loader.d.ts +0 -1
- package/dist/zip-loader.d.ts.map +1 -1
- package/dist/zip-loader.js +1 -2
- package/package.json +4 -9
- package/src/filesystems/zip-filesystem.ts +3 -3
- package/src/hash-file-utility.ts +1 -1
- package/src/index.ts +3 -5
- package/src/parse-zip/cd-file-header.ts +1 -1
- package/src/parse-zip/end-of-central-directory.ts +1 -1
- package/src/parse-zip/local-file-header.ts +1 -1
- package/src/parse-zip/search-from-the-end.ts +1 -1
- package/src/tar-builder.ts +2 -2
- package/src/zip-loader.ts +0 -2
- package/dist/es5/file-provider/data-view-file.js +0 -146
- package/dist/es5/file-provider/data-view-file.js.map +0 -1
- package/dist/es5/file-provider/file-handle-file.js +0 -234
- package/dist/es5/file-provider/file-handle-file.js.map +0 -1
- package/dist/es5/file-provider/file-handle.js +0 -101
- package/dist/es5/file-provider/file-handle.js.map +0 -1
- package/dist/es5/file-provider/file-provider.js +0 -11
- package/dist/es5/file-provider/file-provider.js.map +0 -1
- package/dist/esm/file-provider/data-view-file.js +0 -33
- package/dist/esm/file-provider/data-view-file.js.map +0 -1
- package/dist/esm/file-provider/file-handle-file.js +0 -57
- package/dist/esm/file-provider/file-handle-file.js.map +0 -1
- package/dist/esm/file-provider/file-handle.js +0 -37
- package/dist/esm/file-provider/file-handle.js.map +0 -1
- package/dist/esm/file-provider/file-provider.js +0 -4
- package/dist/esm/file-provider/file-provider.js.map +0 -1
- package/dist/file-provider/data-view-file.d.ts +0 -37
- package/dist/file-provider/data-view-file.d.ts.map +0 -1
- package/dist/file-provider/data-view-file.js +0 -63
- package/dist/file-provider/file-handle-file.d.ts +0 -53
- package/dist/file-provider/file-handle-file.d.ts.map +0 -1
- package/dist/file-provider/file-handle-file.js +0 -90
- package/dist/file-provider/file-handle.d.ts +0 -40
- package/dist/file-provider/file-handle.d.ts.map +0 -1
- package/dist/file-provider/file-handle.js +0 -57
- package/dist/file-provider/file-provider.d.ts +0 -45
- package/dist/file-provider/file-provider.d.ts.map +0 -1
- package/dist/file-provider/file-provider.js +0 -13
- package/src/file-provider/data-view-file.ts +0 -72
- package/src/file-provider/file-handle-file.ts +0 -114
- package/src/file-provider/file-handle.ts +0 -73
- package/src/file-provider/file-provider.ts +0 -56
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FileSystem } from '@loaders.gl/
|
|
2
|
-
import { FileProvider } from '
|
|
1
|
+
import { FileSystem } from '@loaders.gl/loader-utils';
|
|
2
|
+
import { FileProvider } from '@loaders.gl/loader-utils';
|
|
3
3
|
import { ZipCDFileHeader } from '../parse-zip/cd-file-header';
|
|
4
4
|
/**
|
|
5
5
|
* FileSystem adapter for a ZIP file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip-filesystem.d.ts","sourceRoot":"","sources":["../../src/filesystems/zip-filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,
|
|
1
|
+
{"version":3,"file":"zip-filesystem.d.ts","sourceRoot":"","sources":["../../src/filesystems/zip-filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAiB,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAC,eAAe,EAA2B,MAAM,6BAA6B,CAAC;AAiBtF;;;GAGG;AACH,qBAAa,aAAc,YAAW,UAAU;IAC9C,oCAAoC;IACpC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAyB;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;gBACS,IAAI,EAAE,YAAY,GAAG,MAAM;IAcvC,yBAAyB;IACnB,OAAO;IAOb;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAalC;;;;OAIG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC;IAKvE;;;;OAIG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IA+BhD;;;;OAIG;YACW,eAAe;CAkB9B"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ZipFileSystem = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
4
|
+
const loader_utils_1 = require("@loaders.gl/loader-utils");
|
|
5
|
+
const loader_utils_2 = require("@loaders.gl/loader-utils");
|
|
6
|
+
const loader_utils_3 = require("@loaders.gl/loader-utils");
|
|
7
7
|
const cd_file_header_1 = require("../parse-zip/cd-file-header");
|
|
8
8
|
const local_file_header_1 = require("../parse-zip/local-file-header");
|
|
9
9
|
const compression_1 = require("@loaders.gl/compression");
|
|
@@ -33,14 +33,14 @@ class ZipFileSystem {
|
|
|
33
33
|
// Try to open file in NodeJS
|
|
34
34
|
if (typeof file === 'string') {
|
|
35
35
|
this.fileName = file;
|
|
36
|
-
if (!
|
|
37
|
-
this.fileProvider =
|
|
36
|
+
if (!loader_utils_1.isBrowser) {
|
|
37
|
+
this.fileProvider = loader_utils_3.FileHandleFile.from(file);
|
|
38
38
|
}
|
|
39
39
|
else {
|
|
40
40
|
throw new Error('Cannot open file for random access in a WEB browser');
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
else if ((0,
|
|
43
|
+
else if ((0, loader_utils_2.isFileProvider)(file)) {
|
|
44
44
|
this.fileProvider = Promise.resolve(file);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hash-file-utility.d.ts","sourceRoot":"","sources":["../src/hash-file-utility.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"hash-file-utility.d.ts","sourceRoot":"","sources":["../src/hash-file-utility.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAGtD,4BAA4B;AAC5B,MAAM,MAAM,WAAW,GAAG;IACxB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,UAAW,MAAM,SAAS,MAAM,KAAG,MAY5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,aAAc,WAAW,KAAG,WAAW,EAmBhE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,OAAO,iBACJ,MAAM,aACT,WAAW,EAAE,KACvB,WAAW,GAAG,SAgBhB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,iBAAwB,YAAY,KAAG,QAAQ,WAAW,EAAE,CAWxF,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
export { ZipLoader } from './zip-loader';
|
|
2
2
|
export { ZipWriter } from './zip-writer';
|
|
3
|
-
export {
|
|
4
|
-
export type { FileProvider } from './file-provider/file-provider';
|
|
5
|
-
export { FileHandleFile } from './file-provider/file-handle-file';
|
|
6
|
-
export { DataViewFile } from './file-provider/data-view-file';
|
|
3
|
+
export { TarBuilder } from './tar-builder';
|
|
7
4
|
export { parseZipCDFileHeader, zipCDFileHeaderGenerator, signature as cdSignature } from './parse-zip/cd-file-header';
|
|
8
5
|
export { parseZipLocalFileHeader, signature as localHeaderSignature } from './parse-zip/local-file-header';
|
|
9
6
|
export { parseEoCDRecord } from './parse-zip/end-of-central-directory';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AACvC,OAAO,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AACvC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,SAAS,IAAI,WAAW,EACzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,uBAAuB,EACvB,SAAS,IAAI,oBAAoB,EAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAC,eAAe,EAAC,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAC;AAEjE,YAAY,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAC,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAE5F,OAAO,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,19 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
2
|
+
// loaders.gl, MIT license
|
|
5
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ZipFileSystem = exports.generateHashInfo = exports.findBin = exports.parseHashFile = exports.compareHashes = exports.searchFromTheEnd = exports.parseEoCDRecord = exports.localHeaderSignature = exports.parseZipLocalFileHeader = exports.cdSignature = exports.zipCDFileHeaderGenerator = exports.parseZipCDFileHeader = exports.
|
|
4
|
+
exports.ZipFileSystem = exports.generateHashInfo = exports.findBin = exports.parseHashFile = exports.compareHashes = exports.searchFromTheEnd = exports.parseEoCDRecord = exports.localHeaderSignature = exports.parseZipLocalFileHeader = exports.cdSignature = exports.zipCDFileHeaderGenerator = exports.parseZipCDFileHeader = exports.TarBuilder = exports.ZipWriter = exports.ZipLoader = void 0;
|
|
7
5
|
var zip_loader_1 = require("./zip-loader");
|
|
8
6
|
Object.defineProperty(exports, "ZipLoader", { enumerable: true, get: function () { return zip_loader_1.ZipLoader; } });
|
|
9
7
|
var zip_writer_1 = require("./zip-writer");
|
|
10
8
|
Object.defineProperty(exports, "ZipWriter", { enumerable: true, get: function () { return zip_writer_1.ZipWriter; } });
|
|
11
9
|
var tar_builder_1 = require("./tar-builder");
|
|
12
|
-
Object.defineProperty(exports, "TarBuilder", { enumerable: true, get: function () { return
|
|
13
|
-
var file_handle_file_1 = require("./file-provider/file-handle-file");
|
|
14
|
-
Object.defineProperty(exports, "FileHandleFile", { enumerable: true, get: function () { return file_handle_file_1.FileHandleFile; } });
|
|
15
|
-
var data_view_file_1 = require("./file-provider/data-view-file");
|
|
16
|
-
Object.defineProperty(exports, "DataViewFile", { enumerable: true, get: function () { return data_view_file_1.DataViewFile; } });
|
|
10
|
+
Object.defineProperty(exports, "TarBuilder", { enumerable: true, get: function () { return tar_builder_1.TarBuilder; } });
|
|
17
11
|
var cd_file_header_1 = require("./parse-zip/cd-file-header");
|
|
18
12
|
Object.defineProperty(exports, "parseZipCDFileHeader", { enumerable: true, get: function () { return cd_file_header_1.parseZipCDFileHeader; } });
|
|
19
13
|
Object.defineProperty(exports, "zipCDFileHeaderGenerator", { enumerable: true, get: function () { return cd_file_header_1.zipCDFileHeaderGenerator; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cd-file-header.d.ts","sourceRoot":"","sources":["../../src/parse-zip/cd-file-header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"cd-file-header.d.ts","sourceRoot":"","sources":["../../src/parse-zip/cd-file-header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAC,YAAY,EAAC,MAAM,uBAAuB,CAAC;AAEnD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAUF,eAAO,MAAM,SAAS,EAAE,YAAuC,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,iBACjB,MAAM,UACZ,YAAY,KACnB,QAAQ,eAAe,GAAG,IAAI,CAqDhC,CAAC;AAEF;;;GAGG;AACH,wBAAuB,wBAAwB,CAAC,YAAY,EAAE,YAAY,kDAUzE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"end-of-central-directory.d.ts","sourceRoot":"","sources":["../../src/parse-zip/end-of-central-directory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"end-of-central-directory.d.ts","sourceRoot":"","sources":["../../src/parse-zip/end-of-central-directory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAGtD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAaF;;;;GAIG;AACH,eAAO,MAAM,eAAe,iBAAwB,YAAY,KAAG,QAAQ,aAAa,CAwCvF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-file-header.d.ts","sourceRoot":"","sources":["../../src/parse-zip/local-file-header.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"local-file-header.d.ts","sourceRoot":"","sources":["../../src/parse-zip/local-file-header.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAEtD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,uBAAuB;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAUF,eAAO,MAAM,SAAS,QAAwC,CAAC;AAE/D;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,iBACpB,MAAM,UACZ,YAAY,KACnB,QAAQ,kBAAkB,GAAG,IAAI,CAkDnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-from-the-end.d.ts","sourceRoot":"","sources":["../../src/parse-zip/search-from-the-end.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"search-from-the-end.d.ts","sourceRoot":"","sources":["../../src/parse-zip/search-from-the-end.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAEtD,wCAAwC;AACxC,MAAM,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE5D;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,SACrB,YAAY,2BAEjB,QAAQ,MAAM,CAuBhB,CAAC"}
|
package/dist/tar-builder.d.ts
CHANGED
|
@@ -5,13 +5,13 @@ type TarBuilderOptions = {
|
|
|
5
5
|
/**
|
|
6
6
|
* Build a tar file by adding files
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
8
|
+
export declare class TarBuilder {
|
|
9
9
|
static get properties(): {
|
|
10
10
|
id: string;
|
|
11
11
|
name: string;
|
|
12
12
|
extensions: string[];
|
|
13
13
|
mimeTypes: string[];
|
|
14
|
-
builder: typeof
|
|
14
|
+
builder: typeof TarBuilder;
|
|
15
15
|
options: {
|
|
16
16
|
recordsPerBlock: number;
|
|
17
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tar-builder.d.ts","sourceRoot":"","sources":["../src/tar-builder.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,eAAe,CAAC;AAMhC,KAAK,iBAAiB,GAAG;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"tar-builder.d.ts","sourceRoot":"","sources":["../src/tar-builder.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,eAAe,CAAC;AAMhC,KAAK,iBAAiB,GAAG;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,qBAAa,UAAU;IACrB,MAAM,KAAK,UAAU;;;;;;;;;MASpB;IAED,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,MAAM,CAAK;gBAEN,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC;IAIhD,kCAAkC;IAClC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;IAKvC,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC;CAGpC"}
|
package/dist/tar-builder.js
CHANGED
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.TarBuilder = void 0;
|
|
6
7
|
const tar_1 = __importDefault(require("./lib/tar/tar"));
|
|
7
8
|
const TAR_BUILDER_OPTIONS = {
|
|
8
9
|
recordsPerBlock: 20
|
|
@@ -10,14 +11,14 @@ const TAR_BUILDER_OPTIONS = {
|
|
|
10
11
|
/**
|
|
11
12
|
* Build a tar file by adding files
|
|
12
13
|
*/
|
|
13
|
-
class
|
|
14
|
+
class TarBuilder {
|
|
14
15
|
static get properties() {
|
|
15
16
|
return {
|
|
16
17
|
id: 'tar',
|
|
17
18
|
name: 'TAR',
|
|
18
19
|
extensions: ['tar'],
|
|
19
20
|
mimeTypes: ['application/x-tar'],
|
|
20
|
-
builder:
|
|
21
|
+
builder: TarBuilder,
|
|
21
22
|
options: TAR_BUILDER_OPTIONS
|
|
22
23
|
};
|
|
23
24
|
}
|
|
@@ -35,4 +36,4 @@ class TARBuilder {
|
|
|
35
36
|
return new Response(this.tape.save()).arrayBuffer();
|
|
36
37
|
}
|
|
37
38
|
}
|
|
38
|
-
exports.
|
|
39
|
+
exports.TarBuilder = TarBuilder;
|
package/dist/zip-loader.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { LoaderWithParser, LoaderOptions } from '@loaders.gl/loader-utils';
|
|
2
2
|
type FileMap = Record<string, ArrayBuffer>;
|
|
3
3
|
export declare const ZipLoader: LoaderWithParser<FileMap, never, LoaderOptions>;
|
|
4
|
-
export declare const _typecheckZipLoader: LoaderWithParser;
|
|
5
4
|
export {};
|
|
6
5
|
//# sourceMappingURL=zip-loader.d.ts.map
|
package/dist/zip-loader.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip-loader.d.ts","sourceRoot":"","sources":["../src/zip-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAO9E,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAE3C,eAAO,MAAM,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAWrE,CAAC
|
|
1
|
+
{"version":3,"file":"zip-loader.d.ts","sourceRoot":"","sources":["../src/zip-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAO9E,KAAK,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAE3C,eAAO,MAAM,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,CAWrE,CAAC"}
|
package/dist/zip-loader.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.ZipLoader = void 0;
|
|
7
7
|
const jszip_1 = __importDefault(require("jszip"));
|
|
8
8
|
// __VERSION__ is injected by babel-plugin-version-inline
|
|
9
9
|
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
|
|
@@ -58,4 +58,3 @@ async function loadZipEntry(jsZip, subFilename, options = {}) {
|
|
|
58
58
|
return error;
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
exports._typecheckZipLoader = exports.ZipLoader;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/zip",
|
|
3
|
-
"version": "4.0.0-alpha.
|
|
3
|
+
"version": "4.0.0-alpha.23",
|
|
4
4
|
"description": "Zip Archive Loader",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -25,19 +25,14 @@
|
|
|
25
25
|
"dist",
|
|
26
26
|
"README.md"
|
|
27
27
|
],
|
|
28
|
-
"browser": {
|
|
29
|
-
"fs": false
|
|
30
|
-
},
|
|
31
28
|
"scripts": {
|
|
32
29
|
"pre-build": "npm run build-bundle",
|
|
33
30
|
"build-bundle": "esbuild src/bundle.ts --bundle --outfile=dist/dist.min.js"
|
|
34
31
|
},
|
|
35
32
|
"dependencies": {
|
|
36
|
-
"@loaders.gl/compression": "4.0.0-alpha.
|
|
33
|
+
"@loaders.gl/compression": "4.0.0-alpha.23",
|
|
34
|
+
"@loaders.gl/loader-utils": "4.0.0-alpha.23",
|
|
37
35
|
"jszip": "^3.1.5"
|
|
38
36
|
},
|
|
39
|
-
"
|
|
40
|
-
"@loaders.gl/core": "^4.0.0-alpha.21"
|
|
41
|
-
},
|
|
42
|
-
"gitHead": "0da838c506d1275383f2fd3d244d9c72b25397d2"
|
|
37
|
+
"gitHead": "e212f2a0c0e342f7cb65ce84fa2ff39f64b7d94b"
|
|
43
38
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {FileSystem, isBrowser} from '@loaders.gl/
|
|
2
|
-
import {FileProvider, isFileProvider} from '
|
|
3
|
-
import {FileHandleFile} from '
|
|
1
|
+
import {FileSystem, isBrowser} from '@loaders.gl/loader-utils';
|
|
2
|
+
import {FileProvider, isFileProvider} from '@loaders.gl/loader-utils';
|
|
3
|
+
import {FileHandleFile} from '@loaders.gl/loader-utils';
|
|
4
4
|
import {ZipCDFileHeader, zipCDFileHeaderGenerator} from '../parse-zip/cd-file-header';
|
|
5
5
|
import {parseZipLocalFileHeader} from '../parse-zip/local-file-header';
|
|
6
6
|
import {DeflateCompression} from '@loaders.gl/compression';
|
package/src/hash-file-utility.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import md5 from 'md5';
|
|
2
|
+
import {FileProvider} from '@loaders.gl/loader-utils';
|
|
2
3
|
import {zipCDFileHeaderGenerator} from './parse-zip/cd-file-header';
|
|
3
|
-
import {FileProvider} from './file-provider/file-provider';
|
|
4
4
|
|
|
5
5
|
/** Element of hash array */
|
|
6
6
|
export type HashElement = {
|
package/src/index.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
+
// loaders.gl, MIT license
|
|
2
|
+
|
|
1
3
|
export {ZipLoader} from './zip-loader';
|
|
2
4
|
export {ZipWriter} from './zip-writer';
|
|
3
|
-
export {
|
|
4
|
-
|
|
5
|
-
export type {FileProvider} from './file-provider/file-provider';
|
|
6
|
-
export {FileHandleFile} from './file-provider/file-handle-file';
|
|
7
|
-
export {DataViewFile} from './file-provider/data-view-file';
|
|
5
|
+
export {TarBuilder} from './tar-builder';
|
|
8
6
|
|
|
9
7
|
export {
|
|
10
8
|
parseZipCDFileHeader,
|
package/src/tar-builder.ts
CHANGED
|
@@ -11,14 +11,14 @@ type TarBuilderOptions = {
|
|
|
11
11
|
/**
|
|
12
12
|
* Build a tar file by adding files
|
|
13
13
|
*/
|
|
14
|
-
export
|
|
14
|
+
export class TarBuilder {
|
|
15
15
|
static get properties() {
|
|
16
16
|
return {
|
|
17
17
|
id: 'tar',
|
|
18
18
|
name: 'TAR',
|
|
19
19
|
extensions: ['tar'],
|
|
20
20
|
mimeTypes: ['application/x-tar'],
|
|
21
|
-
builder:
|
|
21
|
+
builder: TarBuilder,
|
|
22
22
|
options: TAR_BUILDER_OPTIONS
|
|
23
23
|
};
|
|
24
24
|
}
|
package/src/zip-loader.ts
CHANGED
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.DataViewFile = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
var toNumber = function toNumber(bigint) {
|
|
14
|
-
if (bigint > Number.MAX_SAFE_INTEGER) {
|
|
15
|
-
throw new Error('Offset is out of bounds');
|
|
16
|
-
}
|
|
17
|
-
return Number(bigint);
|
|
18
|
-
};
|
|
19
|
-
var DataViewFile = function () {
|
|
20
|
-
function DataViewFile(file) {
|
|
21
|
-
(0, _classCallCheck2.default)(this, DataViewFile);
|
|
22
|
-
(0, _defineProperty2.default)(this, "file", void 0);
|
|
23
|
-
this.file = file;
|
|
24
|
-
}
|
|
25
|
-
(0, _createClass2.default)(DataViewFile, [{
|
|
26
|
-
key: "destroy",
|
|
27
|
-
value: function () {
|
|
28
|
-
var _destroy = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
|
|
29
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
30
|
-
while (1) switch (_context.prev = _context.next) {
|
|
31
|
-
case 0:
|
|
32
|
-
case "end":
|
|
33
|
-
return _context.stop();
|
|
34
|
-
}
|
|
35
|
-
}, _callee);
|
|
36
|
-
}));
|
|
37
|
-
function destroy() {
|
|
38
|
-
return _destroy.apply(this, arguments);
|
|
39
|
-
}
|
|
40
|
-
return destroy;
|
|
41
|
-
}()
|
|
42
|
-
}, {
|
|
43
|
-
key: "getUint8",
|
|
44
|
-
value: function () {
|
|
45
|
-
var _getUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(offset) {
|
|
46
|
-
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
47
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
48
|
-
case 0:
|
|
49
|
-
return _context2.abrupt("return", this.file.getUint8(toNumber(offset)));
|
|
50
|
-
case 1:
|
|
51
|
-
case "end":
|
|
52
|
-
return _context2.stop();
|
|
53
|
-
}
|
|
54
|
-
}, _callee2, this);
|
|
55
|
-
}));
|
|
56
|
-
function getUint8(_x) {
|
|
57
|
-
return _getUint.apply(this, arguments);
|
|
58
|
-
}
|
|
59
|
-
return getUint8;
|
|
60
|
-
}()
|
|
61
|
-
}, {
|
|
62
|
-
key: "getUint16",
|
|
63
|
-
value: function () {
|
|
64
|
-
var _getUint2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(offset) {
|
|
65
|
-
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
66
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
67
|
-
case 0:
|
|
68
|
-
return _context3.abrupt("return", this.file.getUint16(toNumber(offset), true));
|
|
69
|
-
case 1:
|
|
70
|
-
case "end":
|
|
71
|
-
return _context3.stop();
|
|
72
|
-
}
|
|
73
|
-
}, _callee3, this);
|
|
74
|
-
}));
|
|
75
|
-
function getUint16(_x2) {
|
|
76
|
-
return _getUint2.apply(this, arguments);
|
|
77
|
-
}
|
|
78
|
-
return getUint16;
|
|
79
|
-
}()
|
|
80
|
-
}, {
|
|
81
|
-
key: "getUint32",
|
|
82
|
-
value: function () {
|
|
83
|
-
var _getUint3 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(offset) {
|
|
84
|
-
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
85
|
-
while (1) switch (_context4.prev = _context4.next) {
|
|
86
|
-
case 0:
|
|
87
|
-
return _context4.abrupt("return", this.file.getUint32(toNumber(offset), true));
|
|
88
|
-
case 1:
|
|
89
|
-
case "end":
|
|
90
|
-
return _context4.stop();
|
|
91
|
-
}
|
|
92
|
-
}, _callee4, this);
|
|
93
|
-
}));
|
|
94
|
-
function getUint32(_x3) {
|
|
95
|
-
return _getUint3.apply(this, arguments);
|
|
96
|
-
}
|
|
97
|
-
return getUint32;
|
|
98
|
-
}()
|
|
99
|
-
}, {
|
|
100
|
-
key: "getBigUint64",
|
|
101
|
-
value: function () {
|
|
102
|
-
var _getBigUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(offset) {
|
|
103
|
-
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
104
|
-
while (1) switch (_context5.prev = _context5.next) {
|
|
105
|
-
case 0:
|
|
106
|
-
return _context5.abrupt("return", this.file.getBigUint64(toNumber(offset), true));
|
|
107
|
-
case 1:
|
|
108
|
-
case "end":
|
|
109
|
-
return _context5.stop();
|
|
110
|
-
}
|
|
111
|
-
}, _callee5, this);
|
|
112
|
-
}));
|
|
113
|
-
function getBigUint64(_x4) {
|
|
114
|
-
return _getBigUint.apply(this, arguments);
|
|
115
|
-
}
|
|
116
|
-
return getBigUint64;
|
|
117
|
-
}()
|
|
118
|
-
}, {
|
|
119
|
-
key: "slice",
|
|
120
|
-
value: function () {
|
|
121
|
-
var _slice = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(startOffset, endOffset) {
|
|
122
|
-
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
123
|
-
while (1) switch (_context6.prev = _context6.next) {
|
|
124
|
-
case 0:
|
|
125
|
-
return _context6.abrupt("return", this.file.buffer.slice(toNumber(startOffset), toNumber(endOffset)));
|
|
126
|
-
case 1:
|
|
127
|
-
case "end":
|
|
128
|
-
return _context6.stop();
|
|
129
|
-
}
|
|
130
|
-
}, _callee6, this);
|
|
131
|
-
}));
|
|
132
|
-
function slice(_x5, _x6) {
|
|
133
|
-
return _slice.apply(this, arguments);
|
|
134
|
-
}
|
|
135
|
-
return slice;
|
|
136
|
-
}()
|
|
137
|
-
}, {
|
|
138
|
-
key: "length",
|
|
139
|
-
get: function get() {
|
|
140
|
-
return BigInt(this.file.byteLength);
|
|
141
|
-
}
|
|
142
|
-
}]);
|
|
143
|
-
return DataViewFile;
|
|
144
|
-
}();
|
|
145
|
-
exports.DataViewFile = DataViewFile;
|
|
146
|
-
//# sourceMappingURL=data-view-file.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data-view-file.js","names":["toNumber","bigint","Number","MAX_SAFE_INTEGER","Error","DataViewFile","file","_classCallCheck2","default","_defineProperty2","_createClass2","key","value","_destroy","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","destroy","apply","arguments","_getUint","_callee2","offset","_callee2$","_context2","abrupt","getUint8","_x","_getUint2","_callee3","_callee3$","_context3","getUint16","_x2","_getUint3","_callee4","_callee4$","_context4","getUint32","_x3","_getBigUint","_callee5","_callee5$","_context5","getBigUint64","_x4","_slice","_callee6","startOffset","endOffset","_callee6$","_context6","buffer","slice","_x5","_x6","get","BigInt","byteLength","exports"],"sources":["../../../src/file-provider/data-view-file.ts"],"sourcesContent":["import {FileProvider} from './file-provider';\n\n/**\n * Checks if bigint can be converted to number and convert it if possible\n * @param bigint bigint to be converted\n * @returns number\n */\nconst toNumber = (bigint: bigint) => {\n if (bigint > Number.MAX_SAFE_INTEGER) {\n throw new Error('Offset is out of bounds');\n }\n return Number(bigint);\n};\n\n/** Provides file data using DataView */\nexport class DataViewFile implements FileProvider {\n /** The DataView from which data is provided */\n private file: DataView;\n\n constructor(file: DataView) {\n this.file = file;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n async destroy(): Promise<void> {}\n\n /**\n * Gets an unsigned 8-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint8(offset: bigint): Promise<number> {\n return this.file.getUint8(toNumber(offset));\n }\n\n /**\n * Gets an unsigned 16-bit intege at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint16(offset: bigint): Promise<number> {\n return this.file.getUint16(toNumber(offset), true);\n }\n\n /**\n * Gets an unsigned 32-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint32(offset: bigint): Promise<number> {\n return this.file.getUint32(toNumber(offset), true);\n }\n\n /**\n * Gets an unsigned 64-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getBigUint64(offset: bigint): Promise<bigint> {\n return this.file.getBigUint64(toNumber(offset), true);\n }\n\n /**\n * returns an ArrayBuffer whose contents are a copy of this file bytes from startOffset, inclusive, up to endOffset, exclusive.\n * @param startOffset The offset, in bytes, from the start of the file where to start reading the data.\n * @param endOffset The offset, in bytes, from the start of the file where to end reading the data.\n */\n async slice(startOffset: bigint, endOffset: bigint): Promise<ArrayBuffer> {\n return this.file.buffer.slice(toNumber(startOffset), toNumber(endOffset));\n }\n\n /** the length (in bytes) of the data. */\n get length() {\n return BigInt(this.file.byteLength);\n }\n}\n"],"mappings":"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"}
|