@loaders.gl/shapefile 3.2.0-alpha.2 → 3.2.0

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.
@@ -739,7 +739,7 @@
739
739
  }
740
740
 
741
741
  // src/dbf-loader.ts
742
- var VERSION = true ? "3.2.0-alpha.2" : "latest";
742
+ var VERSION = true ? "3.2.0" : "latest";
743
743
  var DBFWorkerLoader = {
744
744
  name: "DBF",
745
745
  id: "dbf",
@@ -881,12 +881,13 @@
881
881
  switch (type) {
882
882
  case "process":
883
883
  try {
884
- const { input, options = {} } = payload;
884
+ const { input, options = {}, context = {} } = payload;
885
885
  const result = await parseData({
886
886
  loader,
887
887
  arrayBuffer: input,
888
888
  options,
889
889
  context: {
890
+ ...context,
890
891
  parse: parseOnMainThread
891
892
  }
892
893
  });
@@ -19,7 +19,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
19
19
 
20
20
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
21
21
 
22
- var VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
22
+ var VERSION = typeof "3.2.0" !== 'undefined' ? "3.2.0" : 'latest';
23
23
  var DBFWorkerLoader = {
24
24
  name: 'DBF',
25
25
  id: 'dbf',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/dbf-loader.ts"],"names":["VERSION","DBFWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","options","dbf","encoding","DBFLoader","parse","arrayBuffer","parseSync","parseDBF","parseInBatches","parseDBFInBatches"],"mappings":";;;;;;;;;;;;;;;AACA;;;;;;AAIA,IAAMA,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAKO,IAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEL,OAJ4B;AAKrCM,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,OAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,mBAAD,CAR0B;AASrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,QAAQ,EAAE;AADP;AADE;AAT4B,CAAhC;;;AAiBA,IAAMC,SAA2B,mCACnCZ,eADmC;AAEtCa,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBL,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAgC,wBAASK,WAAT,EAAsBL,OAAtB,CAAhC;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAFiC;AAGtCM,EAAAA,SAAS,EAAEC,kBAH2B;AAItCC,EAAAA,cAAc,EAAEC;AAJsB,EAAjC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseDBF, parseDBFInBatches} from './lib/parsers/parse-dbf';\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\n/**\n * DBFLoader - DBF files are used to contain non-geometry columns in Shapefiles\n */\nexport const DBFWorkerLoader: Loader = {\n name: 'DBF',\n id: 'dbf',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'table',\n extensions: ['dbf'],\n mimeTypes: ['application/x-dbf'],\n options: {\n dbf: {\n encoding: 'latin1'\n }\n }\n};\n\n/** DBF file loader */\nexport const DBFLoader: LoaderWithParser = {\n ...DBFWorkerLoader,\n parse: async (arrayBuffer, options) => parseDBF(arrayBuffer, options),\n parseSync: parseDBF,\n parseInBatches: parseDBFInBatches\n};\n"],"file":"dbf-loader.js"}
1
+ {"version":3,"sources":["../../src/dbf-loader.ts"],"names":["VERSION","DBFWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","options","dbf","encoding","DBFLoader","parse","arrayBuffer","parseSync","parseDBF","parseInBatches","parseDBFInBatches"],"mappings":";;;;;;;;;;;;;;;AACA;;;;;;AAIA,IAAMA,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAKO,IAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEL,OAJ4B;AAKrCM,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,OAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,mBAAD,CAR0B;AASrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,QAAQ,EAAE;AADP;AADE;AAT4B,CAAhC;;;AAiBA,IAAMC,SAA2B,mCACnCZ,eADmC;AAEtCa,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBL,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAgC,wBAASK,WAAT,EAAsBL,OAAtB,CAAhC;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAFiC;AAGtCM,EAAAA,SAAS,EAAEC,kBAH2B;AAItCC,EAAAA,cAAc,EAAEC;AAJsB,EAAjC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseDBF, parseDBFInBatches} from './lib/parsers/parse-dbf';\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\n/**\n * DBFLoader - DBF files are used to contain non-geometry columns in Shapefiles\n */\nexport const DBFWorkerLoader: Loader = {\n name: 'DBF',\n id: 'dbf',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'table',\n extensions: ['dbf'],\n mimeTypes: ['application/x-dbf'],\n options: {\n dbf: {\n encoding: 'latin1'\n }\n }\n};\n\n/** DBF file loader */\nexport const DBFLoader: LoaderWithParser = {\n ...DBFWorkerLoader,\n parse: async (arrayBuffer, options) => parseDBF(arrayBuffer, options),\n parseSync: parseDBF,\n parseInBatches: parseDBFInBatches\n};\n"],"file":"dbf-loader.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/streaming/zip-batch-iterators.ts"],"names":["zipBatchIterators","iterator1","iterator2","batch1","batch2","iterator1Done","iterator2Done","length","next","value","done","batch","extractBatch","batchLength","Math","min","slice","splice"],"mappings":";;;;;;;;;;;;;;;SAMuBA,iB;;;;;mFAAhB,iBACLC,SADK,EAELC,SAFK;AAAA;;AAAA;AAAA;AAAA;AAAA;AAIDC,YAAAA,MAJC,GAIQ,EAJR;AAKDC,YAAAA,MALC,GAKQ,EALR;AAMDC,YAAAA,aANC,GAMwB,KANxB;AAODC,YAAAA,aAPC,GAOwB,KAPxB;;AAAA;AAAA,kBAWE,CAACD,aAAD,IAAkB,CAACC,aAXrB;AAAA;AAAA;AAAA;;AAAA,kBAYCH,MAAM,CAACI,MAAP,KAAkB,CAAlB,IAAuB,CAACF,aAZzB;AAAA;AAAA;AAAA;;AAAA;AAAA,sDAa2BJ,SAAS,CAACO,IAAV,EAb3B;;AAAA;AAAA;AAaMC,YAAAA,KAbN,yBAaMA,KAbN;AAaaC,YAAAA,IAbb,yBAaaA,IAbb;;AAcD,gBAAIA,IAAJ,EAAU;AACRL,cAAAA,aAAa,GAAG,IAAhB;AACD,aAFD,MAEO;AACLF,cAAAA,MAAM,GAAGM,KAAT;AACD;;AAlBA;AAAA;;AAAA;AAAA,kBAmBQL,MAAM,CAACG,MAAP,KAAkB,CAAlB,IAAuB,CAACD,aAnBhC;AAAA;AAAA;AAAA;;AAAA;AAAA,sDAoB2BJ,SAAS,CAACM,IAAV,EApB3B;;AAAA;AAAA;AAoBMC,YAAAA,MApBN,0BAoBMA,KApBN;AAoBaC,YAAAA,KApBb,0BAoBaA,IApBb;;AAqBD,gBAAIA,KAAJ,EAAU;AACRJ,cAAAA,aAAa,GAAG,IAAhB;AACD,aAFD,MAEO;AACLF,cAAAA,MAAM,GAAGK,MAAT;AACD;;AAzBA;AA4BGE,YAAAA,KA5BH,GA4BWC,YAAY,CAACT,MAAD,EAASC,MAAT,CA5BvB;;AAAA,iBA6BCO,KA7BD;AAAA;AAAA;AAAA;;AAAA;AA8BD,mBAAMA,KAAN;;AA9BC;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AA0CP,SAASC,YAAT,CAAsBT,MAAtB,EAAwCC,MAAxC,EAA6E;AAC3E,MAAMS,WAAmB,GAAGC,IAAI,CAACC,GAAL,CAASZ,MAAM,CAACI,MAAhB,EAAwBH,MAAM,CAACG,MAA/B,CAA5B;;AACA,MAAIM,WAAW,KAAK,CAApB,EAAuB;AACrB,WAAO,IAAP;AACD;;AAGD,MAAMF,KAAiB,GAAG,CAACR,MAAM,CAACa,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAAD,EAA+BT,MAAM,CAACY,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAA/B,CAA1B;AAGAV,EAAAA,MAAM,CAACc,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACAT,EAAAA,MAAM,CAACa,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACA,SAAOF,KAAP;AACD","sourcesContent":["/**\n * Zip two iterators together\n *\n * @param iterator1\n * @param iterator2\n */\nexport async function* zipBatchIterators(\n iterator1: AsyncIterator<any[]>,\n iterator2: AsyncIterator<any[]>\n): AsyncGenerator<number[][], void, unknown> {\n let batch1 = [];\n let batch2 = [];\n let iterator1Done: boolean = false;\n let iterator2Done: boolean = false;\n\n // TODO - one could let all iterators flow at full speed using `Promise.race`\n // however we might end up with a big temporary buffer\n while (!iterator1Done && !iterator2Done) {\n if (batch1.length === 0 && !iterator1Done) {\n const {value, done} = await iterator1.next();\n if (done) {\n iterator1Done = true;\n } else {\n batch1 = value;\n }\n } else if (batch2.length === 0 && !iterator2Done) {\n const {value, done} = await iterator2.next();\n if (done) {\n iterator2Done = true;\n } else {\n batch2 = value;\n }\n }\n\n const batch = extractBatch(batch1, batch2);\n if (batch) {\n yield batch;\n }\n }\n}\n\n/**\n * Extract batch of same length from two batches\n *\n * @param batch1\n * @param batch2\n * @return array | null\n */\nfunction extractBatch(batch1: number[], batch2: number[]): number[][] | null {\n const batchLength: number = Math.min(batch1.length, batch2.length);\n if (batchLength === 0) {\n return null;\n }\n\n // Non interleaved arrays\n const batch: number[][] = [batch1.slice(0, batchLength), batch2.slice(0, batchLength)];\n\n // Modify the 2 batches\n batch1.splice(0, batchLength);\n batch2.splice(0, batchLength);\n return batch;\n}\n"],"file":"zip-batch-iterators.js"}
1
+ {"version":3,"sources":["../../../../src/lib/streaming/zip-batch-iterators.ts"],"names":["zipBatchIterators","iterator1","iterator2","batch1","batch2","iterator1Done","iterator2Done","length","next","value","done","batch","extractBatch","batchLength","Math","min","slice","splice"],"mappings":";;;;;;;;;;;;;;;SAMuBA,iB;;;;;mFAAhB,iBACLC,SADK,EAELC,SAFK;AAAA;;AAAA;AAAA;AAAA;AAAA;AAIDC,YAAAA,MAJC,GAIkB,EAJlB;AAKDC,YAAAA,MALC,GAKkB,EALlB;AAMDC,YAAAA,aANC,GAMwB,KANxB;AAODC,YAAAA,aAPC,GAOwB,KAPxB;;AAAA;AAAA,kBAWE,CAACD,aAAD,IAAkB,CAACC,aAXrB;AAAA;AAAA;AAAA;;AAAA,kBAYCH,MAAM,CAACI,MAAP,KAAkB,CAAlB,IAAuB,CAACF,aAZzB;AAAA;AAAA;AAAA;;AAAA;AAAA,sDAa2BJ,SAAS,CAACO,IAAV,EAb3B;;AAAA;AAAA;AAaMC,YAAAA,KAbN,yBAaMA,KAbN;AAaaC,YAAAA,IAbb,yBAaaA,IAbb;;AAcD,gBAAIA,IAAJ,EAAU;AACRL,cAAAA,aAAa,GAAG,IAAhB;AACD,aAFD,MAEO;AACLF,cAAAA,MAAM,GAAGM,KAAT;AACD;;AAlBA;AAAA;;AAAA;AAAA,kBAmBQL,MAAM,CAACG,MAAP,KAAkB,CAAlB,IAAuB,CAACD,aAnBhC;AAAA;AAAA;AAAA;;AAAA;AAAA,sDAoB2BJ,SAAS,CAACM,IAAV,EApB3B;;AAAA;AAAA;AAoBMC,YAAAA,MApBN,0BAoBMA,KApBN;AAoBaC,YAAAA,KApBb,0BAoBaA,IApBb;;AAqBD,gBAAIA,KAAJ,EAAU;AACRJ,cAAAA,aAAa,GAAG,IAAhB;AACD,aAFD,MAEO;AACLF,cAAAA,MAAM,GAAGK,MAAT;AACD;;AAzBA;AA4BGE,YAAAA,KA5BH,GA4BWC,YAAY,CAACT,MAAD,EAASC,MAAT,CA5BvB;;AAAA,iBA6BCO,KA7BD;AAAA;AAAA;AAAA;;AAAA;AA8BD,mBAAMA,KAAN;;AA9BC;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AA0CP,SAASC,YAAT,CAAsBT,MAAtB,EAAwCC,MAAxC,EAA6E;AAC3E,MAAMS,WAAmB,GAAGC,IAAI,CAACC,GAAL,CAASZ,MAAM,CAACI,MAAhB,EAAwBH,MAAM,CAACG,MAA/B,CAA5B;;AACA,MAAIM,WAAW,KAAK,CAApB,EAAuB;AACrB,WAAO,IAAP;AACD;;AAGD,MAAMF,KAAiB,GAAG,CAACR,MAAM,CAACa,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAAD,EAA+BT,MAAM,CAACY,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAA/B,CAA1B;AAGAV,EAAAA,MAAM,CAACc,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACAT,EAAAA,MAAM,CAACa,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACA,SAAOF,KAAP;AACD","sourcesContent":["/**\n * Zip two iterators together\n *\n * @param iterator1\n * @param iterator2\n */\nexport async function* zipBatchIterators(\n iterator1: AsyncIterator<any[]>,\n iterator2: AsyncIterator<any[]>\n): AsyncGenerator<number[][], void, unknown> {\n let batch1: number[] = [];\n let batch2: number[] = [];\n let iterator1Done: boolean = false;\n let iterator2Done: boolean = false;\n\n // TODO - one could let all iterators flow at full speed using `Promise.race`\n // however we might end up with a big temporary buffer\n while (!iterator1Done && !iterator2Done) {\n if (batch1.length === 0 && !iterator1Done) {\n const {value, done} = await iterator1.next();\n if (done) {\n iterator1Done = true;\n } else {\n batch1 = value;\n }\n } else if (batch2.length === 0 && !iterator2Done) {\n const {value, done} = await iterator2.next();\n if (done) {\n iterator2Done = true;\n } else {\n batch2 = value;\n }\n }\n\n const batch = extractBatch(batch1, batch2);\n if (batch) {\n yield batch;\n }\n }\n}\n\n/**\n * Extract batch of same length from two batches\n *\n * @param batch1\n * @param batch2\n * @return array | null\n */\nfunction extractBatch(batch1: number[], batch2: number[]): number[][] | null {\n const batchLength: number = Math.min(batch1.length, batch2.length);\n if (batchLength === 0) {\n return null;\n }\n\n // Non interleaved arrays\n const batch: number[][] = [batch1.slice(0, batchLength), batch2.slice(0, batchLength)];\n\n // Modify the 2 batches\n batch1.splice(0, batchLength);\n batch2.splice(0, batchLength);\n return batch;\n}\n"],"file":"zip-batch-iterators.js"}
@@ -9,7 +9,7 @@ var _shpLoader = require("./shp-loader");
9
9
 
10
10
  var _parseShapefile = require("./lib/parsers/parse-shapefile");
11
11
 
12
- var VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
12
+ var VERSION = typeof "3.2.0" !== 'undefined' ? "3.2.0" : 'latest';
13
13
  var ShapefileLoader = {
14
14
  name: 'Shapefile',
15
15
  id: 'shapefile',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shapefile-loader.ts"],"names":["VERSION","ShapefileLoader","name","id","module","version","category","extensions","mimeTypes","tests","Uint8Array","SHP_MAGIC_NUMBER","buffer","options","shapefile","shp","_maxDimensions","parse","parseShapefile","parseInBatches","parseShapefileInBatches","_typecheckShapefileLoader"],"mappings":";;;;;;;AACA;;AACA;;AAIA,IAAMA,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAMO,IAAMC,eAAe,GAAG;AAC7BC,EAAAA,IAAI,EAAE,WADuB;AAE7BC,EAAAA,EAAE,EAAE,WAFyB;AAG7BC,EAAAA,MAAM,EAAE,WAHqB;AAI7BC,EAAAA,OAAO,EAAEL,OAJoB;AAK7BM,EAAAA,QAAQ,EAAE,UALmB;AAM7BC,EAAAA,UAAU,EAAE,CAAC,KAAD,CANiB;AAO7BC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAPkB;AAQ7BC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeC,2BAAf,EAAiCC,MAAlC,CARsB;AAS7BC,EAAAA,OAAO,EAAE;AACPC,IAAAA,SAAS,EAAE,EADJ;AAEPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AAFE,GAToB;AAe7BC,EAAAA,KAAK,EAAEC,8BAfsB;AAgB7BC,EAAAA,cAAc,EAAEC;AAhBa,CAAxB;;AAmBA,IAAMC,yBAA2C,GAAGpB,eAApD","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {SHP_MAGIC_NUMBER} from './shp-loader';\nimport {parseShapefile, parseShapefileInBatches} from './lib/parsers/parse-shapefile';\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\n/**\n * Shapefile loader\n * @note Shapefile is multifile format and requires providing additional files\n */\nexport const ShapefileLoader = {\n name: 'Shapefile',\n id: 'shapefile',\n module: 'shapefile',\n version: VERSION,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shapefile: {},\n shp: {\n _maxDimensions: 4\n }\n },\n parse: parseShapefile,\n parseInBatches: parseShapefileInBatches\n};\n\nexport const _typecheckShapefileLoader: LoaderWithParser = ShapefileLoader;\n"],"file":"shapefile-loader.js"}
1
+ {"version":3,"sources":["../../src/shapefile-loader.ts"],"names":["VERSION","ShapefileLoader","name","id","module","version","category","extensions","mimeTypes","tests","Uint8Array","SHP_MAGIC_NUMBER","buffer","options","shapefile","shp","_maxDimensions","parse","parseShapefile","parseInBatches","parseShapefileInBatches","_typecheckShapefileLoader"],"mappings":";;;;;;;AACA;;AACA;;AAIA,IAAMA,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAMO,IAAMC,eAAe,GAAG;AAC7BC,EAAAA,IAAI,EAAE,WADuB;AAE7BC,EAAAA,EAAE,EAAE,WAFyB;AAG7BC,EAAAA,MAAM,EAAE,WAHqB;AAI7BC,EAAAA,OAAO,EAAEL,OAJoB;AAK7BM,EAAAA,QAAQ,EAAE,UALmB;AAM7BC,EAAAA,UAAU,EAAE,CAAC,KAAD,CANiB;AAO7BC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAPkB;AAQ7BC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeC,2BAAf,EAAiCC,MAAlC,CARsB;AAS7BC,EAAAA,OAAO,EAAE;AACPC,IAAAA,SAAS,EAAE,EADJ;AAEPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AAFE,GAToB;AAe7BC,EAAAA,KAAK,EAAEC,8BAfsB;AAgB7BC,EAAAA,cAAc,EAAEC;AAhBa,CAAxB;;AAmBA,IAAMC,yBAA2C,GAAGpB,eAApD","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {SHP_MAGIC_NUMBER} from './shp-loader';\nimport {parseShapefile, parseShapefileInBatches} from './lib/parsers/parse-shapefile';\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\n/**\n * Shapefile loader\n * @note Shapefile is multifile format and requires providing additional files\n */\nexport const ShapefileLoader = {\n name: 'Shapefile',\n id: 'shapefile',\n module: 'shapefile',\n version: VERSION,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shapefile: {},\n shp: {\n _maxDimensions: 4\n }\n },\n parse: parseShapefile,\n parseInBatches: parseShapefileInBatches\n};\n\nexport const _typecheckShapefileLoader: LoaderWithParser = ShapefileLoader;\n"],"file":"shapefile-loader.js"}
@@ -19,7 +19,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
19
19
 
20
20
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
21
21
 
22
- var VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
22
+ var VERSION = typeof "3.2.0" !== 'undefined' ? "3.2.0" : 'latest';
23
23
  var SHP_MAGIC_NUMBER = [0x00, 0x00, 0x27, 0x0a];
24
24
  exports.SHP_MAGIC_NUMBER = SHP_MAGIC_NUMBER;
25
25
  var SHPWorkerLoader = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shp-loader.ts"],"names":["VERSION","SHP_MAGIC_NUMBER","SHPWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","tests","Uint8Array","buffer","options","shp","_maxDimensions","SHPLoader","parse","arrayBuffer","parseSync","parseSHP","parseInBatches","parseSHPInBatches"],"mappings":";;;;;;;;;;;;;;;AACA;;;;;;AAIA,IAAMA,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAEO,IAAMC,gBAAgB,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,CAAzB;;AAKA,IAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEN,OAJ4B;AAKrCO,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,UAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAR0B;AAUrCC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeX,gBAAf,EAAiCY,MAAlC,CAV8B;AAWrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AADE;AAX4B,CAAhC;;;AAmBA,IAAMC,SAA2B,mCACnCf,eADmC;AAEtCgB,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBL,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAiC,wBAASK,WAAT,EAAsBL,OAAtB,CAAjC;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAFiC;AAGtCM,EAAAA,SAAS,EAAEC,kBAH2B;AAItCC,EAAAA,cAAc,EAAEC;AAJsB,EAAjC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseSHP, parseSHPInBatches} from './lib/parsers/parse-shp';\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 const SHP_MAGIC_NUMBER = [0x00, 0x00, 0x27, 0x0a];\n\n/**\n * SHP file loader\n */\nexport const SHPWorkerLoader: Loader = {\n name: 'SHP',\n id: 'shp',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n // ISSUE: This also identifies SHX files, which are identical to SHP for the first 100 bytes...\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shp: {\n _maxDimensions: 4\n }\n }\n};\n\n/** SHP file loader */\nexport const SHPLoader: LoaderWithParser = {\n ...SHPWorkerLoader,\n parse: async (arrayBuffer, options?) => parseSHP(arrayBuffer, options),\n parseSync: parseSHP,\n parseInBatches: parseSHPInBatches\n};\n"],"file":"shp-loader.js"}
1
+ {"version":3,"sources":["../../src/shp-loader.ts"],"names":["VERSION","SHP_MAGIC_NUMBER","SHPWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","tests","Uint8Array","buffer","options","shp","_maxDimensions","SHPLoader","parse","arrayBuffer","parseSync","parseSHP","parseInBatches","parseSHPInBatches"],"mappings":";;;;;;;;;;;;;;;AACA;;;;;;AAIA,IAAMA,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAEO,IAAMC,gBAAgB,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,CAAzB;;AAKA,IAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEN,OAJ4B;AAKrCO,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,UAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAR0B;AAUrCC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeX,gBAAf,EAAiCY,MAAlC,CAV8B;AAWrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AADE;AAX4B,CAAhC;;;AAmBA,IAAMC,SAA2B,mCACnCf,eADmC;AAEtCgB,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBL,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAiC,wBAASK,WAAT,EAAsBL,OAAtB,CAAjC;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAFiC;AAGtCM,EAAAA,SAAS,EAAEC,kBAH2B;AAItCC,EAAAA,cAAc,EAAEC;AAJsB,EAAjC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseSHP, parseSHPInBatches} from './lib/parsers/parse-shp';\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 const SHP_MAGIC_NUMBER = [0x00, 0x00, 0x27, 0x0a];\n\n/**\n * SHP file loader\n */\nexport const SHPWorkerLoader: Loader = {\n name: 'SHP',\n id: 'shp',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n // ISSUE: This also identifies SHX files, which are identical to SHP for the first 100 bytes...\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shp: {\n _maxDimensions: 4\n }\n }\n};\n\n/** SHP file loader */\nexport const SHPLoader: LoaderWithParser = {\n ...SHPWorkerLoader,\n parse: async (arrayBuffer, options?) => parseSHP(arrayBuffer, options),\n parseSync: parseSHP,\n parseInBatches: parseSHPInBatches\n};\n"],"file":"shp-loader.js"}
@@ -1,5 +1,5 @@
1
1
  import { parseDBF, parseDBFInBatches } from './lib/parsers/parse-dbf';
2
- const VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
2
+ const VERSION = typeof "3.2.0" !== 'undefined' ? "3.2.0" : 'latest';
3
3
  export const DBFWorkerLoader = {
4
4
  name: 'DBF',
5
5
  id: 'dbf',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/dbf-loader.ts"],"names":["parseDBF","parseDBFInBatches","VERSION","DBFWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","options","dbf","encoding","DBFLoader","parse","arrayBuffer","parseSync","parseInBatches"],"mappings":"AACA,SAAQA,QAAR,EAAkBC,iBAAlB,QAA0C,yBAA1C;AAIA,MAAMC,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAKA,OAAO,MAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEL,OAJ4B;AAKrCM,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,OAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,mBAAD,CAR0B;AASrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,QAAQ,EAAE;AADP;AADE;AAT4B,CAAhC;AAiBP,OAAO,MAAMC,SAA2B,GAAG,EACzC,GAAGZ,eADsC;AAEzCa,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBL,OAApB,KAAgCZ,QAAQ,CAACiB,WAAD,EAAcL,OAAd,CAFN;AAGzCM,EAAAA,SAAS,EAAElB,QAH8B;AAIzCmB,EAAAA,cAAc,EAAElB;AAJyB,CAApC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseDBF, parseDBFInBatches} from './lib/parsers/parse-dbf';\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\n/**\n * DBFLoader - DBF files are used to contain non-geometry columns in Shapefiles\n */\nexport const DBFWorkerLoader: Loader = {\n name: 'DBF',\n id: 'dbf',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'table',\n extensions: ['dbf'],\n mimeTypes: ['application/x-dbf'],\n options: {\n dbf: {\n encoding: 'latin1'\n }\n }\n};\n\n/** DBF file loader */\nexport const DBFLoader: LoaderWithParser = {\n ...DBFWorkerLoader,\n parse: async (arrayBuffer, options) => parseDBF(arrayBuffer, options),\n parseSync: parseDBF,\n parseInBatches: parseDBFInBatches\n};\n"],"file":"dbf-loader.js"}
1
+ {"version":3,"sources":["../../src/dbf-loader.ts"],"names":["parseDBF","parseDBFInBatches","VERSION","DBFWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","options","dbf","encoding","DBFLoader","parse","arrayBuffer","parseSync","parseInBatches"],"mappings":"AACA,SAAQA,QAAR,EAAkBC,iBAAlB,QAA0C,yBAA1C;AAIA,MAAMC,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAKA,OAAO,MAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEL,OAJ4B;AAKrCM,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,OAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,mBAAD,CAR0B;AASrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,QAAQ,EAAE;AADP;AADE;AAT4B,CAAhC;AAiBP,OAAO,MAAMC,SAA2B,GAAG,EACzC,GAAGZ,eADsC;AAEzCa,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBL,OAApB,KAAgCZ,QAAQ,CAACiB,WAAD,EAAcL,OAAd,CAFN;AAGzCM,EAAAA,SAAS,EAAElB,QAH8B;AAIzCmB,EAAAA,cAAc,EAAElB;AAJyB,CAApC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseDBF, parseDBFInBatches} from './lib/parsers/parse-dbf';\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\n/**\n * DBFLoader - DBF files are used to contain non-geometry columns in Shapefiles\n */\nexport const DBFWorkerLoader: Loader = {\n name: 'DBF',\n id: 'dbf',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'table',\n extensions: ['dbf'],\n mimeTypes: ['application/x-dbf'],\n options: {\n dbf: {\n encoding: 'latin1'\n }\n }\n};\n\n/** DBF file loader */\nexport const DBFLoader: LoaderWithParser = {\n ...DBFWorkerLoader,\n parse: async (arrayBuffer, options) => parseDBF(arrayBuffer, options),\n parseSync: parseDBF,\n parseInBatches: parseDBFInBatches\n};\n"],"file":"dbf-loader.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/streaming/zip-batch-iterators.ts"],"names":["zipBatchIterators","iterator1","iterator2","batch1","batch2","iterator1Done","iterator2Done","length","value","done","next","batch","extractBatch","batchLength","Math","min","slice","splice"],"mappings":"AAMA,OAAO,gBAAgBA,iBAAhB,CACLC,SADK,EAELC,SAFK,EAGsC;AAC3C,MAAIC,MAAM,GAAG,EAAb;AACA,MAAIC,MAAM,GAAG,EAAb;AACA,MAAIC,aAAsB,GAAG,KAA7B;AACA,MAAIC,aAAsB,GAAG,KAA7B;;AAIA,SAAO,CAACD,aAAD,IAAkB,CAACC,aAA1B,EAAyC;AACvC,QAAIH,MAAM,CAACI,MAAP,KAAkB,CAAlB,IAAuB,CAACF,aAA5B,EAA2C;AACzC,YAAM;AAACG,QAAAA,KAAD;AAAQC,QAAAA;AAAR,UAAgB,MAAMR,SAAS,CAACS,IAAV,EAA5B;;AACA,UAAID,IAAJ,EAAU;AACRJ,QAAAA,aAAa,GAAG,IAAhB;AACD,OAFD,MAEO;AACLF,QAAAA,MAAM,GAAGK,KAAT;AACD;AACF,KAPD,MAOO,IAAIJ,MAAM,CAACG,MAAP,KAAkB,CAAlB,IAAuB,CAACD,aAA5B,EAA2C;AAChD,YAAM;AAACE,QAAAA,KAAD;AAAQC,QAAAA;AAAR,UAAgB,MAAMP,SAAS,CAACQ,IAAV,EAA5B;;AACA,UAAID,IAAJ,EAAU;AACRH,QAAAA,aAAa,GAAG,IAAhB;AACD,OAFD,MAEO;AACLF,QAAAA,MAAM,GAAGI,KAAT;AACD;AACF;;AAED,UAAMG,KAAK,GAAGC,YAAY,CAACT,MAAD,EAASC,MAAT,CAA1B;;AACA,QAAIO,KAAJ,EAAW;AACT,YAAMA,KAAN;AACD;AACF;AACF;;AASD,SAASC,YAAT,CAAsBT,MAAtB,EAAwCC,MAAxC,EAA6E;AAC3E,QAAMS,WAAmB,GAAGC,IAAI,CAACC,GAAL,CAASZ,MAAM,CAACI,MAAhB,EAAwBH,MAAM,CAACG,MAA/B,CAA5B;;AACA,MAAIM,WAAW,KAAK,CAApB,EAAuB;AACrB,WAAO,IAAP;AACD;;AAGD,QAAMF,KAAiB,GAAG,CAACR,MAAM,CAACa,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAAD,EAA+BT,MAAM,CAACY,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAA/B,CAA1B;AAGAV,EAAAA,MAAM,CAACc,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACAT,EAAAA,MAAM,CAACa,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACA,SAAOF,KAAP;AACD","sourcesContent":["/**\n * Zip two iterators together\n *\n * @param iterator1\n * @param iterator2\n */\nexport async function* zipBatchIterators(\n iterator1: AsyncIterator<any[]>,\n iterator2: AsyncIterator<any[]>\n): AsyncGenerator<number[][], void, unknown> {\n let batch1 = [];\n let batch2 = [];\n let iterator1Done: boolean = false;\n let iterator2Done: boolean = false;\n\n // TODO - one could let all iterators flow at full speed using `Promise.race`\n // however we might end up with a big temporary buffer\n while (!iterator1Done && !iterator2Done) {\n if (batch1.length === 0 && !iterator1Done) {\n const {value, done} = await iterator1.next();\n if (done) {\n iterator1Done = true;\n } else {\n batch1 = value;\n }\n } else if (batch2.length === 0 && !iterator2Done) {\n const {value, done} = await iterator2.next();\n if (done) {\n iterator2Done = true;\n } else {\n batch2 = value;\n }\n }\n\n const batch = extractBatch(batch1, batch2);\n if (batch) {\n yield batch;\n }\n }\n}\n\n/**\n * Extract batch of same length from two batches\n *\n * @param batch1\n * @param batch2\n * @return array | null\n */\nfunction extractBatch(batch1: number[], batch2: number[]): number[][] | null {\n const batchLength: number = Math.min(batch1.length, batch2.length);\n if (batchLength === 0) {\n return null;\n }\n\n // Non interleaved arrays\n const batch: number[][] = [batch1.slice(0, batchLength), batch2.slice(0, batchLength)];\n\n // Modify the 2 batches\n batch1.splice(0, batchLength);\n batch2.splice(0, batchLength);\n return batch;\n}\n"],"file":"zip-batch-iterators.js"}
1
+ {"version":3,"sources":["../../../../src/lib/streaming/zip-batch-iterators.ts"],"names":["zipBatchIterators","iterator1","iterator2","batch1","batch2","iterator1Done","iterator2Done","length","value","done","next","batch","extractBatch","batchLength","Math","min","slice","splice"],"mappings":"AAMA,OAAO,gBAAgBA,iBAAhB,CACLC,SADK,EAELC,SAFK,EAGsC;AAC3C,MAAIC,MAAgB,GAAG,EAAvB;AACA,MAAIC,MAAgB,GAAG,EAAvB;AACA,MAAIC,aAAsB,GAAG,KAA7B;AACA,MAAIC,aAAsB,GAAG,KAA7B;;AAIA,SAAO,CAACD,aAAD,IAAkB,CAACC,aAA1B,EAAyC;AACvC,QAAIH,MAAM,CAACI,MAAP,KAAkB,CAAlB,IAAuB,CAACF,aAA5B,EAA2C;AACzC,YAAM;AAACG,QAAAA,KAAD;AAAQC,QAAAA;AAAR,UAAgB,MAAMR,SAAS,CAACS,IAAV,EAA5B;;AACA,UAAID,IAAJ,EAAU;AACRJ,QAAAA,aAAa,GAAG,IAAhB;AACD,OAFD,MAEO;AACLF,QAAAA,MAAM,GAAGK,KAAT;AACD;AACF,KAPD,MAOO,IAAIJ,MAAM,CAACG,MAAP,KAAkB,CAAlB,IAAuB,CAACD,aAA5B,EAA2C;AAChD,YAAM;AAACE,QAAAA,KAAD;AAAQC,QAAAA;AAAR,UAAgB,MAAMP,SAAS,CAACQ,IAAV,EAA5B;;AACA,UAAID,IAAJ,EAAU;AACRH,QAAAA,aAAa,GAAG,IAAhB;AACD,OAFD,MAEO;AACLF,QAAAA,MAAM,GAAGI,KAAT;AACD;AACF;;AAED,UAAMG,KAAK,GAAGC,YAAY,CAACT,MAAD,EAASC,MAAT,CAA1B;;AACA,QAAIO,KAAJ,EAAW;AACT,YAAMA,KAAN;AACD;AACF;AACF;;AASD,SAASC,YAAT,CAAsBT,MAAtB,EAAwCC,MAAxC,EAA6E;AAC3E,QAAMS,WAAmB,GAAGC,IAAI,CAACC,GAAL,CAASZ,MAAM,CAACI,MAAhB,EAAwBH,MAAM,CAACG,MAA/B,CAA5B;;AACA,MAAIM,WAAW,KAAK,CAApB,EAAuB;AACrB,WAAO,IAAP;AACD;;AAGD,QAAMF,KAAiB,GAAG,CAACR,MAAM,CAACa,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAAD,EAA+BT,MAAM,CAACY,KAAP,CAAa,CAAb,EAAgBH,WAAhB,CAA/B,CAA1B;AAGAV,EAAAA,MAAM,CAACc,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACAT,EAAAA,MAAM,CAACa,MAAP,CAAc,CAAd,EAAiBJ,WAAjB;AACA,SAAOF,KAAP;AACD","sourcesContent":["/**\n * Zip two iterators together\n *\n * @param iterator1\n * @param iterator2\n */\nexport async function* zipBatchIterators(\n iterator1: AsyncIterator<any[]>,\n iterator2: AsyncIterator<any[]>\n): AsyncGenerator<number[][], void, unknown> {\n let batch1: number[] = [];\n let batch2: number[] = [];\n let iterator1Done: boolean = false;\n let iterator2Done: boolean = false;\n\n // TODO - one could let all iterators flow at full speed using `Promise.race`\n // however we might end up with a big temporary buffer\n while (!iterator1Done && !iterator2Done) {\n if (batch1.length === 0 && !iterator1Done) {\n const {value, done} = await iterator1.next();\n if (done) {\n iterator1Done = true;\n } else {\n batch1 = value;\n }\n } else if (batch2.length === 0 && !iterator2Done) {\n const {value, done} = await iterator2.next();\n if (done) {\n iterator2Done = true;\n } else {\n batch2 = value;\n }\n }\n\n const batch = extractBatch(batch1, batch2);\n if (batch) {\n yield batch;\n }\n }\n}\n\n/**\n * Extract batch of same length from two batches\n *\n * @param batch1\n * @param batch2\n * @return array | null\n */\nfunction extractBatch(batch1: number[], batch2: number[]): number[][] | null {\n const batchLength: number = Math.min(batch1.length, batch2.length);\n if (batchLength === 0) {\n return null;\n }\n\n // Non interleaved arrays\n const batch: number[][] = [batch1.slice(0, batchLength), batch2.slice(0, batchLength)];\n\n // Modify the 2 batches\n batch1.splice(0, batchLength);\n batch2.splice(0, batchLength);\n return batch;\n}\n"],"file":"zip-batch-iterators.js"}
@@ -1,6 +1,6 @@
1
1
  import { SHP_MAGIC_NUMBER } from './shp-loader';
2
2
  import { parseShapefile, parseShapefileInBatches } from './lib/parsers/parse-shapefile';
3
- const VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
3
+ const VERSION = typeof "3.2.0" !== 'undefined' ? "3.2.0" : 'latest';
4
4
  export const ShapefileLoader = {
5
5
  name: 'Shapefile',
6
6
  id: 'shapefile',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shapefile-loader.ts"],"names":["SHP_MAGIC_NUMBER","parseShapefile","parseShapefileInBatches","VERSION","ShapefileLoader","name","id","module","version","category","extensions","mimeTypes","tests","Uint8Array","buffer","options","shapefile","shp","_maxDimensions","parse","parseInBatches","_typecheckShapefileLoader"],"mappings":"AACA,SAAQA,gBAAR,QAA+B,cAA/B;AACA,SAAQC,cAAR,EAAwBC,uBAAxB,QAAsD,+BAAtD;AAIA,MAAMC,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAMA,OAAO,MAAMC,eAAe,GAAG;AAC7BC,EAAAA,IAAI,EAAE,WADuB;AAE7BC,EAAAA,EAAE,EAAE,WAFyB;AAG7BC,EAAAA,MAAM,EAAE,WAHqB;AAI7BC,EAAAA,OAAO,EAAEL,OAJoB;AAK7BM,EAAAA,QAAQ,EAAE,UALmB;AAM7BC,EAAAA,UAAU,EAAE,CAAC,KAAD,CANiB;AAO7BC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAPkB;AAQ7BC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeb,gBAAf,EAAiCc,MAAlC,CARsB;AAS7BC,EAAAA,OAAO,EAAE;AACPC,IAAAA,SAAS,EAAE,EADJ;AAEPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AAFE,GAToB;AAe7BC,EAAAA,KAAK,EAAElB,cAfsB;AAgB7BmB,EAAAA,cAAc,EAAElB;AAhBa,CAAxB;AAmBP,OAAO,MAAMmB,yBAA2C,GAAGjB,eAApD","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {SHP_MAGIC_NUMBER} from './shp-loader';\nimport {parseShapefile, parseShapefileInBatches} from './lib/parsers/parse-shapefile';\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\n/**\n * Shapefile loader\n * @note Shapefile is multifile format and requires providing additional files\n */\nexport const ShapefileLoader = {\n name: 'Shapefile',\n id: 'shapefile',\n module: 'shapefile',\n version: VERSION,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shapefile: {},\n shp: {\n _maxDimensions: 4\n }\n },\n parse: parseShapefile,\n parseInBatches: parseShapefileInBatches\n};\n\nexport const _typecheckShapefileLoader: LoaderWithParser = ShapefileLoader;\n"],"file":"shapefile-loader.js"}
1
+ {"version":3,"sources":["../../src/shapefile-loader.ts"],"names":["SHP_MAGIC_NUMBER","parseShapefile","parseShapefileInBatches","VERSION","ShapefileLoader","name","id","module","version","category","extensions","mimeTypes","tests","Uint8Array","buffer","options","shapefile","shp","_maxDimensions","parse","parseInBatches","_typecheckShapefileLoader"],"mappings":"AACA,SAAQA,gBAAR,QAA+B,cAA/B;AACA,SAAQC,cAAR,EAAwBC,uBAAxB,QAAsD,+BAAtD;AAIA,MAAMC,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAMA,OAAO,MAAMC,eAAe,GAAG;AAC7BC,EAAAA,IAAI,EAAE,WADuB;AAE7BC,EAAAA,EAAE,EAAE,WAFyB;AAG7BC,EAAAA,MAAM,EAAE,WAHqB;AAI7BC,EAAAA,OAAO,EAAEL,OAJoB;AAK7BM,EAAAA,QAAQ,EAAE,UALmB;AAM7BC,EAAAA,UAAU,EAAE,CAAC,KAAD,CANiB;AAO7BC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAPkB;AAQ7BC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeb,gBAAf,EAAiCc,MAAlC,CARsB;AAS7BC,EAAAA,OAAO,EAAE;AACPC,IAAAA,SAAS,EAAE,EADJ;AAEPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AAFE,GAToB;AAe7BC,EAAAA,KAAK,EAAElB,cAfsB;AAgB7BmB,EAAAA,cAAc,EAAElB;AAhBa,CAAxB;AAmBP,OAAO,MAAMmB,yBAA2C,GAAGjB,eAApD","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {SHP_MAGIC_NUMBER} from './shp-loader';\nimport {parseShapefile, parseShapefileInBatches} from './lib/parsers/parse-shapefile';\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\n/**\n * Shapefile loader\n * @note Shapefile is multifile format and requires providing additional files\n */\nexport const ShapefileLoader = {\n name: 'Shapefile',\n id: 'shapefile',\n module: 'shapefile',\n version: VERSION,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shapefile: {},\n shp: {\n _maxDimensions: 4\n }\n },\n parse: parseShapefile,\n parseInBatches: parseShapefileInBatches\n};\n\nexport const _typecheckShapefileLoader: LoaderWithParser = ShapefileLoader;\n"],"file":"shapefile-loader.js"}
@@ -1,5 +1,5 @@
1
1
  import { parseSHP, parseSHPInBatches } from './lib/parsers/parse-shp';
2
- const VERSION = typeof "3.2.0-alpha.2" !== 'undefined' ? "3.2.0-alpha.2" : 'latest';
2
+ const VERSION = typeof "3.2.0" !== 'undefined' ? "3.2.0" : 'latest';
3
3
  export const SHP_MAGIC_NUMBER = [0x00, 0x00, 0x27, 0x0a];
4
4
  export const SHPWorkerLoader = {
5
5
  name: 'SHP',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shp-loader.ts"],"names":["parseSHP","parseSHPInBatches","VERSION","SHP_MAGIC_NUMBER","SHPWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","tests","Uint8Array","buffer","options","shp","_maxDimensions","SHPLoader","parse","arrayBuffer","parseSync","parseInBatches"],"mappings":"AACA,SAAQA,QAAR,EAAkBC,iBAAlB,QAA0C,yBAA1C;AAIA,MAAMC,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAEA,OAAO,MAAMC,gBAAgB,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,CAAzB;AAKP,OAAO,MAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEN,OAJ4B;AAKrCO,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,UAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAR0B;AAUrCC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeX,gBAAf,EAAiCY,MAAlC,CAV8B;AAWrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AADE;AAX4B,CAAhC;AAmBP,OAAO,MAAMC,SAA2B,GAAG,EACzC,GAAGf,eADsC;AAEzCgB,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBL,OAApB,KAAiChB,QAAQ,CAACqB,WAAD,EAAcL,OAAd,CAFP;AAGzCM,EAAAA,SAAS,EAAEtB,QAH8B;AAIzCuB,EAAAA,cAAc,EAAEtB;AAJyB,CAApC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseSHP, parseSHPInBatches} from './lib/parsers/parse-shp';\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 const SHP_MAGIC_NUMBER = [0x00, 0x00, 0x27, 0x0a];\n\n/**\n * SHP file loader\n */\nexport const SHPWorkerLoader: Loader = {\n name: 'SHP',\n id: 'shp',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n // ISSUE: This also identifies SHX files, which are identical to SHP for the first 100 bytes...\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shp: {\n _maxDimensions: 4\n }\n }\n};\n\n/** SHP file loader */\nexport const SHPLoader: LoaderWithParser = {\n ...SHPWorkerLoader,\n parse: async (arrayBuffer, options?) => parseSHP(arrayBuffer, options),\n parseSync: parseSHP,\n parseInBatches: parseSHPInBatches\n};\n"],"file":"shp-loader.js"}
1
+ {"version":3,"sources":["../../src/shp-loader.ts"],"names":["parseSHP","parseSHPInBatches","VERSION","SHP_MAGIC_NUMBER","SHPWorkerLoader","name","id","module","version","worker","category","extensions","mimeTypes","tests","Uint8Array","buffer","options","shp","_maxDimensions","SHPLoader","parse","arrayBuffer","parseSync","parseInBatches"],"mappings":"AACA,SAAQA,QAAR,EAAkBC,iBAAlB,QAA0C,yBAA1C;AAIA,MAAMC,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,QAAnE;AAEA,OAAO,MAAMC,gBAAgB,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,CAAzB;AAKP,OAAO,MAAMC,eAAuB,GAAG;AACrCC,EAAAA,IAAI,EAAE,KAD+B;AAErCC,EAAAA,EAAE,EAAE,KAFiC;AAGrCC,EAAAA,MAAM,EAAE,WAH6B;AAIrCC,EAAAA,OAAO,EAAEN,OAJ4B;AAKrCO,EAAAA,MAAM,EAAE,IAL6B;AAMrCC,EAAAA,QAAQ,EAAE,UAN2B;AAOrCC,EAAAA,UAAU,EAAE,CAAC,KAAD,CAPyB;AAQrCC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CAR0B;AAUrCC,EAAAA,KAAK,EAAE,CAAC,IAAIC,UAAJ,CAAeX,gBAAf,EAAiCY,MAAlC,CAV8B;AAWrCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE;AACHC,MAAAA,cAAc,EAAE;AADb;AADE;AAX4B,CAAhC;AAmBP,OAAO,MAAMC,SAA2B,GAAG,EACzC,GAAGf,eADsC;AAEzCgB,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAoBL,OAApB,KAAiChB,QAAQ,CAACqB,WAAD,EAAcL,OAAd,CAFP;AAGzCM,EAAAA,SAAS,EAAEtB,QAH8B;AAIzCuB,EAAAA,cAAc,EAAEtB;AAJyB,CAApC","sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parseSHP, parseSHPInBatches} from './lib/parsers/parse-shp';\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 const SHP_MAGIC_NUMBER = [0x00, 0x00, 0x27, 0x0a];\n\n/**\n * SHP file loader\n */\nexport const SHPWorkerLoader: Loader = {\n name: 'SHP',\n id: 'shp',\n module: 'shapefile',\n version: VERSION,\n worker: true,\n category: 'geometry',\n extensions: ['shp'],\n mimeTypes: ['application/octet-stream'],\n // ISSUE: This also identifies SHX files, which are identical to SHP for the first 100 bytes...\n tests: [new Uint8Array(SHP_MAGIC_NUMBER).buffer],\n options: {\n shp: {\n _maxDimensions: 4\n }\n }\n};\n\n/** SHP file loader */\nexport const SHPLoader: LoaderWithParser = {\n ...SHPWorkerLoader,\n parse: async (arrayBuffer, options?) => parseSHP(arrayBuffer, options),\n parseSync: parseSHP,\n parseInBatches: parseSHPInBatches\n};\n"],"file":"shp-loader.js"}
@@ -430,7 +430,7 @@
430
430
  }
431
431
 
432
432
  // src/shp-loader.ts
433
- var VERSION = true ? "3.2.0-alpha.2" : "latest";
433
+ var VERSION = true ? "3.2.0" : "latest";
434
434
  var SHP_MAGIC_NUMBER2 = [0, 0, 39, 10];
435
435
  var SHPWorkerLoader = {
436
436
  name: "SHP",
@@ -574,12 +574,13 @@
574
574
  switch (type) {
575
575
  case "process":
576
576
  try {
577
- const { input, options = {} } = payload;
577
+ const { input, options = {}, context = {} } = payload;
578
578
  const result = await parseData({
579
579
  loader,
580
580
  arrayBuffer: input,
581
581
  options,
582
582
  context: {
583
+ ...context,
583
584
  parse: parseOnMainThread
584
585
  }
585
586
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@loaders.gl/shapefile",
3
3
  "description": "Loader for the Shapefile Format",
4
- "version": "3.2.0-alpha.2",
4
+ "version": "3.2.0",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -37,10 +37,10 @@
37
37
  "build-worker-dbf": "esbuild src/workers/dbf-worker.ts --bundle --outfile=dist/dbf-worker.js --define:__VERSION__=\\\"$npm_package_version\\\""
38
38
  },
39
39
  "dependencies": {
40
- "@loaders.gl/gis": "3.2.0-alpha.2",
41
- "@loaders.gl/loader-utils": "3.2.0-alpha.2",
42
- "@loaders.gl/schema": "3.2.0-alpha.2",
40
+ "@loaders.gl/gis": "3.2.0",
41
+ "@loaders.gl/loader-utils": "3.2.0",
42
+ "@loaders.gl/schema": "3.2.0",
43
43
  "@math.gl/proj4": "^3.5.1"
44
44
  },
45
- "gitHead": "52a602739cbfce60fc314f474efc984d199dff78"
45
+ "gitHead": "6660dc9291526752c40063b73a3f9dd97cc0ccc5"
46
46
  }
@@ -8,8 +8,8 @@ export async function* zipBatchIterators(
8
8
  iterator1: AsyncIterator<any[]>,
9
9
  iterator2: AsyncIterator<any[]>
10
10
  ): AsyncGenerator<number[][], void, unknown> {
11
- let batch1 = [];
12
- let batch2 = [];
11
+ let batch1: number[] = [];
12
+ let batch2: number[] = [];
13
13
  let iterator1Done: boolean = false;
14
14
  let iterator2Done: boolean = false;
15
15