@loaders.gl/arrow 3.1.0-alpha.4 → 3.1.0-beta.3

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 (56) hide show
  1. package/dist/arrow-loader.d.ts +26 -0
  2. package/dist/arrow-loader.d.ts.map +1 -0
  3. package/dist/arrow-loader.js +26 -0
  4. package/dist/arrow-worker.js +15447 -2
  5. package/dist/arrow-writer.d.ts +17 -0
  6. package/dist/arrow-writer.d.ts.map +1 -0
  7. package/dist/arrow-writer.js +22 -0
  8. package/dist/bundle.d.ts +2 -0
  9. package/dist/bundle.d.ts.map +1 -0
  10. package/dist/bundle.js +15452 -0
  11. package/dist/es5/arrow-loader.js +4 -4
  12. package/dist/es5/arrow-loader.js.map +1 -1
  13. package/dist/es5/arrow-writer.js +3 -3
  14. package/dist/es5/arrow-writer.js.map +1 -1
  15. package/dist/es5/bundle.js +1 -1
  16. package/dist/es5/bundle.js.map +1 -1
  17. package/dist/es5/index.js +7 -40
  18. package/dist/es5/index.js.map +1 -1
  19. package/dist/es5/lib/arrow-table-batch.js +33 -78
  20. package/dist/es5/lib/arrow-table-batch.js.map +1 -1
  21. package/dist/es5/lib/encode-arrow.js +9 -25
  22. package/dist/es5/lib/encode-arrow.js.map +1 -1
  23. package/dist/es5/lib/parse-arrow-in-batches.js +12 -172
  24. package/dist/es5/lib/parse-arrow-in-batches.js.map +1 -1
  25. package/dist/es5/lib/parse-arrow-sync.js +12 -12
  26. package/dist/es5/lib/parse-arrow-sync.js.map +1 -1
  27. package/dist/es5/types.js +1 -1
  28. package/dist/esm/arrow-loader.js +1 -1
  29. package/dist/esm/arrow-loader.js.map +1 -1
  30. package/dist/esm/arrow-writer.js +1 -1
  31. package/dist/esm/arrow-writer.js.map +1 -1
  32. package/dist/index.d.ts +11 -0
  33. package/dist/index.d.ts.map +1 -0
  34. package/dist/index.js +28 -0
  35. package/dist/lib/arrow-table-batch.d.ts +9 -0
  36. package/dist/lib/arrow-table-batch.d.ts.map +1 -0
  37. package/dist/lib/arrow-table-batch.js +62 -0
  38. package/dist/lib/encode-arrow.d.ts +16 -0
  39. package/dist/lib/encode-arrow.d.ts.map +1 -0
  40. package/dist/lib/encode-arrow.js +40 -0
  41. package/dist/lib/parse-arrow-in-batches.d.ts +4 -0
  42. package/dist/lib/parse-arrow-in-batches.d.ts.map +1 -0
  43. package/dist/lib/parse-arrow-in-batches.js +47 -0
  44. package/dist/lib/parse-arrow-sync.d.ts +3 -0
  45. package/dist/lib/parse-arrow-sync.d.ts.map +1 -0
  46. package/dist/lib/parse-arrow-sync.js +41 -0
  47. package/dist/types.d.ts +10 -0
  48. package/dist/types.d.ts.map +1 -0
  49. package/dist/types.js +8 -0
  50. package/dist/workers/arrow-worker.d.ts +2 -0
  51. package/dist/workers/arrow-worker.d.ts.map +1 -0
  52. package/dist/workers/arrow-worker.js +5 -0
  53. package/package.json +10 -8
  54. package/dist/arrow-worker.js.map +0 -1
  55. package/dist/dist.min.js +0 -2
  56. package/dist/dist.min.js.map +0 -1
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports._typecheckArrowLoader = exports.ArrowLoader = void 0;
7
- var VERSION = typeof "3.1.0-alpha.4" !== 'undefined' ? "3.1.0-alpha.4" : 'latest';
8
- var DEFAULT_ARROW_LOADER_OPTIONS = {
7
+ const VERSION = typeof "3.1.0-beta.3" !== 'undefined' ? "3.1.0-beta.3" : 'latest';
8
+ const DEFAULT_ARROW_LOADER_OPTIONS = {
9
9
  arrow: {
10
10
  shape: 'columnar-table'
11
11
  }
12
12
  };
13
- var ArrowLoader = {
13
+ const ArrowLoader = {
14
14
  name: 'Apache Arrow',
15
15
  id: 'arrow',
16
16
  module: 'arrow',
@@ -24,6 +24,6 @@ var ArrowLoader = {
24
24
  options: DEFAULT_ARROW_LOADER_OPTIONS
25
25
  };
26
26
  exports.ArrowLoader = ArrowLoader;
27
- var _typecheckArrowLoader = ArrowLoader;
27
+ const _typecheckArrowLoader = ArrowLoader;
28
28
  exports._typecheckArrowLoader = _typecheckArrowLoader;
29
29
  //# sourceMappingURL=arrow-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/arrow-loader.ts"],"names":["VERSION","DEFAULT_ARROW_LOADER_OPTIONS","arrow","shape","ArrowLoader","name","id","module","version","worker","category","extensions","mimeTypes","binary","tests","options","_typecheckArrowLoader"],"mappings":";;;;;;AAIA,IAAMA,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAQA,IAAMC,4BAA4B,GAAG;AACnCC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAE;AADF;AAD4B,CAArC;AAOO,IAAMC,WAAW,GAAG;AACzBC,EAAAA,IAAI,EAAE,cADmB;AAEzBC,EAAAA,EAAE,EAAE,OAFqB;AAGzBC,EAAAA,MAAM,EAAE,OAHiB;AAIzBC,EAAAA,OAAO,EAAER,OAJgB;AAKzBS,EAAAA,MAAM,EAAE,IALiB;AAMzBC,EAAAA,QAAQ,EAAE,OANe;AAOzBC,EAAAA,UAAU,EAAE,CAAC,OAAD,EAAU,SAAV,CAPa;AAQzBC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CARc;AASzBC,EAAAA,MAAM,EAAE,IATiB;AAUzBC,EAAAA,KAAK,EAAE,CAAC,OAAD,CAVkB;AAWzBC,EAAAA,OAAO,EAAEd;AAXgB,CAApB;;AAcA,IAAMe,qBAA6B,GAAGZ,WAAtC","sourcesContent":["import type {Loader, LoaderOptions} from '@loaders.gl/loader-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 ArrowLoaderOptions = LoaderOptions & {\n arrow?: {\n shape: 'arrow-table' | 'columnar-table' | 'row-table' | 'array-row-table' | 'object-row-table';\n };\n};\n\nconst DEFAULT_ARROW_LOADER_OPTIONS = {\n arrow: {\n shape: 'columnar-table'\n }\n};\n\n/** ArrowJS table loader */\nexport const ArrowLoader = {\n name: 'Apache Arrow',\n id: 'arrow',\n module: 'arrow',\n version: VERSION,\n worker: true,\n category: 'table',\n extensions: ['arrow', 'feather'],\n mimeTypes: ['application/octet-stream'],\n binary: true,\n tests: ['ARROW'],\n options: DEFAULT_ARROW_LOADER_OPTIONS\n};\n\nexport const _typecheckArrowLoader: Loader = ArrowLoader;\n"],"file":"arrow-loader.js"}
1
+ {"version":3,"sources":["../../src/arrow-loader.ts"],"names":["VERSION","DEFAULT_ARROW_LOADER_OPTIONS","arrow","shape","ArrowLoader","name","id","module","version","worker","category","extensions","mimeTypes","binary","tests","options","_typecheckArrowLoader"],"mappings":";;;;;;AAIA,MAAMA,OAAO,GAAG,0BAAuB,WAAvB,oBAAmD,QAAnE;AAQA,MAAMC,4BAA4B,GAAG;AACnCC,EAAAA,KAAK,EAAE;AACLC,IAAAA,KAAK,EAAE;AADF;AAD4B,CAArC;AAOO,MAAMC,WAAW,GAAG;AACzBC,EAAAA,IAAI,EAAE,cADmB;AAEzBC,EAAAA,EAAE,EAAE,OAFqB;AAGzBC,EAAAA,MAAM,EAAE,OAHiB;AAIzBC,EAAAA,OAAO,EAAER,OAJgB;AAKzBS,EAAAA,MAAM,EAAE,IALiB;AAMzBC,EAAAA,QAAQ,EAAE,OANe;AAOzBC,EAAAA,UAAU,EAAE,CAAC,OAAD,EAAU,SAAV,CAPa;AAQzBC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CARc;AASzBC,EAAAA,MAAM,EAAE,IATiB;AAUzBC,EAAAA,KAAK,EAAE,CAAC,OAAD,CAVkB;AAWzBC,EAAAA,OAAO,EAAEd;AAXgB,CAApB;;AAcA,MAAMe,qBAA6B,GAAGZ,WAAtC","sourcesContent":["import type {Loader, LoaderOptions} from '@loaders.gl/loader-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 ArrowLoaderOptions = LoaderOptions & {\n arrow?: {\n shape: 'arrow-table' | 'columnar-table' | 'row-table' | 'array-row-table' | 'object-row-table';\n };\n};\n\nconst DEFAULT_ARROW_LOADER_OPTIONS = {\n arrow: {\n shape: 'columnar-table'\n }\n};\n\n/** ArrowJS table loader */\nexport const ArrowLoader = {\n name: 'Apache Arrow',\n id: 'arrow',\n module: 'arrow',\n version: VERSION,\n worker: true,\n category: 'table',\n extensions: ['arrow', 'feather'],\n mimeTypes: ['application/octet-stream'],\n binary: true,\n tests: ['ARROW'],\n options: DEFAULT_ARROW_LOADER_OPTIONS\n};\n\nexport const _typecheckArrowLoader: Loader = ArrowLoader;\n"],"file":"arrow-loader.js"}
@@ -7,15 +7,15 @@ exports.ArrowWriter = void 0;
7
7
 
8
8
  var _encodeArrow = require("./lib/encode-arrow");
9
9
 
10
- var VERSION = typeof "3.1.0-alpha.4" !== 'undefined' ? "3.1.0-alpha.4" : 'latest';
11
- var ArrowWriter = {
10
+ const VERSION = typeof "3.1.0-beta.3" !== 'undefined' ? "3.1.0-beta.3" : 'latest';
11
+ const ArrowWriter = {
12
12
  name: 'Apache Arrow',
13
13
  id: 'arrow',
14
14
  module: 'arrow',
15
15
  version: VERSION,
16
16
  extensions: ['arrow', 'feather'],
17
17
  mimeTypes: ['application/octet-stream'],
18
- encodeSync: encodeSync,
18
+ encodeSync,
19
19
  binary: true,
20
20
  options: {}
21
21
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/arrow-writer.ts"],"names":["VERSION","ArrowWriter","name","id","module","version","extensions","mimeTypes","encodeSync","binary","options","data"],"mappings":";;;;;;;AAEA;;AAIA,IAAMA,OAAO,GAAG,2BAAuB,WAAvB,qBAAmD,QAAnE;AAKO,IAAMC,WAAW,GAAG;AACzBC,EAAAA,IAAI,EAAE,cADmB;AAEzBC,EAAAA,EAAE,EAAE,OAFqB;AAGzBC,EAAAA,MAAM,EAAE,OAHiB;AAIzBC,EAAAA,OAAO,EAAEL,OAJgB;AAKzBM,EAAAA,UAAU,EAAE,CAAC,OAAD,EAAU,SAAV,CALa;AAMzBC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CANc;AAOzBC,EAAAA,UAAU,EAAVA,UAPyB;AAQzBC,EAAAA,MAAM,EAAE,IARiB;AASzBC,EAAAA,OAAO,EAAE;AATgB,CAApB;;;AAYP,SAASF,UAAT,CAAoBG,IAApB,EAA0BD,OAA1B,EAAwD;AACtD,SAAO,kCAAgBC,IAAhB,CAAP;AACD","sourcesContent":["// import type {Writer} from '@loaders.gl/loader-utils';\nimport type {WriterOptions} from '@loaders.gl/loader-utils';\nimport {encodeArrowSync} from './lib/encode-arrow';\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\ntype ArrowWriterOptions = WriterOptions;\n\n/** Apache Arrow writer */\nexport const ArrowWriter = {\n name: 'Apache Arrow',\n id: 'arrow',\n module: 'arrow',\n version: VERSION,\n extensions: ['arrow', 'feather'],\n mimeTypes: ['application/octet-stream'],\n encodeSync,\n binary: true,\n options: {}\n};\n\nfunction encodeSync(data, options?: ArrowWriterOptions) {\n return encodeArrowSync(data);\n}\n"],"file":"arrow-writer.js"}
1
+ {"version":3,"sources":["../../src/arrow-writer.ts"],"names":["VERSION","ArrowWriter","name","id","module","version","extensions","mimeTypes","encodeSync","binary","options","data"],"mappings":";;;;;;;AAEA;;AAIA,MAAMA,OAAO,GAAG,0BAAuB,WAAvB,oBAAmD,QAAnE;AAKO,MAAMC,WAAW,GAAG;AACzBC,EAAAA,IAAI,EAAE,cADmB;AAEzBC,EAAAA,EAAE,EAAE,OAFqB;AAGzBC,EAAAA,MAAM,EAAE,OAHiB;AAIzBC,EAAAA,OAAO,EAAEL,OAJgB;AAKzBM,EAAAA,UAAU,EAAE,CAAC,OAAD,EAAU,SAAV,CALa;AAMzBC,EAAAA,SAAS,EAAE,CAAC,0BAAD,CANc;AAOzBC,EAAAA,UAPyB;AAQzBC,EAAAA,MAAM,EAAE,IARiB;AASzBC,EAAAA,OAAO,EAAE;AATgB,CAApB;;;AAYP,SAASF,UAAT,CAAoBG,IAApB,EAA0BD,OAA1B,EAAwD;AACtD,SAAO,kCAAgBC,IAAhB,CAAP;AACD","sourcesContent":["// import type {Writer} from '@loaders.gl/loader-utils';\nimport type {WriterOptions} from '@loaders.gl/loader-utils';\nimport {encodeArrowSync} from './lib/encode-arrow';\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\ntype ArrowWriterOptions = WriterOptions;\n\n/** Apache Arrow writer */\nexport const ArrowWriter = {\n name: 'Apache Arrow',\n id: 'arrow',\n module: 'arrow',\n version: VERSION,\n extensions: ['arrow', 'feather'],\n mimeTypes: ['application/octet-stream'],\n encodeSync,\n binary: true,\n options: {}\n};\n\nfunction encodeSync(data, options?: ArrowWriterOptions) {\n return encodeArrowSync(data);\n}\n"],"file":"arrow-writer.js"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var moduleExports = require('./index');
3
+ const moduleExports = require('./index');
4
4
 
5
5
  globalThis.loaders = globalThis.loaders || {};
6
6
  module.exports = Object.assign(globalThis.loaders, moduleExports);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/bundle.ts"],"names":["moduleExports","require","globalThis","loaders","module","exports","Object","assign"],"mappings":";;AACA,IAAMA,aAAa,GAAGC,OAAO,CAAC,SAAD,CAA7B;;AACAC,UAAU,CAACC,OAAX,GAAqBD,UAAU,CAACC,OAAX,IAAsB,EAA3C;AACAC,MAAM,CAACC,OAAP,GAAiBC,MAAM,CAACC,MAAP,CAAcL,UAAU,CAACC,OAAzB,EAAkCH,aAAlC,CAAjB","sourcesContent":["// @ts-nocheck\nconst moduleExports = require('./index');\nglobalThis.loaders = globalThis.loaders || {};\nmodule.exports = Object.assign(globalThis.loaders, moduleExports);\n"],"file":"bundle.js"}
1
+ {"version":3,"sources":["../../src/bundle.ts"],"names":["moduleExports","require","globalThis","loaders","module","exports","Object","assign"],"mappings":";;AACA,MAAMA,aAAa,GAAGC,OAAO,CAAC,SAAD,CAA7B;;AACAC,UAAU,CAACC,OAAX,GAAqBD,UAAU,CAACC,OAAX,IAAsB,EAA3C;AACAC,MAAM,CAACC,OAAP,GAAiBC,MAAM,CAACC,MAAP,CAAcL,UAAU,CAACC,OAAzB,EAAkCH,aAAlC,CAAjB","sourcesContent":["// @ts-nocheck\nconst moduleExports = require('./index');\nglobalThis.loaders = globalThis.loaders || {};\nmodule.exports = Object.assign(globalThis.loaders, moduleExports);\n"],"file":"bundle.js"}
package/dist/es5/index.js CHANGED
@@ -7,30 +7,24 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  Object.defineProperty(exports, "ArrowWorkerLoader", {
9
9
  enumerable: true,
10
- get: function get() {
10
+ get: function () {
11
11
  return _arrowLoader.ArrowLoader;
12
12
  }
13
13
  });
14
14
  Object.defineProperty(exports, "VECTOR_TYPES", {
15
15
  enumerable: true,
16
- get: function get() {
16
+ get: function () {
17
17
  return _types.VECTOR_TYPES;
18
18
  }
19
19
  });
20
20
  Object.defineProperty(exports, "ArrowWriter", {
21
21
  enumerable: true,
22
- get: function get() {
22
+ get: function () {
23
23
  return _arrowWriter.ArrowWriter;
24
24
  }
25
25
  });
26
26
  exports._typecheckArrowLoader = exports.ArrowLoader = void 0;
27
27
 
28
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
29
-
30
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
31
-
32
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
33
-
34
28
  var _arrowLoader = require("./arrow-loader");
35
29
 
36
30
  var _parseArrowSync = _interopRequireDefault(require("./lib/parse-arrow-sync"));
@@ -45,40 +39,13 @@ var _types = require("./types");
45
39
 
46
40
  var _arrowWriter = require("./arrow-writer");
47
41
 
48
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
49
-
50
- 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; }
51
-
52
42
  _schema.TableBatchBuilder.ArrowBatch = _arrowTableBatch.default;
53
-
54
- var ArrowLoader = _objectSpread(_objectSpread({}, _arrowLoader.ArrowLoader), {}, {
55
- parse: function () {
56
- var _parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(arraybuffer, options) {
57
- return _regenerator.default.wrap(function _callee$(_context) {
58
- while (1) {
59
- switch (_context.prev = _context.next) {
60
- case 0:
61
- return _context.abrupt("return", (0, _parseArrowSync.default)(arraybuffer, options));
62
-
63
- case 1:
64
- case "end":
65
- return _context.stop();
66
- }
67
- }
68
- }, _callee);
69
- }));
70
-
71
- function parse(_x, _x2) {
72
- return _parse.apply(this, arguments);
73
- }
74
-
75
- return parse;
76
- }(),
43
+ const ArrowLoader = { ..._arrowLoader.ArrowLoader,
44
+ parse: async (arraybuffer, options) => (0, _parseArrowSync.default)(arraybuffer, options),
77
45
  parseSync: _parseArrowSync.default,
78
46
  parseInBatches: _parseArrowInBatches.parseArrowInBatches
79
- });
80
-
47
+ };
81
48
  exports.ArrowLoader = ArrowLoader;
82
- var _typecheckArrowLoader = ArrowLoader;
49
+ const _typecheckArrowLoader = ArrowLoader;
83
50
  exports._typecheckArrowLoader = _typecheckArrowLoader;
84
51
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":["TableBatchBuilder","ArrowBatch","ArrowTableBatchAggregator","ArrowLoader","ArrowWorkerLoader","parse","arraybuffer","options","parseSync","parseInBatches","parseArrowInBatches","_typecheckArrowLoader"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEA;;AACA;;AAMA;;AAIA;;;;;;AAPAA,0BAAkBC,UAAlB,GAA+BC,wBAA/B;;AAeO,IAAMC,WAA6B,mCACrCC,wBADqC;AAExCC,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAiCC,OAAjC;AAAA;AAAA;AAAA;AAAA;AAAA,+CACL,6BAAUD,WAAV,EAAuBC,OAAvB,CADK;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAFmC;AAIxCC,EAAAA,SAAS,EAATA,uBAJwC;AAKxCC,EAAAA,cAAc,EAAEC;AALwB,EAAnC;;;AAQA,IAAMC,qBAAuC,GAAGR,WAAhD","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport type {ArrowLoaderOptions} from './arrow-loader';\nimport {ArrowLoader as ArrowWorkerLoader} from './arrow-loader';\nimport parseSync from './lib/parse-arrow-sync';\nimport {parseArrowInBatches} from './lib/parse-arrow-in-batches';\n\nimport {TableBatchBuilder} from '@loaders.gl/schema';\nimport ArrowTableBatchAggregator from './lib/arrow-table-batch';\n\n// Make the ArrowBatch type available\nTableBatchBuilder.ArrowBatch = ArrowTableBatchAggregator;\n\n// Types\nexport {VECTOR_TYPES} from './types';\n\n// Arrow writer\n\nexport {ArrowWriter} from './arrow-writer';\n\n// Arrow loader\n\nexport type {ArrowLoaderOptions};\nexport {ArrowWorkerLoader};\n\n/** ArrowJS table loader */\nexport const ArrowLoader: LoaderWithParser = {\n ...ArrowWorkerLoader,\n parse: async (arraybuffer: ArrayBuffer, options?: ArrowLoaderOptions) =>\n parseSync(arraybuffer, options),\n parseSync,\n parseInBatches: parseArrowInBatches\n};\n\nexport const _typecheckArrowLoader: LoaderWithParser = ArrowLoader;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.ts"],"names":["TableBatchBuilder","ArrowBatch","ArrowTableBatchAggregator","ArrowLoader","ArrowWorkerLoader","parse","arraybuffer","options","parseSync","parseInBatches","parseArrowInBatches","_typecheckArrowLoader"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEA;;AACA;;AAMA;;AAIA;;AAPAA,0BAAkBC,UAAlB,GAA+BC,wBAA/B;AAeO,MAAMC,WAA6B,GAAG,EAC3C,GAAGC,wBADwC;AAE3CC,EAAAA,KAAK,EAAE,OAAOC,WAAP,EAAiCC,OAAjC,KACL,6BAAUD,WAAV,EAAuBC,OAAvB,CAHyC;AAI3CC,EAAAA,SAAS,EAATA,uBAJ2C;AAK3CC,EAAAA,cAAc,EAAEC;AAL2B,CAAtC;;AAQA,MAAMC,qBAAuC,GAAGR,WAAhD","sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport type {ArrowLoaderOptions} from './arrow-loader';\nimport {ArrowLoader as ArrowWorkerLoader} from './arrow-loader';\nimport parseSync from './lib/parse-arrow-sync';\nimport {parseArrowInBatches} from './lib/parse-arrow-in-batches';\n\nimport {TableBatchBuilder} from '@loaders.gl/schema';\nimport ArrowTableBatchAggregator from './lib/arrow-table-batch';\n\n// Make the ArrowBatch type available\nTableBatchBuilder.ArrowBatch = ArrowTableBatchAggregator;\n\n// Types\nexport {VECTOR_TYPES} from './types';\n\n// Arrow writer\n\nexport {ArrowWriter} from './arrow-writer';\n\n// Arrow loader\n\nexport type {ArrowLoaderOptions};\nexport {ArrowWorkerLoader};\n\n/** ArrowJS table loader */\nexport const ArrowLoader: LoaderWithParser = {\n ...ArrowWorkerLoader,\n parse: async (arraybuffer: ArrayBuffer, options?: ArrowLoaderOptions) =>\n parseSync(arraybuffer, options),\n parseSync,\n parseInBatches: parseArrowInBatches\n};\n\nexport const _typecheckArrowLoader: LoaderWithParser = ArrowLoader;\n"],"file":"index.js"}
@@ -7,85 +7,50 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
11
 
26
12
  var _apacheArrow = require("apache-arrow");
27
13
 
28
14
  var _schema = require("@loaders.gl/schema");
29
15
 
30
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
31
-
32
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
33
-
34
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
35
-
36
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
37
-
38
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
-
40
- var ArrowTableBatchAggregator = function (_ColumnarTableBatchAg) {
41
- (0, _inherits2.default)(ArrowTableBatchAggregator, _ColumnarTableBatchAg);
42
-
43
- var _super = _createSuper(ArrowTableBatchAggregator);
16
+ class ArrowTableBatchAggregator extends _schema.ColumnarTableBatchAggregator {
17
+ constructor(schema, options) {
18
+ super(schema, options);
19
+ (0, _defineProperty2.default)(this, "arrowSchema", void 0);
20
+ this.arrowSchema = null;
21
+ }
44
22
 
45
- function ArrowTableBatchAggregator(schema, options) {
46
- var _this;
23
+ getBatch() {
24
+ const batch = super.getBatch();
25
+
26
+ if (batch) {
27
+ this.arrowSchema = this.arrowSchema || getArrowSchema(batch.schema);
28
+ const arrowVectors = getArrowVectors(this.arrowSchema, batch.data);
29
+ const recordBatch = new _apacheArrow.RecordBatch(this.arrowSchema, batch.length, arrowVectors);
30
+ return {
31
+ shape: 'arrow-table',
32
+ batchType: 'data',
33
+ data: recordBatch,
34
+ length: batch.length
35
+ };
36
+ }
47
37
 
48
- (0, _classCallCheck2.default)(this, ArrowTableBatchAggregator);
49
- _this = _super.call(this, schema, options);
50
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "arrowSchema", void 0);
51
- _this.arrowSchema = null;
52
- return _this;
38
+ return null;
53
39
  }
54
40
 
55
- (0, _createClass2.default)(ArrowTableBatchAggregator, [{
56
- key: "getBatch",
57
- value: function getBatch() {
58
- var batch = (0, _get2.default)((0, _getPrototypeOf2.default)(ArrowTableBatchAggregator.prototype), "getBatch", this).call(this);
59
-
60
- if (batch) {
61
- this.arrowSchema = this.arrowSchema || getArrowSchema(batch.schema);
62
- var arrowVectors = getArrowVectors(this.arrowSchema, batch.data);
63
- var recordBatch = new _apacheArrow.RecordBatch(this.arrowSchema, batch.length, arrowVectors);
64
- return {
65
- shape: 'arrow-table',
66
- batchType: 'data',
67
- data: recordBatch,
68
- length: batch.length
69
- };
70
- }
71
-
72
- return null;
73
- }
74
- }]);
75
- return ArrowTableBatchAggregator;
76
- }(_schema.ColumnarTableBatchAggregator);
41
+ }
77
42
 
78
43
  exports.default = ArrowTableBatchAggregator;
79
44
 
80
45
  function getArrowSchema(schema) {
81
- var arrowFields = [];
46
+ const arrowFields = [];
82
47
 
83
- for (var key in schema) {
84
- var field = schema[key];
48
+ for (const key in schema) {
49
+ const field = schema[key];
85
50
 
86
51
  if (field.type === Float32Array) {
87
- var metadata = field;
88
- var arrowField = new _apacheArrow.Field(field.name, new _apacheArrow.Float32(), field.nullable, metadata);
52
+ const metadata = field;
53
+ const arrowField = new _apacheArrow.Field(field.name, new _apacheArrow.Float32(), field.nullable, metadata);
89
54
  arrowFields.push(arrowField);
90
55
  }
91
56
  }
@@ -98,26 +63,16 @@ function getArrowSchema(schema) {
98
63
  }
99
64
 
100
65
  function getArrowVectors(arrowSchema, data) {
101
- var arrowVectors = [];
102
-
103
- var _iterator = _createForOfIteratorHelper(arrowSchema.fields),
104
- _step;
66
+ const arrowVectors = [];
105
67
 
106
- try {
107
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
108
- var field = _step.value;
109
- var vector = data[field.name];
68
+ for (const field of arrowSchema.fields) {
69
+ const vector = data[field.name];
110
70
 
111
- if (vector instanceof Float32Array) {
112
- var arrowVector = _apacheArrow.Float32Vector.from(vector);
71
+ if (vector instanceof Float32Array) {
72
+ const arrowVector = _apacheArrow.Float32Vector.from(vector);
113
73
 
114
- arrowVectors.push(arrowVector);
115
- }
74
+ arrowVectors.push(arrowVector);
116
75
  }
117
- } catch (err) {
118
- _iterator.e(err);
119
- } finally {
120
- _iterator.f();
121
76
  }
122
77
 
123
78
  if (arrowSchema.fields.length !== arrowVectors.length) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/arrow-table-batch.ts"],"names":["ArrowTableBatchAggregator","schema","options","arrowSchema","batch","getArrowSchema","arrowVectors","getArrowVectors","data","recordBatch","RecordBatch","length","shape","batchType","ColumnarTableBatchAggregator","arrowFields","key","field","type","Float32Array","metadata","arrowField","Field","name","Float32","nullable","push","Error","Schema","fields","vector","arrowVector","Float32Vector","from"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AACA;;;;;;;;;;;;IAEqBA,yB;;;;;AAGnB,qCAAYC,MAAZ,EAAoBC,OAApB,EAA6B;AAAA;;AAAA;AAC3B,8BAAMD,MAAN,EAAcC,OAAd;AAD2B;AAE3B,UAAKC,WAAL,GAAmB,IAAnB;AAF2B;AAG5B;;;;WAED,oBAAmC;AACjC,UAAMC,KAAK,sHAAX;;AACA,UAAIA,KAAJ,EAAW;AAET,aAAKD,WAAL,GAAmB,KAAKA,WAAL,IAAoBE,cAAc,CAACD,KAAK,CAACH,MAAP,CAArD;AAEA,YAAMK,YAAY,GAAGC,eAAe,CAAC,KAAKJ,WAAN,EAAmBC,KAAK,CAACI,IAAzB,CAApC;AAGA,YAAMC,WAAW,GAAG,IAAIC,wBAAJ,CAAgB,KAAKP,WAArB,EAAkCC,KAAK,CAACO,MAAxC,EAAgDL,YAAhD,CAApB;AACA,eAAO;AACLM,UAAAA,KAAK,EAAE,aADF;AAELC,UAAAA,SAAS,EAAE,MAFN;AAGLL,UAAAA,IAAI,EAAEC,WAHD;AAILE,UAAAA,MAAM,EAAEP,KAAK,CAACO;AAJT,SAAP;AAMD;;AAED,aAAO,IAAP;AACD;;;EA3BoDG,oC;;;;AA+BvD,SAAST,cAAT,CAAwBJ,MAAxB,EAAgC;AAC9B,MAAMc,WAAoB,GAAG,EAA7B;;AACA,OAAK,IAAMC,GAAX,IAAkBf,MAAlB,EAA0B;AACxB,QAAMgB,KAAK,GAAGhB,MAAM,CAACe,GAAD,CAApB;;AACA,QAAIC,KAAK,CAACC,IAAN,KAAeC,YAAnB,EAAiC;AAC/B,UAAMC,QAAQ,GAAGH,KAAjB;AAEA,UAAMI,UAAU,GAAG,IAAIC,kBAAJ,CAAUL,KAAK,CAACM,IAAhB,EAAsB,IAAIC,oBAAJ,EAAtB,EAAqCP,KAAK,CAACQ,QAA3C,EAAqDL,QAArD,CAAnB;AACAL,MAAAA,WAAW,CAACW,IAAZ,CAAiBL,UAAjB;AACD;AACF;;AACD,MAAIN,WAAW,CAACJ,MAAZ,KAAuB,CAA3B,EAA8B;AAC5B,UAAM,IAAIgB,KAAJ,CAAU,6BAAV,CAAN;AACD;;AAED,SAAO,IAAIC,mBAAJ,CAAWb,WAAX,CAAP;AACD;;AAGD,SAASR,eAAT,CAAyBJ,WAAzB,EAAsCK,IAAtC,EAA4C;AAC1C,MAAMF,YAAmB,GAAG,EAA5B;;AAD0C,6CAEtBH,WAAW,CAAC0B,MAFU;AAAA;;AAAA;AAE1C,wDAAwC;AAAA,UAA7BZ,KAA6B;AACtC,UAAMa,MAAM,GAAGtB,IAAI,CAACS,KAAK,CAACM,IAAP,CAAnB;;AACA,UAAIO,MAAM,YAAYX,YAAtB,EAAoC;AAClC,YAAMY,WAAW,GAAGC,2BAAcC,IAAd,CAAmBH,MAAnB,CAApB;;AACAxB,QAAAA,YAAY,CAACoB,IAAb,CAAkBK,WAAlB;AACD;AACF;AARyC;AAAA;AAAA;AAAA;AAAA;;AAS1C,MAAI5B,WAAW,CAAC0B,MAAZ,CAAmBlB,MAAnB,KAA8BL,YAAY,CAACK,MAA/C,EAAuD;AACrD,UAAM,IAAIgB,KAAJ,CAAU,oCAAV,CAAN;AACD;;AACD,SAAOrB,YAAP;AACD","sourcesContent":["import type {ArrowTableBatch} from '@loaders.gl/schema';\nimport {Schema, Field, RecordBatch, Float32Vector, Float32} from 'apache-arrow';\nimport {ColumnarTableBatchAggregator} from '@loaders.gl/schema';\n\nexport default class ArrowTableBatchAggregator extends ColumnarTableBatchAggregator {\n arrowSchema: Schema | null;\n\n constructor(schema, options) {\n super(schema, options);\n this.arrowSchema = null;\n }\n\n getBatch(): ArrowTableBatch | null {\n const batch = super.getBatch();\n if (batch) {\n // Get the arrow schema\n this.arrowSchema = this.arrowSchema || getArrowSchema(batch.schema);\n // Get arrow format vectors\n const arrowVectors = getArrowVectors(this.arrowSchema, batch.data);\n // Create the record batch\n // new RecordBatch(schema, numRows, vectors, ...);\n const recordBatch = new RecordBatch(this.arrowSchema, batch.length, arrowVectors);\n return {\n shape: 'arrow-table',\n batchType: 'data',\n data: recordBatch,\n length: batch.length\n };\n }\n\n return null;\n }\n}\n\n// Convert from a simple loaders.gl schema to an Arrow schema\nfunction getArrowSchema(schema) {\n const arrowFields: Field[] = [];\n for (const key in schema) {\n const field = schema[key];\n if (field.type === Float32Array) {\n const metadata = field; // just store the original field as metadata\n // arrow: new Field(name, nullable, metadata)\n const arrowField = new Field(field.name, new Float32(), field.nullable, metadata);\n arrowFields.push(arrowField);\n }\n }\n if (arrowFields.length === 0) {\n throw new Error('No arrow convertible fields');\n }\n\n return new Schema(arrowFields);\n}\n\n// Convert from simple loaders.gl arrays to arrow vectors\nfunction getArrowVectors(arrowSchema, data) {\n const arrowVectors: any[] = [];\n for (const field of arrowSchema.fields) {\n const vector = data[field.name];\n if (vector instanceof Float32Array) {\n const arrowVector = Float32Vector.from(vector);\n arrowVectors.push(arrowVector);\n }\n }\n if (arrowSchema.fields.length !== arrowVectors.length) {\n throw new Error('Some columns not arrow convertible');\n }\n return arrowVectors;\n}\n"],"file":"arrow-table-batch.js"}
1
+ {"version":3,"sources":["../../../src/lib/arrow-table-batch.ts"],"names":["ArrowTableBatchAggregator","ColumnarTableBatchAggregator","constructor","schema","options","arrowSchema","getBatch","batch","getArrowSchema","arrowVectors","getArrowVectors","data","recordBatch","RecordBatch","length","shape","batchType","arrowFields","key","field","type","Float32Array","metadata","arrowField","Field","name","Float32","nullable","push","Error","Schema","fields","vector","arrowVector","Float32Vector","from"],"mappings":";;;;;;;;;;;AACA;;AACA;;AAEe,MAAMA,yBAAN,SAAwCC,oCAAxC,CAAqE;AAGlFC,EAAAA,WAAW,CAACC,MAAD,EAASC,OAAT,EAAkB;AAC3B,UAAMD,MAAN,EAAcC,OAAd;AAD2B;AAE3B,SAAKC,WAAL,GAAmB,IAAnB;AACD;;AAEDC,EAAAA,QAAQ,GAA2B;AACjC,UAAMC,KAAK,GAAG,MAAMD,QAAN,EAAd;;AACA,QAAIC,KAAJ,EAAW;AAET,WAAKF,WAAL,GAAmB,KAAKA,WAAL,IAAoBG,cAAc,CAACD,KAAK,CAACJ,MAAP,CAArD;AAEA,YAAMM,YAAY,GAAGC,eAAe,CAAC,KAAKL,WAAN,EAAmBE,KAAK,CAACI,IAAzB,CAApC;AAGA,YAAMC,WAAW,GAAG,IAAIC,wBAAJ,CAAgB,KAAKR,WAArB,EAAkCE,KAAK,CAACO,MAAxC,EAAgDL,YAAhD,CAApB;AACA,aAAO;AACLM,QAAAA,KAAK,EAAE,aADF;AAELC,QAAAA,SAAS,EAAE,MAFN;AAGLL,QAAAA,IAAI,EAAEC,WAHD;AAILE,QAAAA,MAAM,EAAEP,KAAK,CAACO;AAJT,OAAP;AAMD;;AAED,WAAO,IAAP;AACD;;AA3BiF;;;;AA+BpF,SAASN,cAAT,CAAwBL,MAAxB,EAAgC;AAC9B,QAAMc,WAAoB,GAAG,EAA7B;;AACA,OAAK,MAAMC,GAAX,IAAkBf,MAAlB,EAA0B;AACxB,UAAMgB,KAAK,GAAGhB,MAAM,CAACe,GAAD,CAApB;;AACA,QAAIC,KAAK,CAACC,IAAN,KAAeC,YAAnB,EAAiC;AAC/B,YAAMC,QAAQ,GAAGH,KAAjB;AAEA,YAAMI,UAAU,GAAG,IAAIC,kBAAJ,CAAUL,KAAK,CAACM,IAAhB,EAAsB,IAAIC,oBAAJ,EAAtB,EAAqCP,KAAK,CAACQ,QAA3C,EAAqDL,QAArD,CAAnB;AACAL,MAAAA,WAAW,CAACW,IAAZ,CAAiBL,UAAjB;AACD;AACF;;AACD,MAAIN,WAAW,CAACH,MAAZ,KAAuB,CAA3B,EAA8B;AAC5B,UAAM,IAAIe,KAAJ,CAAU,6BAAV,CAAN;AACD;;AAED,SAAO,IAAIC,mBAAJ,CAAWb,WAAX,CAAP;AACD;;AAGD,SAASP,eAAT,CAAyBL,WAAzB,EAAsCM,IAAtC,EAA4C;AAC1C,QAAMF,YAAmB,GAAG,EAA5B;;AACA,OAAK,MAAMU,KAAX,IAAoBd,WAAW,CAAC0B,MAAhC,EAAwC;AACtC,UAAMC,MAAM,GAAGrB,IAAI,CAACQ,KAAK,CAACM,IAAP,CAAnB;;AACA,QAAIO,MAAM,YAAYX,YAAtB,EAAoC;AAClC,YAAMY,WAAW,GAAGC,2BAAcC,IAAd,CAAmBH,MAAnB,CAApB;;AACAvB,MAAAA,YAAY,CAACmB,IAAb,CAAkBK,WAAlB;AACD;AACF;;AACD,MAAI5B,WAAW,CAAC0B,MAAZ,CAAmBjB,MAAnB,KAA8BL,YAAY,CAACK,MAA/C,EAAuD;AACrD,UAAM,IAAIe,KAAJ,CAAU,oCAAV,CAAN;AACD;;AACD,SAAOpB,YAAP;AACD","sourcesContent":["import type {ArrowTableBatch} from '@loaders.gl/schema';\nimport {Schema, Field, RecordBatch, Float32Vector, Float32} from 'apache-arrow';\nimport {ColumnarTableBatchAggregator} from '@loaders.gl/schema';\n\nexport default class ArrowTableBatchAggregator extends ColumnarTableBatchAggregator {\n arrowSchema: Schema | null;\n\n constructor(schema, options) {\n super(schema, options);\n this.arrowSchema = null;\n }\n\n getBatch(): ArrowTableBatch | null {\n const batch = super.getBatch();\n if (batch) {\n // Get the arrow schema\n this.arrowSchema = this.arrowSchema || getArrowSchema(batch.schema);\n // Get arrow format vectors\n const arrowVectors = getArrowVectors(this.arrowSchema, batch.data);\n // Create the record batch\n // new RecordBatch(schema, numRows, vectors, ...);\n const recordBatch = new RecordBatch(this.arrowSchema, batch.length, arrowVectors);\n return {\n shape: 'arrow-table',\n batchType: 'data',\n data: recordBatch,\n length: batch.length\n };\n }\n\n return null;\n }\n}\n\n// Convert from a simple loaders.gl schema to an Arrow schema\nfunction getArrowSchema(schema) {\n const arrowFields: Field[] = [];\n for (const key in schema) {\n const field = schema[key];\n if (field.type === Float32Array) {\n const metadata = field; // just store the original field as metadata\n // arrow: new Field(name, nullable, metadata)\n const arrowField = new Field(field.name, new Float32(), field.nullable, metadata);\n arrowFields.push(arrowField);\n }\n }\n if (arrowFields.length === 0) {\n throw new Error('No arrow convertible fields');\n }\n\n return new Schema(arrowFields);\n}\n\n// Convert from simple loaders.gl arrays to arrow vectors\nfunction getArrowVectors(arrowSchema, data) {\n const arrowVectors: any[] = [];\n for (const field of arrowSchema.fields) {\n const vector = data[field.name];\n if (vector instanceof Float32Array) {\n const arrowVector = Float32Vector.from(vector);\n arrowVectors.push(arrowVector);\n }\n }\n if (arrowSchema.fields.length !== arrowVectors.length) {\n throw new Error('Some columns not arrow convertible');\n }\n return arrowVectors;\n}\n"],"file":"arrow-table-batch.js"}
@@ -9,35 +9,19 @@ var _apacheArrow = require("apache-arrow");
9
9
 
10
10
  var _types = require("../types");
11
11
 
12
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
13
-
14
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
15
-
16
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
17
-
18
12
  function encodeArrowSync(data) {
19
- var vectors = [];
20
- var arrayNames = [];
21
-
22
- var _iterator = _createForOfIteratorHelper(data),
23
- _step;
24
-
25
- try {
26
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
27
- var arrayData = _step.value;
28
- arrayNames.push(arrayData.name);
29
- var arrayVector = createVector(arrayData.array, arrayData.type);
30
- vectors.push(arrayVector);
31
- }
32
- } catch (err) {
33
- _iterator.e(err);
34
- } finally {
35
- _iterator.f();
13
+ const vectors = [];
14
+ const arrayNames = [];
15
+
16
+ for (const arrayData of data) {
17
+ arrayNames.push(arrayData.name);
18
+ const arrayVector = createVector(arrayData.array, arrayData.type);
19
+ vectors.push(arrayVector);
36
20
  }
37
21
 
38
- var table = _apacheArrow.Table.new(vectors, arrayNames);
22
+ const table = _apacheArrow.Table.new(vectors, arrayNames);
39
23
 
40
- var arrowBuffer = table.serialize();
24
+ const arrowBuffer = table.serialize();
41
25
  return arrowBuffer;
42
26
  }
43
27
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/encode-arrow.ts"],"names":["encodeArrowSync","data","vectors","arrayNames","arrayData","push","name","arrayVector","createVector","array","type","table","Table","new","arrowBuffer","serialize","VECTOR_TYPES","DATE","DateVector","from","FLOAT","FloatVector"],"mappings":";;;;;;;AAAA;;AACA;;;;;;;;AAeO,SAASA,eAAT,CAAyBC,IAAzB,EAA2D;AAChE,MAAMC,OAAc,GAAG,EAAvB;AACA,MAAMC,UAAoB,GAAG,EAA7B;;AAFgE,6CAGxCF,IAHwC;AAAA;;AAAA;AAGhE,wDAA8B;AAAA,UAAnBG,SAAmB;AAC5BD,MAAAA,UAAU,CAACE,IAAX,CAAgBD,SAAS,CAACE,IAA1B;AACA,UAAMC,WAAW,GAAGC,YAAY,CAACJ,SAAS,CAACK,KAAX,EAAkBL,SAAS,CAACM,IAA5B,CAAhC;AACAR,MAAAA,OAAO,CAACG,IAAR,CAAaE,WAAb;AACD;AAP+D;AAAA;AAAA;AAAA;AAAA;;AAQhE,MAAMI,KAAK,GAAGC,mBAAMC,GAAN,CAAUX,OAAV,EAAmBC,UAAnB,CAAd;;AACA,MAAMW,WAAW,GAAGH,KAAK,CAACI,SAAN,EAApB;AACA,SAAOD,WAAP;AACD;;AAQD,SAASN,YAAT,CAAsBC,KAAtB,EAA6BC,IAA7B,EAAmC;AACjC,UAAQA,IAAR;AACE,SAAKM,oBAAaC,IAAlB;AACE,aAAOC,wBAAWC,IAAX,CAAgBV,KAAhB,CAAP;;AACF,SAAKO,oBAAaI,KAAlB;AACA;AACE,aAAOC,yBAAYF,IAAZ,CAAiBV,KAAjB,CAAP;AALJ;AAOD","sourcesContent":["import {Table, FloatVector, DateVector} from 'apache-arrow';\nimport {AnyArrayType, VECTOR_TYPES} from '../types';\n\ntype ColumnarTable = {\n name: string;\n array: AnyArrayType;\n type: number;\n}[];\n\n/**\n * Encodes set of arrays into the Apache Arrow columnar format\n * https://arrow.apache.org/docs/format/Columnar.html#ipc-file-format\n * @param data - columns data\n * @param options - the writer options\n * @returns - encoded ArrayBuffer\n */\nexport function encodeArrowSync(data: ColumnarTable): ArrayBuffer {\n const vectors: any[] = [];\n const arrayNames: string[] = [];\n for (const arrayData of data) {\n arrayNames.push(arrayData.name);\n const arrayVector = createVector(arrayData.array, arrayData.type);\n vectors.push(arrayVector);\n }\n const table = Table.new(vectors, arrayNames);\n const arrowBuffer = table.serialize();\n return arrowBuffer;\n}\n\n/**\n * Create Arrow Vector from given data and vector type\n * @param array {import('../types').AnyArrayType} - columns data\n * @param type {number} - the writer options\n * @return a vector of one of vector's types defined in the Apache Arrow library\n */\nfunction createVector(array, type) {\n switch (type) {\n case VECTOR_TYPES.DATE:\n return DateVector.from(array);\n case VECTOR_TYPES.FLOAT:\n default:\n return FloatVector.from(array);\n }\n}\n"],"file":"encode-arrow.js"}
1
+ {"version":3,"sources":["../../../src/lib/encode-arrow.ts"],"names":["encodeArrowSync","data","vectors","arrayNames","arrayData","push","name","arrayVector","createVector","array","type","table","Table","new","arrowBuffer","serialize","VECTOR_TYPES","DATE","DateVector","from","FLOAT","FloatVector"],"mappings":";;;;;;;AAAA;;AACA;;AAeO,SAASA,eAAT,CAAyBC,IAAzB,EAA2D;AAChE,QAAMC,OAAc,GAAG,EAAvB;AACA,QAAMC,UAAoB,GAAG,EAA7B;;AACA,OAAK,MAAMC,SAAX,IAAwBH,IAAxB,EAA8B;AAC5BE,IAAAA,UAAU,CAACE,IAAX,CAAgBD,SAAS,CAACE,IAA1B;AACA,UAAMC,WAAW,GAAGC,YAAY,CAACJ,SAAS,CAACK,KAAX,EAAkBL,SAAS,CAACM,IAA5B,CAAhC;AACAR,IAAAA,OAAO,CAACG,IAAR,CAAaE,WAAb;AACD;;AACD,QAAMI,KAAK,GAAGC,mBAAMC,GAAN,CAAUX,OAAV,EAAmBC,UAAnB,CAAd;;AACA,QAAMW,WAAW,GAAGH,KAAK,CAACI,SAAN,EAApB;AACA,SAAOD,WAAP;AACD;;AAQD,SAASN,YAAT,CAAsBC,KAAtB,EAA6BC,IAA7B,EAAmC;AACjC,UAAQA,IAAR;AACE,SAAKM,oBAAaC,IAAlB;AACE,aAAOC,wBAAWC,IAAX,CAAgBV,KAAhB,CAAP;;AACF,SAAKO,oBAAaI,KAAlB;AACA;AACE,aAAOC,yBAAYF,IAAZ,CAAiBV,KAAjB,CAAP;AALJ;AAOD","sourcesContent":["import {Table, FloatVector, DateVector} from 'apache-arrow';\nimport {AnyArrayType, VECTOR_TYPES} from '../types';\n\ntype ColumnarTable = {\n name: string;\n array: AnyArrayType;\n type: number;\n}[];\n\n/**\n * Encodes set of arrays into the Apache Arrow columnar format\n * https://arrow.apache.org/docs/format/Columnar.html#ipc-file-format\n * @param data - columns data\n * @param options - the writer options\n * @returns - encoded ArrayBuffer\n */\nexport function encodeArrowSync(data: ColumnarTable): ArrayBuffer {\n const vectors: any[] = [];\n const arrayNames: string[] = [];\n for (const arrayData of data) {\n arrayNames.push(arrayData.name);\n const arrayVector = createVector(arrayData.array, arrayData.type);\n vectors.push(arrayVector);\n }\n const table = Table.new(vectors, arrayNames);\n const arrowBuffer = table.serialize();\n return arrowBuffer;\n}\n\n/**\n * Create Arrow Vector from given data and vector type\n * @param array {import('../types').AnyArrayType} - columns data\n * @param type {number} - the writer options\n * @return a vector of one of vector's types defined in the Apache Arrow library\n */\nfunction createVector(array, type) {\n switch (type) {\n case VECTOR_TYPES.DATE:\n return DateVector.from(array);\n case VECTOR_TYPES.FLOAT:\n default:\n return FloatVector.from(array);\n }\n}\n"],"file":"encode-arrow.js"}
@@ -1,196 +1,36 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.parseArrowInBatches = parseArrowInBatches;
9
7
 
10
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/awaitAsyncGenerator"));
13
-
14
- var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
15
-
16
- var _asyncIterator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncIterator"));
17
-
18
8
  var _apacheArrow = require("apache-arrow");
19
9
 
20
10
  function parseArrowInBatches(asyncIterator) {
21
- function makeArrowAsyncIterator() {
22
- return _makeArrowAsyncIterator.apply(this, arguments);
23
- }
24
-
25
- function _makeArrowAsyncIterator() {
26
- _makeArrowAsyncIterator = (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee() {
27
- var readers, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, reader, _iteratorNormalCompletion2, _didIteratorError2, _iteratorError2, _iterator2, _step2, _value2, batch;
28
-
29
- return _regenerator.default.wrap(function _callee$(_context) {
30
- while (1) {
31
- switch (_context.prev = _context.next) {
32
- case 0:
33
- readers = _apacheArrow.RecordBatchReader.readAll(asyncIterator);
34
- _iteratorNormalCompletion = true;
35
- _didIteratorError = false;
36
- _context.prev = 3;
37
- _iterator = (0, _asyncIterator2.default)(readers);
38
-
39
- case 5:
40
- _context.next = 7;
41
- return (0, _awaitAsyncGenerator2.default)(_iterator.next());
42
-
43
- case 7:
44
- _step = _context.sent;
45
- _iteratorNormalCompletion = _step.done;
46
- _context.next = 11;
47
- return (0, _awaitAsyncGenerator2.default)(_step.value);
48
-
49
- case 11:
50
- _value = _context.sent;
51
-
52
- if (_iteratorNormalCompletion) {
53
- _context.next = 52;
54
- break;
55
- }
56
-
57
- reader = _value;
58
- _iteratorNormalCompletion2 = true;
59
- _didIteratorError2 = false;
60
- _context.prev = 16;
61
- _iterator2 = (0, _asyncIterator2.default)(reader);
62
-
63
- case 18:
64
- _context.next = 20;
65
- return (0, _awaitAsyncGenerator2.default)(_iterator2.next());
66
-
67
- case 20:
68
- _step2 = _context.sent;
69
- _iteratorNormalCompletion2 = _step2.done;
70
- _context.next = 24;
71
- return (0, _awaitAsyncGenerator2.default)(_step2.value);
72
-
73
- case 24:
74
- _value2 = _context.sent;
75
-
76
- if (_iteratorNormalCompletion2) {
77
- _context.next = 32;
78
- break;
79
- }
80
-
81
- batch = _value2;
82
- _context.next = 29;
83
- return processBatch(batch);
84
-
85
- case 29:
86
- _iteratorNormalCompletion2 = true;
87
- _context.next = 18;
88
- break;
89
-
90
- case 32:
91
- _context.next = 38;
92
- break;
93
-
94
- case 34:
95
- _context.prev = 34;
96
- _context.t0 = _context["catch"](16);
97
- _didIteratorError2 = true;
98
- _iteratorError2 = _context.t0;
99
-
100
- case 38:
101
- _context.prev = 38;
102
- _context.prev = 39;
103
-
104
- if (!(!_iteratorNormalCompletion2 && _iterator2.return != null)) {
105
- _context.next = 43;
106
- break;
107
- }
108
-
109
- _context.next = 43;
110
- return (0, _awaitAsyncGenerator2.default)(_iterator2.return());
111
-
112
- case 43:
113
- _context.prev = 43;
114
-
115
- if (!_didIteratorError2) {
116
- _context.next = 46;
117
- break;
118
- }
119
-
120
- throw _iteratorError2;
121
-
122
- case 46:
123
- return _context.finish(43);
124
-
125
- case 47:
126
- return _context.finish(38);
127
-
128
- case 48:
129
- return _context.abrupt("break", 52);
130
-
131
- case 49:
132
- _iteratorNormalCompletion = true;
133
- _context.next = 5;
134
- break;
135
-
136
- case 52:
137
- _context.next = 58;
138
- break;
139
-
140
- case 54:
141
- _context.prev = 54;
142
- _context.t1 = _context["catch"](3);
143
- _didIteratorError = true;
144
- _iteratorError = _context.t1;
145
-
146
- case 58:
147
- _context.prev = 58;
148
- _context.prev = 59;
149
-
150
- if (!(!_iteratorNormalCompletion && _iterator.return != null)) {
151
- _context.next = 63;
152
- break;
153
- }
154
-
155
- _context.next = 63;
156
- return (0, _awaitAsyncGenerator2.default)(_iterator.return());
157
-
158
- case 63:
159
- _context.prev = 63;
160
-
161
- if (!_didIteratorError) {
162
- _context.next = 66;
163
- break;
164
- }
165
-
166
- throw _iteratorError;
167
-
168
- case 66:
169
- return _context.finish(63);
11
+ async function* makeArrowAsyncIterator() {
12
+ const readers = _apacheArrow.RecordBatchReader.readAll(asyncIterator);
170
13
 
171
- case 67:
172
- return _context.finish(58);
14
+ for await (const reader of readers) {
15
+ for await (const batch of reader) {
16
+ yield processBatch(batch);
17
+ }
173
18
 
174
- case 68:
175
- case "end":
176
- return _context.stop();
177
- }
178
- }
179
- }, _callee, null, [[3, 54, 58, 68], [16, 34, 38, 48], [39,, 43, 47], [59,, 63, 67]]);
180
- }));
181
- return _makeArrowAsyncIterator.apply(this, arguments);
19
+ break;
20
+ }
182
21
  }
183
22
 
184
23
  return makeArrowAsyncIterator();
185
24
  }
186
25
 
187
26
  function processBatch(batch) {
188
- var values = {
27
+ const values = {
189
28
  metadata: batch.schema.metadata,
190
29
  length: batch.length
191
30
  };
192
- batch.schema.fields.forEach(function (_ref, index) {
193
- var name = _ref.name;
31
+ batch.schema.fields.forEach(({
32
+ name
33
+ }, index) => {
194
34
  values[name] = batch.getChildAt(index).toArray();
195
35
  });
196
36
  return values;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/parse-arrow-in-batches.ts"],"names":["parseArrowInBatches","asyncIterator","makeArrowAsyncIterator","readers","RecordBatchReader","readAll","reader","batch","processBatch","values","metadata","schema","length","fields","forEach","index","name","getChildAt","toArray"],"mappings":";;;;;;;;;;;;;;;;;AACA;;AAKO,SAASA,mBAAT,CACLC,aADK,EAEe;AAAA,WAmBJC,sBAnBI;AAAA;AAAA;;AAAA;AAAA,0FAmBpB;AAAA;;AAAA;AAAA;AAAA;AAAA;AACQC,cAAAA,OADR,GACkBC,+BAAkBC,OAAlB,CAA0BJ,aAA1B,CADlB;AAAA;AAAA;AAAA;AAAA,uDAE6BE,OAF7B;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAEmBG,cAAAA,MAFnB;AAAA;AAAA;AAAA;AAAA,wDAG8BA,MAH9B;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAGqBC,cAAAA,KAHrB;AAAA;AAIM,qBAAMC,YAAY,CAACD,KAAD,CAAlB;;AAJN;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAnBoB;AAAA;AAAA;;AA4BpB,SAAOL,sBAAsB,EAA7B;AACD;;AAED,SAASM,YAAT,CAAsBD,KAAtB,EAA6B;AAC3B,MAAME,MAAM,GAAG;AACbC,IAAAA,QAAQ,EAAEH,KAAK,CAACI,MAAN,CAAaD,QADV;AAEbE,IAAAA,MAAM,EAAEL,KAAK,CAACK;AAFD,GAAf;AAIAL,EAAAA,KAAK,CAACI,MAAN,CAAaE,MAAb,CAAoBC,OAApB,CAA4B,gBAASC,KAAT,EAAmB;AAAA,QAAjBC,IAAiB,QAAjBA,IAAiB;AAC7CP,IAAAA,MAAM,CAACO,IAAD,CAAN,GAAeT,KAAK,CAACU,UAAN,CAAiBF,KAAjB,EAAwBG,OAAxB,EAAf;AACD,GAFD;AAGA,SAAOT,MAAP;AACD","sourcesContent":["// TODO - this import defeats the sophisticated typescript checking in ArrowJS\nimport {RecordBatchReader} from 'apache-arrow';\n// import {isIterable} from '@loaders.gl/core';\n\n/**\n */\nexport function parseArrowInBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n): AsyncIterable<any> {\n // Creates the appropriate RecordBatchReader subclasses from the input\n // This will also close the underlying source in case of early termination or errors\n\n // As an optimization, return a non-async iterator\n /*\n if (isIterable(readers)) {\n function* makeArrowIterator() {\n for (const reader of readers) {\n for (const batch of reader) {\n yield processBatch(batch, reader);\n }\n break; // only processing one stream of batches\n }\n }\n const arrowIterator = makeArrowIterator();\n }\n */\n\n async function* makeArrowAsyncIterator() {\n const readers = RecordBatchReader.readAll(asyncIterator);\n for await (const reader of readers) {\n for await (const batch of reader) {\n yield processBatch(batch);\n }\n break; // only processing one stream of batches\n }\n }\n return makeArrowAsyncIterator();\n}\n\nfunction processBatch(batch) {\n const values = {\n metadata: batch.schema.metadata,\n length: batch.length\n };\n batch.schema.fields.forEach(({name}, index) => {\n values[name] = batch.getChildAt(index).toArray();\n });\n return values;\n}\n"],"file":"parse-arrow-in-batches.js"}
1
+ {"version":3,"sources":["../../../src/lib/parse-arrow-in-batches.ts"],"names":["parseArrowInBatches","asyncIterator","makeArrowAsyncIterator","readers","RecordBatchReader","readAll","reader","batch","processBatch","values","metadata","schema","length","fields","forEach","name","index","getChildAt","toArray"],"mappings":";;;;;;;AACA;;AAKO,SAASA,mBAAT,CACLC,aADK,EAEe;AAmBpB,kBAAgBC,sBAAhB,GAAyC;AACvC,UAAMC,OAAO,GAAGC,+BAAkBC,OAAlB,CAA0BJ,aAA1B,CAAhB;;AACA,eAAW,MAAMK,MAAjB,IAA2BH,OAA3B,EAAoC;AAClC,iBAAW,MAAMI,KAAjB,IAA0BD,MAA1B,EAAkC;AAChC,cAAME,YAAY,CAACD,KAAD,CAAlB;AACD;;AACD;AACD;AACF;;AACD,SAAOL,sBAAsB,EAA7B;AACD;;AAED,SAASM,YAAT,CAAsBD,KAAtB,EAA6B;AAC3B,QAAME,MAAM,GAAG;AACbC,IAAAA,QAAQ,EAAEH,KAAK,CAACI,MAAN,CAAaD,QADV;AAEbE,IAAAA,MAAM,EAAEL,KAAK,CAACK;AAFD,GAAf;AAIAL,EAAAA,KAAK,CAACI,MAAN,CAAaE,MAAb,CAAoBC,OAApB,CAA4B,CAAC;AAACC,IAAAA;AAAD,GAAD,EAASC,KAAT,KAAmB;AAC7CP,IAAAA,MAAM,CAACM,IAAD,CAAN,GAAeR,KAAK,CAACU,UAAN,CAAiBD,KAAjB,EAAwBE,OAAxB,EAAf;AACD,GAFD;AAGA,SAAOT,MAAP;AACD","sourcesContent":["// TODO - this import defeats the sophisticated typescript checking in ArrowJS\nimport {RecordBatchReader} from 'apache-arrow';\n// import {isIterable} from '@loaders.gl/core';\n\n/**\n */\nexport function parseArrowInBatches(\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n): AsyncIterable<any> {\n // Creates the appropriate RecordBatchReader subclasses from the input\n // This will also close the underlying source in case of early termination or errors\n\n // As an optimization, return a non-async iterator\n /*\n if (isIterable(readers)) {\n function* makeArrowIterator() {\n for (const reader of readers) {\n for (const batch of reader) {\n yield processBatch(batch, reader);\n }\n break; // only processing one stream of batches\n }\n }\n const arrowIterator = makeArrowIterator();\n }\n */\n\n async function* makeArrowAsyncIterator() {\n const readers = RecordBatchReader.readAll(asyncIterator);\n for await (const reader of readers) {\n for await (const batch of reader) {\n yield processBatch(batch);\n }\n break; // only processing one stream of batches\n }\n }\n return makeArrowAsyncIterator();\n}\n\nfunction processBatch(batch) {\n const values = {\n metadata: batch.schema.metadata,\n length: batch.length\n };\n batch.schema.fields.forEach(({name}, index) => {\n values[name] = batch.getChildAt(index).toArray();\n });\n return values;\n}\n"],"file":"parse-arrow-in-batches.js"}