@loaders.gl/compression 3.1.7 → 3.2.0-alpha.2

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.
@@ -8,7 +8,7 @@ exports._typecheckCompressionWorker = exports.CompressionWorker = void 0;
8
8
 
9
9
  var _workerUtils = require("@loaders.gl/worker-utils");
10
10
 
11
- var VERSION = typeof "3.1.7" !== 'undefined' ? "3.1.7" : 'latest';
11
+ var VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
12
12
  var CompressionWorker = {
13
13
  id: 'compression',
14
14
  name: 'compression',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/compression-worker.ts"],"names":["VERSION","CompressionWorker","id","name","module","version","options","compressOnWorker","data","_typecheckCompressionWorker"],"mappings":";;;;;;;;AACA;;AAIA,IAAMA,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAUO,IAAMC,iBAAiB,GAAG;AAC/BC,EAAAA,EAAE,EAAE,aAD2B;AAE/BC,EAAAA,IAAI,EAAE,aAFyB;AAG/BC,EAAAA,MAAM,EAAE,aAHuB;AAI/BC,EAAAA,OAAO,EAAEL,OAJsB;AAK/BM,EAAAA,OAAO,EAAE;AALsB,CAA1B;;;AAWA,SAASC,gBAAT,CACLC,IADK,EAELF,OAFK,EAGiB;AACtB,SAAO,kCAAgBL,iBAAhB,EAAmCO,IAAnC,EAAyCF,OAAzC,CAAP;AACD;;AAEM,IAAMG,2BAAyC,GAAGR,iBAAlD","sourcesContent":["import type {WorkerObject} from '@loaders.gl/worker-utils';\nimport {processOnWorker} from '@loaders.gl/worker-utils';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type CompressionWorkerOptions = {\n compression: string;\n operation: 'compress' | 'decompress';\n};\n\n/**\n * Worker for Zlib real-time compression and decompression\n */\nexport const CompressionWorker = {\n id: 'compression',\n name: 'compression',\n module: 'compression',\n version: VERSION,\n options: {}\n};\n\n/**\n * Provide type safety\n */\nexport function compressOnWorker(\n data: ArrayBuffer,\n options: CompressionWorkerOptions\n): Promise<ArrayBuffer> {\n return processOnWorker(CompressionWorker, data, options);\n}\n\nexport const _typecheckCompressionWorker: WorkerObject = CompressionWorker;\n"],"file":"compression-worker.js"}
1
+ {"version":3,"sources":["../../src/compression-worker.ts"],"names":["VERSION","CompressionWorker","id","name","module","version","options","compressOnWorker","data","_typecheckCompressionWorker"],"mappings":";;;;;;;;AACA;;AAIA,IAAMA,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAUO,IAAMC,iBAAiB,GAAG;AAC/BC,EAAAA,EAAE,EAAE,aAD2B;AAE/BC,EAAAA,IAAI,EAAE,aAFyB;AAG/BC,EAAAA,MAAM,EAAE,aAHuB;AAI/BC,EAAAA,OAAO,EAAEL,OAJsB;AAK/BM,EAAAA,OAAO,EAAE;AALsB,CAA1B;;;AAWA,SAASC,gBAAT,CACLC,IADK,EAELF,OAFK,EAGiB;AACtB,SAAO,kCAAgBL,iBAAhB,EAAmCO,IAAnC,EAAyCF,OAAzC,CAAP;AACD;;AAEM,IAAMG,2BAAyC,GAAGR,iBAAlD","sourcesContent":["import type {WorkerObject} from '@loaders.gl/worker-utils';\nimport {processOnWorker} from '@loaders.gl/worker-utils';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type CompressionWorkerOptions = {\n compression: string;\n operation: 'compress' | 'decompress';\n};\n\n/**\n * Worker for Zlib real-time compression and decompression\n */\nexport const CompressionWorker = {\n id: 'compression',\n name: 'compression',\n module: 'compression',\n version: VERSION,\n options: {}\n};\n\n/**\n * Provide type safety\n */\nexport function compressOnWorker(\n data: ArrayBuffer,\n options: CompressionWorkerOptions\n): Promise<ArrayBuffer> {\n return processOnWorker(CompressionWorker, data, options);\n}\n\nexport const _typecheckCompressionWorker: WorkerObject = CompressionWorker;\n"],"file":"compression-worker.js"}
@@ -81,14 +81,11 @@ var BrotliCompression = function (_Compression) {
81
81
  case 0:
82
82
  brotli = brotli || ((_this$options = this.options) === null || _this$options === void 0 ? void 0 : (_this$options$modules = _this$options.modules) === null || _this$options$modules === void 0 ? void 0 : _this$options$modules.brotli);
83
83
 
84
- if (brotli) {
85
- _context.next = 3;
86
- break;
84
+ if (!brotli) {
85
+ console.warn("".concat(this.name, " library not installed"));
87
86
  }
88
87
 
89
- throw new Error(this.name);
90
-
91
- case 3:
88
+ case 2:
92
89
  case "end":
93
90
  return _context.stop();
94
91
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/brotli-compression.ts"],"names":["DEFAULT_BROTLI_OPTIONS","brotli","mode","quality","lgwin","BrotliCompression","options","modules","Error","name","input","isBrowser","useZlib","zlib","brotliCompress","buffer","compressSync","brotliCompressSync","brotliOptions","inputArray","Uint8Array","outputArray","compress","brotliDecompress","decompressSync","brotliDecompressSync","decompress","undefined","Compression"],"mappings":"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","sourcesContent":["// BROTLI\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport type brotliNamespace from 'brotli';\n// import brotli from 'brotli'; // https://bundlephobia.com/package/brotli\nimport {BrotliDecode} from '../brotli/decode';\nimport zlib from 'zlib';\nimport {promisify} from '@loaders.gl/loader-utils';\n\nexport type BrotliCompressionOptions = CompressionOptions & {\n brotli?: {\n mode?: number;\n quality?: number;\n lgwin?: number;\n useZlib?: boolean;\n };\n};\n\nconst DEFAULT_BROTLI_OPTIONS = {\n brotli: {\n mode: 0,\n quality: 8,\n lgwin: 22\n }\n};\n\nlet brotli: typeof brotliNamespace;\n\n/**\n * brotli compression / decompression\n */\nexport class BrotliCompression extends Compression {\n readonly name: string = 'brotli';\n readonly extensions = ['br'];\n readonly contentEncodings = ['br'];\n readonly isSupported = true;\n readonly options: BrotliCompressionOptions;\n\n constructor(options: BrotliCompressionOptions) {\n super(options);\n this.options = options;\n }\n\n /**\n * brotli is an injectable dependency due to big size\n * @param options\n */\n async preload(): Promise<void> {\n brotli = brotli || this.options?.modules?.brotli;\n if (!brotli) {\n throw new Error(this.name);\n }\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliCompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliCompressSync(input);\n return toArrayBuffer(buffer);\n }\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (!brotli) {\n throw new Error('brotli compression: brotli module not installed');\n }\n\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.compress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliDecompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliDecompressSync(input);\n return toArrayBuffer(buffer);\n }\n\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (brotli) {\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.decompress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n const outputArray = BrotliDecode(inputArray, undefined);\n return outputArray.buffer;\n }\n}\n"],"file":"brotli-compression.js"}
1
+ {"version":3,"sources":["../../../src/lib/brotli-compression.ts"],"names":["DEFAULT_BROTLI_OPTIONS","brotli","mode","quality","lgwin","BrotliCompression","options","modules","console","warn","name","input","isBrowser","useZlib","zlib","brotliCompress","buffer","compressSync","brotliCompressSync","brotliOptions","inputArray","Uint8Array","Error","outputArray","compress","brotliDecompress","decompressSync","brotliDecompressSync","decompress","undefined","Compression"],"mappings":"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","sourcesContent":["// BROTLI\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport type brotliNamespace from 'brotli';\n// import brotli from 'brotli'; // https://bundlephobia.com/package/brotli\nimport {BrotliDecode} from '../brotli/decode';\nimport zlib from 'zlib';\nimport {promisify} from '@loaders.gl/loader-utils';\n\nexport type BrotliCompressionOptions = CompressionOptions & {\n brotli?: {\n mode?: number;\n quality?: number;\n lgwin?: number;\n useZlib?: boolean;\n };\n};\n\nconst DEFAULT_BROTLI_OPTIONS = {\n brotli: {\n mode: 0,\n quality: 8,\n lgwin: 22\n }\n};\n\nlet brotli: typeof brotliNamespace;\n\n/**\n * brotli compression / decompression\n */\nexport class BrotliCompression extends Compression {\n readonly name: string = 'brotli';\n readonly extensions = ['br'];\n readonly contentEncodings = ['br'];\n readonly isSupported = true;\n readonly options: BrotliCompressionOptions;\n\n constructor(options: BrotliCompressionOptions) {\n super(options);\n this.options = options;\n }\n\n /**\n * brotli is an injectable dependency due to big size\n * @param options\n */\n async preload(): Promise<void> {\n brotli = brotli || this.options?.modules?.brotli;\n if (!brotli) {\n // eslint-disable-next-line no-console\n console.warn(`${this.name} library not installed`);\n }\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliCompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliCompressSync(input);\n return toArrayBuffer(buffer);\n }\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (!brotli) {\n throw new Error('brotli compression: brotli module not installed');\n }\n\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.compress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliDecompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliDecompressSync(input);\n return toArrayBuffer(buffer);\n }\n\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (brotli) {\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.decompress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n const outputArray = BrotliDecode(inputArray, undefined);\n return outputArray.buffer;\n }\n}\n"],"file":"brotli-compression.js"}
@@ -69,27 +69,22 @@ var ZstdCompression = function (_Compression) {
69
69
  while (1) {
70
70
  switch (_context.prev = _context.next) {
71
71
  case 0:
72
- _context.t0 = zstd;
73
-
74
- if (_context.t0) {
75
- _context.next = 5;
72
+ if (!(!zstd && ZstdCodec)) {
73
+ _context.next = 4;
76
74
  break;
77
75
  }
78
76
 
79
- _context.next = 4;
77
+ _context.next = 3;
80
78
  return new Promise(function (resolve) {
81
79
  return ZstdCodec.run(function (zstd) {
82
80
  return resolve(zstd);
83
81
  });
84
82
  });
85
83
 
86
- case 4:
87
- _context.t0 = _context.sent;
88
-
89
- case 5:
90
- zstd = _context.t0;
84
+ case 3:
85
+ zstd = _context.sent;
91
86
 
92
- case 6:
87
+ case 4:
93
88
  case "end":
94
89
  return _context.stop();
95
90
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/zstd-compression.ts"],"names":["ZstdCodec","zstd","ZstdCompression","options","modules","console","warn","name","Promise","resolve","run","input","simpleZstd","Simple","inputArray","Uint8Array","compress","buffer","decompress","Compression"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;;;;;AAGA,IAAIA,SAAJ;AACA,IAAIC,IAAJ;;IAKaC,e;;;;;AAWX,2BAAYC,OAAZ,EAAyC;AAAA;;AAAA;;AAAA;AACvC,8BAAMA,OAAN;AADuC,uFAVjB,MAUiB;AAAA,6FATnB,EASmB;AAAA,mGARb,EAQa;AAAA,8FAPlB,IAOkB;AAAA;AAEvC,UAAKA,OAAL,GAAeA,OAAf;AAEAH,IAAAA,SAAS,oBAAG,MAAKG,OAAR,2EAAG,cAAcC,OAAjB,0DAAG,sBAAwB,YAAxB,CAAZ;;AACA,QAAI,CAACJ,SAAL,EAAgB;AACdK,MAAAA,OAAO,CAACC,IAAR,WAAgB,MAAKC,IAArB;AACD;;AAPsC;AAQxC;;;;;+EAED;AAAA;AAAA;AAAA;AAAA;AAAA,8BACSN,IADT;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA,uBACwB,IAAIO,OAAJ,CAAY,UAACC,OAAD;AAAA,yBAAaT,SAAS,CAACU,GAAV,CAAc,UAACT,IAAD;AAAA,2BAAUQ,OAAO,CAACR,IAAD,CAAjB;AAAA,mBAAd,CAAb;AAAA,iBAAZ,CADxB;;AAAA;AAAA;;AAAA;AACEA,gBAAAA,IADF;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;WAIA,sBAAaU,KAAb,EAA8C;AAC5C,UAAMC,UAAU,GAAG,IAAIX,IAAI,CAACY,MAAT,EAAnB;AACA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,aAAOC,UAAU,CAACI,QAAX,CAAoBF,UAApB,EAAgCG,MAAvC;AACD;;;WAED,wBAAeN,KAAf,EAAgD;AAC9C,UAAMC,UAAU,GAAG,IAAIX,IAAI,CAACY,MAAT,EAAnB;AAGA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,aAAOC,UAAU,CAACM,UAAX,CAAsBJ,UAAtB,EAAkCG,MAAzC;AACD;;;EArCkCE,wB","sourcesContent":["// ZSTD\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\n// import {ZstdCodec} from 'zstd-codec'; // https://bundlephobia.com/package/zstd-codec\n\nlet ZstdCodec;\nlet zstd;\n\n/**\n * Zstandard compression / decompression\n */\nexport class ZstdCompression extends Compression {\n readonly name: string = 'zstd';\n readonly extensions = [];\n readonly contentEncodings = [];\n readonly isSupported = true;\n readonly options: CompressionOptions;\n\n /**\n * zstd-codec is an injectable dependency due to big size\n * @param options\n */\n constructor(options: CompressionOptions) {\n super(options);\n this.options = options;\n\n ZstdCodec = this.options?.modules?.['zstd-codec'];\n if (!ZstdCodec) {\n console.warn(`${this.name} library not installed`);\n }\n }\n\n async preload(): Promise<void> {\n zstd = zstd || (await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd))));\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n const inputArray = new Uint8Array(input);\n return simpleZstd.compress(inputArray).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n // var ddict = new zstd.Dict.Decompression(dictData);\n // var jsonBytes = simpleZstd.decompressUsingDict(jsonZstData, ddict);\n const inputArray = new Uint8Array(input);\n return simpleZstd.decompress(inputArray).buffer;\n }\n}\n"],"file":"zstd-compression.js"}
1
+ {"version":3,"sources":["../../../src/lib/zstd-compression.ts"],"names":["ZstdCodec","zstd","ZstdCompression","options","modules","console","warn","name","Promise","resolve","run","input","simpleZstd","Simple","inputArray","Uint8Array","compress","buffer","decompress","Compression"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;;;;;AAGA,IAAIA,SAAJ;AACA,IAAIC,IAAJ;;IAKaC,e;;;;;AAWX,2BAAYC,OAAZ,EAAyC;AAAA;;AAAA;;AAAA;AACvC,8BAAMA,OAAN;AADuC,uFAVjB,MAUiB;AAAA,6FATnB,EASmB;AAAA,mGARb,EAQa;AAAA,8FAPlB,IAOkB;AAAA;AAEvC,UAAKA,OAAL,GAAeA,OAAf;AAEAH,IAAAA,SAAS,oBAAG,MAAKG,OAAR,2EAAG,cAAcC,OAAjB,0DAAG,sBAAwB,YAAxB,CAAZ;;AACA,QAAI,CAACJ,SAAL,EAAgB;AAEdK,MAAAA,OAAO,CAACC,IAAR,WAAgB,MAAKC,IAArB;AACD;;AARsC;AASxC;;;;;+EAED;AAAA;AAAA;AAAA;AAAA;AAAA,sBACM,CAACN,IAAD,IAASD,SADf;AAAA;AAAA;AAAA;;AAAA;AAAA,uBAEiB,IAAIQ,OAAJ,CAAY,UAACC,OAAD;AAAA,yBAAaT,SAAS,CAACU,GAAV,CAAc,UAACT,IAAD;AAAA,2BAAUQ,OAAO,CAACR,IAAD,CAAjB;AAAA,mBAAd,CAAb;AAAA,iBAAZ,CAFjB;;AAAA;AAEIA,gBAAAA,IAFJ;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,O;;;;;;;;;;WAMA,sBAAaU,KAAb,EAA8C;AAC5C,UAAMC,UAAU,GAAG,IAAIX,IAAI,CAACY,MAAT,EAAnB;AACA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,aAAOC,UAAU,CAACI,QAAX,CAAoBF,UAApB,EAAgCG,MAAvC;AACD;;;WAED,wBAAeN,KAAf,EAAgD;AAC9C,UAAMC,UAAU,GAAG,IAAIX,IAAI,CAACY,MAAT,EAAnB;AAGA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,aAAOC,UAAU,CAACM,UAAX,CAAsBJ,UAAtB,EAAkCG,MAAzC;AACD;;;EAxCkCE,wB","sourcesContent":["// ZSTD\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\n// import {ZstdCodec} from 'zstd-codec'; // https://bundlephobia.com/package/zstd-codec\n\nlet ZstdCodec;\nlet zstd;\n\n/**\n * Zstandard compression / decompression\n */\nexport class ZstdCompression extends Compression {\n readonly name: string = 'zstd';\n readonly extensions = [];\n readonly contentEncodings = [];\n readonly isSupported = true;\n readonly options: CompressionOptions;\n\n /**\n * zstd-codec is an injectable dependency due to big size\n * @param options\n */\n constructor(options: CompressionOptions) {\n super(options);\n this.options = options;\n\n ZstdCodec = this.options?.modules?.['zstd-codec'];\n if (!ZstdCodec) {\n // eslint-disable-next-line no-console\n console.warn(`${this.name} library not installed`);\n }\n }\n\n async preload(): Promise<void> {\n if (!zstd && ZstdCodec) {\n zstd = await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd)));\n }\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n const inputArray = new Uint8Array(input);\n return simpleZstd.compress(inputArray).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n // var ddict = new zstd.Dict.Decompression(dictData);\n // var jsonBytes = simpleZstd.decompressUsingDict(jsonZstData, ddict);\n const inputArray = new Uint8Array(input);\n return simpleZstd.decompress(inputArray).buffer;\n }\n}\n"],"file":"zstd-compression.js"}
@@ -1,5 +1,5 @@
1
1
  import { processOnWorker } from '@loaders.gl/worker-utils';
2
- const VERSION = typeof "3.1.7" !== 'undefined' ? "3.1.7" : 'latest';
2
+ const VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
3
3
  export const CompressionWorker = {
4
4
  id: 'compression',
5
5
  name: 'compression',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/compression-worker.ts"],"names":["processOnWorker","VERSION","CompressionWorker","id","name","module","version","options","compressOnWorker","data","_typecheckCompressionWorker"],"mappings":"AACA,SAAQA,eAAR,QAA8B,0BAA9B;AAIA,MAAMC,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAUA,OAAO,MAAMC,iBAAiB,GAAG;AAC/BC,EAAAA,EAAE,EAAE,aAD2B;AAE/BC,EAAAA,IAAI,EAAE,aAFyB;AAG/BC,EAAAA,MAAM,EAAE,aAHuB;AAI/BC,EAAAA,OAAO,EAAEL,OAJsB;AAK/BM,EAAAA,OAAO,EAAE;AALsB,CAA1B;AAWP,OAAO,SAASC,gBAAT,CACLC,IADK,EAELF,OAFK,EAGiB;AACtB,SAAOP,eAAe,CAACE,iBAAD,EAAoBO,IAApB,EAA0BF,OAA1B,CAAtB;AACD;AAED,OAAO,MAAMG,2BAAyC,GAAGR,iBAAlD","sourcesContent":["import type {WorkerObject} from '@loaders.gl/worker-utils';\nimport {processOnWorker} from '@loaders.gl/worker-utils';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type CompressionWorkerOptions = {\n compression: string;\n operation: 'compress' | 'decompress';\n};\n\n/**\n * Worker for Zlib real-time compression and decompression\n */\nexport const CompressionWorker = {\n id: 'compression',\n name: 'compression',\n module: 'compression',\n version: VERSION,\n options: {}\n};\n\n/**\n * Provide type safety\n */\nexport function compressOnWorker(\n data: ArrayBuffer,\n options: CompressionWorkerOptions\n): Promise<ArrayBuffer> {\n return processOnWorker(CompressionWorker, data, options);\n}\n\nexport const _typecheckCompressionWorker: WorkerObject = CompressionWorker;\n"],"file":"compression-worker.js"}
1
+ {"version":3,"sources":["../../src/compression-worker.ts"],"names":["processOnWorker","VERSION","CompressionWorker","id","name","module","version","options","compressOnWorker","data","_typecheckCompressionWorker"],"mappings":"AACA,SAAQA,eAAR,QAA8B,0BAA9B;AAIA,MAAMC,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAUA,OAAO,MAAMC,iBAAiB,GAAG;AAC/BC,EAAAA,EAAE,EAAE,aAD2B;AAE/BC,EAAAA,IAAI,EAAE,aAFyB;AAG/BC,EAAAA,MAAM,EAAE,aAHuB;AAI/BC,EAAAA,OAAO,EAAEL,OAJsB;AAK/BM,EAAAA,OAAO,EAAE;AALsB,CAA1B;AAWP,OAAO,SAASC,gBAAT,CACLC,IADK,EAELF,OAFK,EAGiB;AACtB,SAAOP,eAAe,CAACE,iBAAD,EAAoBO,IAApB,EAA0BF,OAA1B,CAAtB;AACD;AAED,OAAO,MAAMG,2BAAyC,GAAGR,iBAAlD","sourcesContent":["import type {WorkerObject} from '@loaders.gl/worker-utils';\nimport {processOnWorker} from '@loaders.gl/worker-utils';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type CompressionWorkerOptions = {\n compression: string;\n operation: 'compress' | 'decompress';\n};\n\n/**\n * Worker for Zlib real-time compression and decompression\n */\nexport const CompressionWorker = {\n id: 'compression',\n name: 'compression',\n module: 'compression',\n version: VERSION,\n options: {}\n};\n\n/**\n * Provide type safety\n */\nexport function compressOnWorker(\n data: ArrayBuffer,\n options: CompressionWorkerOptions\n): Promise<ArrayBuffer> {\n return processOnWorker(CompressionWorker, data, options);\n}\n\nexport const _typecheckCompressionWorker: WorkerObject = CompressionWorker;\n"],"file":"compression-worker.js"}
@@ -35,7 +35,7 @@ export class BrotliCompression extends Compression {
35
35
  brotli = brotli || ((_this$options = this.options) === null || _this$options === void 0 ? void 0 : (_this$options$modules = _this$options.modules) === null || _this$options$modules === void 0 ? void 0 : _this$options$modules.brotli);
36
36
 
37
37
  if (!brotli) {
38
- throw new Error(this.name);
38
+ console.warn("".concat(this.name, " library not installed"));
39
39
  }
40
40
  }
41
41
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/brotli-compression.ts"],"names":["Compression","isBrowser","toArrayBuffer","BrotliDecode","zlib","promisify","DEFAULT_BROTLI_OPTIONS","brotli","mode","quality","lgwin","BrotliCompression","constructor","options","preload","modules","Error","name","compress","input","useZlib","buffer","brotliCompress","compressSync","brotliCompressSync","brotliOptions","inputArray","Uint8Array","outputArray","decompress","brotliDecompress","decompressSync","brotliDecompressSync","undefined"],"mappings":"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","sourcesContent":["// BROTLI\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport type brotliNamespace from 'brotli';\n// import brotli from 'brotli'; // https://bundlephobia.com/package/brotli\nimport {BrotliDecode} from '../brotli/decode';\nimport zlib from 'zlib';\nimport {promisify} from '@loaders.gl/loader-utils';\n\nexport type BrotliCompressionOptions = CompressionOptions & {\n brotli?: {\n mode?: number;\n quality?: number;\n lgwin?: number;\n useZlib?: boolean;\n };\n};\n\nconst DEFAULT_BROTLI_OPTIONS = {\n brotli: {\n mode: 0,\n quality: 8,\n lgwin: 22\n }\n};\n\nlet brotli: typeof brotliNamespace;\n\n/**\n * brotli compression / decompression\n */\nexport class BrotliCompression extends Compression {\n readonly name: string = 'brotli';\n readonly extensions = ['br'];\n readonly contentEncodings = ['br'];\n readonly isSupported = true;\n readonly options: BrotliCompressionOptions;\n\n constructor(options: BrotliCompressionOptions) {\n super(options);\n this.options = options;\n }\n\n /**\n * brotli is an injectable dependency due to big size\n * @param options\n */\n async preload(): Promise<void> {\n brotli = brotli || this.options?.modules?.brotli;\n if (!brotli) {\n throw new Error(this.name);\n }\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliCompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliCompressSync(input);\n return toArrayBuffer(buffer);\n }\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (!brotli) {\n throw new Error('brotli compression: brotli module not installed');\n }\n\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.compress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliDecompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliDecompressSync(input);\n return toArrayBuffer(buffer);\n }\n\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (brotli) {\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.decompress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n const outputArray = BrotliDecode(inputArray, undefined);\n return outputArray.buffer;\n }\n}\n"],"file":"brotli-compression.js"}
1
+ {"version":3,"sources":["../../../src/lib/brotli-compression.ts"],"names":["Compression","isBrowser","toArrayBuffer","BrotliDecode","zlib","promisify","DEFAULT_BROTLI_OPTIONS","brotli","mode","quality","lgwin","BrotliCompression","constructor","options","preload","modules","console","warn","name","compress","input","useZlib","buffer","brotliCompress","compressSync","brotliCompressSync","brotliOptions","inputArray","Uint8Array","Error","outputArray","decompress","brotliDecompress","decompressSync","brotliDecompressSync","undefined"],"mappings":"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","sourcesContent":["// BROTLI\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport type brotliNamespace from 'brotli';\n// import brotli from 'brotli'; // https://bundlephobia.com/package/brotli\nimport {BrotliDecode} from '../brotli/decode';\nimport zlib from 'zlib';\nimport {promisify} from '@loaders.gl/loader-utils';\n\nexport type BrotliCompressionOptions = CompressionOptions & {\n brotli?: {\n mode?: number;\n quality?: number;\n lgwin?: number;\n useZlib?: boolean;\n };\n};\n\nconst DEFAULT_BROTLI_OPTIONS = {\n brotli: {\n mode: 0,\n quality: 8,\n lgwin: 22\n }\n};\n\nlet brotli: typeof brotliNamespace;\n\n/**\n * brotli compression / decompression\n */\nexport class BrotliCompression extends Compression {\n readonly name: string = 'brotli';\n readonly extensions = ['br'];\n readonly contentEncodings = ['br'];\n readonly isSupported = true;\n readonly options: BrotliCompressionOptions;\n\n constructor(options: BrotliCompressionOptions) {\n super(options);\n this.options = options;\n }\n\n /**\n * brotli is an injectable dependency due to big size\n * @param options\n */\n async preload(): Promise<void> {\n brotli = brotli || this.options?.modules?.brotli;\n if (!brotli) {\n // eslint-disable-next-line no-console\n console.warn(`${this.name} library not installed`);\n }\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliCompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliCompressSync(input);\n return toArrayBuffer(buffer);\n }\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (!brotli) {\n throw new Error('brotli compression: brotli module not installed');\n }\n\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.compress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = await promisify(zlib.brotliDecompress)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.brotli?.useZlib) {\n const buffer = zlib.brotliDecompressSync(input);\n return toArrayBuffer(buffer);\n }\n\n const brotliOptions = {...DEFAULT_BROTLI_OPTIONS.brotli, ...this.options?.brotli};\n const inputArray = new Uint8Array(input);\n\n if (brotli) {\n // @ts-ignore brotli types state that only Buffers are accepted...\n const outputArray = brotli.decompress(inputArray, brotliOptions);\n return outputArray.buffer;\n }\n const outputArray = BrotliDecode(inputArray, undefined);\n return outputArray.buffer;\n }\n}\n"],"file":"brotli-compression.js"}
@@ -27,7 +27,9 @@ export class ZstdCompression extends Compression {
27
27
  }
28
28
 
29
29
  async preload() {
30
- zstd = zstd || (await new Promise(resolve => ZstdCodec.run(zstd => resolve(zstd))));
30
+ if (!zstd && ZstdCodec) {
31
+ zstd = await new Promise(resolve => ZstdCodec.run(zstd => resolve(zstd)));
32
+ }
31
33
  }
32
34
 
33
35
  compressSync(input) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/zstd-compression.ts"],"names":["Compression","ZstdCodec","zstd","ZstdCompression","constructor","options","modules","console","warn","name","preload","Promise","resolve","run","compressSync","input","simpleZstd","Simple","inputArray","Uint8Array","compress","buffer","decompressSync","decompress"],"mappings":";AAEA,SAAQA,WAAR,QAA0B,eAA1B;AAGA,IAAIC,SAAJ;AACA,IAAIC,IAAJ;AAKA,OAAO,MAAMC,eAAN,SAA8BH,WAA9B,CAA0C;AAW/CI,EAAAA,WAAW,CAACC,OAAD,EAA8B;AAAA;;AACvC,UAAMA,OAAN;;AADuC,kCAVjB,MAUiB;;AAAA,wCATnB,EASmB;;AAAA,8CARb,EAQa;;AAAA,yCAPlB,IAOkB;;AAAA;;AAEvC,SAAKA,OAAL,GAAeA,OAAf;AAEAJ,IAAAA,SAAS,oBAAG,KAAKI,OAAR,2EAAG,cAAcC,OAAjB,0DAAG,sBAAwB,YAAxB,CAAZ;;AACA,QAAI,CAACL,SAAL,EAAgB;AACdM,MAAAA,OAAO,CAACC,IAAR,WAAgB,KAAKC,IAArB;AACD;AACF;;AAEY,QAAPC,OAAO,GAAkB;AAC7BR,IAAAA,IAAI,GAAGA,IAAI,KAAK,MAAM,IAAIS,OAAJ,CAAaC,OAAD,IAAaX,SAAS,CAACY,GAAV,CAAeX,IAAD,IAAUU,OAAO,CAACV,IAAD,CAA/B,CAAzB,CAAX,CAAX;AACD;;AAEDY,EAAAA,YAAY,CAACC,KAAD,EAAkC;AAC5C,UAAMC,UAAU,GAAG,IAAId,IAAI,CAACe,MAAT,EAAnB;AACA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,WAAOC,UAAU,CAACI,QAAX,CAAoBF,UAApB,EAAgCG,MAAvC;AACD;;AAEDC,EAAAA,cAAc,CAACP,KAAD,EAAkC;AAC9C,UAAMC,UAAU,GAAG,IAAId,IAAI,CAACe,MAAT,EAAnB;AAGA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,WAAOC,UAAU,CAACO,UAAX,CAAsBL,UAAtB,EAAkCG,MAAzC;AACD;;AArC8C","sourcesContent":["// ZSTD\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\n// import {ZstdCodec} from 'zstd-codec'; // https://bundlephobia.com/package/zstd-codec\n\nlet ZstdCodec;\nlet zstd;\n\n/**\n * Zstandard compression / decompression\n */\nexport class ZstdCompression extends Compression {\n readonly name: string = 'zstd';\n readonly extensions = [];\n readonly contentEncodings = [];\n readonly isSupported = true;\n readonly options: CompressionOptions;\n\n /**\n * zstd-codec is an injectable dependency due to big size\n * @param options\n */\n constructor(options: CompressionOptions) {\n super(options);\n this.options = options;\n\n ZstdCodec = this.options?.modules?.['zstd-codec'];\n if (!ZstdCodec) {\n console.warn(`${this.name} library not installed`);\n }\n }\n\n async preload(): Promise<void> {\n zstd = zstd || (await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd))));\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n const inputArray = new Uint8Array(input);\n return simpleZstd.compress(inputArray).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n // var ddict = new zstd.Dict.Decompression(dictData);\n // var jsonBytes = simpleZstd.decompressUsingDict(jsonZstData, ddict);\n const inputArray = new Uint8Array(input);\n return simpleZstd.decompress(inputArray).buffer;\n }\n}\n"],"file":"zstd-compression.js"}
1
+ {"version":3,"sources":["../../../src/lib/zstd-compression.ts"],"names":["Compression","ZstdCodec","zstd","ZstdCompression","constructor","options","modules","console","warn","name","preload","Promise","resolve","run","compressSync","input","simpleZstd","Simple","inputArray","Uint8Array","compress","buffer","decompressSync","decompress"],"mappings":";AAEA,SAAQA,WAAR,QAA0B,eAA1B;AAGA,IAAIC,SAAJ;AACA,IAAIC,IAAJ;AAKA,OAAO,MAAMC,eAAN,SAA8BH,WAA9B,CAA0C;AAW/CI,EAAAA,WAAW,CAACC,OAAD,EAA8B;AAAA;;AACvC,UAAMA,OAAN;;AADuC,kCAVjB,MAUiB;;AAAA,wCATnB,EASmB;;AAAA,8CARb,EAQa;;AAAA,yCAPlB,IAOkB;;AAAA;;AAEvC,SAAKA,OAAL,GAAeA,OAAf;AAEAJ,IAAAA,SAAS,oBAAG,KAAKI,OAAR,2EAAG,cAAcC,OAAjB,0DAAG,sBAAwB,YAAxB,CAAZ;;AACA,QAAI,CAACL,SAAL,EAAgB;AAEdM,MAAAA,OAAO,CAACC,IAAR,WAAgB,KAAKC,IAArB;AACD;AACF;;AAEY,QAAPC,OAAO,GAAkB;AAC7B,QAAI,CAACR,IAAD,IAASD,SAAb,EAAwB;AACtBC,MAAAA,IAAI,GAAG,MAAM,IAAIS,OAAJ,CAAaC,OAAD,IAAaX,SAAS,CAACY,GAAV,CAAeX,IAAD,IAAUU,OAAO,CAACV,IAAD,CAA/B,CAAzB,CAAb;AACD;AACF;;AAEDY,EAAAA,YAAY,CAACC,KAAD,EAAkC;AAC5C,UAAMC,UAAU,GAAG,IAAId,IAAI,CAACe,MAAT,EAAnB;AACA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,WAAOC,UAAU,CAACI,QAAX,CAAoBF,UAApB,EAAgCG,MAAvC;AACD;;AAEDC,EAAAA,cAAc,CAACP,KAAD,EAAkC;AAC9C,UAAMC,UAAU,GAAG,IAAId,IAAI,CAACe,MAAT,EAAnB;AAGA,UAAMC,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,KAAf,CAAnB;AACA,WAAOC,UAAU,CAACO,UAAX,CAAsBL,UAAtB,EAAkCG,MAAzC;AACD;;AAxC8C","sourcesContent":["// ZSTD\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\n// import {ZstdCodec} from 'zstd-codec'; // https://bundlephobia.com/package/zstd-codec\n\nlet ZstdCodec;\nlet zstd;\n\n/**\n * Zstandard compression / decompression\n */\nexport class ZstdCompression extends Compression {\n readonly name: string = 'zstd';\n readonly extensions = [];\n readonly contentEncodings = [];\n readonly isSupported = true;\n readonly options: CompressionOptions;\n\n /**\n * zstd-codec is an injectable dependency due to big size\n * @param options\n */\n constructor(options: CompressionOptions) {\n super(options);\n this.options = options;\n\n ZstdCodec = this.options?.modules?.['zstd-codec'];\n if (!ZstdCodec) {\n // eslint-disable-next-line no-console\n console.warn(`${this.name} library not installed`);\n }\n }\n\n async preload(): Promise<void> {\n if (!zstd && ZstdCodec) {\n zstd = await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd)));\n }\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n const inputArray = new Uint8Array(input);\n return simpleZstd.compress(inputArray).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n const simpleZstd = new zstd.Simple();\n // var ddict = new zstd.Dict.Decompression(dictData);\n // var jsonBytes = simpleZstd.decompressUsingDict(jsonZstData, ddict);\n const inputArray = new Uint8Array(input);\n return simpleZstd.decompress(inputArray).buffer;\n }\n}\n"],"file":"zstd-compression.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"brotli-compression.d.ts","sourceRoot":"","sources":["../../src/lib/brotli-compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAQ1C,oBAAY,wBAAwB,GAAG,kBAAkB,GAAG;IAC1D,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAYF;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAY;IACjC,QAAQ,CAAC,UAAU,WAAU;IAC7B,QAAQ,CAAC,gBAAgB,WAAU;IACnC,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,OAAO,EAAE,wBAAwB,CAAC;gBAE/B,OAAO,EAAE,wBAAwB;IAK7C;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxB,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IASxD,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAkBvC,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAS1D,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;CAkBhD"}
1
+ {"version":3,"file":"brotli-compression.d.ts","sourceRoot":"","sources":["../../src/lib/brotli-compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAQ1C,oBAAY,wBAAwB,GAAG,kBAAkB,GAAG;IAC1D,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAYF;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAY;IACjC,QAAQ,CAAC,UAAU,WAAU;IAC7B,QAAQ,CAAC,gBAAgB,WAAU;IACnC,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,OAAO,EAAE,wBAAwB,CAAC;gBAE/B,OAAO,EAAE,wBAAwB;IAK7C;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQxB,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IASxD,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAkBvC,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAS1D,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;CAkBhD"}
@@ -37,7 +37,8 @@ class BrotliCompression extends compression_1.Compression {
37
37
  async preload() {
38
38
  brotli = brotli || this.options?.modules?.brotli;
39
39
  if (!brotli) {
40
- throw new Error(this.name);
40
+ // eslint-disable-next-line no-console
41
+ console.warn(`${this.name} library not installed`);
41
42
  }
42
43
  }
43
44
  async compress(input) {
@@ -1 +1 @@
1
- {"version":3,"file":"zstd-compression.d.ts","sourceRoot":"","sources":["../../src/lib/zstd-compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAM1C;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAU;IAC/B,QAAQ,CAAC,UAAU,UAAM;IACzB,QAAQ,CAAC,gBAAgB,UAAM;IAC/B,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAErC;;;OAGG;gBACS,OAAO,EAAE,kBAAkB;IAUjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAM7C,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;CAOhD"}
1
+ {"version":3,"file":"zstd-compression.d.ts","sourceRoot":"","sources":["../../src/lib/zstd-compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAM1C;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAU;IAC/B,QAAQ,CAAC,UAAU,UAAM;IACzB,QAAQ,CAAC,gBAAgB,UAAM;IAC/B,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAErC;;;OAGG;gBACS,OAAO,EAAE,kBAAkB;IAWjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAM7C,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;CAOhD"}
@@ -22,11 +22,14 @@ class ZstdCompression extends compression_1.Compression {
22
22
  this.options = options;
23
23
  ZstdCodec = this.options?.modules?.['zstd-codec'];
24
24
  if (!ZstdCodec) {
25
+ // eslint-disable-next-line no-console
25
26
  console.warn(`${this.name} library not installed`);
26
27
  }
27
28
  }
28
29
  async preload() {
29
- zstd = zstd || (await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd))));
30
+ if (!zstd && ZstdCodec) {
31
+ zstd = await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd)));
32
+ }
30
33
  }
31
34
  compressSync(input) {
32
35
  const simpleZstd = new zstd.Simple();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/compression",
3
- "version": "3.1.7",
3
+ "version": "3.2.0-alpha.2",
4
4
  "description": "Decompression and compression plugins for loaders.gl",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -34,12 +34,12 @@
34
34
  "scripts": {
35
35
  "pre-build": "npm run build-bundle && npm run build-worker",
36
36
  "build-bundle": "esbuild src/bundle.ts --outfile=dist/dist.min.js --bundle --minify --sourcemap --external:{fs,path,crypto}",
37
- "build-worker": "esbuild src/workers/worker.ts --outfile=dist/compression-worker.js --bundle --minify --sourcemap --external:{fs,path,crypto} --define:__VERSION__=\\\"$npm_package_version\\\""
37
+ "build-worker": "esbuild src/workers/worker.ts --outfile=dist/compression-worker.js --target=esnext,node12 --bundle --minify --sourcemap --external:{fs,path,crypto} --define:__VERSION__=\\\"$npm_package_version\\\""
38
38
  },
39
39
  "dependencies": {
40
40
  "@babel/runtime": "^7.3.1",
41
- "@loaders.gl/loader-utils": "3.1.7",
42
- "@loaders.gl/worker-utils": "3.1.7",
41
+ "@loaders.gl/loader-utils": "3.2.0-alpha.2",
42
+ "@loaders.gl/worker-utils": "3.2.0-alpha.2",
43
43
  "@types/brotli": "^1.3.0",
44
44
  "@types/pako": "^1.0.1",
45
45
  "lzo-wasm": "^0.0.4",
@@ -58,5 +58,5 @@
58
58
  "lzo": "^0.4.11",
59
59
  "zstd-codec": "^0.1"
60
60
  },
61
- "gitHead": "e48d29e426e9f23879875763e73efc5c58345be1"
61
+ "gitHead": "52a602739cbfce60fc314f474efc984d199dff78"
62
62
  }
@@ -49,7 +49,8 @@ export class BrotliCompression extends Compression {
49
49
  async preload(): Promise<void> {
50
50
  brotli = brotli || this.options?.modules?.brotli;
51
51
  if (!brotli) {
52
- throw new Error(this.name);
52
+ // eslint-disable-next-line no-console
53
+ console.warn(`${this.name} library not installed`);
53
54
  }
54
55
  }
55
56
 
@@ -26,12 +26,15 @@ export class ZstdCompression extends Compression {
26
26
 
27
27
  ZstdCodec = this.options?.modules?.['zstd-codec'];
28
28
  if (!ZstdCodec) {
29
+ // eslint-disable-next-line no-console
29
30
  console.warn(`${this.name} library not installed`);
30
31
  }
31
32
  }
32
33
 
33
34
  async preload(): Promise<void> {
34
- zstd = zstd || (await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd))));
35
+ if (!zstd && ZstdCodec) {
36
+ zstd = await new Promise((resolve) => ZstdCodec.run((zstd) => resolve(zstd)));
37
+ }
35
38
  }
36
39
 
37
40
  compressSync(input: ArrayBuffer): ArrayBuffer {