@loaders.gl/compression 4.0.0-alpha.9 → 4.0.0-beta.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.
Files changed (35) hide show
  1. package/dist/compression-worker-node.js +2 -2
  2. package/dist/compression-worker-node.js.map +2 -2
  3. package/dist/compression-worker.d.ts +0 -2
  4. package/dist/compression-worker.d.ts.map +1 -1
  5. package/dist/compression-worker.js +2 -2
  6. package/dist/compression-worker.js.map +2 -2
  7. package/dist/dist.min.js +3 -3
  8. package/dist/dist.min.js.map +2 -2
  9. package/dist/es5/compression-worker.js +2 -4
  10. package/dist/es5/compression-worker.js.map +1 -1
  11. package/dist/es5/lib/deflate-compression.js +9 -7
  12. package/dist/es5/lib/deflate-compression.js.map +1 -1
  13. package/dist/esm/compression-worker.js +1 -2
  14. package/dist/esm/compression-worker.js.map +1 -1
  15. package/dist/esm/lib/deflate-compression.js +11 -9
  16. package/dist/esm/lib/deflate-compression.js.map +1 -1
  17. package/dist/lib/deflate-compression.d.ts +2 -0
  18. package/dist/lib/deflate-compression.d.ts.map +1 -1
  19. package/package.json +4 -4
  20. package/src/compression-worker.ts +1 -3
  21. package/src/lib/deflate-compression.ts +6 -2
  22. package/dist/brotli/decode.js +0 -2346
  23. package/dist/bundle.js +0 -5
  24. package/dist/index.js +0 -24
  25. package/dist/lib/brotli-compression.js +0 -92
  26. package/dist/lib/compression.js +0 -57
  27. package/dist/lib/deflate-compression.js +0 -135
  28. package/dist/lib/gzip-compression.js +0 -17
  29. package/dist/lib/lz4-compression.js +0 -141
  30. package/dist/lib/lzo-compression.js +0 -58
  31. package/dist/lib/no-compression.js +0 -30
  32. package/dist/lib/snappy-compression.js +0 -27
  33. package/dist/lib/zstd-compression.js +0 -47
  34. package/dist/types.js +0 -2
  35. package/dist/workers/worker.js +0 -77
@@ -3,10 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports._typecheckCompressionWorker = exports.CompressionWorker = void 0;
6
+ exports.CompressionWorker = void 0;
7
7
  exports.compressOnWorker = compressOnWorker;
8
8
  var _workerUtils = require("@loaders.gl/worker-utils");
9
- var VERSION = typeof "4.0.0-alpha.9" !== 'undefined' ? "4.0.0-alpha.9" : 'latest';
9
+ var VERSION = typeof "4.0.0-beta.2" !== 'undefined' ? "4.0.0-beta.2" : 'latest';
10
10
  var CompressionWorker = {
11
11
  id: 'compression',
12
12
  name: 'compression',
@@ -18,6 +18,4 @@ exports.CompressionWorker = CompressionWorker;
18
18
  function compressOnWorker(data, options) {
19
19
  return (0, _workerUtils.processOnWorker)(CompressionWorker, data, options);
20
20
  }
21
- var _typecheckCompressionWorker = CompressionWorker;
22
- exports._typecheckCompressionWorker = _typecheckCompressionWorker;
23
21
  //# sourceMappingURL=compression-worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compression-worker.js","names":["_workerUtils","require","VERSION","CompressionWorker","id","name","module","version","options","exports","compressOnWorker","data","processOnWorker","_typecheckCompressionWorker"],"sources":["../../src/compression-worker.ts"],"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"],"mappings":";;;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAIA,IAAMC,OAAO,GAAG,sBAAkB,KAAK,WAAW,qBAAiB,QAAQ;AAUpE,IAAMC,iBAAiB,GAAG;EAC/BC,EAAE,EAAE,aAAa;EACjBC,IAAI,EAAE,aAAa;EACnBC,MAAM,EAAE,aAAa;EACrBC,OAAO,EAAEL,OAAO;EAChBM,OAAO,EAAE,CAAC;AACZ,CAAC;AAACC,OAAA,CAAAN,iBAAA,GAAAA,iBAAA;AAKK,SAASO,gBAAgBA,CAC9BC,IAAiB,EACjBH,OAAiC,EACX;EACtB,OAAO,IAAAI,4BAAe,EAACT,iBAAiB,EAAEQ,IAAI,EAAEH,OAAO,CAAC;AAC1D;AAEO,IAAMK,2BAAyC,GAAGV,iBAAiB;AAACM,OAAA,CAAAI,2BAAA,GAAAA,2BAAA"}
1
+ {"version":3,"file":"compression-worker.js","names":["_workerUtils","require","VERSION","CompressionWorker","id","name","module","version","options","exports","compressOnWorker","data","processOnWorker"],"sources":["../../src/compression-worker.ts"],"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"],"mappings":";;;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAIA,IAAMC,OAAO,GAAG,qBAAkB,KAAK,WAAW,oBAAiB,QAAQ;AAUpE,IAAMC,iBAAiB,GAAG;EAC/BC,EAAE,EAAE,aAAa;EACjBC,IAAI,EAAE,aAAa;EACnBC,MAAM,EAAE,aAAa;EACrBC,OAAO,EAAEL,OAAO;EAChBM,OAAO,EAAE,CAAC;AACZ,CAAC;AAACC,OAAA,CAAAN,iBAAA,GAAAA,iBAAA;AAKK,SAASO,gBAAgBA,CAC9BC,IAAiB,EACjBH,OAAiC,EACX;EACtB,OAAO,IAAAI,4BAAe,EAACT,iBAAiB,EAAEQ,IAAI,EAAEH,OAAO,CAAC;AAC1D"}
@@ -133,7 +133,7 @@ var DeflateCompression = function (_Compression) {
133
133
  }, {
134
134
  key: "compressSync",
135
135
  value: function compressSync(input) {
136
- var _this$options$deflate5, _this$options;
136
+ var _this$options$deflate5, _this$options, _this$options2;
137
137
  if (!_loaderUtils.isBrowser && (_this$options$deflate5 = this.options.deflate) !== null && _this$options$deflate5 !== void 0 && _this$options$deflate5.useZlib) {
138
138
  var _this$options$deflate6;
139
139
  var buffer = (_this$options$deflate6 = this.options.deflate) !== null && _this$options$deflate6 !== void 0 && _this$options$deflate6.gzip ? _zlib.default.gzipSync(input) : _zlib.default.deflateSync(input);
@@ -141,32 +141,34 @@ var DeflateCompression = function (_Compression) {
141
141
  }
142
142
  var pakoOptions = ((_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.deflate) || {};
143
143
  var inputArray = new Uint8Array(input);
144
- return _pako.default.deflate(inputArray, pakoOptions).buffer;
144
+ var deflate = (_this$options2 = this.options) !== null && _this$options2 !== void 0 && _this$options2.raw ? _pako.default.deflateRaw : _pako.default.deflate;
145
+ return deflate(inputArray, pakoOptions).buffer;
145
146
  }
146
147
  }, {
147
148
  key: "decompressSync",
148
149
  value: function decompressSync(input) {
149
- var _this$options$deflate7, _this$options2;
150
+ var _this$options$deflate7, _this$options3, _this$options4;
150
151
  if (!_loaderUtils.isBrowser && (_this$options$deflate7 = this.options.deflate) !== null && _this$options$deflate7 !== void 0 && _this$options$deflate7.useZlib) {
151
152
  var _this$options$deflate8;
152
153
  var buffer = (_this$options$deflate8 = this.options.deflate) !== null && _this$options$deflate8 !== void 0 && _this$options$deflate8.gzip ? _zlib.default.gunzipSync(input) : _zlib.default.inflateSync(input);
153
154
  return (0, _loaderUtils.toArrayBuffer)(buffer);
154
155
  }
155
- var pakoOptions = ((_this$options2 = this.options) === null || _this$options2 === void 0 ? void 0 : _this$options2.deflate) || {};
156
+ var pakoOptions = ((_this$options3 = this.options) === null || _this$options3 === void 0 ? void 0 : _this$options3.deflate) || {};
156
157
  var inputArray = new Uint8Array(input);
157
- return _pako.default.inflate(inputArray, pakoOptions).buffer;
158
+ var inflate = (_this$options4 = this.options) !== null && _this$options4 !== void 0 && _this$options4.raw ? _pako.default.inflateRaw : _pako.default.inflate;
159
+ return inflate(inputArray, pakoOptions).buffer;
158
160
  }
159
161
  }, {
160
162
  key: "compressBatches",
161
163
  value: function compressBatches(asyncIterator) {
162
164
  var _this = this;
163
165
  return (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee3() {
164
- var _this$options3;
166
+ var _this$options5;
165
167
  var pakoOptions, pakoProcessor;
166
168
  return _regenerator.default.wrap(function _callee3$(_context3) {
167
169
  while (1) switch (_context3.prev = _context3.next) {
168
170
  case 0:
169
- pakoOptions = ((_this$options3 = _this.options) === null || _this$options3 === void 0 ? void 0 : _this$options3.deflate) || {};
171
+ pakoOptions = ((_this$options5 = _this.options) === null || _this$options5 === void 0 ? void 0 : _this$options5.deflate) || {};
170
172
  pakoProcessor = new _pako.default.Deflate(pakoOptions);
171
173
  return _context3.delegateYield((0, _asyncGeneratorDelegate2.default)(_asyncIterator(_this.transformBatches(pakoProcessor, asyncIterator)), _awaitAsyncGenerator2.default), "t0", 3);
172
174
  case 3:
@@ -1 +1 @@
1
- {"version":3,"file":"deflate-compression.js","names":["_compression","require","_loaderUtils","_pako","_interopRequireDefault","_zlib","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Object","Promise","reject","done","resolve","value","then","n","next","return","_return","ret","throw","_throw","thr","DeflateCompression","_Compression","_inherits2","_super","_this4","options","length","undefined","_classCallCheck2","_defineProperty2","_assertThisInitialized2","_createClass2","key","_compress","_asyncToGenerator2","_regenerator","mark","_callee","input","_this$options$deflate","_this$options$deflate2","buffer","wrap","_callee$","_context","prev","isBrowser","deflate","useZlib","gzip","promisify1","zlib","t0","sent","abrupt","toArrayBuffer","compressSync","stop","compress","_x","_decompress","_callee2","_this$options$deflate3","_this$options$deflate4","_callee2$","_context2","gunzip","inflate","decompressSync","decompress","_x2","_this$options$deflate5","_this$options","_this$options$deflate6","gzipSync","deflateSync","pakoOptions","inputArray","Uint8Array","pako","_this$options$deflate7","_this$options2","_this$options$deflate8","gunzipSync","inflateSync","compressBatches","_this","_wrapAsyncGenerator2","_callee3","_this$options3","pakoProcessor","_callee3$","_context3","Deflate","delegateYield","_asyncGeneratorDelegate2","transformBatches","_awaitAsyncGenerator2","decompressBatches","_this2","_callee4","_this2$options","_callee4$","_context4","Inflate","_this3","_callee5","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","chunk","uint8Array","_ok","_chunks","emptyChunk","ok","chunks","_callee5$","_context5","onData","_onData","bind","onEnd","_onEnd","push","Error","concat","_getError","_getChunks","t1","finish","status","code","MESSAGES","name","Compression","exports"],"sources":["../../../src/lib/deflate-compression.ts"],"sourcesContent":["// DEFLATE\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport pako from 'pako'; // https://bundlephobia.com/package/pako\nimport zlib from 'zlib';\nimport {promisify1} from '@loaders.gl/loader-utils';\n\nexport type DeflateCompressionOptions = CompressionOptions & {\n deflate?: pako.InflateOptions & pako.DeflateOptions & {useZlib?: boolean};\n};\n\n/**\n * DEFLATE compression / decompression\n */\nexport class DeflateCompression extends Compression {\n readonly name: string = 'deflate';\n readonly extensions: string[] = [];\n readonly contentEncodings = ['deflate'];\n readonly isSupported = true;\n\n readonly options: DeflateCompressionOptions;\n\n private _chunks: ArrayBuffer[] = [];\n\n constructor(options: DeflateCompressionOptions = {}) {\n super(options);\n this.options = options;\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gzip)(input)\n : await promisify1(zlib.deflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gunzip)(input)\n : await promisify1(zlib.inflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gzipSync(input) : zlib.deflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n return pako.deflate(inputArray, pakoOptions).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gunzipSync(input) : zlib.inflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n return pako.inflate(inputArray, pakoOptions).buffer;\n }\n\n async *compressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Deflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *decompressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Inflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *transformBatches(\n pakoProcessor: pako.Inflate | pako.Deflate,\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n pakoProcessor.onData = this._onData.bind(this);\n pakoProcessor.onEnd = this._onEnd.bind(this);\n for await (const chunk of asyncIterator) {\n const uint8Array = new Uint8Array(chunk);\n const ok = pakoProcessor.push(uint8Array, false); // false -> not last chunk\n if (!ok) {\n throw new Error(`${this._getError()}write`);\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n // End\n const emptyChunk = new Uint8Array(0);\n const ok = pakoProcessor.push(emptyChunk, true); // true -> last chunk\n if (!ok) {\n // For some reason we get error but it still works???\n // throw new Error(this._getError() + 'end');\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n _onData(chunk) {\n this._chunks.push(chunk);\n }\n\n _onEnd(status) {\n if (status !== 0) {\n throw new Error(this._getError(status) + this._chunks.length);\n }\n }\n\n _getChunks(): ArrayBuffer[] {\n const chunks = this._chunks;\n this._chunks = [];\n return chunks;\n }\n\n // TODO - For some reason we don't get the error message from pako in _onEnd?\n _getError(code: number = 0): string {\n const MESSAGES = {\n /* Z_NEED_DICT 2 */\n 2: 'need dictionary',\n /* Z_STREAM_END 1 */\n 1: 'stream end',\n /* Z_OK 0 */\n 0: '',\n /* Z_ERRNO (-1) */\n '-1': 'file error',\n /* Z_STREAM_ERROR (-2) */\n '-2': 'stream error',\n /* Z_DATA_ERROR (-3) */\n '-3': 'data error',\n /* Z_MEM_ERROR (-4) */\n '-4': 'insufficient memory',\n /* Z_BUF_ERROR (-5) */\n '-5': 'buffer error',\n /* Z_VERSION_ERROR (-6) */\n '-6': 'incompatible version'\n };\n return `${this.name}: ${MESSAGES[code]}`;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"deflate-compression.js","names":["_compression","require","_loaderUtils","_pako","_interopRequireDefault","_zlib","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Object","Promise","reject","done","resolve","value","then","n","next","return","_return","ret","throw","_throw","thr","DeflateCompression","_Compression","_inherits2","_super","_this4","options","length","undefined","_classCallCheck2","_defineProperty2","_assertThisInitialized2","_createClass2","key","_compress","_asyncToGenerator2","_regenerator","mark","_callee","input","_this$options$deflate","_this$options$deflate2","buffer","wrap","_callee$","_context","prev","isBrowser","deflate","useZlib","gzip","promisify1","zlib","t0","sent","abrupt","toArrayBuffer","compressSync","stop","compress","_x","_decompress","_callee2","_this$options$deflate3","_this$options$deflate4","_callee2$","_context2","gunzip","inflate","decompressSync","decompress","_x2","_this$options$deflate5","_this$options","_this$options2","_this$options$deflate6","gzipSync","deflateSync","pakoOptions","inputArray","Uint8Array","raw","pako","deflateRaw","_this$options$deflate7","_this$options3","_this$options4","_this$options$deflate8","gunzipSync","inflateSync","inflateRaw","compressBatches","_this","_wrapAsyncGenerator2","_callee3","_this$options5","pakoProcessor","_callee3$","_context3","Deflate","delegateYield","_asyncGeneratorDelegate2","transformBatches","_awaitAsyncGenerator2","decompressBatches","_this2","_callee4","_this2$options","_callee4$","_context4","Inflate","_this3","_callee5","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","chunk","uint8Array","_ok","_chunks","emptyChunk","ok","chunks","_callee5$","_context5","onData","_onData","bind","onEnd","_onEnd","push","Error","concat","_getError","_getChunks","t1","finish","status","code","MESSAGES","name","Compression","exports"],"sources":["../../../src/lib/deflate-compression.ts"],"sourcesContent":["// DEFLATE\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport pako from 'pako'; // https://bundlephobia.com/package/pako\nimport zlib from 'zlib';\nimport {promisify1} from '@loaders.gl/loader-utils';\n\nexport type DeflateCompressionOptions = CompressionOptions & {\n deflate?: pako.InflateOptions & pako.DeflateOptions & {useZlib?: boolean};\n /** creates raw data, without wrapper (header and adler32 crc). */\n raw?: boolean;\n};\n\n/**\n * DEFLATE compression / decompression\n */\nexport class DeflateCompression extends Compression {\n readonly name: string = 'deflate';\n readonly extensions: string[] = [];\n readonly contentEncodings = ['deflate'];\n readonly isSupported = true;\n\n readonly options: DeflateCompressionOptions;\n\n private _chunks: ArrayBuffer[] = [];\n\n constructor(options: DeflateCompressionOptions = {}) {\n super(options);\n this.options = options;\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gzip)(input)\n : await promisify1(zlib.deflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gunzip)(input)\n : await promisify1(zlib.inflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gzipSync(input) : zlib.deflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n const deflate = this.options?.raw ? pako.deflateRaw : pako.deflate;\n return deflate(inputArray, pakoOptions).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gunzipSync(input) : zlib.inflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n const inflate = this.options?.raw ? pako.inflateRaw : pako.inflate;\n return inflate(inputArray, pakoOptions).buffer;\n }\n\n async *compressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Deflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *decompressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Inflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *transformBatches(\n pakoProcessor: pako.Inflate | pako.Deflate,\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n pakoProcessor.onData = this._onData.bind(this);\n pakoProcessor.onEnd = this._onEnd.bind(this);\n for await (const chunk of asyncIterator) {\n const uint8Array = new Uint8Array(chunk);\n const ok = pakoProcessor.push(uint8Array, false); // false -> not last chunk\n if (!ok) {\n throw new Error(`${this._getError()}write`);\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n // End\n const emptyChunk = new Uint8Array(0);\n const ok = pakoProcessor.push(emptyChunk, true); // true -> last chunk\n if (!ok) {\n // For some reason we get error but it still works???\n // throw new Error(this._getError() + 'end');\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n _onData(chunk) {\n this._chunks.push(chunk);\n }\n\n _onEnd(status) {\n if (status !== 0) {\n throw new Error(this._getError(status) + this._chunks.length);\n }\n }\n\n _getChunks(): ArrayBuffer[] {\n const chunks = this._chunks;\n this._chunks = [];\n return chunks;\n }\n\n // TODO - For some reason we don't get the error message from pako in _onEnd?\n _getError(code: number = 0): string {\n const MESSAGES = {\n /* Z_NEED_DICT 2 */\n 2: 'need dictionary',\n /* Z_STREAM_END 1 */\n 1: 'stream end',\n /* Z_OK 0 */\n 0: '',\n /* Z_ERRNO (-1) */\n '-1': 'file error',\n /* Z_STREAM_ERROR (-2) */\n '-2': 'stream error',\n /* Z_DATA_ERROR (-3) */\n '-3': 'data error',\n /* Z_MEM_ERROR (-4) */\n '-4': 'insufficient memory',\n /* Z_BUF_ERROR (-5) */\n '-5': 'buffer error',\n /* Z_VERSION_ERROR (-6) */\n '-6': 'incompatible version'\n };\n return `${this.name}: ${MESSAGES[code]}`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,KAAA,GAAAD,sBAAA,CAAAH,OAAA;AAAwB,SAAAK,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,CAAAC,OAAA,EAAAN,OAAA,GAAAO,MAAA,MAAAN,yBAAA,QAAAO,SAAA,OAAAH,gBAAA,CAAAC,OAAA,QAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAP,KAAA,EAAAQ,SAAA,EAAAJ,SAAA,YAAAD,MAAA,GAAAH,KAAA,CAAAS,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,CAAAR,OAAA,QAAAC,MAAA;AAAA,SAAAL,0BAAA,eAAAQ,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAI,CAAA;AAAA,SAAAC,eAAAC,QAAA,QAAAC,MAAA,EAAAC,KAAA,EAAAC,IAAA,EAAAC,KAAA,iCAAAC,MAAA,KAAAH,KAAA,GAAAG,MAAA,CAAAC,aAAA,EAAAH,IAAA,GAAAE,MAAA,CAAAE,QAAA,GAAAH,KAAA,WAAAF,KAAA,aAAAD,MAAA,GAAAD,QAAA,CAAAE,KAAA,WAAAD,MAAA,CAAAJ,IAAA,CAAAG,QAAA,OAAAG,IAAA,aAAAF,MAAA,GAAAD,QAAA,CAAAG,IAAA,eAAAK,qBAAA,CAAAP,MAAA,CAAAJ,IAAA,CAAAG,QAAA,IAAAE,KAAA,sBAAAC,IAAA,6BAAAM,SAAA;AAAA,SAAAD,sBAAAE,CAAA,aAAAC,kCAAAC,CAAA,QAAAC,MAAA,CAAAD,CAAA,MAAAA,CAAA,SAAAE,OAAA,CAAAC,MAAA,KAAAN,SAAA,CAAAG,CAAA,+BAAAI,IAAA,GAAAJ,CAAA,CAAAI,IAAA,SAAAF,OAAA,CAAAG,OAAA,CAAAL,CAAA,CAAAM,KAAA,EAAAC,IAAA,WAAAD,KAAA,aAAAA,KAAA,EAAAA,KAAA,EAAAF,IAAA,EAAAA,IAAA,iBAAAR,qBAAA,YAAAA,sBAAAE,CAAA,SAAAA,CAAA,GAAAA,CAAA,OAAAU,CAAA,GAAAV,CAAA,CAAAW,IAAA,KAAAb,qBAAA,CAAAb,SAAA,KAAAe,CAAA,QAAAU,CAAA,QAAAC,IAAA,WAAAA,KAAA,WAAAV,iCAAA,MAAAS,CAAA,CAAA9B,KAAA,MAAAoB,CAAA,EAAArB,SAAA,OAAAiC,MAAA,WAAAC,QAAAL,KAAA,QAAAM,GAAA,QAAAd,CAAA,CAAAY,MAAA,oBAAAE,GAAA,GAAAV,OAAA,CAAAG,OAAA,GAAAC,KAAA,EAAAA,KAAA,EAAAF,IAAA,UAAAL,iCAAA,CAAAa,GAAA,CAAAlC,KAAA,MAAAoB,CAAA,EAAArB,SAAA,OAAAoC,KAAA,WAAAC,OAAAR,KAAA,QAAAS,GAAA,QAAAjB,CAAA,CAAAY,MAAA,oBAAAK,GAAA,GAAAb,OAAA,CAAAC,MAAA,CAAAG,KAAA,IAAAP,iCAAA,CAAAgB,GAAA,CAAArC,KAAA,MAAAoB,CAAA,EAAArB,SAAA,aAAAmB,qBAAA,CAAAE,CAAA;AAAA,IAYXkB,kBAAkB,aAAAC,YAAA;EAAA,IAAAC,UAAA,CAAA/C,OAAA,EAAA6C,kBAAA,EAAAC,YAAA;EAAA,IAAAE,MAAA,GAAAvD,YAAA,CAAAoD,kBAAA;EAU7B,SAAAA,mBAAA,EAAqD;IAAA,IAAAI,MAAA;IAAA,IAAzCC,OAAkC,GAAA5C,SAAA,CAAA6C,MAAA,QAAA7C,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC,CAAC;IAAA,IAAA+C,gBAAA,CAAArD,OAAA,QAAA6C,kBAAA;IACjDI,MAAA,GAAAD,MAAA,CAAAlC,IAAA,OAAMoC,OAAO;IAAE,IAAAI,gBAAA,CAAAtD,OAAA,MAAAuD,uBAAA,CAAAvD,OAAA,EAAAiD,MAAA,WAVO,SAAS;IAAA,IAAAK,gBAAA,CAAAtD,OAAA,MAAAuD,uBAAA,CAAAvD,OAAA,EAAAiD,MAAA,iBACD,EAAE;IAAA,IAAAK,gBAAA,CAAAtD,OAAA,MAAAuD,uBAAA,CAAAvD,OAAA,EAAAiD,MAAA,uBACN,CAAC,SAAS,CAAC;IAAA,IAAAK,gBAAA,CAAAtD,OAAA,MAAAuD,uBAAA,CAAAvD,OAAA,EAAAiD,MAAA,kBAChB,IAAI;IAAA,IAAAK,gBAAA,CAAAtD,OAAA,MAAAuD,uBAAA,CAAAvD,OAAA,EAAAiD,MAAA;IAAA,IAAAK,gBAAA,CAAAtD,OAAA,MAAAuD,uBAAA,CAAAvD,OAAA,EAAAiD,MAAA,cAIM,EAAE;IAIjCA,MAAA,CAAKC,OAAO,GAAGA,OAAO;IAAC,OAAAD,MAAA;EACzB;EAAC,IAAAO,aAAA,CAAAxD,OAAA,EAAA6C,kBAAA;IAAAY,GAAA;IAAAtB,KAAA;MAAA,IAAAuB,SAAA,OAAAC,kBAAA,CAAA3D,OAAA,EAAA4D,YAAA,CAAA5D,OAAA,CAAA6D,IAAA,CAED,SAAAC,QAAeC,KAAkB;QAAA,IAAAC,qBAAA;QAAA,IAAAC,sBAAA,EAAAC,MAAA;QAAA,OAAAN,YAAA,CAAA5D,OAAA,CAAAmE,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAA/B,IAAA;YAAA;cAAA,MAE3B,CAACiC,sBAAS,KAAAP,qBAAA,GAAI,IAAI,CAACd,OAAO,CAACsB,OAAO,cAAAR,qBAAA,eAApBA,qBAAA,CAAsBS,OAAO;gBAAAJ,QAAA,CAAA/B,IAAA;gBAAA;cAAA;cAAA,OAAA2B,sBAAA,GAC9B,IAAI,CAACf,OAAO,CAACsB,OAAO,cAAAP,sBAAA,eAApBA,sBAAA,CAAsBS,IAAI;gBAAAL,QAAA,CAAA/B,IAAA;gBAAA;cAAA;cAAA+B,QAAA,CAAA/B,IAAA;cAAA,OAC/B,IAAAqC,uBAAU,EAACC,aAAI,CAACF,IAAI,CAAC,CAACX,KAAK,CAAC;YAAA;cAAAM,QAAA,CAAAQ,EAAA,GAAAR,QAAA,CAAAS,IAAA;cAAAT,QAAA,CAAA/B,IAAA;cAAA;YAAA;cAAA+B,QAAA,CAAA/B,IAAA;cAAA,OAC5B,IAAAqC,uBAAU,EAACC,aAAI,CAACJ,OAAO,CAAC,CAACT,KAAK,CAAC;YAAA;cAAAM,QAAA,CAAAQ,EAAA,GAAAR,QAAA,CAAAS,IAAA;YAAA;cAFnCZ,MAAM,GAAAG,QAAA,CAAAQ,EAAA;cAAA,OAAAR,QAAA,CAAAU,MAAA,WAGL,IAAAC,0BAAa,EAACd,MAAM,CAAC;YAAA;cAAA,OAAAG,QAAA,CAAAU,MAAA,WAEvB,IAAI,CAACE,YAAY,CAAClB,KAAK,CAAC;YAAA;YAAA;cAAA,OAAAM,QAAA,CAAAa,IAAA;UAAA;QAAA,GAAApB,OAAA;MAAA,CAChC;MAAA,SAAAqB,SAAAC,EAAA;QAAA,OAAA1B,SAAA,CAAAnD,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAA6E,QAAA;IAAA;EAAA;IAAA1B,GAAA;IAAAtB,KAAA;MAAA,IAAAkD,WAAA,OAAA1B,kBAAA,CAAA3D,OAAA,EAAA4D,YAAA,CAAA5D,OAAA,CAAA6D,IAAA,CAED,SAAAyB,SAAiBvB,KAAkB;QAAA,IAAAwB,sBAAA;QAAA,IAAAC,sBAAA,EAAAtB,MAAA;QAAA,OAAAN,YAAA,CAAA5D,OAAA,CAAAmE,IAAA,UAAAsB,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAApB,IAAA,GAAAoB,SAAA,CAAApD,IAAA;YAAA;cAAA,MAE7B,CAACiC,sBAAS,KAAAgB,sBAAA,GAAI,IAAI,CAACrC,OAAO,CAACsB,OAAO,cAAAe,sBAAA,eAApBA,sBAAA,CAAsBd,OAAO;gBAAAiB,SAAA,CAAApD,IAAA;gBAAA;cAAA;cAAA,OAAAkD,sBAAA,GAC9B,IAAI,CAACtC,OAAO,CAACsB,OAAO,cAAAgB,sBAAA,eAApBA,sBAAA,CAAsBd,IAAI;gBAAAgB,SAAA,CAAApD,IAAA;gBAAA;cAAA;cAAAoD,SAAA,CAAApD,IAAA;cAAA,OAC/B,IAAAqC,uBAAU,EAACC,aAAI,CAACe,MAAM,CAAC,CAAC5B,KAAK,CAAC;YAAA;cAAA2B,SAAA,CAAAb,EAAA,GAAAa,SAAA,CAAAZ,IAAA;cAAAY,SAAA,CAAApD,IAAA;cAAA;YAAA;cAAAoD,SAAA,CAAApD,IAAA;cAAA,OAC9B,IAAAqC,uBAAU,EAACC,aAAI,CAACgB,OAAO,CAAC,CAAC7B,KAAK,CAAC;YAAA;cAAA2B,SAAA,CAAAb,EAAA,GAAAa,SAAA,CAAAZ,IAAA;YAAA;cAFnCZ,MAAM,GAAAwB,SAAA,CAAAb,EAAA;cAAA,OAAAa,SAAA,CAAAX,MAAA,WAGL,IAAAC,0BAAa,EAACd,MAAM,CAAC;YAAA;cAAA,OAAAwB,SAAA,CAAAX,MAAA,WAEvB,IAAI,CAACc,cAAc,CAAC9B,KAAK,CAAC;YAAA;YAAA;cAAA,OAAA2B,SAAA,CAAAR,IAAA;UAAA;QAAA,GAAAI,QAAA;MAAA,CAClC;MAAA,SAAAQ,WAAAC,GAAA;QAAA,OAAAV,WAAA,CAAA9E,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAAwF,UAAA;IAAA;EAAA;IAAArC,GAAA;IAAAtB,KAAA,EAED,SAAA8C,aAAalB,KAAkB,EAAe;MAAA,IAAAiC,sBAAA,EAAAC,aAAA,EAAAC,cAAA;MAE5C,IAAI,CAAC3B,sBAAS,KAAAyB,sBAAA,GAAI,IAAI,CAAC9C,OAAO,CAACsB,OAAO,cAAAwB,sBAAA,eAApBA,sBAAA,CAAsBvB,OAAO,EAAE;QAAA,IAAA0B,sBAAA;QAC/C,IAAMjC,MAAM,GAAG,CAAAiC,sBAAA,OAAI,CAACjD,OAAO,CAACsB,OAAO,cAAA2B,sBAAA,eAApBA,sBAAA,CAAsBzB,IAAI,GAAGE,aAAI,CAACwB,QAAQ,CAACrC,KAAK,CAAC,GAAGa,aAAI,CAACyB,WAAW,CAACtC,KAAK,CAAC;QAC1F,OAAO,IAAAiB,0BAAa,EAACd,MAAM,CAAC;MAC9B;MACA,IAAMoC,WAAgC,GAAG,EAAAL,aAAA,OAAI,CAAC/C,OAAO,cAAA+C,aAAA,uBAAZA,aAAA,CAAczB,OAAO,KAAI,CAAC,CAAC;MACpE,IAAM+B,UAAU,GAAG,IAAIC,UAAU,CAACzC,KAAK,CAAC;MACxC,IAAMS,OAAO,GAAG,CAAA0B,cAAA,OAAI,CAAChD,OAAO,cAAAgD,cAAA,eAAZA,cAAA,CAAcO,GAAG,GAAGC,aAAI,CAACC,UAAU,GAAGD,aAAI,CAAClC,OAAO;MAClE,OAAOA,OAAO,CAAC+B,UAAU,EAAED,WAAW,CAAC,CAACpC,MAAM;IAChD;EAAC;IAAAT,GAAA;IAAAtB,KAAA,EAED,SAAA0D,eAAe9B,KAAkB,EAAe;MAAA,IAAA6C,sBAAA,EAAAC,cAAA,EAAAC,cAAA;MAE9C,IAAI,CAACvC,sBAAS,KAAAqC,sBAAA,GAAI,IAAI,CAAC1D,OAAO,CAACsB,OAAO,cAAAoC,sBAAA,eAApBA,sBAAA,CAAsBnC,OAAO,EAAE;QAAA,IAAAsC,sBAAA;QAC/C,IAAM7C,MAAM,GAAG,CAAA6C,sBAAA,OAAI,CAAC7D,OAAO,CAACsB,OAAO,cAAAuC,sBAAA,eAApBA,sBAAA,CAAsBrC,IAAI,GAAGE,aAAI,CAACoC,UAAU,CAACjD,KAAK,CAAC,GAAGa,aAAI,CAACqC,WAAW,CAAClD,KAAK,CAAC;QAC5F,OAAO,IAAAiB,0BAAa,EAACd,MAAM,CAAC;MAC9B;MACA,IAAMoC,WAAgC,GAAG,EAAAO,cAAA,OAAI,CAAC3D,OAAO,cAAA2D,cAAA,uBAAZA,cAAA,CAAcrC,OAAO,KAAI,CAAC,CAAC;MACpE,IAAM+B,UAAU,GAAG,IAAIC,UAAU,CAACzC,KAAK,CAAC;MACxC,IAAM6B,OAAO,GAAG,CAAAkB,cAAA,OAAI,CAAC5D,OAAO,cAAA4D,cAAA,eAAZA,cAAA,CAAcL,GAAG,GAAGC,aAAI,CAACQ,UAAU,GAAGR,aAAI,CAACd,OAAO;MAClE,OAAOA,OAAO,CAACW,UAAU,EAAED,WAAW,CAAC,CAACpC,MAAM;IAChD;EAAC;IAAAT,GAAA;IAAAtB,KAAA,EAED,SAAAgF,gBACE5F,aAAiE,EACrC;MAAA,IAAA6F,KAAA;MAAA,WAAAC,oBAAA,CAAArH,OAAA,EAAA4D,YAAA,CAAA5D,OAAA,CAAA6D,IAAA,UAAAyD,SAAA;QAAA,IAAAC,cAAA;QAAA,IAAAjB,WAAA,EAAAkB,aAAA;QAAA,OAAA5D,YAAA,CAAA5D,OAAA,CAAAmE,IAAA,UAAAsD,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAApD,IAAA,GAAAoD,SAAA,CAAApF,IAAA;YAAA;cACtBgE,WAAgC,GAAG,EAAAiB,cAAA,GAAAH,KAAI,CAAClE,OAAO,cAAAqE,cAAA,uBAAZA,cAAA,CAAc/C,OAAO,KAAI,CAAC,CAAC;cAC9DgD,aAAa,GAAG,IAAId,aAAI,CAACiB,OAAO,CAACrB,WAAW,CAAC;cACnD,OAAAoB,SAAA,CAAAE,aAAA,KAAAC,wBAAA,CAAA7H,OAAA,EAAAgB,cAAA,CAAOoG,KAAI,CAACU,gBAAgB,CAACN,aAAa,EAAEjG,aAAa,CAAC,GAAAwG,qBAAA,CAAA/H,OAAA;YAAA;YAAA;cAAA,OAAA0H,SAAA,CAAAxC,IAAA;UAAA;QAAA,GAAAoC,QAAA;MAAA;IAC5D;EAAC;IAAA7D,GAAA;IAAAtB,KAAA,EAED,SAAA6F,kBACEzG,aAAiE,EACrC;MAAA,IAAA0G,MAAA;MAAA,WAAAZ,oBAAA,CAAArH,OAAA,EAAA4D,YAAA,CAAA5D,OAAA,CAAA6D,IAAA,UAAAqE,SAAA;QAAA,IAAAC,cAAA;QAAA,IAAA7B,WAAA,EAAAkB,aAAA;QAAA,OAAA5D,YAAA,CAAA5D,OAAA,CAAAmE,IAAA,UAAAiE,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA/D,IAAA,GAAA+D,SAAA,CAAA/F,IAAA;YAAA;cACtBgE,WAAgC,GAAG,EAAA6B,cAAA,GAAAF,MAAI,CAAC/E,OAAO,cAAAiF,cAAA,uBAAZA,cAAA,CAAc3D,OAAO,KAAI,CAAC,CAAC;cAC9DgD,aAAa,GAAG,IAAId,aAAI,CAAC4B,OAAO,CAAChC,WAAW,CAAC;cACnD,OAAA+B,SAAA,CAAAT,aAAA,KAAAC,wBAAA,CAAA7H,OAAA,EAAAgB,cAAA,CAAOiH,MAAI,CAACH,gBAAgB,CAACN,aAAa,EAAEjG,aAAa,CAAC,GAAAwG,qBAAA,CAAA/H,OAAA;YAAA;YAAA;cAAA,OAAAqI,SAAA,CAAAnD,IAAA;UAAA;QAAA,GAAAgD,QAAA;MAAA;IAC5D;EAAC;IAAAzE,GAAA;IAAAtB,KAAA,EAED,SAAA2F,iBACEN,aAA0C,EAC1CjG,aAAiE,EACrC;MAAA,IAAAgH,MAAA;MAAA,WAAAlB,oBAAA,CAAArH,OAAA,EAAA4D,YAAA,CAAA5D,OAAA,CAAA6D,IAAA,UAAA2E,SAAA;QAAA,IAAAC,yBAAA,EAAAC,iBAAA,EAAAC,cAAA,EAAAC,SAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,UAAA,EAAAC,GAAA,EAAAC,OAAA,EAAAC,UAAA,EAAAC,EAAA,EAAAC,MAAA;QAAA,OAAAxF,YAAA,CAAA5D,OAAA,CAAAmE,IAAA,UAAAkF,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAhF,IAAA,GAAAgF,SAAA,CAAAhH,IAAA;YAAA;cAC5BkF,aAAa,CAAC+B,MAAM,GAAGhB,MAAI,CAACiB,OAAO,CAACC,IAAI,CAAClB,MAAI,CAAC;cAC9Cf,aAAa,CAACkC,KAAK,GAAGnB,MAAI,CAACoB,MAAM,CAACF,IAAI,CAAClB,MAAI,CAAC;cAACE,yBAAA;cAAAC,iBAAA;cAAAY,SAAA,CAAAhF,IAAA;cAAAsE,SAAA,GAAA5H,cAAA,CACnBO,aAAa;YAAA;cAAA+H,SAAA,CAAAhH,IAAA;cAAA,WAAAyF,qBAAA,CAAA/H,OAAA,EAAA4I,SAAA,CAAAtG,IAAA;YAAA;cAAA,MAAAmG,yBAAA,KAAAI,KAAA,GAAAS,SAAA,CAAAxE,IAAA,EAAA7C,IAAA;gBAAAqH,SAAA,CAAAhH,IAAA;gBAAA;cAAA;cAAtBwG,KAAK,GAAAD,KAAA,CAAA1G,KAAA;cACd4G,UAAU,GAAG,IAAIvC,UAAU,CAACsC,KAAK,CAAC;cAClCK,GAAE,GAAG3B,aAAa,CAACoC,IAAI,CAACb,UAAU,EAAE,KAAK,CAAC;cAAA,IAC3CI,GAAE;gBAAAG,SAAA,CAAAhH,IAAA;gBAAA;cAAA;cAAA,MACC,IAAIuH,KAAK,IAAAC,MAAA,CAAIvB,MAAI,CAACwB,SAAS,CAAC,CAAC,UAAO,CAAC;YAAA;cAEvCX,OAAM,GAAGb,MAAI,CAACyB,UAAU,CAAC,CAAC;cAChC,OAAAV,SAAA,CAAA1B,aAAA,KAAAC,wBAAA,CAAA7H,OAAA,EAAAgB,cAAA,CAAOoI,OAAM,GAAArB,qBAAA,CAAA/H,OAAA;YAAA;cAAAyI,yBAAA;cAAAa,SAAA,CAAAhH,IAAA;cAAA;YAAA;cAAAgH,SAAA,CAAAhH,IAAA;cAAA;YAAA;cAAAgH,SAAA,CAAAhF,IAAA;cAAAgF,SAAA,CAAAW,EAAA,GAAAX,SAAA;cAAAZ,iBAAA;cAAAC,cAAA,GAAAW,SAAA,CAAAW,EAAA;YAAA;cAAAX,SAAA,CAAAhF,IAAA;cAAAgF,SAAA,CAAAhF,IAAA;cAAA,MAAAmE,yBAAA,IAAAG,SAAA,CAAArG,MAAA;gBAAA+G,SAAA,CAAAhH,IAAA;gBAAA;cAAA;cAAAgH,SAAA,CAAAhH,IAAA;cAAA,WAAAyF,qBAAA,CAAA/H,OAAA,EAAA4I,SAAA,CAAArG,MAAA;YAAA;cAAA+G,SAAA,CAAAhF,IAAA;cAAA,KAAAoE,iBAAA;gBAAAY,SAAA,CAAAhH,IAAA;gBAAA;cAAA;cAAA,MAAAqG,cAAA;YAAA;cAAA,OAAAW,SAAA,CAAAY,MAAA;YAAA;cAAA,OAAAZ,SAAA,CAAAY,MAAA;YAAA;cAIThB,UAAU,GAAG,IAAI1C,UAAU,CAAC,CAAC,CAAC;cAC9B2C,EAAE,GAAG3B,aAAa,CAACoC,IAAI,CAACV,UAAU,EAAE,IAAI,CAAC;cAC/C,IAAI,CAACC,EAAE,EAAE,CAGT;cACMC,MAAM,GAAGb,MAAI,CAACyB,UAAU,CAAC,CAAC;cAChC,OAAAV,SAAA,CAAA1B,aAAA,KAAAC,wBAAA,CAAA7H,OAAA,EAAAgB,cAAA,CAAOoI,MAAM,GAAArB,qBAAA,CAAA/H,OAAA;YAAA;YAAA;cAAA,OAAAsJ,SAAA,CAAApE,IAAA;UAAA;QAAA,GAAAsD,QAAA;MAAA;IACf;EAAC;IAAA/E,GAAA;IAAAtB,KAAA,EAED,SAAAqH,QAAQV,KAAK,EAAE;MACb,IAAI,CAACG,OAAO,CAACW,IAAI,CAACd,KAAK,CAAC;IAC1B;EAAC;IAAArF,GAAA;IAAAtB,KAAA,EAED,SAAAwH,OAAOQ,MAAM,EAAE;MACb,IAAIA,MAAM,KAAK,CAAC,EAAE;QAChB,MAAM,IAAIN,KAAK,CAAC,IAAI,CAACE,SAAS,CAACI,MAAM,CAAC,GAAG,IAAI,CAAClB,OAAO,CAAC9F,MAAM,CAAC;MAC/D;IACF;EAAC;IAAAM,GAAA;IAAAtB,KAAA,EAED,SAAA6H,WAAA,EAA4B;MAC1B,IAAMZ,MAAM,GAAG,IAAI,CAACH,OAAO;MAC3B,IAAI,CAACA,OAAO,GAAG,EAAE;MACjB,OAAOG,MAAM;IACf;EAAC;IAAA3F,GAAA;IAAAtB,KAAA,EAGD,SAAA4H,UAAA,EAAoC;MAAA,IAA1BK,IAAY,GAAA9J,SAAA,CAAA6C,MAAA,QAAA7C,SAAA,QAAA8C,SAAA,GAAA9C,SAAA,MAAG,CAAC;MACxB,IAAM+J,QAAQ,GAAG;QAEf,CAAC,EAAE,iBAAiB;QAEpB,CAAC,EAAE,YAAY;QAEf,CAAC,EAAE,EAAE;QAEL,IAAI,EAAE,YAAY;QAElB,IAAI,EAAE,cAAc;QAEpB,IAAI,EAAE,YAAY;QAElB,IAAI,EAAE,qBAAqB;QAE3B,IAAI,EAAE,cAAc;QAEpB,IAAI,EAAE;MACR,CAAC;MACD,UAAAP,MAAA,CAAU,IAAI,CAACQ,IAAI,QAAAR,MAAA,CAAKO,QAAQ,CAACD,IAAI,CAAC;IACxC;EAAC;EAAA,OAAAvH,kBAAA;AAAA,EA/IqC0H,wBAAW;AAAAC,OAAA,CAAA3H,kBAAA,GAAAA,kBAAA"}
@@ -1,5 +1,5 @@
1
1
  import { processOnWorker } from '@loaders.gl/worker-utils';
2
- const VERSION = typeof "4.0.0-alpha.9" !== 'undefined' ? "4.0.0-alpha.9" : 'latest';
2
+ const VERSION = typeof "4.0.0-beta.2" !== 'undefined' ? "4.0.0-beta.2" : 'latest';
3
3
  export const CompressionWorker = {
4
4
  id: 'compression',
5
5
  name: 'compression',
@@ -10,5 +10,4 @@ export const CompressionWorker = {
10
10
  export function compressOnWorker(data, options) {
11
11
  return processOnWorker(CompressionWorker, data, options);
12
12
  }
13
- export const _typecheckCompressionWorker = CompressionWorker;
14
13
  //# sourceMappingURL=compression-worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compression-worker.js","names":["processOnWorker","VERSION","CompressionWorker","id","name","module","version","options","compressOnWorker","data","_typecheckCompressionWorker"],"sources":["../../src/compression-worker.ts"],"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"],"mappings":"AACA,SAAQA,eAAe,QAAO,0BAA0B;AAIxD,MAAMC,OAAO,GAAG,sBAAkB,KAAK,WAAW,qBAAiB,QAAQ;AAU3E,OAAO,MAAMC,iBAAiB,GAAG;EAC/BC,EAAE,EAAE,aAAa;EACjBC,IAAI,EAAE,aAAa;EACnBC,MAAM,EAAE,aAAa;EACrBC,OAAO,EAAEL,OAAO;EAChBM,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,OAAO,SAASC,gBAAgBA,CAC9BC,IAAiB,EACjBF,OAAiC,EACX;EACtB,OAAOP,eAAe,CAACE,iBAAiB,EAAEO,IAAI,EAAEF,OAAO,CAAC;AAC1D;AAEA,OAAO,MAAMG,2BAAyC,GAAGR,iBAAiB"}
1
+ {"version":3,"file":"compression-worker.js","names":["processOnWorker","VERSION","CompressionWorker","id","name","module","version","options","compressOnWorker","data"],"sources":["../../src/compression-worker.ts"],"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"],"mappings":"AACA,SAAQA,eAAe,QAAO,0BAA0B;AAIxD,MAAMC,OAAO,GAAG,qBAAkB,KAAK,WAAW,oBAAiB,QAAQ;AAU3E,OAAO,MAAMC,iBAAiB,GAAG;EAC/BC,EAAE,EAAE,aAAa;EACjBC,IAAI,EAAE,aAAa;EACnBC,MAAM,EAAE,aAAa;EACrBC,OAAO,EAAEL,OAAO;EAChBM,OAAO,EAAE,CAAC;AACZ,CAAC;AAKD,OAAO,SAASC,gBAAgBA,CAC9BC,IAAiB,EACjBF,OAAiC,EACX;EACtB,OAAOP,eAAe,CAACE,iBAAiB,EAAEO,IAAI,EAAEF,OAAO,CAAC;AAC1D"}
@@ -35,7 +35,7 @@ export class DeflateCompression extends Compression {
35
35
  return this.decompressSync(input);
36
36
  }
37
37
  compressSync(input) {
38
- var _this$options$deflate5, _this$options;
38
+ var _this$options$deflate5, _this$options, _this$options2;
39
39
  if (!isBrowser && (_this$options$deflate5 = this.options.deflate) !== null && _this$options$deflate5 !== void 0 && _this$options$deflate5.useZlib) {
40
40
  var _this$options$deflate6;
41
41
  const buffer = (_this$options$deflate6 = this.options.deflate) !== null && _this$options$deflate6 !== void 0 && _this$options$deflate6.gzip ? zlib.gzipSync(input) : zlib.deflateSync(input);
@@ -43,28 +43,30 @@ export class DeflateCompression extends Compression {
43
43
  }
44
44
  const pakoOptions = ((_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.deflate) || {};
45
45
  const inputArray = new Uint8Array(input);
46
- return pako.deflate(inputArray, pakoOptions).buffer;
46
+ const deflate = (_this$options2 = this.options) !== null && _this$options2 !== void 0 && _this$options2.raw ? pako.deflateRaw : pako.deflate;
47
+ return deflate(inputArray, pakoOptions).buffer;
47
48
  }
48
49
  decompressSync(input) {
49
- var _this$options$deflate7, _this$options2;
50
+ var _this$options$deflate7, _this$options3, _this$options4;
50
51
  if (!isBrowser && (_this$options$deflate7 = this.options.deflate) !== null && _this$options$deflate7 !== void 0 && _this$options$deflate7.useZlib) {
51
52
  var _this$options$deflate8;
52
53
  const buffer = (_this$options$deflate8 = this.options.deflate) !== null && _this$options$deflate8 !== void 0 && _this$options$deflate8.gzip ? zlib.gunzipSync(input) : zlib.inflateSync(input);
53
54
  return toArrayBuffer(buffer);
54
55
  }
55
- const pakoOptions = ((_this$options2 = this.options) === null || _this$options2 === void 0 ? void 0 : _this$options2.deflate) || {};
56
+ const pakoOptions = ((_this$options3 = this.options) === null || _this$options3 === void 0 ? void 0 : _this$options3.deflate) || {};
56
57
  const inputArray = new Uint8Array(input);
57
- return pako.inflate(inputArray, pakoOptions).buffer;
58
+ const inflate = (_this$options4 = this.options) !== null && _this$options4 !== void 0 && _this$options4.raw ? pako.inflateRaw : pako.inflate;
59
+ return inflate(inputArray, pakoOptions).buffer;
58
60
  }
59
61
  async *compressBatches(asyncIterator) {
60
- var _this$options3;
61
- const pakoOptions = ((_this$options3 = this.options) === null || _this$options3 === void 0 ? void 0 : _this$options3.deflate) || {};
62
+ var _this$options5;
63
+ const pakoOptions = ((_this$options5 = this.options) === null || _this$options5 === void 0 ? void 0 : _this$options5.deflate) || {};
62
64
  const pakoProcessor = new pako.Deflate(pakoOptions);
63
65
  yield* this.transformBatches(pakoProcessor, asyncIterator);
64
66
  }
65
67
  async *decompressBatches(asyncIterator) {
66
- var _this$options4;
67
- const pakoOptions = ((_this$options4 = this.options) === null || _this$options4 === void 0 ? void 0 : _this$options4.deflate) || {};
68
+ var _this$options6;
69
+ const pakoOptions = ((_this$options6 = this.options) === null || _this$options6 === void 0 ? void 0 : _this$options6.deflate) || {};
68
70
  const pakoProcessor = new pako.Inflate(pakoOptions);
69
71
  yield* this.transformBatches(pakoProcessor, asyncIterator);
70
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deflate-compression.js","names":["Compression","isBrowser","toArrayBuffer","pako","zlib","promisify1","DeflateCompression","constructor","options","arguments","length","undefined","_defineProperty","compress","input","_this$options$deflate","deflate","useZlib","_this$options$deflate2","buffer","gzip","compressSync","decompress","_this$options$deflate3","_this$options$deflate4","gunzip","inflate","decompressSync","_this$options$deflate5","_this$options","_this$options$deflate6","gzipSync","deflateSync","pakoOptions","inputArray","Uint8Array","_this$options$deflate7","_this$options2","_this$options$deflate8","gunzipSync","inflateSync","compressBatches","asyncIterator","_this$options3","pakoProcessor","Deflate","transformBatches","decompressBatches","_this$options4","Inflate","onData","_onData","bind","onEnd","_onEnd","chunk","uint8Array","ok","push","Error","concat","_getError","chunks","_getChunks","emptyChunk","_chunks","status","code","MESSAGES","name"],"sources":["../../../src/lib/deflate-compression.ts"],"sourcesContent":["// DEFLATE\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport pako from 'pako'; // https://bundlephobia.com/package/pako\nimport zlib from 'zlib';\nimport {promisify1} from '@loaders.gl/loader-utils';\n\nexport type DeflateCompressionOptions = CompressionOptions & {\n deflate?: pako.InflateOptions & pako.DeflateOptions & {useZlib?: boolean};\n};\n\n/**\n * DEFLATE compression / decompression\n */\nexport class DeflateCompression extends Compression {\n readonly name: string = 'deflate';\n readonly extensions: string[] = [];\n readonly contentEncodings = ['deflate'];\n readonly isSupported = true;\n\n readonly options: DeflateCompressionOptions;\n\n private _chunks: ArrayBuffer[] = [];\n\n constructor(options: DeflateCompressionOptions = {}) {\n super(options);\n this.options = options;\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gzip)(input)\n : await promisify1(zlib.deflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gunzip)(input)\n : await promisify1(zlib.inflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gzipSync(input) : zlib.deflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n return pako.deflate(inputArray, pakoOptions).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gunzipSync(input) : zlib.inflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n return pako.inflate(inputArray, pakoOptions).buffer;\n }\n\n async *compressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Deflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *decompressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Inflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *transformBatches(\n pakoProcessor: pako.Inflate | pako.Deflate,\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n pakoProcessor.onData = this._onData.bind(this);\n pakoProcessor.onEnd = this._onEnd.bind(this);\n for await (const chunk of asyncIterator) {\n const uint8Array = new Uint8Array(chunk);\n const ok = pakoProcessor.push(uint8Array, false); // false -> not last chunk\n if (!ok) {\n throw new Error(`${this._getError()}write`);\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n // End\n const emptyChunk = new Uint8Array(0);\n const ok = pakoProcessor.push(emptyChunk, true); // true -> last chunk\n if (!ok) {\n // For some reason we get error but it still works???\n // throw new Error(this._getError() + 'end');\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n _onData(chunk) {\n this._chunks.push(chunk);\n }\n\n _onEnd(status) {\n if (status !== 0) {\n throw new Error(this._getError(status) + this._chunks.length);\n }\n }\n\n _getChunks(): ArrayBuffer[] {\n const chunks = this._chunks;\n this._chunks = [];\n return chunks;\n }\n\n // TODO - For some reason we don't get the error message from pako in _onEnd?\n _getError(code: number = 0): string {\n const MESSAGES = {\n /* Z_NEED_DICT 2 */\n 2: 'need dictionary',\n /* Z_STREAM_END 1 */\n 1: 'stream end',\n /* Z_OK 0 */\n 0: '',\n /* Z_ERRNO (-1) */\n '-1': 'file error',\n /* Z_STREAM_ERROR (-2) */\n '-2': 'stream error',\n /* Z_DATA_ERROR (-3) */\n '-3': 'data error',\n /* Z_MEM_ERROR (-4) */\n '-4': 'insufficient memory',\n /* Z_BUF_ERROR (-5) */\n '-5': 'buffer error',\n /* Z_VERSION_ERROR (-6) */\n '-6': 'incompatible version'\n };\n return `${this.name}: ${MESSAGES[code]}`;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"deflate-compression.js","names":["Compression","isBrowser","toArrayBuffer","pako","zlib","promisify1","DeflateCompression","constructor","options","arguments","length","undefined","_defineProperty","compress","input","_this$options$deflate","deflate","useZlib","_this$options$deflate2","buffer","gzip","compressSync","decompress","_this$options$deflate3","_this$options$deflate4","gunzip","inflate","decompressSync","_this$options$deflate5","_this$options","_this$options2","_this$options$deflate6","gzipSync","deflateSync","pakoOptions","inputArray","Uint8Array","raw","deflateRaw","_this$options$deflate7","_this$options3","_this$options4","_this$options$deflate8","gunzipSync","inflateSync","inflateRaw","compressBatches","asyncIterator","_this$options5","pakoProcessor","Deflate","transformBatches","decompressBatches","_this$options6","Inflate","onData","_onData","bind","onEnd","_onEnd","chunk","uint8Array","ok","push","Error","concat","_getError","chunks","_getChunks","emptyChunk","_chunks","status","code","MESSAGES","name"],"sources":["../../../src/lib/deflate-compression.ts"],"sourcesContent":["// DEFLATE\nimport type {CompressionOptions} from './compression';\nimport {Compression} from './compression';\nimport {isBrowser, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport pako from 'pako'; // https://bundlephobia.com/package/pako\nimport zlib from 'zlib';\nimport {promisify1} from '@loaders.gl/loader-utils';\n\nexport type DeflateCompressionOptions = CompressionOptions & {\n deflate?: pako.InflateOptions & pako.DeflateOptions & {useZlib?: boolean};\n /** creates raw data, without wrapper (header and adler32 crc). */\n raw?: boolean;\n};\n\n/**\n * DEFLATE compression / decompression\n */\nexport class DeflateCompression extends Compression {\n readonly name: string = 'deflate';\n readonly extensions: string[] = [];\n readonly contentEncodings = ['deflate'];\n readonly isSupported = true;\n\n readonly options: DeflateCompressionOptions;\n\n private _chunks: ArrayBuffer[] = [];\n\n constructor(options: DeflateCompressionOptions = {}) {\n super(options);\n this.options = options;\n }\n\n async compress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gzip)(input)\n : await promisify1(zlib.deflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.compressSync(input);\n }\n\n async decompress(input: ArrayBuffer): Promise<ArrayBuffer> {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip\n ? await promisify1(zlib.gunzip)(input)\n : await promisify1(zlib.inflate)(input);\n return toArrayBuffer(buffer);\n }\n return this.decompressSync(input);\n }\n\n compressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gzipSync(input) : zlib.deflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n const deflate = this.options?.raw ? pako.deflateRaw : pako.deflate;\n return deflate(inputArray, pakoOptions).buffer;\n }\n\n decompressSync(input: ArrayBuffer): ArrayBuffer {\n // On Node.js we can use built-in zlib\n if (!isBrowser && this.options.deflate?.useZlib) {\n const buffer = this.options.deflate?.gzip ? zlib.gunzipSync(input) : zlib.inflateSync(input);\n return toArrayBuffer(buffer);\n }\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const inputArray = new Uint8Array(input);\n const inflate = this.options?.raw ? pako.inflateRaw : pako.inflate;\n return inflate(inputArray, pakoOptions).buffer;\n }\n\n async *compressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Deflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *decompressBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n const pakoOptions: pako.InflateOptions = this.options?.deflate || {};\n const pakoProcessor = new pako.Inflate(pakoOptions);\n yield* this.transformBatches(pakoProcessor, asyncIterator);\n }\n\n async *transformBatches(\n pakoProcessor: pako.Inflate | pako.Deflate,\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n ): AsyncIterable<ArrayBuffer> {\n pakoProcessor.onData = this._onData.bind(this);\n pakoProcessor.onEnd = this._onEnd.bind(this);\n for await (const chunk of asyncIterator) {\n const uint8Array = new Uint8Array(chunk);\n const ok = pakoProcessor.push(uint8Array, false); // false -> not last chunk\n if (!ok) {\n throw new Error(`${this._getError()}write`);\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n // End\n const emptyChunk = new Uint8Array(0);\n const ok = pakoProcessor.push(emptyChunk, true); // true -> last chunk\n if (!ok) {\n // For some reason we get error but it still works???\n // throw new Error(this._getError() + 'end');\n }\n const chunks = this._getChunks();\n yield* chunks;\n }\n\n _onData(chunk) {\n this._chunks.push(chunk);\n }\n\n _onEnd(status) {\n if (status !== 0) {\n throw new Error(this._getError(status) + this._chunks.length);\n }\n }\n\n _getChunks(): ArrayBuffer[] {\n const chunks = this._chunks;\n this._chunks = [];\n return chunks;\n }\n\n // TODO - For some reason we don't get the error message from pako in _onEnd?\n _getError(code: number = 0): string {\n const MESSAGES = {\n /* Z_NEED_DICT 2 */\n 2: 'need dictionary',\n /* Z_STREAM_END 1 */\n 1: 'stream end',\n /* Z_OK 0 */\n 0: '',\n /* Z_ERRNO (-1) */\n '-1': 'file error',\n /* Z_STREAM_ERROR (-2) */\n '-2': 'stream error',\n /* Z_DATA_ERROR (-3) */\n '-3': 'data error',\n /* Z_MEM_ERROR (-4) */\n '-4': 'insufficient memory',\n /* Z_BUF_ERROR (-5) */\n '-5': 'buffer error',\n /* Z_VERSION_ERROR (-6) */\n '-6': 'incompatible version'\n };\n return `${this.name}: ${MESSAGES[code]}`;\n }\n}\n"],"mappings":"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"}
@@ -5,6 +5,8 @@ export type DeflateCompressionOptions = CompressionOptions & {
5
5
  deflate?: pako.InflateOptions & pako.DeflateOptions & {
6
6
  useZlib?: boolean;
7
7
  };
8
+ /** creates raw data, without wrapper (header and adler32 crc). */
9
+ raw?: boolean;
8
10
  };
9
11
  /**
10
12
  * DEFLATE compression / decompression
@@ -1 +1 @@
1
- {"version":3,"file":"deflate-compression.d.ts","sourceRoot":"","sources":["../../src/lib/deflate-compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,MAAM,MAAM,yBAAyB,GAAG,kBAAkB,GAAG;IAC3D,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAC,CAAC;CAC3E,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAa;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACnC,QAAQ,CAAC,gBAAgB,WAAe;IACxC,QAAQ,CAAC,WAAW,QAAQ;IAE5B,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAE5C,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,GAAE,yBAA8B;IAK7C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAWlD,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAW1D,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAW7C,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAWxC,eAAe,CACpB,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChE,aAAa,CAAC,WAAW,CAAC;IAMtB,iBAAiB,CACtB,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChE,aAAa,CAAC,WAAW,CAAC;IAMtB,gBAAgB,CACrB,aAAa,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,EAC1C,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChE,aAAa,CAAC,WAAW,CAAC;IAwB7B,OAAO,CAAC,KAAK,KAAA;IAIb,MAAM,CAAC,MAAM,KAAA;IAMb,UAAU,IAAI,WAAW,EAAE;IAO3B,SAAS,CAAC,IAAI,GAAE,MAAU,GAAG,MAAM;CAuBpC"}
1
+ {"version":3,"file":"deflate-compression.d.ts","sourceRoot":"","sources":["../../src/lib/deflate-compression.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,MAAM,MAAM,yBAAyB,GAAG,kBAAkB,GAAG;IAC3D,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAC,CAAC;IAC1E,kEAAkE;IAClE,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAa;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACnC,QAAQ,CAAC,gBAAgB,WAAe;IACxC,QAAQ,CAAC,WAAW,QAAQ;IAE5B,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAE5C,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,GAAE,yBAA8B;IAK7C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAWlD,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAW1D,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAY7C,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAYxC,eAAe,CACpB,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChE,aAAa,CAAC,WAAW,CAAC;IAMtB,iBAAiB,CACtB,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChE,aAAa,CAAC,WAAW,CAAC;IAMtB,gBAAgB,CACrB,aAAa,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,EAC1C,aAAa,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,GAChE,aAAa,CAAC,WAAW,CAAC;IAwB7B,OAAO,CAAC,KAAK,KAAA;IAIb,MAAM,CAAC,MAAM,KAAA;IAMb,UAAU,IAAI,WAAW,EAAE;IAO3B,SAAS,CAAC,IAAI,GAAE,MAAU,GAAG,MAAM;CAuBpC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/compression",
3
- "version": "4.0.0-alpha.9",
3
+ "version": "4.0.0-beta.2",
4
4
  "description": "Decompression and compression plugins for loaders.gl",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -39,8 +39,8 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@babel/runtime": "^7.3.1",
42
- "@loaders.gl/loader-utils": "4.0.0-alpha.9",
43
- "@loaders.gl/worker-utils": "4.0.0-alpha.9",
42
+ "@loaders.gl/loader-utils": "4.0.0-beta.2",
43
+ "@loaders.gl/worker-utils": "4.0.0-beta.2",
44
44
  "@types/brotli": "^1.3.0",
45
45
  "@types/pako": "^1.0.1",
46
46
  "fflate": "0.7.4",
@@ -58,5 +58,5 @@
58
58
  "lz4js": "^0.2.0",
59
59
  "zstd-codec": "^0.1"
60
60
  },
61
- "gitHead": "03ff81ab468f20f3bddeec787aa88d477a7e1c72"
61
+ "gitHead": "79c2033f755e88e11bc30a04428e3666b177b8fc"
62
62
  }
@@ -1,4 +1,4 @@
1
- import type {WorkerObject} from '@loaders.gl/worker-utils';
1
+ // import type {WorkerObject} from '@loaders.gl/worker-utils';
2
2
  import {processOnWorker} from '@loaders.gl/worker-utils';
3
3
 
4
4
  // __VERSION__ is injected by babel-plugin-version-inline
@@ -30,5 +30,3 @@ export function compressOnWorker(
30
30
  ): Promise<ArrayBuffer> {
31
31
  return processOnWorker(CompressionWorker, data, options);
32
32
  }
33
-
34
- export const _typecheckCompressionWorker: WorkerObject = CompressionWorker;
@@ -8,6 +8,8 @@ import {promisify1} from '@loaders.gl/loader-utils';
8
8
 
9
9
  export type DeflateCompressionOptions = CompressionOptions & {
10
10
  deflate?: pako.InflateOptions & pako.DeflateOptions & {useZlib?: boolean};
11
+ /** creates raw data, without wrapper (header and adler32 crc). */
12
+ raw?: boolean;
11
13
  };
12
14
 
13
15
  /**
@@ -58,7 +60,8 @@ export class DeflateCompression extends Compression {
58
60
  }
59
61
  const pakoOptions: pako.DeflateOptions = this.options?.deflate || {};
60
62
  const inputArray = new Uint8Array(input);
61
- return pako.deflate(inputArray, pakoOptions).buffer;
63
+ const deflate = this.options?.raw ? pako.deflateRaw : pako.deflate;
64
+ return deflate(inputArray, pakoOptions).buffer;
62
65
  }
63
66
 
64
67
  decompressSync(input: ArrayBuffer): ArrayBuffer {
@@ -69,7 +72,8 @@ export class DeflateCompression extends Compression {
69
72
  }
70
73
  const pakoOptions: pako.InflateOptions = this.options?.deflate || {};
71
74
  const inputArray = new Uint8Array(input);
72
- return pako.inflate(inputArray, pakoOptions).buffer;
75
+ const inflate = this.options?.raw ? pako.inflateRaw : pako.inflate;
76
+ return inflate(inputArray, pakoOptions).buffer;
73
77
  }
74
78
 
75
79
  async *compressBatches(