@loaders.gl/parquet 3.1.0-beta.3 → 3.1.1

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 (139) hide show
  1. package/dist/dist.min.js +6 -6
  2. package/dist/dist.min.js.map +2 -2
  3. package/dist/es5/bundle.js +1 -1
  4. package/dist/es5/bundle.js.map +1 -1
  5. package/dist/es5/constants.js +5 -5
  6. package/dist/es5/constants.js.map +1 -1
  7. package/dist/es5/index.js +19 -10
  8. package/dist/es5/index.js.map +1 -1
  9. package/dist/es5/lib/convert-schema.js +13 -13
  10. package/dist/es5/lib/convert-schema.js.map +1 -1
  11. package/dist/es5/lib/parse-parquet.js +154 -19
  12. package/dist/es5/lib/parse-parquet.js.map +1 -1
  13. package/dist/es5/lib/read-array-buffer.js +43 -6
  14. package/dist/es5/lib/read-array-buffer.js.map +1 -1
  15. package/dist/es5/parquet-loader.js +4 -4
  16. package/dist/es5/parquet-loader.js.map +1 -1
  17. package/dist/es5/parquet-writer.js +4 -4
  18. package/dist/es5/parquet-writer.js.map +1 -1
  19. package/dist/es5/parquetjs/codecs/dictionary.js +10 -2
  20. package/dist/es5/parquetjs/codecs/dictionary.js.map +1 -1
  21. package/dist/es5/parquetjs/codecs/index.js +6 -4
  22. package/dist/es5/parquetjs/codecs/index.js.map +1 -1
  23. package/dist/es5/parquetjs/codecs/plain.js +43 -41
  24. package/dist/es5/parquetjs/codecs/plain.js.map +1 -1
  25. package/dist/es5/parquetjs/codecs/rle.js +35 -25
  26. package/dist/es5/parquetjs/codecs/rle.js.map +1 -1
  27. package/dist/es5/parquetjs/compression.js +110 -27
  28. package/dist/es5/parquetjs/compression.js.map +1 -1
  29. package/dist/es5/parquetjs/encoder/writer.js +737 -301
  30. package/dist/es5/parquetjs/encoder/writer.js.map +1 -1
  31. package/dist/es5/parquetjs/file.js +15 -15
  32. package/dist/es5/parquetjs/file.js.map +1 -1
  33. package/dist/es5/parquetjs/parquet-thrift/BoundaryOrder.js +1 -1
  34. package/dist/es5/parquetjs/parquet-thrift/BsonType.js +45 -31
  35. package/dist/es5/parquetjs/parquet-thrift/BsonType.js.map +1 -1
  36. package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js +152 -141
  37. package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -1
  38. package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js +160 -147
  39. package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -1
  40. package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js +259 -248
  41. package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -1
  42. package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js +79 -67
  43. package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -1
  44. package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js +1 -1
  45. package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js +1 -1
  46. package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js +124 -113
  47. package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -1
  48. package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js +169 -158
  49. package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -1
  50. package/dist/es5/parquetjs/parquet-thrift/DateType.js +45 -31
  51. package/dist/es5/parquetjs/parquet-thrift/DateType.js.map +1 -1
  52. package/dist/es5/parquetjs/parquet-thrift/DecimalType.js +79 -68
  53. package/dist/es5/parquetjs/parquet-thrift/DecimalType.js.map +1 -1
  54. package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js +94 -83
  55. package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -1
  56. package/dist/es5/parquetjs/parquet-thrift/Encoding.js +1 -1
  57. package/dist/es5/parquetjs/parquet-thrift/EnumType.js +45 -31
  58. package/dist/es5/parquetjs/parquet-thrift/EnumType.js.map +1 -1
  59. package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js +1 -1
  60. package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js +182 -170
  61. package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js.map +1 -1
  62. package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js +45 -31
  63. package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -1
  64. package/dist/es5/parquetjs/parquet-thrift/IntType.js +79 -68
  65. package/dist/es5/parquetjs/parquet-thrift/IntType.js.map +1 -1
  66. package/dist/es5/parquetjs/parquet-thrift/JsonType.js +45 -31
  67. package/dist/es5/parquetjs/parquet-thrift/JsonType.js.map +1 -1
  68. package/dist/es5/parquetjs/parquet-thrift/KeyValue.js +79 -68
  69. package/dist/es5/parquetjs/parquet-thrift/KeyValue.js.map +1 -1
  70. package/dist/es5/parquetjs/parquet-thrift/ListType.js +45 -31
  71. package/dist/es5/parquetjs/parquet-thrift/ListType.js.map +1 -1
  72. package/dist/es5/parquetjs/parquet-thrift/LogicalType.js +343 -319
  73. package/dist/es5/parquetjs/parquet-thrift/LogicalType.js.map +1 -1
  74. package/dist/es5/parquetjs/parquet-thrift/MapType.js +45 -31
  75. package/dist/es5/parquetjs/parquet-thrift/MapType.js.map +1 -1
  76. package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js +45 -31
  77. package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -1
  78. package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js +45 -31
  79. package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -1
  80. package/dist/es5/parquetjs/parquet-thrift/NullType.js +45 -31
  81. package/dist/es5/parquetjs/parquet-thrift/NullType.js.map +1 -1
  82. package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js +75 -64
  83. package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -1
  84. package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js +94 -83
  85. package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -1
  86. package/dist/es5/parquetjs/parquet-thrift/PageHeader.js +169 -158
  87. package/dist/es5/parquetjs/parquet-thrift/PageHeader.js.map +1 -1
  88. package/dist/es5/parquetjs/parquet-thrift/PageLocation.js +94 -83
  89. package/dist/es5/parquetjs/parquet-thrift/PageLocation.js.map +1 -1
  90. package/dist/es5/parquetjs/parquet-thrift/PageType.js +1 -1
  91. package/dist/es5/parquetjs/parquet-thrift/RowGroup.js +124 -113
  92. package/dist/es5/parquetjs/parquet-thrift/RowGroup.js.map +1 -1
  93. package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js +199 -188
  94. package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js.map +1 -1
  95. package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js +94 -83
  96. package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js.map +1 -1
  97. package/dist/es5/parquetjs/parquet-thrift/Statistics.js +135 -124
  98. package/dist/es5/parquetjs/parquet-thrift/Statistics.js.map +1 -1
  99. package/dist/es5/parquetjs/parquet-thrift/StringType.js +45 -31
  100. package/dist/es5/parquetjs/parquet-thrift/StringType.js.map +1 -1
  101. package/dist/es5/parquetjs/parquet-thrift/TimeType.js +79 -68
  102. package/dist/es5/parquetjs/parquet-thrift/TimeType.js.map +1 -1
  103. package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js +101 -88
  104. package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js.map +1 -1
  105. package/dist/es5/parquetjs/parquet-thrift/TimestampType.js +79 -68
  106. package/dist/es5/parquetjs/parquet-thrift/TimestampType.js.map +1 -1
  107. package/dist/es5/parquetjs/parquet-thrift/Type.js +1 -1
  108. package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js +45 -31
  109. package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -1
  110. package/dist/es5/parquetjs/parquet-thrift/UUIDType.js +45 -31
  111. package/dist/es5/parquetjs/parquet-thrift/UUIDType.js.map +1 -1
  112. package/dist/es5/parquetjs/parquet-thrift/index.js +43 -43
  113. package/dist/es5/parquetjs/parser/decoders.js +391 -218
  114. package/dist/es5/parquetjs/parser/decoders.js.map +1 -1
  115. package/dist/es5/parquetjs/parser/parquet-cursor.js +180 -62
  116. package/dist/es5/parquetjs/parser/parquet-cursor.js.map +1 -1
  117. package/dist/es5/parquetjs/parser/parquet-envelope-reader.js +370 -125
  118. package/dist/es5/parquetjs/parser/parquet-envelope-reader.js.map +1 -1
  119. package/dist/es5/parquetjs/parser/parquet-reader.js +320 -91
  120. package/dist/es5/parquetjs/parser/parquet-reader.js.map +1 -1
  121. package/dist/es5/parquetjs/schema/declare.js +11 -9
  122. package/dist/es5/parquetjs/schema/declare.js.map +1 -1
  123. package/dist/es5/parquetjs/schema/schema.js +87 -73
  124. package/dist/es5/parquetjs/schema/schema.js.map +1 -1
  125. package/dist/es5/parquetjs/schema/shred.js +96 -56
  126. package/dist/es5/parquetjs/schema/shred.js.map +1 -1
  127. package/dist/es5/parquetjs/schema/types.js +40 -39
  128. package/dist/es5/parquetjs/schema/types.js.map +1 -1
  129. package/dist/es5/parquetjs/utils/buffer-utils.js +1 -1
  130. package/dist/es5/parquetjs/utils/buffer-utils.js.map +1 -1
  131. package/dist/es5/parquetjs/utils/file-utils.js +12 -8
  132. package/dist/es5/parquetjs/utils/file-utils.js.map +1 -1
  133. package/dist/es5/parquetjs/utils/read-utils.js +50 -22
  134. package/dist/es5/parquetjs/utils/read-utils.js.map +1 -1
  135. package/dist/esm/parquet-loader.js +1 -1
  136. package/dist/esm/parquet-loader.js.map +1 -1
  137. package/dist/esm/parquet-writer.js +1 -1
  138. package/dist/esm/parquet-writer.js.map +1 -1
  139. package/package.json +5 -5
@@ -11,7 +11,7 @@ exports.PARQUET_LOGICAL_TYPES = void 0;
11
11
 
12
12
  var _bson = _interopRequireDefault(require("bson"));
13
13
 
14
- const PARQUET_LOGICAL_TYPES = {
14
+ var PARQUET_LOGICAL_TYPES = {
15
15
  BOOLEAN: {
16
16
  primitiveType: 'BOOLEAN',
17
17
  toPrimitive: toPrimitive_BOOLEAN,
@@ -196,7 +196,7 @@ function fromPrimitive_BOOLEAN(value) {
196
196
  }
197
197
 
198
198
  function toPrimitive_FLOAT(value) {
199
- const v = parseFloat(value);
199
+ var v = parseFloat(value);
200
200
 
201
201
  if (isNaN(v)) {
202
202
  throw new Error("invalid value for FLOAT: ".concat(value));
@@ -206,7 +206,7 @@ function toPrimitive_FLOAT(value) {
206
206
  }
207
207
 
208
208
  function toPrimitive_DOUBLE(value) {
209
- const v = parseFloat(value);
209
+ var v = parseFloat(value);
210
210
 
211
211
  if (isNaN(v)) {
212
212
  throw new Error("invalid value for DOUBLE: ".concat(value));
@@ -216,7 +216,7 @@ function toPrimitive_DOUBLE(value) {
216
216
  }
217
217
 
218
218
  function toPrimitive_INT8(value) {
219
- const v = parseInt(value, 10);
219
+ var v = parseInt(value, 10);
220
220
 
221
221
  if (v < -0x80 || v > 0x7f || isNaN(v)) {
222
222
  throw new Error("invalid value for INT8: ".concat(value));
@@ -226,7 +226,7 @@ function toPrimitive_INT8(value) {
226
226
  }
227
227
 
228
228
  function toPrimitive_UINT8(value) {
229
- const v = parseInt(value, 10);
229
+ var v = parseInt(value, 10);
230
230
 
231
231
  if (v < 0 || v > 0xff || isNaN(v)) {
232
232
  throw new Error("invalid value for UINT8: ".concat(value));
@@ -236,7 +236,7 @@ function toPrimitive_UINT8(value) {
236
236
  }
237
237
 
238
238
  function toPrimitive_INT16(value) {
239
- const v = parseInt(value, 10);
239
+ var v = parseInt(value, 10);
240
240
 
241
241
  if (v < -0x8000 || v > 0x7fff || isNaN(v)) {
242
242
  throw new Error("invalid value for INT16: ".concat(value));
@@ -246,7 +246,7 @@ function toPrimitive_INT16(value) {
246
246
  }
247
247
 
248
248
  function toPrimitive_UINT16(value) {
249
- const v = parseInt(value, 10);
249
+ var v = parseInt(value, 10);
250
250
 
251
251
  if (v < 0 || v > 0xffff || isNaN(v)) {
252
252
  throw new Error("invalid value for UINT16: ".concat(value));
@@ -256,7 +256,7 @@ function toPrimitive_UINT16(value) {
256
256
  }
257
257
 
258
258
  function toPrimitive_INT32(value) {
259
- const v = parseInt(value, 10);
259
+ var v = parseInt(value, 10);
260
260
 
261
261
  if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
262
262
  throw new Error("invalid value for INT32: ".concat(value));
@@ -266,8 +266,8 @@ function toPrimitive_INT32(value) {
266
266
  }
267
267
 
268
268
  function decimalToPrimitive_INT32(value, field) {
269
- const primitiveValue = value * 10 ** (field.scale || 0);
270
- const v = Math.round(primitiveValue * 10 ** -field.presision % 1 * 10 ** field.presision);
269
+ var primitiveValue = value * Math.pow(10, field.scale || 0);
270
+ var v = Math.round(primitiveValue * Math.pow(10, -field.presision) % 1 * Math.pow(10, field.presision));
271
271
 
272
272
  if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
273
273
  throw new Error("invalid value for INT32: ".concat(value));
@@ -277,7 +277,7 @@ function decimalToPrimitive_INT32(value, field) {
277
277
  }
278
278
 
279
279
  function toPrimitive_UINT32(value) {
280
- const v = parseInt(value, 10);
280
+ var v = parseInt(value, 10);
281
281
 
282
282
  if (v < 0 || v > 0xffffffffffff || isNaN(v)) {
283
283
  throw new Error("invalid value for UINT32: ".concat(value));
@@ -287,7 +287,7 @@ function toPrimitive_UINT32(value) {
287
287
  }
288
288
 
289
289
  function toPrimitive_INT64(value) {
290
- const v = parseInt(value, 10);
290
+ var v = parseInt(value, 10);
291
291
 
292
292
  if (isNaN(v)) {
293
293
  throw new Error("invalid value for INT64: ".concat(value));
@@ -297,8 +297,8 @@ function toPrimitive_INT64(value) {
297
297
  }
298
298
 
299
299
  function decimalToPrimitive_INT64(value, field) {
300
- const primitiveValue = value * 10 ** (field.scale || 0);
301
- const v = Math.round(primitiveValue * 10 ** -field.presision % 1 * 10 ** field.presision);
300
+ var primitiveValue = value * Math.pow(10, field.scale || 0);
301
+ var v = Math.round(primitiveValue * Math.pow(10, -field.presision) % 1 * Math.pow(10, field.presision));
302
302
 
303
303
  if (isNaN(v)) {
304
304
  throw new Error("invalid value for INT64: ".concat(value));
@@ -308,7 +308,7 @@ function decimalToPrimitive_INT64(value, field) {
308
308
  }
309
309
 
310
310
  function toPrimitive_UINT64(value) {
311
- const v = parseInt(value, 10);
311
+ var v = parseInt(value, 10);
312
312
 
313
313
  if (v < 0 || isNaN(v)) {
314
314
  throw new Error("invalid value for UINT64: ".concat(value));
@@ -318,7 +318,7 @@ function toPrimitive_UINT64(value) {
318
318
  }
319
319
 
320
320
  function toPrimitive_INT96(value) {
321
- const v = parseInt(value, 10);
321
+ var v = parseInt(value, 10);
322
322
 
323
323
  if (isNaN(v)) {
324
324
  throw new Error("invalid value for INT96: ".concat(value));
@@ -360,7 +360,7 @@ function fromPrimitive_BSON(value) {
360
360
  }
361
361
 
362
362
  function toPrimitive_TIME_MILLIS(value) {
363
- const v = parseInt(value, 10);
363
+ var v = parseInt(value, 10);
364
364
 
365
365
  if (v < 0 || v > 0xffffffffffffffff || isNaN(v)) {
366
366
  throw new Error("invalid value for TIME_MILLIS: ".concat(value));
@@ -370,7 +370,7 @@ function toPrimitive_TIME_MILLIS(value) {
370
370
  }
371
371
 
372
372
  function toPrimitive_TIME_MICROS(value) {
373
- const v = parseInt(value, 10);
373
+ var v = parseInt(value, 10);
374
374
 
375
375
  if (v < 0 || isNaN(v)) {
376
376
  throw new Error("invalid value for TIME_MICROS: ".concat(value));
@@ -379,7 +379,7 @@ function toPrimitive_TIME_MICROS(value) {
379
379
  return v;
380
380
  }
381
381
 
382
- const kMillisPerDay = 86400000;
382
+ var kMillisPerDay = 86400000;
383
383
 
384
384
  function toPrimitive_DATE(value) {
385
385
  if (value instanceof Date) {
@@ -387,7 +387,7 @@ function toPrimitive_DATE(value) {
387
387
  }
388
388
 
389
389
  {
390
- const v = parseInt(value, 10);
390
+ var v = parseInt(value, 10);
391
391
 
392
392
  if (v < 0 || isNaN(v)) {
393
393
  throw new Error("invalid value for DATE: ".concat(value));
@@ -407,7 +407,7 @@ function toPrimitive_TIMESTAMP_MILLIS(value) {
407
407
  }
408
408
 
409
409
  {
410
- const v = parseInt(value, 10);
410
+ var v = parseInt(value, 10);
411
411
 
412
412
  if (v < 0 || isNaN(v)) {
413
413
  throw new Error("invalid value for TIMESTAMP_MILLIS: ".concat(value));
@@ -427,7 +427,7 @@ function toPrimitive_TIMESTAMP_MICROS(value) {
427
427
  }
428
428
 
429
429
  {
430
- const v = parseInt(value, 10);
430
+ var v = parseInt(value, 10);
431
431
 
432
432
  if (v < 0 || isNaN(v)) {
433
433
  throw new Error("invalid value for TIMESTAMP_MICROS: ".concat(value));
@@ -446,7 +446,7 @@ function toPrimitive_INTERVAL(value) {
446
446
  throw new Error('value for INTERVAL must be object { months: ..., days: ..., milliseconds: ... }');
447
447
  }
448
448
 
449
- const buf = Buffer.alloc(12);
449
+ var buf = Buffer.alloc(12);
450
450
  buf.writeUInt32LE(value.months, 0);
451
451
  buf.writeUInt32LE(value.days, 4);
452
452
  buf.writeUInt32LE(value.milliseconds, 8);
@@ -454,38 +454,39 @@ function toPrimitive_INTERVAL(value) {
454
454
  }
455
455
 
456
456
  function fromPrimitive_INTERVAL(value) {
457
- const buf = Buffer.from(value);
458
- const months = buf.readUInt32LE(0);
459
- const days = buf.readUInt32LE(4);
460
- const millis = buf.readUInt32LE(8);
457
+ var buf = Buffer.from(value);
458
+ var months = buf.readUInt32LE(0);
459
+ var days = buf.readUInt32LE(4);
460
+ var millis = buf.readUInt32LE(8);
461
461
  return {
462
- months,
463
- days,
462
+ months: months,
463
+ days: days,
464
464
  milliseconds: millis
465
465
  };
466
466
  }
467
467
 
468
468
  function decimalFromPrimitive_INT(value, field) {
469
- const presisionInt = Math.round(value * 10 ** -field.presision % 1 * 10 ** field.presision);
470
- return presisionInt * 10 ** -(field.scale || 0);
469
+ var presisionInt = Math.round(value * Math.pow(10, -field.presision) % 1 * Math.pow(10, field.presision));
470
+ return presisionInt * Math.pow(10, -(field.scale || 0));
471
471
  }
472
472
 
473
473
  function decimalFromPrimitive_BYTE_ARRAY(value, field) {
474
- let number = 0;
474
+ var number = 0;
475
475
 
476
476
  if (value.length <= 4) {
477
- for (let i = 0; i < value.length; i++) {
478
- const component = value[i] << 8 * (value.length - i - 1);
477
+ for (var i = 0; i < value.length; i++) {
478
+ var component = value[i] << 8 * (value.length - i - 1);
479
479
  number += component;
480
480
  }
481
481
  } else {
482
- for (let i = 0; i < value.length; i++) {
483
- const component = value[i] * 2 ** (8 * (value.length - 1 - i));
484
- number += component;
482
+ for (var _i = 0; _i < value.length; _i++) {
483
+ var _component = value[_i] * Math.pow(2, 8 * (value.length - 1 - _i));
484
+
485
+ number += _component;
485
486
  }
486
487
  }
487
488
 
488
- const presisionInt = Math.round(number * 10 ** -field.presision % 1 * 10 ** field.presision);
489
- return presisionInt * 10 ** -(field.scale || 0);
489
+ var presisionInt = Math.round(number * Math.pow(10, -field.presision) % 1 * Math.pow(10, field.presision));
490
+ return presisionInt * Math.pow(10, -(field.scale || 0));
490
491
  }
491
492
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/parquetjs/schema/types.ts"],"names":["PARQUET_LOGICAL_TYPES","BOOLEAN","primitiveType","toPrimitive","toPrimitive_BOOLEAN","fromPrimitive","fromPrimitive_BOOLEAN","INT32","toPrimitive_INT32","INT64","toPrimitive_INT64","INT96","toPrimitive_INT96","FLOAT","toPrimitive_FLOAT","DOUBLE","toPrimitive_DOUBLE","BYTE_ARRAY","toPrimitive_BYTE_ARRAY","FIXED_LEN_BYTE_ARRAY","UTF8","originalType","toPrimitive_UTF8","fromPrimitive_UTF8","TIME_MILLIS","toPrimitive_TIME_MILLIS","TIME_MICROS","toPrimitive_TIME_MICROS","DATE","toPrimitive_DATE","fromPrimitive_DATE","TIMESTAMP_MILLIS","toPrimitive_TIMESTAMP_MILLIS","fromPrimitive_TIMESTAMP_MILLIS","TIMESTAMP_MICROS","toPrimitive_TIMESTAMP_MICROS","fromPrimitive_TIMESTAMP_MICROS","UINT_8","toPrimitive_UINT8","UINT_16","toPrimitive_UINT16","UINT_32","toPrimitive_UINT32","UINT_64","toPrimitive_UINT64","INT_8","toPrimitive_INT8","INT_16","toPrimitive_INT16","INT_32","INT_64","JSON","toPrimitive_JSON","fromPrimitive_JSON","BSON","toPrimitive_BSON","fromPrimitive_BSON","INTERVAL","typeLength","toPrimitive_INTERVAL","fromPrimitive_INTERVAL","DECIMAL_INT32","decimalToPrimitive_INT32","decimalFromPrimitive_INT","DECIMAL_INT64","decimalToPrimitive_INT64","DECIMAL_BYTE_ARRAY","decimalToPrimitive_BYTE_ARRAY","decimalFromPrimitive_BYTE_ARRAY","DECIMAL_FIXED_LEN_BYTE_ARRAY","type","value","field","Error","Boolean","v","parseFloat","isNaN","parseInt","primitiveValue","scale","Math","round","presision","Buffer","from","toString","stringify","parse","serialize","deserialize","kMillisPerDay","Date","getTime","months","days","milliseconds","buf","alloc","writeUInt32LE","readUInt32LE","millis","presisionInt","number","length","i","component"],"mappings":"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","sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\n/* eslint-disable camelcase */\nimport BSON from 'bson';\nimport {OriginalType, ParquetField, ParquetType, PrimitiveType} from './declare';\n\nexport interface ParquetTypeKit {\n primitiveType: PrimitiveType;\n originalType?: OriginalType;\n typeLength?: number;\n toPrimitive: Function;\n fromPrimitive?: Function;\n}\n\nexport const PARQUET_LOGICAL_TYPES: Record<ParquetType, ParquetTypeKit> = {\n BOOLEAN: {\n primitiveType: 'BOOLEAN',\n toPrimitive: toPrimitive_BOOLEAN,\n fromPrimitive: fromPrimitive_BOOLEAN\n },\n INT32: {\n primitiveType: 'INT32',\n toPrimitive: toPrimitive_INT32\n },\n INT64: {\n primitiveType: 'INT64',\n toPrimitive: toPrimitive_INT64\n },\n INT96: {\n primitiveType: 'INT96',\n toPrimitive: toPrimitive_INT96\n },\n FLOAT: {\n primitiveType: 'FLOAT',\n toPrimitive: toPrimitive_FLOAT\n },\n DOUBLE: {\n primitiveType: 'DOUBLE',\n toPrimitive: toPrimitive_DOUBLE\n },\n BYTE_ARRAY: {\n primitiveType: 'BYTE_ARRAY',\n toPrimitive: toPrimitive_BYTE_ARRAY\n },\n FIXED_LEN_BYTE_ARRAY: {\n primitiveType: 'FIXED_LEN_BYTE_ARRAY',\n toPrimitive: toPrimitive_BYTE_ARRAY\n },\n UTF8: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'UTF8',\n toPrimitive: toPrimitive_UTF8,\n fromPrimitive: fromPrimitive_UTF8\n },\n TIME_MILLIS: {\n primitiveType: 'INT32',\n originalType: 'TIME_MILLIS',\n toPrimitive: toPrimitive_TIME_MILLIS\n },\n TIME_MICROS: {\n primitiveType: 'INT64',\n originalType: 'TIME_MICROS',\n toPrimitive: toPrimitive_TIME_MICROS\n },\n DATE: {\n primitiveType: 'INT32',\n originalType: 'DATE',\n toPrimitive: toPrimitive_DATE,\n fromPrimitive: fromPrimitive_DATE\n },\n TIMESTAMP_MILLIS: {\n primitiveType: 'INT64',\n originalType: 'TIMESTAMP_MILLIS',\n toPrimitive: toPrimitive_TIMESTAMP_MILLIS,\n fromPrimitive: fromPrimitive_TIMESTAMP_MILLIS\n },\n TIMESTAMP_MICROS: {\n primitiveType: 'INT64',\n originalType: 'TIMESTAMP_MICROS',\n toPrimitive: toPrimitive_TIMESTAMP_MICROS,\n fromPrimitive: fromPrimitive_TIMESTAMP_MICROS\n },\n UINT_8: {\n primitiveType: 'INT32',\n originalType: 'UINT_8',\n toPrimitive: toPrimitive_UINT8\n },\n UINT_16: {\n primitiveType: 'INT32',\n originalType: 'UINT_16',\n toPrimitive: toPrimitive_UINT16\n },\n UINT_32: {\n primitiveType: 'INT32',\n originalType: 'UINT_32',\n toPrimitive: toPrimitive_UINT32\n },\n UINT_64: {\n primitiveType: 'INT64',\n originalType: 'UINT_64',\n toPrimitive: toPrimitive_UINT64\n },\n INT_8: {\n primitiveType: 'INT32',\n originalType: 'INT_8',\n toPrimitive: toPrimitive_INT8\n },\n INT_16: {\n primitiveType: 'INT32',\n originalType: 'INT_16',\n toPrimitive: toPrimitive_INT16\n },\n INT_32: {\n primitiveType: 'INT32',\n originalType: 'INT_32',\n toPrimitive: toPrimitive_INT32\n },\n INT_64: {\n primitiveType: 'INT64',\n originalType: 'INT_64',\n toPrimitive: toPrimitive_INT64\n },\n JSON: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'JSON',\n toPrimitive: toPrimitive_JSON,\n fromPrimitive: fromPrimitive_JSON\n },\n BSON: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'BSON',\n toPrimitive: toPrimitive_BSON,\n fromPrimitive: fromPrimitive_BSON\n },\n INTERVAL: {\n primitiveType: 'FIXED_LEN_BYTE_ARRAY',\n originalType: 'INTERVAL',\n typeLength: 12,\n toPrimitive: toPrimitive_INTERVAL,\n fromPrimitive: fromPrimitive_INTERVAL\n },\n DECIMAL_INT32: {\n primitiveType: 'INT32',\n originalType: 'DECIMAL_INT32',\n toPrimitive: decimalToPrimitive_INT32,\n fromPrimitive: decimalFromPrimitive_INT\n },\n DECIMAL_INT64: {\n primitiveType: 'INT64',\n originalType: 'DECIMAL_INT64',\n toPrimitive: decimalToPrimitive_INT64,\n fromPrimitive: decimalFromPrimitive_INT\n },\n DECIMAL_BYTE_ARRAY: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'DECIMAL_BYTE_ARRAY',\n toPrimitive: decimalToPrimitive_BYTE_ARRAY,\n fromPrimitive: decimalFromPrimitive_BYTE_ARRAY\n },\n DECIMAL_FIXED_LEN_BYTE_ARRAY: {\n primitiveType: 'FIXED_LEN_BYTE_ARRAY',\n originalType: 'DECIMAL_FIXED_LEN_BYTE_ARRAY',\n toPrimitive: decimalToPrimitive_BYTE_ARRAY,\n fromPrimitive: decimalFromPrimitive_BYTE_ARRAY\n }\n};\n\n/**\n * Convert a value from it's native representation to the internal/underlying\n * primitive type\n */\nexport function toPrimitive(type: ParquetType, value: any, field?: ParquetField) {\n if (!(type in PARQUET_LOGICAL_TYPES)) {\n throw new Error(`invalid type: ${type}`);\n }\n\n return PARQUET_LOGICAL_TYPES[type].toPrimitive(value, field);\n}\n\n/**\n * Convert a value from it's internal/underlying primitive representation to\n * the native representation\n */\nexport function fromPrimitive(type: ParquetType, value: any, field?: ParquetField) {\n if (!(type in PARQUET_LOGICAL_TYPES)) {\n throw new Error(`invalid type: ${type}`);\n }\n\n if ('fromPrimitive' in PARQUET_LOGICAL_TYPES[type]) {\n return PARQUET_LOGICAL_TYPES[type].fromPrimitive?.(value, field);\n // tslint:disable-next-line:no-else-after-return\n }\n return value;\n}\n\nfunction toPrimitive_BOOLEAN(value: any) {\n return Boolean(value);\n}\n\nfunction fromPrimitive_BOOLEAN(value: any) {\n return Boolean(value);\n}\n\nfunction toPrimitive_FLOAT(value: any) {\n const v = parseFloat(value);\n if (isNaN(v)) {\n throw new Error(`invalid value for FLOAT: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_DOUBLE(value: any) {\n const v = parseFloat(value);\n if (isNaN(v)) {\n throw new Error(`invalid value for DOUBLE: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT8(value: any) {\n const v = parseInt(value, 10);\n if (v < -0x80 || v > 0x7f || isNaN(v)) {\n throw new Error(`invalid value for INT8: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT8(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xff || isNaN(v)) {\n throw new Error(`invalid value for UINT8: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT16(value: any) {\n const v = parseInt(value, 10);\n if (v < -0x8000 || v > 0x7fff || isNaN(v)) {\n throw new Error(`invalid value for INT16: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT16(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xffff || isNaN(v)) {\n throw new Error(`invalid value for UINT16: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT32(value: any) {\n const v = parseInt(value, 10);\n if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {\n throw new Error(`invalid value for INT32: ${value}`);\n }\n\n return v;\n}\n\nfunction decimalToPrimitive_INT32(value: number, field: ParquetField) {\n const primitiveValue = value * 10 ** (field.scale || 0);\n const v = Math.round(((primitiveValue * 10 ** -field.presision!) % 1) * 10 ** field.presision!);\n if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {\n throw new Error(`invalid value for INT32: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT32(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xffffffffffff || isNaN(v)) {\n throw new Error(`invalid value for UINT32: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT64(value: any) {\n const v = parseInt(value, 10);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT64: ${value}`);\n }\n\n return v;\n}\n\nfunction decimalToPrimitive_INT64(value: number, field: ParquetField) {\n const primitiveValue = value * 10 ** (field.scale || 0);\n const v = Math.round(((primitiveValue * 10 ** -field.presision!) % 1) * 10 ** field.presision!);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT64: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT64(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for UINT64: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT96(value: any) {\n const v = parseInt(value, 10);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT96: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_BYTE_ARRAY(value: any) {\n return Buffer.from(value);\n}\n\nfunction decimalToPrimitive_BYTE_ARRAY(value: any) {\n // TBD\n return Buffer.from(value);\n}\n\nfunction toPrimitive_UTF8(value: any) {\n return Buffer.from(value, 'utf8');\n}\n\nfunction fromPrimitive_UTF8(value: any) {\n return value.toString();\n}\n\nfunction toPrimitive_JSON(value: any) {\n return Buffer.from(JSON.stringify(value));\n}\n\nfunction fromPrimitive_JSON(value: any) {\n return JSON.parse(value);\n}\n\nfunction toPrimitive_BSON(value: any) {\n return Buffer.from(BSON.serialize(value));\n}\n\nfunction fromPrimitive_BSON(value: any) {\n return BSON.deserialize(value);\n}\n\nfunction toPrimitive_TIME_MILLIS(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xffffffffffffffff || isNaN(v)) {\n throw new Error(`invalid value for TIME_MILLIS: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_TIME_MICROS(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIME_MICROS: ${value}`);\n }\n\n return v;\n}\n\nconst kMillisPerDay = 86400000;\n\nfunction toPrimitive_DATE(value: any) {\n /* convert from date */\n if (value instanceof Date) {\n return value.getTime() / kMillisPerDay;\n }\n\n /* convert from integer */\n {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for DATE: ${value}`);\n }\n\n return v;\n }\n}\n\nfunction fromPrimitive_DATE(value: any) {\n return new Date(value * kMillisPerDay);\n}\n\nfunction toPrimitive_TIMESTAMP_MILLIS(value: any) {\n /* convert from date */\n if (value instanceof Date) {\n return value.getTime();\n }\n\n /* convert from integer */\n {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIMESTAMP_MILLIS: ${value}`);\n }\n\n return v;\n }\n}\n\nfunction fromPrimitive_TIMESTAMP_MILLIS(value: any) {\n return new Date(value);\n}\n\nfunction toPrimitive_TIMESTAMP_MICROS(value: any) {\n /* convert from date */\n if (value instanceof Date) {\n return value.getTime() * 1000;\n }\n\n /* convert from integer */\n {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIMESTAMP_MICROS: ${value}`);\n }\n\n return v;\n }\n}\n\nfunction fromPrimitive_TIMESTAMP_MICROS(value: any) {\n return new Date(value / 1000);\n}\n\nfunction toPrimitive_INTERVAL(value: any) {\n if (!value.months || !value.days || !value.milliseconds) {\n throw new Error(\n 'value for INTERVAL must be object { months: ..., days: ..., milliseconds: ... }'\n );\n }\n\n const buf = Buffer.alloc(12);\n\n buf.writeUInt32LE(value.months, 0);\n buf.writeUInt32LE(value.days, 4);\n buf.writeUInt32LE(value.milliseconds, 8);\n return buf;\n}\n\nfunction fromPrimitive_INTERVAL(value: any) {\n const buf = Buffer.from(value);\n const months = buf.readUInt32LE(0);\n const days = buf.readUInt32LE(4);\n const millis = buf.readUInt32LE(8);\n\n return {months, days, milliseconds: millis};\n}\n\nfunction decimalFromPrimitive_INT(value: any, field: ParquetField) {\n const presisionInt = Math.round(((value * 10 ** -field.presision!) % 1) * 10 ** field.presision!);\n return presisionInt * 10 ** -(field.scale || 0);\n}\n\nfunction decimalFromPrimitive_BYTE_ARRAY(value: any, field: ParquetField) {\n let number = 0;\n if (value.length <= 4) {\n // Bytewise operators faster. Use them if it is possible\n for (let i = 0; i < value.length; i++) {\n // `value.length - i - 1` bytes have reverse order (big-endian)\n const component = value[i] << (8 * (value.length - i - 1));\n number += component;\n }\n } else {\n for (let i = 0; i < value.length; i++) {\n // `value.length - i - 1` bytes have reverse order (big-endian)\n const component = value[i] * 2 ** (8 * (value.length - 1 - i));\n number += component;\n }\n }\n\n const presisionInt = Math.round(\n ((number * 10 ** -field.presision!) % 1) * 10 ** field.presision!\n );\n return presisionInt * 10 ** -(field.scale || 0);\n}\n"],"file":"types.js"}
1
+ {"version":3,"sources":["../../../../src/parquetjs/schema/types.ts"],"names":["PARQUET_LOGICAL_TYPES","BOOLEAN","primitiveType","toPrimitive","toPrimitive_BOOLEAN","fromPrimitive","fromPrimitive_BOOLEAN","INT32","toPrimitive_INT32","INT64","toPrimitive_INT64","INT96","toPrimitive_INT96","FLOAT","toPrimitive_FLOAT","DOUBLE","toPrimitive_DOUBLE","BYTE_ARRAY","toPrimitive_BYTE_ARRAY","FIXED_LEN_BYTE_ARRAY","UTF8","originalType","toPrimitive_UTF8","fromPrimitive_UTF8","TIME_MILLIS","toPrimitive_TIME_MILLIS","TIME_MICROS","toPrimitive_TIME_MICROS","DATE","toPrimitive_DATE","fromPrimitive_DATE","TIMESTAMP_MILLIS","toPrimitive_TIMESTAMP_MILLIS","fromPrimitive_TIMESTAMP_MILLIS","TIMESTAMP_MICROS","toPrimitive_TIMESTAMP_MICROS","fromPrimitive_TIMESTAMP_MICROS","UINT_8","toPrimitive_UINT8","UINT_16","toPrimitive_UINT16","UINT_32","toPrimitive_UINT32","UINT_64","toPrimitive_UINT64","INT_8","toPrimitive_INT8","INT_16","toPrimitive_INT16","INT_32","INT_64","JSON","toPrimitive_JSON","fromPrimitive_JSON","BSON","toPrimitive_BSON","fromPrimitive_BSON","INTERVAL","typeLength","toPrimitive_INTERVAL","fromPrimitive_INTERVAL","DECIMAL_INT32","decimalToPrimitive_INT32","decimalFromPrimitive_INT","DECIMAL_INT64","decimalToPrimitive_INT64","DECIMAL_BYTE_ARRAY","decimalToPrimitive_BYTE_ARRAY","decimalFromPrimitive_BYTE_ARRAY","DECIMAL_FIXED_LEN_BYTE_ARRAY","type","value","field","Error","Boolean","v","parseFloat","isNaN","parseInt","primitiveValue","scale","Math","round","presision","Buffer","from","toString","stringify","parse","serialize","deserialize","kMillisPerDay","Date","getTime","months","days","milliseconds","buf","alloc","writeUInt32LE","readUInt32LE","millis","presisionInt","number","length","i","component"],"mappings":"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","sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\n/* eslint-disable camelcase */\nimport BSON from 'bson';\nimport {OriginalType, ParquetField, ParquetType, PrimitiveType} from './declare';\n\nexport interface ParquetTypeKit {\n primitiveType: PrimitiveType;\n originalType?: OriginalType;\n typeLength?: number;\n toPrimitive: Function;\n fromPrimitive?: Function;\n}\n\nexport const PARQUET_LOGICAL_TYPES: Record<ParquetType, ParquetTypeKit> = {\n BOOLEAN: {\n primitiveType: 'BOOLEAN',\n toPrimitive: toPrimitive_BOOLEAN,\n fromPrimitive: fromPrimitive_BOOLEAN\n },\n INT32: {\n primitiveType: 'INT32',\n toPrimitive: toPrimitive_INT32\n },\n INT64: {\n primitiveType: 'INT64',\n toPrimitive: toPrimitive_INT64\n },\n INT96: {\n primitiveType: 'INT96',\n toPrimitive: toPrimitive_INT96\n },\n FLOAT: {\n primitiveType: 'FLOAT',\n toPrimitive: toPrimitive_FLOAT\n },\n DOUBLE: {\n primitiveType: 'DOUBLE',\n toPrimitive: toPrimitive_DOUBLE\n },\n BYTE_ARRAY: {\n primitiveType: 'BYTE_ARRAY',\n toPrimitive: toPrimitive_BYTE_ARRAY\n },\n FIXED_LEN_BYTE_ARRAY: {\n primitiveType: 'FIXED_LEN_BYTE_ARRAY',\n toPrimitive: toPrimitive_BYTE_ARRAY\n },\n UTF8: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'UTF8',\n toPrimitive: toPrimitive_UTF8,\n fromPrimitive: fromPrimitive_UTF8\n },\n TIME_MILLIS: {\n primitiveType: 'INT32',\n originalType: 'TIME_MILLIS',\n toPrimitive: toPrimitive_TIME_MILLIS\n },\n TIME_MICROS: {\n primitiveType: 'INT64',\n originalType: 'TIME_MICROS',\n toPrimitive: toPrimitive_TIME_MICROS\n },\n DATE: {\n primitiveType: 'INT32',\n originalType: 'DATE',\n toPrimitive: toPrimitive_DATE,\n fromPrimitive: fromPrimitive_DATE\n },\n TIMESTAMP_MILLIS: {\n primitiveType: 'INT64',\n originalType: 'TIMESTAMP_MILLIS',\n toPrimitive: toPrimitive_TIMESTAMP_MILLIS,\n fromPrimitive: fromPrimitive_TIMESTAMP_MILLIS\n },\n TIMESTAMP_MICROS: {\n primitiveType: 'INT64',\n originalType: 'TIMESTAMP_MICROS',\n toPrimitive: toPrimitive_TIMESTAMP_MICROS,\n fromPrimitive: fromPrimitive_TIMESTAMP_MICROS\n },\n UINT_8: {\n primitiveType: 'INT32',\n originalType: 'UINT_8',\n toPrimitive: toPrimitive_UINT8\n },\n UINT_16: {\n primitiveType: 'INT32',\n originalType: 'UINT_16',\n toPrimitive: toPrimitive_UINT16\n },\n UINT_32: {\n primitiveType: 'INT32',\n originalType: 'UINT_32',\n toPrimitive: toPrimitive_UINT32\n },\n UINT_64: {\n primitiveType: 'INT64',\n originalType: 'UINT_64',\n toPrimitive: toPrimitive_UINT64\n },\n INT_8: {\n primitiveType: 'INT32',\n originalType: 'INT_8',\n toPrimitive: toPrimitive_INT8\n },\n INT_16: {\n primitiveType: 'INT32',\n originalType: 'INT_16',\n toPrimitive: toPrimitive_INT16\n },\n INT_32: {\n primitiveType: 'INT32',\n originalType: 'INT_32',\n toPrimitive: toPrimitive_INT32\n },\n INT_64: {\n primitiveType: 'INT64',\n originalType: 'INT_64',\n toPrimitive: toPrimitive_INT64\n },\n JSON: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'JSON',\n toPrimitive: toPrimitive_JSON,\n fromPrimitive: fromPrimitive_JSON\n },\n BSON: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'BSON',\n toPrimitive: toPrimitive_BSON,\n fromPrimitive: fromPrimitive_BSON\n },\n INTERVAL: {\n primitiveType: 'FIXED_LEN_BYTE_ARRAY',\n originalType: 'INTERVAL',\n typeLength: 12,\n toPrimitive: toPrimitive_INTERVAL,\n fromPrimitive: fromPrimitive_INTERVAL\n },\n DECIMAL_INT32: {\n primitiveType: 'INT32',\n originalType: 'DECIMAL_INT32',\n toPrimitive: decimalToPrimitive_INT32,\n fromPrimitive: decimalFromPrimitive_INT\n },\n DECIMAL_INT64: {\n primitiveType: 'INT64',\n originalType: 'DECIMAL_INT64',\n toPrimitive: decimalToPrimitive_INT64,\n fromPrimitive: decimalFromPrimitive_INT\n },\n DECIMAL_BYTE_ARRAY: {\n primitiveType: 'BYTE_ARRAY',\n originalType: 'DECIMAL_BYTE_ARRAY',\n toPrimitive: decimalToPrimitive_BYTE_ARRAY,\n fromPrimitive: decimalFromPrimitive_BYTE_ARRAY\n },\n DECIMAL_FIXED_LEN_BYTE_ARRAY: {\n primitiveType: 'FIXED_LEN_BYTE_ARRAY',\n originalType: 'DECIMAL_FIXED_LEN_BYTE_ARRAY',\n toPrimitive: decimalToPrimitive_BYTE_ARRAY,\n fromPrimitive: decimalFromPrimitive_BYTE_ARRAY\n }\n};\n\n/**\n * Convert a value from it's native representation to the internal/underlying\n * primitive type\n */\nexport function toPrimitive(type: ParquetType, value: any, field?: ParquetField) {\n if (!(type in PARQUET_LOGICAL_TYPES)) {\n throw new Error(`invalid type: ${type}`);\n }\n\n return PARQUET_LOGICAL_TYPES[type].toPrimitive(value, field);\n}\n\n/**\n * Convert a value from it's internal/underlying primitive representation to\n * the native representation\n */\nexport function fromPrimitive(type: ParquetType, value: any, field?: ParquetField) {\n if (!(type in PARQUET_LOGICAL_TYPES)) {\n throw new Error(`invalid type: ${type}`);\n }\n\n if ('fromPrimitive' in PARQUET_LOGICAL_TYPES[type]) {\n return PARQUET_LOGICAL_TYPES[type].fromPrimitive?.(value, field);\n // tslint:disable-next-line:no-else-after-return\n }\n return value;\n}\n\nfunction toPrimitive_BOOLEAN(value: any) {\n return Boolean(value);\n}\n\nfunction fromPrimitive_BOOLEAN(value: any) {\n return Boolean(value);\n}\n\nfunction toPrimitive_FLOAT(value: any) {\n const v = parseFloat(value);\n if (isNaN(v)) {\n throw new Error(`invalid value for FLOAT: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_DOUBLE(value: any) {\n const v = parseFloat(value);\n if (isNaN(v)) {\n throw new Error(`invalid value for DOUBLE: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT8(value: any) {\n const v = parseInt(value, 10);\n if (v < -0x80 || v > 0x7f || isNaN(v)) {\n throw new Error(`invalid value for INT8: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT8(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xff || isNaN(v)) {\n throw new Error(`invalid value for UINT8: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT16(value: any) {\n const v = parseInt(value, 10);\n if (v < -0x8000 || v > 0x7fff || isNaN(v)) {\n throw new Error(`invalid value for INT16: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT16(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xffff || isNaN(v)) {\n throw new Error(`invalid value for UINT16: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT32(value: any) {\n const v = parseInt(value, 10);\n if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {\n throw new Error(`invalid value for INT32: ${value}`);\n }\n\n return v;\n}\n\nfunction decimalToPrimitive_INT32(value: number, field: ParquetField) {\n const primitiveValue = value * 10 ** (field.scale || 0);\n const v = Math.round(((primitiveValue * 10 ** -field.presision!) % 1) * 10 ** field.presision!);\n if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {\n throw new Error(`invalid value for INT32: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT32(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xffffffffffff || isNaN(v)) {\n throw new Error(`invalid value for UINT32: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT64(value: any) {\n const v = parseInt(value, 10);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT64: ${value}`);\n }\n\n return v;\n}\n\nfunction decimalToPrimitive_INT64(value: number, field: ParquetField) {\n const primitiveValue = value * 10 ** (field.scale || 0);\n const v = Math.round(((primitiveValue * 10 ** -field.presision!) % 1) * 10 ** field.presision!);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT64: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_UINT64(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for UINT64: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_INT96(value: any) {\n const v = parseInt(value, 10);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT96: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_BYTE_ARRAY(value: any) {\n return Buffer.from(value);\n}\n\nfunction decimalToPrimitive_BYTE_ARRAY(value: any) {\n // TBD\n return Buffer.from(value);\n}\n\nfunction toPrimitive_UTF8(value: any) {\n return Buffer.from(value, 'utf8');\n}\n\nfunction fromPrimitive_UTF8(value: any) {\n return value.toString();\n}\n\nfunction toPrimitive_JSON(value: any) {\n return Buffer.from(JSON.stringify(value));\n}\n\nfunction fromPrimitive_JSON(value: any) {\n return JSON.parse(value);\n}\n\nfunction toPrimitive_BSON(value: any) {\n return Buffer.from(BSON.serialize(value));\n}\n\nfunction fromPrimitive_BSON(value: any) {\n return BSON.deserialize(value);\n}\n\nfunction toPrimitive_TIME_MILLIS(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || v > 0xffffffffffffffff || isNaN(v)) {\n throw new Error(`invalid value for TIME_MILLIS: ${value}`);\n }\n\n return v;\n}\n\nfunction toPrimitive_TIME_MICROS(value: any) {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIME_MICROS: ${value}`);\n }\n\n return v;\n}\n\nconst kMillisPerDay = 86400000;\n\nfunction toPrimitive_DATE(value: any) {\n /* convert from date */\n if (value instanceof Date) {\n return value.getTime() / kMillisPerDay;\n }\n\n /* convert from integer */\n {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for DATE: ${value}`);\n }\n\n return v;\n }\n}\n\nfunction fromPrimitive_DATE(value: any) {\n return new Date(value * kMillisPerDay);\n}\n\nfunction toPrimitive_TIMESTAMP_MILLIS(value: any) {\n /* convert from date */\n if (value instanceof Date) {\n return value.getTime();\n }\n\n /* convert from integer */\n {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIMESTAMP_MILLIS: ${value}`);\n }\n\n return v;\n }\n}\n\nfunction fromPrimitive_TIMESTAMP_MILLIS(value: any) {\n return new Date(value);\n}\n\nfunction toPrimitive_TIMESTAMP_MICROS(value: any) {\n /* convert from date */\n if (value instanceof Date) {\n return value.getTime() * 1000;\n }\n\n /* convert from integer */\n {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIMESTAMP_MICROS: ${value}`);\n }\n\n return v;\n }\n}\n\nfunction fromPrimitive_TIMESTAMP_MICROS(value: any) {\n return new Date(value / 1000);\n}\n\nfunction toPrimitive_INTERVAL(value: any) {\n if (!value.months || !value.days || !value.milliseconds) {\n throw new Error(\n 'value for INTERVAL must be object { months: ..., days: ..., milliseconds: ... }'\n );\n }\n\n const buf = Buffer.alloc(12);\n\n buf.writeUInt32LE(value.months, 0);\n buf.writeUInt32LE(value.days, 4);\n buf.writeUInt32LE(value.milliseconds, 8);\n return buf;\n}\n\nfunction fromPrimitive_INTERVAL(value: any) {\n const buf = Buffer.from(value);\n const months = buf.readUInt32LE(0);\n const days = buf.readUInt32LE(4);\n const millis = buf.readUInt32LE(8);\n\n return {months, days, milliseconds: millis};\n}\n\nfunction decimalFromPrimitive_INT(value: any, field: ParquetField) {\n const presisionInt = Math.round(((value * 10 ** -field.presision!) % 1) * 10 ** field.presision!);\n return presisionInt * 10 ** -(field.scale || 0);\n}\n\nfunction decimalFromPrimitive_BYTE_ARRAY(value: any, field: ParquetField) {\n let number = 0;\n if (value.length <= 4) {\n // Bytewise operators faster. Use them if it is possible\n for (let i = 0; i < value.length; i++) {\n // `value.length - i - 1` bytes have reverse order (big-endian)\n const component = value[i] << (8 * (value.length - i - 1));\n number += component;\n }\n } else {\n for (let i = 0; i < value.length; i++) {\n // `value.length - i - 1` bytes have reverse order (big-endian)\n const component = value[i] * 2 ** (8 * (value.length - 1 - i));\n number += component;\n }\n }\n\n const presisionInt = Math.round(\n ((number * 10 ** -field.presision!) % 1) * 10 ** field.presision!\n );\n return presisionInt * 10 ** -(field.scale || 0);\n}\n"],"file":"types.js"}
@@ -8,7 +8,7 @@ exports.toBuffer = toBuffer;
8
8
 
9
9
  function toArrayBuffer(buffer) {
10
10
  if (Buffer.isBuffer(buffer)) {
11
- const typedArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);
11
+ var typedArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);
12
12
  return typedArray.slice().buffer;
13
13
  }
14
14
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/parquetjs/utils/buffer-utils.ts"],"names":["toArrayBuffer","buffer","Buffer","isBuffer","typedArray","Uint8Array","byteOffset","length","slice","toBuffer","arrayBuffer","from"],"mappings":";;;;;;;;AAGO,SAASA,aAAT,CAAuBC,MAAvB,EAAoD;AAEzD,MAAIC,MAAM,CAACC,QAAP,CAAgBF,MAAhB,CAAJ,EAA6B;AAC3B,UAAMG,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,MAAM,CAACA,MAAtB,EAA8BA,MAAM,CAACK,UAArC,EAAiDL,MAAM,CAACM,MAAxD,CAAnB;AACA,WAAOH,UAAU,CAACI,KAAX,GAAmBP,MAA1B;AACD;;AACD,SAAOA,MAAP;AACD;;AAKM,SAASQ,QAAT,CAAkBC,WAAlB,EAAoD;AACzD,SAAOR,MAAM,CAACS,IAAP,CAAYD,WAAZ,CAAP;AACD","sourcesContent":["/**\n * Convert Buffer to ArrayBuffer\n */\nexport function toArrayBuffer(buffer: Buffer): ArrayBuffer {\n // TODO - per docs we should just be able to call buffer.buffer, but there are issues\n if (Buffer.isBuffer(buffer)) {\n const typedArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);\n return typedArray.slice().buffer;\n }\n return buffer;\n}\n\n/**\n * Convert (copy) ArrayBuffer to Buffer\n */\nexport function toBuffer(arrayBuffer: ArrayBuffer): Buffer {\n return Buffer.from(arrayBuffer);\n}\n"],"file":"buffer-utils.js"}
1
+ {"version":3,"sources":["../../../../src/parquetjs/utils/buffer-utils.ts"],"names":["toArrayBuffer","buffer","Buffer","isBuffer","typedArray","Uint8Array","byteOffset","length","slice","toBuffer","arrayBuffer","from"],"mappings":";;;;;;;;AAGO,SAASA,aAAT,CAAuBC,MAAvB,EAAoD;AAEzD,MAAIC,MAAM,CAACC,QAAP,CAAgBF,MAAhB,CAAJ,EAA6B;AAC3B,QAAMG,UAAU,GAAG,IAAIC,UAAJ,CAAeJ,MAAM,CAACA,MAAtB,EAA8BA,MAAM,CAACK,UAArC,EAAiDL,MAAM,CAACM,MAAxD,CAAnB;AACA,WAAOH,UAAU,CAACI,KAAX,GAAmBP,MAA1B;AACD;;AACD,SAAOA,MAAP;AACD;;AAKM,SAASQ,QAAT,CAAkBC,WAAlB,EAAoD;AACzD,SAAOR,MAAM,CAACS,IAAP,CAAYD,WAAZ,CAAP;AACD","sourcesContent":["/**\n * Convert Buffer to ArrayBuffer\n */\nexport function toArrayBuffer(buffer: Buffer): ArrayBuffer {\n // TODO - per docs we should just be able to call buffer.buffer, but there are issues\n if (Buffer.isBuffer(buffer)) {\n const typedArray = new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);\n return typedArray.slice().buffer;\n }\n return buffer;\n}\n\n/**\n * Convert (copy) ArrayBuffer to Buffer\n */\nexport function toBuffer(arrayBuffer: ArrayBuffer): Buffer {\n return Buffer.from(arrayBuffer);\n}\n"],"file":"buffer-utils.js"}
@@ -17,8 +17,8 @@ function load(name) {
17
17
  }
18
18
 
19
19
  function oswrite(os, buf) {
20
- return new Promise((resolve, reject) => {
21
- os.write(buf, err => {
20
+ return new Promise(function (resolve, reject) {
21
+ os.write(buf, function (err) {
22
22
  if (err) {
23
23
  reject(err);
24
24
  } else {
@@ -29,8 +29,8 @@ function oswrite(os, buf) {
29
29
  }
30
30
 
31
31
  function osclose(os) {
32
- return new Promise((resolve, reject) => {
33
- os.close(err => {
32
+ return new Promise(function (resolve, reject) {
33
+ os.close(function (err) {
34
34
  if (err) {
35
35
  reject(err);
36
36
  } else {
@@ -41,11 +41,15 @@ function osclose(os) {
41
41
  }
42
42
 
43
43
  function osopen(path, opts) {
44
- return new Promise((resolve, reject) => {
45
- const outputStream = _fs.default.createWriteStream(path, opts);
44
+ return new Promise(function (resolve, reject) {
45
+ var outputStream = _fs.default.createWriteStream(path, opts);
46
46
 
47
- outputStream.once('open', fd => resolve(outputStream));
48
- outputStream.once('error', err => reject(err));
47
+ outputStream.once('open', function (fd) {
48
+ return resolve(outputStream);
49
+ });
50
+ outputStream.once('error', function (err) {
51
+ return reject(err);
52
+ });
49
53
  });
50
54
  }
51
55
  //# sourceMappingURL=file-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/parquetjs/utils/file-utils.ts"],"names":["load","name","module","global","require","oswrite","os","buf","Promise","resolve","reject","write","err","osclose","close","osopen","path","opts","outputStream","fs","createWriteStream","once","fd"],"mappings":";;;;;;;;;;;;AACA;;AAGO,SAASA,IAAT,CAAcC,IAAd,EAAiC;AACtC,SAAO,CAACC,MAAM,IAAKC,MAAZ,EAA4BC,OAA5B,CAAoCH,IAApC,CAAP;AACD;;AAUM,SAASI,OAAT,CAAiBC,EAAjB,EAA+BC,GAA/B,EAA2D;AAChE,SAAO,IAAIC,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACtCJ,IAAAA,EAAE,CAACK,KAAH,CAASJ,GAAT,EAAeK,GAAD,IAAS;AACrB,UAAIA,GAAJ,EAAS;AACPF,QAAAA,MAAM,CAACE,GAAD,CAAN;AACD,OAFD,MAEO;AACLH,QAAAA,OAAO;AACR;AACF,KAND;AAOD,GARM,CAAP;AASD;;AAEM,SAASI,OAAT,CAAiBP,EAAjB,EAA8C;AACnD,SAAO,IAAIE,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACrCJ,IAAAA,EAAD,CAAYQ,KAAZ,CAAmBF,GAAD,IAAc;AAC9B,UAAIA,GAAJ,EAAS;AACPF,QAAAA,MAAM,CAACE,GAAD,CAAN;AACD,OAFD,MAEO;AACLH,QAAAA,OAAO;AACR;AACF,KAND;AAOD,GARM,CAAP;AASD;;AAEM,SAASM,MAAT,CAAgBC,IAAhB,EAA8BC,IAA9B,EAAkF;AACvF,SAAO,IAAIT,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AACtC,UAAMQ,YAAY,GAAGC,YAAGC,iBAAH,CAAqBJ,IAArB,EAA2BC,IAA3B,CAArB;;AACAC,IAAAA,YAAY,CAACG,IAAb,CAAkB,MAAlB,EAA2BC,EAAD,IAAQb,OAAO,CAACS,YAAD,CAAzC;AACAA,IAAAA,YAAY,CAACG,IAAb,CAAkB,OAAlB,EAA4BT,GAAD,IAASF,MAAM,CAACE,GAAD,CAA1C;AACD,GAJM,CAAP;AAKD","sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\nimport fs from 'fs';\nimport {Writable} from 'stream';\n\nexport function load(name: string): any {\n return (module || (global as any)).require(name);\n}\nexport interface WriteStreamOptions {\n flags?: string;\n encoding?: string;\n fd?: number;\n mode?: number;\n autoClose?: boolean;\n start?: number;\n}\n\nexport function oswrite(os: Writable, buf: Buffer): Promise<void> {\n return new Promise((resolve, reject) => {\n os.write(buf, (err) => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n });\n });\n}\n\nexport function osclose(os: Writable): Promise<void> {\n return new Promise((resolve, reject) => {\n (os as any).close((err: any) => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n });\n });\n}\n\nexport function osopen(path: string, opts?: WriteStreamOptions): Promise<fs.WriteStream> {\n return new Promise((resolve, reject) => {\n const outputStream = fs.createWriteStream(path, opts as any);\n outputStream.once('open', (fd) => resolve(outputStream));\n outputStream.once('error', (err) => reject(err));\n });\n}\n"],"file":"file-utils.js"}
1
+ {"version":3,"sources":["../../../../src/parquetjs/utils/file-utils.ts"],"names":["load","name","module","global","require","oswrite","os","buf","Promise","resolve","reject","write","err","osclose","close","osopen","path","opts","outputStream","fs","createWriteStream","once","fd"],"mappings":";;;;;;;;;;;;AACA;;AAGO,SAASA,IAAT,CAAcC,IAAd,EAAiC;AACtC,SAAO,CAACC,MAAM,IAAKC,MAAZ,EAA4BC,OAA5B,CAAoCH,IAApC,CAAP;AACD;;AAUM,SAASI,OAAT,CAAiBC,EAAjB,EAA+BC,GAA/B,EAA2D;AAChE,SAAO,IAAIC,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;AACtCJ,IAAAA,EAAE,CAACK,KAAH,CAASJ,GAAT,EAAc,UAACK,GAAD,EAAS;AACrB,UAAIA,GAAJ,EAAS;AACPF,QAAAA,MAAM,CAACE,GAAD,CAAN;AACD,OAFD,MAEO;AACLH,QAAAA,OAAO;AACR;AACF,KAND;AAOD,GARM,CAAP;AASD;;AAEM,SAASI,OAAT,CAAiBP,EAAjB,EAA8C;AACnD,SAAO,IAAIE,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;AACrCJ,IAAAA,EAAD,CAAYQ,KAAZ,CAAkB,UAACF,GAAD,EAAc;AAC9B,UAAIA,GAAJ,EAAS;AACPF,QAAAA,MAAM,CAACE,GAAD,CAAN;AACD,OAFD,MAEO;AACLH,QAAAA,OAAO;AACR;AACF,KAND;AAOD,GARM,CAAP;AASD;;AAEM,SAASM,MAAT,CAAgBC,IAAhB,EAA8BC,IAA9B,EAAkF;AACvF,SAAO,IAAIT,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;AACtC,QAAMQ,YAAY,GAAGC,YAAGC,iBAAH,CAAqBJ,IAArB,EAA2BC,IAA3B,CAArB;;AACAC,IAAAA,YAAY,CAACG,IAAb,CAAkB,MAAlB,EAA0B,UAACC,EAAD;AAAA,aAAQb,OAAO,CAACS,YAAD,CAAf;AAAA,KAA1B;AACAA,IAAAA,YAAY,CAACG,IAAb,CAAkB,OAAlB,EAA2B,UAACT,GAAD;AAAA,aAASF,MAAM,CAACE,GAAD,CAAf;AAAA,KAA3B;AACD,GAJM,CAAP;AAKD","sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\nimport fs from 'fs';\nimport {Writable} from 'stream';\n\nexport function load(name: string): any {\n return (module || (global as any)).require(name);\n}\nexport interface WriteStreamOptions {\n flags?: string;\n encoding?: string;\n fd?: number;\n mode?: number;\n autoClose?: boolean;\n start?: number;\n}\n\nexport function oswrite(os: Writable, buf: Buffer): Promise<void> {\n return new Promise((resolve, reject) => {\n os.write(buf, (err) => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n });\n });\n}\n\nexport function osclose(os: Writable): Promise<void> {\n return new Promise((resolve, reject) => {\n (os as any).close((err: any) => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n });\n });\n}\n\nexport function osopen(path: string, opts?: WriteStreamOptions): Promise<fs.WriteStream> {\n return new Promise((resolve, reject) => {\n const outputStream = fs.createWriteStream(path, opts as any);\n outputStream.once('open', (fd) => resolve(outputStream));\n outputStream.once('error', (err) => reject(err));\n });\n}\n"],"file":"file-utils.js"}
@@ -13,26 +13,54 @@ exports.decodePageHeader = decodePageHeader;
13
13
  exports.getBitWidth = getBitWidth;
14
14
  exports.fieldIndexOf = fieldIndexOf;
15
15
 
16
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
+
18
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
+
20
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
22
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
+
24
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
+
16
26
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
27
 
18
28
  var _thrift = require("thrift");
19
29
 
20
30
  var _parquetThrift = require("../parquet-thrift");
21
31
 
22
- class UFramedTransport extends _thrift.TFramedTransport {
23
- constructor(...args) {
24
- super(...args);
25
- (0, _defineProperty2.default)(this, "readPos", 0);
32
+ 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); }; }
33
+
34
+ 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; } }
35
+
36
+ var UFramedTransport = function (_TFramedTransport) {
37
+ (0, _inherits2.default)(UFramedTransport, _TFramedTransport);
38
+
39
+ var _super = _createSuper(UFramedTransport);
40
+
41
+ function UFramedTransport() {
42
+ var _this;
43
+
44
+ (0, _classCallCheck2.default)(this, UFramedTransport);
45
+
46
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
47
+ args[_key] = arguments[_key];
48
+ }
49
+
50
+ _this = _super.call.apply(_super, [this].concat(args));
51
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "readPos", 0);
52
+ return _this;
26
53
  }
27
54
 
28
- }
55
+ return UFramedTransport;
56
+ }(_thrift.TFramedTransport);
29
57
 
30
58
  function serializeThrift(obj) {
31
- const output = [];
32
- const transport = new _thrift.TBufferedTransport(undefined, buf => {
59
+ var output = [];
60
+ var transport = new _thrift.TBufferedTransport(undefined, function (buf) {
33
61
  output.push(buf);
34
62
  });
35
- const protocol = new _thrift.TCompactProtocol(transport);
63
+ var protocol = new _thrift.TCompactProtocol(transport);
36
64
  obj.write(protocol);
37
65
  transport.flush();
38
66
  return Buffer.concat(output);
@@ -43,15 +71,15 @@ function decodeThrift(obj, buf, offset) {
43
71
  offset = 0;
44
72
  }
45
73
 
46
- const transport = new UFramedTransport(buf);
74
+ var transport = new UFramedTransport(buf);
47
75
  transport.readPos = offset;
48
- const protocol = new _thrift.TCompactProtocol(transport);
76
+ var protocol = new _thrift.TCompactProtocol(transport);
49
77
  obj.read(protocol);
50
78
  return transport.readPos - offset;
51
79
  }
52
80
 
53
81
  function getThriftEnum(klass, value) {
54
- for (const k in klass) {
82
+ for (var k in klass) {
55
83
  if (klass[k] === value) {
56
84
  return k;
57
85
  }
@@ -65,15 +93,15 @@ function decodeFileMetadata(buf, offset) {
65
93
  offset = 0;
66
94
  }
67
95
 
68
- const transport = new UFramedTransport(buf);
96
+ var transport = new UFramedTransport(buf);
69
97
  transport.readPos = offset;
70
- const protocol = new _thrift.TCompactProtocol(transport);
98
+ var protocol = new _thrift.TCompactProtocol(transport);
71
99
 
72
- const metadata = _parquetThrift.FileMetaData.read(protocol);
100
+ var metadata = _parquetThrift.FileMetaData.read(protocol);
73
101
 
74
102
  return {
75
103
  length: transport.readPos - offset,
76
- metadata
104
+ metadata: metadata
77
105
  };
78
106
  }
79
107
 
@@ -82,15 +110,15 @@ function decodePageHeader(buf, offset) {
82
110
  offset = 0;
83
111
  }
84
112
 
85
- const transport = new UFramedTransport(buf);
113
+ var transport = new UFramedTransport(buf);
86
114
  transport.readPos = offset;
87
- const protocol = new _thrift.TCompactProtocol(transport);
115
+ var protocol = new _thrift.TCompactProtocol(transport);
88
116
 
89
- const pageHeader = _parquetThrift.PageHeader.read(protocol);
117
+ var pageHeader = _parquetThrift.PageHeader.read(protocol);
90
118
 
91
119
  return {
92
120
  length: transport.readPos - offset,
93
- pageHeader
121
+ pageHeader: pageHeader
94
122
  };
95
123
  }
96
124
 
@@ -103,14 +131,14 @@ function getBitWidth(val) {
103
131
  }
104
132
 
105
133
  function fieldIndexOf(arr, elem) {
106
- for (let j = 0; j < arr.length; j++) {
134
+ for (var j = 0; j < arr.length; j++) {
107
135
  if (arr[j].length > elem.length) {
108
136
  continue;
109
137
  }
110
138
 
111
- let m = true;
139
+ var m = true;
112
140
 
113
- for (let i = 0; i < elem.length; i++) {
141
+ for (var i = 0; i < elem.length; i++) {
114
142
  if (arr[j][i] === elem[i] || arr[j][i] === '+' || arr[j][i] === '#') {
115
143
  continue;
116
144
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/parquetjs/utils/read-utils.ts"],"names":["UFramedTransport","TFramedTransport","serializeThrift","obj","output","transport","TBufferedTransport","undefined","buf","push","protocol","TCompactProtocol","write","flush","Buffer","concat","decodeThrift","offset","readPos","read","getThriftEnum","klass","value","k","Error","decodeFileMetadata","metadata","FileMetaData","length","decodePageHeader","pageHeader","PageHeader","getBitWidth","val","Math","ceil","log2","fieldIndexOf","arr","elem","j","m","i"],"mappings":"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","sourcesContent":["import {TBufferedTransport, TCompactProtocol, TFramedTransport} from 'thrift';\nimport {FileMetaData, PageHeader} from '../parquet-thrift';\n\nclass UFramedTransport extends TFramedTransport {\n public readPos: number = 0;\n}\n\n/**\n * Helper function that serializes a thrift object into a buffer\n */\nexport function serializeThrift(obj: any): Buffer {\n const output: Buffer[] = [];\n\n const transport = new TBufferedTransport(undefined, (buf) => {\n output.push(buf as Buffer);\n });\n\n const protocol = new TCompactProtocol(transport);\n obj.write(protocol);\n transport.flush();\n\n return Buffer.concat(output);\n}\n\nexport function decodeThrift(obj: any, buf: Buffer, offset?: number) {\n if (!offset) {\n // tslint:disable-next-line:no-parameter-reassignment\n offset = 0;\n }\n\n const transport = new UFramedTransport(buf);\n transport.readPos = offset;\n const protocol = new TCompactProtocol(transport);\n obj.read(protocol);\n return transport.readPos - offset;\n}\n\n/**\n * FIXME not ideal that this is linear\n */\nexport function getThriftEnum(klass: any, value: number | string): string {\n for (const k in klass) {\n if (klass[k] === value) {\n return k;\n }\n }\n throw new Error('Invalid ENUM value');\n}\n\nexport function decodeFileMetadata(buf: Buffer, offset?: number) {\n if (!offset) {\n // tslint:disable-next-line:no-parameter-reassignment\n offset = 0;\n }\n\n const transport = new UFramedTransport(buf);\n transport.readPos = offset;\n const protocol = new TCompactProtocol(transport);\n const metadata = FileMetaData.read(protocol);\n return {length: transport.readPos - offset, metadata};\n}\n\nexport function decodePageHeader(buf: Buffer, offset?: number) {\n if (!offset) {\n // tslint:disable-next-line:no-parameter-reassignment\n offset = 0;\n }\n\n const transport = new UFramedTransport(buf);\n transport.readPos = offset;\n const protocol = new TCompactProtocol(transport);\n const pageHeader = PageHeader.read(protocol);\n return {length: transport.readPos - offset, pageHeader};\n}\n\n/**\n * Get the number of bits required to store a given value\n */\nexport function getBitWidth(val: number): number {\n if (val === 0) {\n return 0;\n // tslint:disable-next-line:no-else-after-return\n }\n return Math.ceil(Math.log2(val + 1));\n}\n\n// Supports MQTT path wildcards\n// + all immediate children\n// # all descendents\nexport function fieldIndexOf(arr: string[][], elem: string[]): number {\n for (let j = 0; j < arr.length; j++) {\n if (arr[j].length > elem.length) {\n continue; // eslint-disable-line no-continue\n }\n let m = true;\n for (let i = 0; i < elem.length; i++) {\n if (arr[j][i] === elem[i] || arr[j][i] === '+' || arr[j][i] === '#') {\n continue; // eslint-disable-line no-continue\n }\n if (i >= arr[j].length && arr[j][arr[j].length - 1] === '#') {\n continue; // eslint-disable-line no-continue\n }\n m = false;\n break;\n }\n if (m) return j;\n }\n return -1;\n}\n"],"file":"read-utils.js"}
1
+ {"version":3,"sources":["../../../../src/parquetjs/utils/read-utils.ts"],"names":["UFramedTransport","TFramedTransport","serializeThrift","obj","output","transport","TBufferedTransport","undefined","buf","push","protocol","TCompactProtocol","write","flush","Buffer","concat","decodeThrift","offset","readPos","read","getThriftEnum","klass","value","k","Error","decodeFileMetadata","metadata","FileMetaData","length","decodePageHeader","pageHeader","PageHeader","getBitWidth","val","Math","ceil","log2","fieldIndexOf","arr","elem","j","m","i"],"mappings":"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","sourcesContent":["import {TBufferedTransport, TCompactProtocol, TFramedTransport} from 'thrift';\nimport {FileMetaData, PageHeader} from '../parquet-thrift';\n\nclass UFramedTransport extends TFramedTransport {\n public readPos: number = 0;\n}\n\n/**\n * Helper function that serializes a thrift object into a buffer\n */\nexport function serializeThrift(obj: any): Buffer {\n const output: Buffer[] = [];\n\n const transport = new TBufferedTransport(undefined, (buf) => {\n output.push(buf as Buffer);\n });\n\n const protocol = new TCompactProtocol(transport);\n obj.write(protocol);\n transport.flush();\n\n return Buffer.concat(output);\n}\n\nexport function decodeThrift(obj: any, buf: Buffer, offset?: number) {\n if (!offset) {\n // tslint:disable-next-line:no-parameter-reassignment\n offset = 0;\n }\n\n const transport = new UFramedTransport(buf);\n transport.readPos = offset;\n const protocol = new TCompactProtocol(transport);\n obj.read(protocol);\n return transport.readPos - offset;\n}\n\n/**\n * FIXME not ideal that this is linear\n */\nexport function getThriftEnum(klass: any, value: number | string): string {\n for (const k in klass) {\n if (klass[k] === value) {\n return k;\n }\n }\n throw new Error('Invalid ENUM value');\n}\n\nexport function decodeFileMetadata(buf: Buffer, offset?: number) {\n if (!offset) {\n // tslint:disable-next-line:no-parameter-reassignment\n offset = 0;\n }\n\n const transport = new UFramedTransport(buf);\n transport.readPos = offset;\n const protocol = new TCompactProtocol(transport);\n const metadata = FileMetaData.read(protocol);\n return {length: transport.readPos - offset, metadata};\n}\n\nexport function decodePageHeader(buf: Buffer, offset?: number) {\n if (!offset) {\n // tslint:disable-next-line:no-parameter-reassignment\n offset = 0;\n }\n\n const transport = new UFramedTransport(buf);\n transport.readPos = offset;\n const protocol = new TCompactProtocol(transport);\n const pageHeader = PageHeader.read(protocol);\n return {length: transport.readPos - offset, pageHeader};\n}\n\n/**\n * Get the number of bits required to store a given value\n */\nexport function getBitWidth(val: number): number {\n if (val === 0) {\n return 0;\n // tslint:disable-next-line:no-else-after-return\n }\n return Math.ceil(Math.log2(val + 1));\n}\n\n// Supports MQTT path wildcards\n// + all immediate children\n// # all descendents\nexport function fieldIndexOf(arr: string[][], elem: string[]): number {\n for (let j = 0; j < arr.length; j++) {\n if (arr[j].length > elem.length) {\n continue; // eslint-disable-line no-continue\n }\n let m = true;\n for (let i = 0; i < elem.length; i++) {\n if (arr[j][i] === elem[i] || arr[j][i] === '+' || arr[j][i] === '#') {\n continue; // eslint-disable-line no-continue\n }\n if (i >= arr[j].length && arr[j][arr[j].length - 1] === '#') {\n continue; // eslint-disable-line no-continue\n }\n m = false;\n break;\n }\n if (m) return j;\n }\n return -1;\n}\n"],"file":"read-utils.js"}
@@ -1,4 +1,4 @@
1
- const VERSION = typeof "3.1.0-beta.3" !== 'undefined' ? "3.1.0-beta.3" : 'latest';
1
+ const VERSION = typeof "3.1.1" !== 'undefined' ? "3.1.1" : 'latest';
2
2
  const DEFAULT_PARQUET_LOADER_OPTIONS = {
3
3
  parquet: {
4
4
  type: 'object-row-table',