@loaders.gl/parquet 4.0.0-alpha.5 → 4.0.0-alpha.6
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.
- package/dist/bundle.js +2 -2
- package/dist/constants.js +18 -6
- package/dist/dist.min.js +27 -25
- package/dist/dist.min.js.map +3 -3
- package/dist/es5/bundle.js +6 -0
- package/dist/es5/bundle.js.map +1 -0
- package/dist/es5/constants.js +17 -0
- package/dist/es5/constants.js.map +1 -0
- package/dist/es5/index.js +128 -0
- package/dist/es5/index.js.map +1 -0
- package/dist/es5/lib/arrow/convert-columns-to-row-group.js +2 -0
- package/dist/es5/lib/arrow/convert-columns-to-row-group.js.map +1 -0
- package/dist/es5/lib/arrow/convert-row-group-to-columns.js +19 -0
- package/dist/es5/lib/arrow/convert-row-group-to-columns.js.map +1 -0
- package/dist/es5/lib/arrow/convert-schema-from-parquet.js +114 -0
- package/dist/es5/lib/arrow/convert-schema-from-parquet.js.map +1 -0
- package/dist/es5/lib/arrow/convert-schema-to-parquet.js +47 -0
- package/dist/es5/lib/arrow/convert-schema-to-parquet.js.map +1 -0
- package/dist/es5/lib/geo/decode-geo-metadata.js +81 -0
- package/dist/es5/lib/geo/decode-geo-metadata.js.map +1 -0
- package/dist/es5/lib/geo/geoparquet-schema.js +83 -0
- package/dist/es5/lib/geo/geoparquet-schema.js.map +1 -0
- package/dist/es5/lib/parsers/parse-parquet-to-columns.js +177 -0
- package/dist/es5/lib/parsers/parse-parquet-to-columns.js.map +1 -0
- package/dist/es5/lib/parsers/parse-parquet-to-rows.js +172 -0
- package/dist/es5/lib/parsers/parse-parquet-to-rows.js.map +1 -0
- package/dist/es5/lib/wasm/encode-parquet-wasm.js +43 -0
- package/dist/es5/lib/wasm/encode-parquet-wasm.js.map +1 -0
- package/dist/es5/lib/wasm/load-wasm/index.js +13 -0
- package/dist/es5/lib/wasm/load-wasm/index.js.map +1 -0
- package/dist/es5/lib/wasm/load-wasm/load-wasm-browser.js +42 -0
- package/dist/es5/lib/wasm/load-wasm/load-wasm-browser.js.map +1 -0
- package/dist/es5/lib/wasm/load-wasm/load-wasm-node.js +31 -0
- package/dist/es5/lib/wasm/load-wasm/load-wasm-node.js.map +1 -0
- package/dist/es5/lib/wasm/parse-parquet-wasm.js +60 -0
- package/dist/es5/lib/wasm/parse-parquet-wasm.js.map +1 -0
- package/dist/es5/lib/wip/convert-schema-deep.java.disabled +910 -0
- package/dist/es5/lib/wip/convert-schema-deep.rs.disabled +976 -0
- package/dist/es5/parquet-loader.js +44 -0
- package/dist/es5/parquet-loader.js.map +1 -0
- package/dist/es5/parquet-wasm-loader.js +30 -0
- package/dist/es5/parquet-wasm-loader.js.map +1 -0
- package/dist/es5/parquet-wasm-writer.js +26 -0
- package/dist/es5/parquet-wasm-writer.js.map +1 -0
- package/dist/es5/parquet-writer.js +24 -0
- package/dist/es5/parquet-writer.js.map +1 -0
- package/dist/es5/parquetjs/codecs/declare.js +2 -0
- package/dist/es5/parquetjs/codecs/declare.js.map +1 -0
- package/dist/es5/parquetjs/codecs/dictionary.js +23 -0
- package/dist/es5/parquetjs/codecs/dictionary.js.map +1 -0
- package/dist/es5/parquetjs/codecs/index.js +47 -0
- package/dist/es5/parquetjs/codecs/index.js.map +1 -0
- package/dist/es5/parquetjs/codecs/plain.js +208 -0
- package/dist/es5/parquetjs/codecs/plain.js.map +1 -0
- package/dist/es5/parquetjs/codecs/rle.js +132 -0
- package/dist/es5/parquetjs/codecs/rle.js.map +1 -0
- package/dist/es5/parquetjs/compression.js +137 -0
- package/dist/es5/parquetjs/compression.js.map +1 -0
- package/dist/es5/parquetjs/encoder/parquet-encoder.js +625 -0
- package/dist/es5/parquetjs/encoder/parquet-encoder.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/BoundaryOrder.js +14 -0
- package/dist/es5/parquetjs/parquet-thrift/BoundaryOrder.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/BsonType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/BsonType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js +193 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js +198 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js +367 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js +99 -0
- package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js +19 -0
- package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js +33 -0
- package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js +152 -0
- package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js +207 -0
- package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/DateType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/DateType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/DecimalType.js +96 -0
- package/dist/es5/parquetjs/parquet-thrift/DecimalType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js +113 -0
- package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/Encoding.js +19 -0
- package/dist/es5/parquetjs/parquet-thrift/Encoding.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/EnumType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/EnumType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js +14 -0
- package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js +239 -0
- package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/IntType.js +96 -0
- package/dist/es5/parquetjs/parquet-thrift/IntType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/JsonType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/JsonType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/KeyValue.js +94 -0
- package/dist/es5/parquetjs/parquet-thrift/KeyValue.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/ListType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/ListType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/LogicalType.js +423 -0
- package/dist/es5/parquetjs/parquet-thrift/LogicalType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/MapType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/MapType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/NullType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/NullType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js +89 -0
- package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js +115 -0
- package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/PageHeader.js +204 -0
- package/dist/es5/parquetjs/parquet-thrift/PageHeader.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/PageLocation.js +124 -0
- package/dist/es5/parquetjs/parquet-thrift/PageLocation.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/PageType.js +15 -0
- package/dist/es5/parquetjs/parquet-thrift/PageType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/RowGroup.js +165 -0
- package/dist/es5/parquetjs/parquet-thrift/RowGroup.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js +231 -0
- package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js +115 -0
- package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/Statistics.js +165 -0
- package/dist/es5/parquetjs/parquet-thrift/Statistics.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/StringType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/StringType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/TimeType.js +97 -0
- package/dist/es5/parquetjs/parquet-thrift/TimeType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js +126 -0
- package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/TimestampType.js +97 -0
- package/dist/es5/parquetjs/parquet-thrift/TimestampType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/Type.js +19 -0
- package/dist/es5/parquetjs/parquet-thrift/Type.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/UUIDType.js +52 -0
- package/dist/es5/parquetjs/parquet-thrift/UUIDType.js.map +1 -0
- package/dist/es5/parquetjs/parquet-thrift/index.js +479 -0
- package/dist/es5/parquetjs/parquet-thrift/index.js.map +1 -0
- package/dist/es5/parquetjs/parser/decoders.js +393 -0
- package/dist/es5/parquetjs/parser/decoders.js.map +1 -0
- package/dist/es5/parquetjs/parser/parquet-reader.js +610 -0
- package/dist/es5/parquetjs/parser/parquet-reader.js.map +1 -0
- package/dist/es5/parquetjs/schema/declare.js +21 -0
- package/dist/es5/parquetjs/schema/declare.js.map +1 -0
- package/dist/es5/parquetjs/schema/schema.js +165 -0
- package/dist/es5/parquetjs/schema/schema.js.map +1 -0
- package/dist/es5/parquetjs/schema/shred.js +282 -0
- package/dist/es5/parquetjs/schema/shred.js.map +1 -0
- package/dist/es5/parquetjs/schema/types.js +406 -0
- package/dist/es5/parquetjs/schema/types.js.map +1 -0
- package/dist/es5/parquetjs/utils/file-utils.js +47 -0
- package/dist/es5/parquetjs/utils/file-utils.js.map +1 -0
- package/dist/es5/parquetjs/utils/read-utils.js +120 -0
- package/dist/es5/parquetjs/utils/read-utils.js.map +1 -0
- package/dist/es5/workers/parquet-worker.js +6 -0
- package/dist/es5/workers/parquet-worker.js.map +1 -0
- package/dist/esm/bundle.js +4 -0
- package/dist/esm/bundle.js.map +1 -0
- package/dist/esm/constants.js +6 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/index.js +31 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/lib/arrow/convert-columns-to-row-group.js +2 -0
- package/dist/esm/lib/arrow/convert-columns-to-row-group.js.map +1 -0
- package/dist/esm/lib/arrow/convert-row-group-to-columns.js +8 -0
- package/dist/esm/lib/arrow/convert-row-group-to-columns.js.map +1 -0
- package/dist/esm/lib/arrow/convert-schema-from-parquet.js +95 -0
- package/dist/esm/lib/arrow/convert-schema-from-parquet.js.map +1 -0
- package/dist/esm/lib/arrow/convert-schema-to-parquet.js +39 -0
- package/dist/esm/lib/arrow/convert-schema-to-parquet.js.map +1 -0
- package/dist/esm/lib/geo/decode-geo-metadata.js +62 -0
- package/dist/esm/lib/geo/decode-geo-metadata.js.map +1 -0
- package/dist/esm/lib/geo/geoparquet-schema.js +76 -0
- package/dist/esm/lib/geo/geoparquet-schema.js.map +1 -0
- package/dist/esm/lib/parsers/parse-parquet-to-columns.js +39 -0
- package/dist/esm/lib/parsers/parse-parquet-to-columns.js.map +1 -0
- package/dist/esm/lib/parsers/parse-parquet-to-rows.js +29 -0
- package/dist/esm/lib/parsers/parse-parquet-to-rows.js.map +1 -0
- package/dist/esm/lib/wasm/encode-parquet-wasm.js +15 -0
- package/dist/esm/lib/wasm/encode-parquet-wasm.js.map +1 -0
- package/dist/esm/lib/wasm/load-wasm/index.js +2 -0
- package/dist/esm/lib/wasm/load-wasm/index.js.map +1 -0
- package/dist/esm/lib/wasm/load-wasm/load-wasm-browser.js +11 -0
- package/dist/esm/lib/wasm/load-wasm/load-wasm-browser.js.map +1 -0
- package/dist/esm/lib/wasm/load-wasm/load-wasm-node.js +5 -0
- package/dist/esm/lib/wasm/load-wasm/load-wasm-node.js.map +1 -0
- package/dist/esm/lib/wasm/parse-parquet-wasm.js +21 -0
- package/dist/esm/lib/wasm/parse-parquet-wasm.js.map +1 -0
- package/dist/esm/lib/wip/convert-schema-deep.java.disabled +910 -0
- package/dist/esm/lib/wip/convert-schema-deep.rs.disabled +976 -0
- package/dist/esm/parquet-loader.js +36 -0
- package/dist/esm/parquet-loader.js.map +1 -0
- package/dist/esm/parquet-wasm-loader.js +22 -0
- package/dist/esm/parquet-wasm-loader.js.map +1 -0
- package/dist/esm/parquet-wasm-writer.js +19 -0
- package/dist/esm/parquet-wasm-writer.js.map +1 -0
- package/dist/esm/parquet-writer.js +17 -0
- package/dist/esm/parquet-writer.js.map +1 -0
- package/dist/esm/parquetjs/LICENSE +20 -0
- package/dist/esm/parquetjs/codecs/declare.js +2 -0
- package/dist/esm/parquetjs/codecs/declare.js.map +1 -0
- package/dist/esm/parquetjs/codecs/dictionary.js +13 -0
- package/dist/esm/parquetjs/codecs/dictionary.js.map +1 -0
- package/dist/esm/parquetjs/codecs/index.js +23 -0
- package/dist/esm/parquetjs/codecs/index.js.map +1 -0
- package/dist/esm/parquetjs/codecs/plain.js +200 -0
- package/dist/esm/parquetjs/codecs/plain.js.map +1 -0
- package/dist/esm/parquetjs/codecs/rle.js +119 -0
- package/dist/esm/parquetjs/codecs/rle.js.map +1 -0
- package/dist/esm/parquetjs/compression.js +61 -0
- package/dist/esm/parquetjs/compression.js.map +1 -0
- package/dist/{parquetjs/encoder/writer.js → esm/parquetjs/encoder/parquet-encoder.js} +8 -106
- package/dist/esm/parquetjs/encoder/parquet-encoder.js.map +1 -0
- package/dist/esm/parquetjs/modules.d.ts +21 -0
- package/dist/esm/parquetjs/parquet-thrift/BoundaryOrder.js +7 -0
- package/dist/esm/parquetjs/parquet-thrift/BoundaryOrder.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/BsonType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/BsonType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnChunk.js +173 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnIndex.js +176 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnMetaData.js +347 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnOrder.js +77 -0
- package/dist/esm/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/CompressionCodec.js +12 -0
- package/dist/esm/parquetjs/parquet-thrift/CompressionCodec.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/ConvertedType.js +26 -0
- package/dist/esm/parquetjs/parquet-thrift/ConvertedType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/DataPageHeader.js +132 -0
- package/dist/esm/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/DataPageHeaderV2.js +187 -0
- package/dist/esm/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/DateType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/DateType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/DecimalType.js +76 -0
- package/dist/esm/parquetjs/parquet-thrift/DecimalType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/DictionaryPageHeader.js +93 -0
- package/dist/esm/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/Encoding.js +12 -0
- package/dist/esm/parquetjs/parquet-thrift/Encoding.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/EnumType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/EnumType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/FieldRepetitionType.js +7 -0
- package/dist/esm/parquetjs/parquet-thrift/FieldRepetitionType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/FileMetaData.js +219 -0
- package/dist/esm/parquetjs/parquet-thrift/FileMetaData.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/IndexPageHeader.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/IntType.js +76 -0
- package/dist/esm/parquetjs/parquet-thrift/IntType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/JsonType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/JsonType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/KeyValue.js +74 -0
- package/dist/esm/parquetjs/parquet-thrift/KeyValue.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/ListType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/ListType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/LogicalType.js +377 -0
- package/dist/esm/parquetjs/parquet-thrift/LogicalType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/MapType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/MapType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/MicroSeconds.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/MilliSeconds.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/NullType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/NullType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/OffsetIndex.js +69 -0
- package/dist/esm/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/PageEncodingStats.js +95 -0
- package/dist/esm/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/PageHeader.js +184 -0
- package/dist/esm/parquetjs/parquet-thrift/PageHeader.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/PageLocation.js +104 -0
- package/dist/esm/parquetjs/parquet-thrift/PageLocation.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/PageType.js +8 -0
- package/dist/esm/parquetjs/parquet-thrift/PageType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/RowGroup.js +145 -0
- package/dist/esm/parquetjs/parquet-thrift/RowGroup.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/SchemaElement.js +211 -0
- package/dist/esm/parquetjs/parquet-thrift/SchemaElement.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/SortingColumn.js +95 -0
- package/dist/esm/parquetjs/parquet-thrift/SortingColumn.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/Statistics.js +145 -0
- package/dist/esm/parquetjs/parquet-thrift/Statistics.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/StringType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/StringType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/TimeType.js +77 -0
- package/dist/esm/parquetjs/parquet-thrift/TimeType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/TimeUnit.js +102 -0
- package/dist/esm/parquetjs/parquet-thrift/TimeUnit.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/TimestampType.js +77 -0
- package/dist/esm/parquetjs/parquet-thrift/TimestampType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/Type.js +12 -0
- package/dist/esm/parquetjs/parquet-thrift/Type.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/TypeDefinedOrder.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/UUIDType.js +31 -0
- package/dist/esm/parquetjs/parquet-thrift/UUIDType.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/index.js +44 -0
- package/dist/esm/parquetjs/parquet-thrift/index.js.map +1 -0
- package/dist/esm/parquetjs/parser/decoders.js +253 -0
- package/dist/esm/parquetjs/parser/decoders.js.map +1 -0
- package/dist/{parquetjs/parser/parquet-envelope-reader.js → esm/parquetjs/parser/parquet-reader.js} +95 -74
- package/dist/esm/parquetjs/parser/parquet-reader.js.map +1 -0
- package/dist/esm/parquetjs/schema/declare.js +12 -0
- package/dist/esm/parquetjs/schema/declare.js.map +1 -0
- package/dist/esm/parquetjs/schema/schema.js +140 -0
- package/dist/esm/parquetjs/schema/schema.js.map +1 -0
- package/dist/esm/parquetjs/schema/shred.js +228 -0
- package/dist/esm/parquetjs/schema/shred.js.map +1 -0
- package/dist/esm/parquetjs/schema/types.js +397 -0
- package/dist/esm/parquetjs/schema/types.js.map +1 -0
- package/dist/esm/parquetjs/utils/file-utils.js +34 -0
- package/dist/esm/parquetjs/utils/file-utils.js.map +1 -0
- package/dist/esm/parquetjs/utils/read-utils.js +90 -0
- package/dist/esm/parquetjs/utils/read-utils.js.map +1 -0
- package/dist/esm/workers/parquet-worker.js +4 -0
- package/dist/esm/workers/parquet-worker.js.map +1 -0
- package/dist/index.d.ts +16 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +58 -15
- package/dist/lib/arrow/convert-columns-to-row-group.d.ts +1 -0
- package/dist/lib/arrow/convert-columns-to-row-group.d.ts.map +1 -0
- package/dist/lib/arrow/convert-columns-to-row-group.js +1 -0
- package/dist/lib/arrow/convert-row-group-to-columns.d.ts +4 -0
- package/dist/lib/arrow/convert-row-group-to-columns.d.ts.map +1 -0
- package/dist/lib/arrow/convert-row-group-to-columns.js +12 -0
- package/dist/lib/arrow/convert-schema-from-parquet.d.ts +9 -0
- package/dist/lib/arrow/convert-schema-from-parquet.d.ts.map +1 -0
- package/dist/lib/arrow/convert-schema-from-parquet.js +86 -0
- package/dist/lib/arrow/convert-schema-to-parquet.d.ts +7 -0
- package/dist/lib/arrow/convert-schema-to-parquet.d.ts.map +1 -0
- package/dist/lib/arrow/convert-schema-to-parquet.js +71 -0
- package/dist/lib/geo/decode-geo-metadata.d.ts +31 -0
- package/dist/lib/geo/decode-geo-metadata.d.ts.map +1 -0
- package/dist/lib/geo/decode-geo-metadata.js +77 -0
- package/dist/lib/geo/geoparquet-schema.d.ts +80 -0
- package/dist/lib/geo/geoparquet-schema.d.ts.map +1 -0
- package/dist/lib/geo/geoparquet-schema.js +69 -0
- package/dist/lib/parsers/parse-parquet-to-columns.d.ts +5 -0
- package/dist/lib/parsers/parse-parquet-to-columns.d.ts.map +1 -0
- package/dist/lib/parsers/parse-parquet-to-columns.js +46 -0
- package/dist/lib/parsers/parse-parquet-to-rows.d.ts +5 -0
- package/dist/lib/parsers/parse-parquet-to-rows.d.ts.map +1 -0
- package/dist/lib/parsers/parse-parquet-to-rows.js +37 -0
- package/dist/lib/wasm/encode-parquet-wasm.d.ts +21 -0
- package/dist/lib/wasm/encode-parquet-wasm.d.ts.map +1 -0
- package/dist/lib/wasm/encode-parquet-wasm.js +30 -0
- package/dist/lib/wasm/load-wasm/index.d.ts +2 -0
- package/dist/lib/wasm/load-wasm/index.d.ts.map +1 -0
- package/dist/lib/wasm/load-wasm/index.js +5 -0
- package/dist/lib/wasm/load-wasm/load-wasm-browser.d.ts +3 -0
- package/dist/lib/wasm/load-wasm/load-wasm-browser.d.ts.map +1 -0
- package/dist/lib/wasm/load-wasm/load-wasm-browser.js +38 -0
- package/dist/lib/wasm/load-wasm/load-wasm-node.d.ts +3 -0
- package/dist/lib/wasm/load-wasm/load-wasm-node.d.ts.map +1 -0
- package/dist/lib/wasm/load-wasm/load-wasm-node.js +31 -0
- package/dist/lib/wasm/parse-parquet-wasm.d.ts +10 -0
- package/dist/lib/wasm/parse-parquet-wasm.d.ts.map +1 -0
- package/dist/lib/wasm/parse-parquet-wasm.js +27 -0
- package/dist/parquet-loader.d.ts +6 -15
- package/dist/parquet-loader.d.ts.map +1 -1
- package/dist/parquet-loader.js +38 -19
- package/dist/parquet-wasm-loader.d.ts +23 -0
- package/dist/parquet-wasm-loader.d.ts.map +1 -0
- package/dist/parquet-wasm-loader.js +27 -0
- package/dist/parquet-wasm-writer.d.ts +3 -0
- package/dist/parquet-wasm-writer.d.ts.map +1 -0
- package/dist/parquet-wasm-writer.js +23 -0
- package/dist/parquet-worker.js +27 -25
- package/dist/parquet-worker.js.map +3 -3
- package/dist/parquet-writer.d.ts +3 -2
- package/dist/parquet-writer.d.ts.map +1 -1
- package/dist/parquet-writer.js +18 -14
- package/dist/parquetjs/codecs/declare.js +2 -2
- package/dist/parquetjs/codecs/dictionary.js +12 -10
- package/dist/parquetjs/codecs/index.js +54 -22
- package/dist/parquetjs/codecs/plain.js +173 -232
- package/dist/parquetjs/codecs/rle.js +134 -140
- package/dist/parquetjs/compression.d.ts +3 -0
- package/dist/parquetjs/compression.d.ts.map +1 -1
- package/dist/parquetjs/compression.js +169 -48
- package/dist/parquetjs/encoder/{writer.d.ts → parquet-encoder.d.ts} +15 -23
- package/dist/parquetjs/encoder/parquet-encoder.d.ts.map +1 -0
- package/dist/parquetjs/encoder/parquet-encoder.js +484 -0
- package/dist/parquetjs/parquet-thrift/BoundaryOrder.js +14 -7
- package/dist/parquetjs/parquet-thrift/BsonType.js +60 -37
- package/dist/parquetjs/parquet-thrift/ColumnChunk.js +209 -215
- package/dist/parquetjs/parquet-thrift/ColumnIndex.js +210 -211
- package/dist/parquetjs/parquet-thrift/ColumnMetaData.js +394 -421
- package/dist/parquetjs/parquet-thrift/ColumnOrder.js +102 -89
- package/dist/parquetjs/parquet-thrift/CompressionCodec.js +19 -12
- package/dist/parquetjs/parquet-thrift/ConvertedType.js +33 -26
- package/dist/parquetjs/parquet-thrift/DataPageHeader.js +165 -161
- package/dist/parquetjs/parquet-thrift/DataPageHeaderV2.js +228 -234
- package/dist/parquetjs/parquet-thrift/DateType.js +60 -37
- package/dist/parquetjs/parquet-thrift/DecimalType.js +104 -90
- package/dist/parquetjs/parquet-thrift/DictionaryPageHeader.js +121 -112
- package/dist/parquetjs/parquet-thrift/Encoding.js +19 -12
- package/dist/parquetjs/parquet-thrift/EnumType.js +60 -37
- package/dist/parquetjs/parquet-thrift/FieldRepetitionType.js +14 -7
- package/dist/parquetjs/parquet-thrift/FileMetaData.js +253 -263
- package/dist/parquetjs/parquet-thrift/IndexPageHeader.js +60 -37
- package/dist/parquetjs/parquet-thrift/IntType.js +104 -90
- package/dist/parquetjs/parquet-thrift/JsonType.js +60 -37
- package/dist/parquetjs/parquet-thrift/KeyValue.js +101 -88
- package/dist/parquetjs/parquet-thrift/ListType.js +60 -37
- package/dist/parquetjs/parquet-thrift/LogicalType.js +366 -449
- package/dist/parquetjs/parquet-thrift/MapType.js +60 -37
- package/dist/parquetjs/parquet-thrift/MicroSeconds.js +60 -37
- package/dist/parquetjs/parquet-thrift/MilliSeconds.js +60 -37
- package/dist/parquetjs/parquet-thrift/NullType.js +60 -37
- package/dist/parquetjs/parquet-thrift/OffsetIndex.js +96 -80
- package/dist/parquetjs/parquet-thrift/PageEncodingStats.js +126 -114
- package/dist/parquetjs/parquet-thrift/PageHeader.js +218 -231
- package/dist/parquetjs/parquet-thrift/PageLocation.js +140 -123
- package/dist/parquetjs/parquet-thrift/PageType.js +15 -8
- package/dist/parquetjs/parquet-thrift/RowGroup.js +179 -171
- package/dist/parquetjs/parquet-thrift/SchemaElement.js +241 -268
- package/dist/parquetjs/parquet-thrift/SortingColumn.js +126 -114
- package/dist/parquetjs/parquet-thrift/Statistics.js +175 -178
- package/dist/parquetjs/parquet-thrift/StringType.js +60 -37
- package/dist/parquetjs/parquet-thrift/TimeType.js +105 -91
- package/dist/parquetjs/parquet-thrift/TimeUnit.js +124 -119
- package/dist/parquetjs/parquet-thrift/TimestampType.js +105 -91
- package/dist/parquetjs/parquet-thrift/Type.js +19 -12
- package/dist/parquetjs/parquet-thrift/TypeDefinedOrder.js +60 -37
- package/dist/parquetjs/parquet-thrift/UUIDType.js +60 -37
- package/dist/parquetjs/parquet-thrift/index.js +65 -44
- package/dist/parquetjs/parser/decoders.d.ts +2 -2
- package/dist/parquetjs/parser/decoders.d.ts.map +1 -1
- package/dist/parquetjs/parser/decoders.js +301 -283
- package/dist/parquetjs/parser/parquet-reader.d.ts +47 -57
- package/dist/parquetjs/parser/parquet-reader.d.ts.map +1 -1
- package/dist/parquetjs/parser/parquet-reader.js +193 -113
- package/dist/parquetjs/schema/declare.d.ts +26 -18
- package/dist/parquetjs/schema/declare.d.ts.map +1 -1
- package/dist/parquetjs/schema/declare.js +11 -12
- package/dist/parquetjs/schema/schema.d.ts +4 -4
- package/dist/parquetjs/schema/schema.d.ts.map +1 -1
- package/dist/parquetjs/schema/schema.js +148 -162
- package/dist/parquetjs/schema/shred.d.ts +33 -12
- package/dist/parquetjs/schema/shred.d.ts.map +1 -1
- package/dist/parquetjs/schema/shred.js +340 -147
- package/dist/parquetjs/schema/types.d.ts +2 -2
- package/dist/parquetjs/schema/types.d.ts.map +1 -1
- package/dist/parquetjs/schema/types.js +355 -415
- package/dist/parquetjs/utils/file-utils.d.ts +5 -4
- package/dist/parquetjs/utils/file-utils.d.ts.map +1 -1
- package/dist/parquetjs/utils/file-utils.js +37 -28
- package/dist/parquetjs/utils/read-utils.js +99 -95
- package/dist/workers/parquet-worker.js +5 -4
- package/package.json +17 -12
- package/src/index.ts +58 -7
- package/src/lib/arrow/convert-columns-to-row-group.ts +0 -0
- package/src/lib/arrow/convert-row-group-to-columns.ts +15 -0
- package/src/lib/arrow/convert-schema-from-parquet.ts +104 -0
- package/src/lib/arrow/convert-schema-to-parquet.ts +90 -0
- package/src/lib/geo/decode-geo-metadata.ts +108 -0
- package/src/lib/geo/geoparquet-schema.ts +69 -0
- package/src/lib/parsers/parse-parquet-to-columns.ts +60 -0
- package/src/lib/parsers/parse-parquet-to-rows.ts +45 -0
- package/src/lib/wasm/encode-parquet-wasm.ts +40 -0
- package/src/lib/wasm/load-wasm/index.ts +1 -0
- package/src/lib/wasm/load-wasm/load-wasm-browser.ts +15 -0
- package/src/lib/wasm/load-wasm/load-wasm-node.ts +5 -0
- package/src/lib/wasm/parse-parquet-wasm.ts +42 -0
- package/src/lib/wip/convert-schema-deep.java.disabled +910 -0
- package/src/lib/wip/convert-schema-deep.rs.disabled +976 -0
- package/src/parquet-loader.ts +30 -3
- package/src/parquet-wasm-loader.ts +36 -0
- package/src/parquet-wasm-writer.ts +24 -0
- package/src/parquet-writer.ts +4 -1
- package/src/parquetjs/compression.ts +24 -7
- package/src/parquetjs/encoder/{writer.ts → parquet-encoder.ts} +33 -38
- package/src/parquetjs/parser/decoders.ts +3 -3
- package/src/parquetjs/parser/parquet-reader.ts +239 -122
- package/src/parquetjs/schema/declare.ts +22 -13
- package/src/parquetjs/schema/schema.ts +8 -8
- package/src/parquetjs/schema/shred.ts +239 -71
- package/src/parquetjs/schema/types.ts +25 -30
- package/src/parquetjs/utils/file-utils.ts +3 -4
- package/dist/bundle.js.map +0 -1
- package/dist/constants.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/convert-schema.d.ts +0 -8
- package/dist/lib/convert-schema.d.ts.map +0 -1
- package/dist/lib/convert-schema.js +0 -71
- package/dist/lib/convert-schema.js.map +0 -1
- package/dist/lib/parse-parquet.d.ts +0 -4
- package/dist/lib/parse-parquet.d.ts.map +0 -1
- package/dist/lib/parse-parquet.js +0 -28
- package/dist/lib/parse-parquet.js.map +0 -1
- package/dist/lib/read-array-buffer.d.ts +0 -19
- package/dist/lib/read-array-buffer.d.ts.map +0 -1
- package/dist/lib/read-array-buffer.js +0 -9
- package/dist/lib/read-array-buffer.js.map +0 -1
- package/dist/parquet-loader.js.map +0 -1
- package/dist/parquet-writer.js.map +0 -1
- package/dist/parquetjs/codecs/declare.js.map +0 -1
- package/dist/parquetjs/codecs/dictionary.js.map +0 -1
- package/dist/parquetjs/codecs/index.js.map +0 -1
- package/dist/parquetjs/codecs/plain.js.map +0 -1
- package/dist/parquetjs/codecs/rle.js.map +0 -1
- package/dist/parquetjs/compression.js.map +0 -1
- package/dist/parquetjs/encoder/writer.d.ts.map +0 -1
- package/dist/parquetjs/encoder/writer.js.map +0 -1
- package/dist/parquetjs/file.d.ts +0 -10
- package/dist/parquetjs/file.d.ts.map +0 -1
- package/dist/parquetjs/file.js +0 -80
- package/dist/parquetjs/file.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/BoundaryOrder.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/BsonType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/ColumnChunk.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/ColumnIndex.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/ColumnMetaData.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/ColumnOrder.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/CompressionCodec.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/ConvertedType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/DataPageHeader.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/DateType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/DecimalType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/Encoding.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/EnumType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/FieldRepetitionType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/FileMetaData.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/IndexPageHeader.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/IntType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/JsonType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/KeyValue.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/ListType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/LogicalType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/MapType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/MicroSeconds.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/MilliSeconds.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/NullType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/OffsetIndex.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/PageEncodingStats.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/PageHeader.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/PageLocation.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/PageType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/RowGroup.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/SchemaElement.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/SortingColumn.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/Statistics.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/StringType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/TimeType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/TimeUnit.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/TimestampType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/Type.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/UUIDType.js.map +0 -1
- package/dist/parquetjs/parquet-thrift/index.js.map +0 -1
- package/dist/parquetjs/parser/decoders.js.map +0 -1
- package/dist/parquetjs/parser/parquet-cursor.d.ts +0 -36
- package/dist/parquetjs/parser/parquet-cursor.d.ts.map +0 -1
- package/dist/parquetjs/parser/parquet-cursor.js +0 -90
- package/dist/parquetjs/parser/parquet-cursor.js.map +0 -1
- package/dist/parquetjs/parser/parquet-envelope-reader.d.ts +0 -40
- package/dist/parquetjs/parser/parquet-envelope-reader.d.ts.map +0 -1
- package/dist/parquetjs/parser/parquet-envelope-reader.js.map +0 -1
- package/dist/parquetjs/parser/parquet-reader.js.map +0 -1
- package/dist/parquetjs/schema/declare.js.map +0 -1
- package/dist/parquetjs/schema/schema.js.map +0 -1
- package/dist/parquetjs/schema/shred.js.map +0 -1
- package/dist/parquetjs/schema/types.js.map +0 -1
- package/dist/parquetjs/utils/buffer-utils.d.ts +0 -10
- package/dist/parquetjs/utils/buffer-utils.d.ts.map +0 -1
- package/dist/parquetjs/utils/buffer-utils.js +0 -12
- package/dist/parquetjs/utils/buffer-utils.js.map +0 -1
- package/dist/parquetjs/utils/file-utils.js.map +0 -1
- package/dist/parquetjs/utils/read-utils.js.map +0 -1
- package/dist/workers/parquet-worker.js.map +0 -1
- package/src/lib/convert-schema.ts +0 -95
- package/src/lib/parse-parquet.ts +0 -27
- package/src/lib/read-array-buffer.ts +0 -31
- package/src/parquetjs/file.ts +0 -90
- package/src/parquetjs/parser/parquet-cursor.ts +0 -94
- package/src/parquetjs/parser/parquet-envelope-reader.ts +0 -199
- package/src/parquetjs/utils/buffer-utils.ts +0 -18
- /package/dist/{parquetjs → es5/parquetjs}/LICENSE +0 -0
- /package/dist/{parquetjs → es5/parquetjs}/modules.d.ts +0 -0
|
@@ -0,0 +1,397 @@
|
|
|
1
|
+
import { BSONLoader, BSONWriter } from '@loaders.gl/bson';
|
|
2
|
+
export const PARQUET_LOGICAL_TYPES = {
|
|
3
|
+
BOOLEAN: {
|
|
4
|
+
primitiveType: 'BOOLEAN',
|
|
5
|
+
toPrimitive: toPrimitive_BOOLEAN,
|
|
6
|
+
fromPrimitive: fromPrimitive_BOOLEAN
|
|
7
|
+
},
|
|
8
|
+
INT32: {
|
|
9
|
+
primitiveType: 'INT32',
|
|
10
|
+
toPrimitive: toPrimitive_INT32
|
|
11
|
+
},
|
|
12
|
+
INT64: {
|
|
13
|
+
primitiveType: 'INT64',
|
|
14
|
+
toPrimitive: toPrimitive_INT64
|
|
15
|
+
},
|
|
16
|
+
INT96: {
|
|
17
|
+
primitiveType: 'INT96',
|
|
18
|
+
toPrimitive: toPrimitive_INT96
|
|
19
|
+
},
|
|
20
|
+
FLOAT: {
|
|
21
|
+
primitiveType: 'FLOAT',
|
|
22
|
+
toPrimitive: toPrimitive_FLOAT
|
|
23
|
+
},
|
|
24
|
+
DOUBLE: {
|
|
25
|
+
primitiveType: 'DOUBLE',
|
|
26
|
+
toPrimitive: toPrimitive_DOUBLE
|
|
27
|
+
},
|
|
28
|
+
BYTE_ARRAY: {
|
|
29
|
+
primitiveType: 'BYTE_ARRAY',
|
|
30
|
+
toPrimitive: toPrimitive_BYTE_ARRAY
|
|
31
|
+
},
|
|
32
|
+
FIXED_LEN_BYTE_ARRAY: {
|
|
33
|
+
primitiveType: 'FIXED_LEN_BYTE_ARRAY',
|
|
34
|
+
toPrimitive: toPrimitive_BYTE_ARRAY
|
|
35
|
+
},
|
|
36
|
+
UTF8: {
|
|
37
|
+
primitiveType: 'BYTE_ARRAY',
|
|
38
|
+
originalType: 'UTF8',
|
|
39
|
+
toPrimitive: toPrimitive_UTF8,
|
|
40
|
+
fromPrimitive: fromPrimitive_UTF8
|
|
41
|
+
},
|
|
42
|
+
TIME_MILLIS: {
|
|
43
|
+
primitiveType: 'INT32',
|
|
44
|
+
originalType: 'TIME_MILLIS',
|
|
45
|
+
toPrimitive: toPrimitive_TIME_MILLIS
|
|
46
|
+
},
|
|
47
|
+
TIME_MICROS: {
|
|
48
|
+
primitiveType: 'INT64',
|
|
49
|
+
originalType: 'TIME_MICROS',
|
|
50
|
+
toPrimitive: toPrimitive_TIME_MICROS
|
|
51
|
+
},
|
|
52
|
+
DATE: {
|
|
53
|
+
primitiveType: 'INT32',
|
|
54
|
+
originalType: 'DATE',
|
|
55
|
+
toPrimitive: toPrimitive_DATE,
|
|
56
|
+
fromPrimitive: fromPrimitive_DATE
|
|
57
|
+
},
|
|
58
|
+
TIMESTAMP_MILLIS: {
|
|
59
|
+
primitiveType: 'INT64',
|
|
60
|
+
originalType: 'TIMESTAMP_MILLIS',
|
|
61
|
+
toPrimitive: toPrimitive_TIMESTAMP_MILLIS,
|
|
62
|
+
fromPrimitive: fromPrimitive_TIMESTAMP_MILLIS
|
|
63
|
+
},
|
|
64
|
+
TIMESTAMP_MICROS: {
|
|
65
|
+
primitiveType: 'INT64',
|
|
66
|
+
originalType: 'TIMESTAMP_MICROS',
|
|
67
|
+
toPrimitive: toPrimitive_TIMESTAMP_MICROS,
|
|
68
|
+
fromPrimitive: fromPrimitive_TIMESTAMP_MICROS
|
|
69
|
+
},
|
|
70
|
+
UINT_8: {
|
|
71
|
+
primitiveType: 'INT32',
|
|
72
|
+
originalType: 'UINT_8',
|
|
73
|
+
toPrimitive: toPrimitive_UINT8
|
|
74
|
+
},
|
|
75
|
+
UINT_16: {
|
|
76
|
+
primitiveType: 'INT32',
|
|
77
|
+
originalType: 'UINT_16',
|
|
78
|
+
toPrimitive: toPrimitive_UINT16
|
|
79
|
+
},
|
|
80
|
+
UINT_32: {
|
|
81
|
+
primitiveType: 'INT32',
|
|
82
|
+
originalType: 'UINT_32',
|
|
83
|
+
toPrimitive: toPrimitive_UINT32
|
|
84
|
+
},
|
|
85
|
+
UINT_64: {
|
|
86
|
+
primitiveType: 'INT64',
|
|
87
|
+
originalType: 'UINT_64',
|
|
88
|
+
toPrimitive: toPrimitive_UINT64
|
|
89
|
+
},
|
|
90
|
+
INT_8: {
|
|
91
|
+
primitiveType: 'INT32',
|
|
92
|
+
originalType: 'INT_8',
|
|
93
|
+
toPrimitive: toPrimitive_INT8
|
|
94
|
+
},
|
|
95
|
+
INT_16: {
|
|
96
|
+
primitiveType: 'INT32',
|
|
97
|
+
originalType: 'INT_16',
|
|
98
|
+
toPrimitive: toPrimitive_INT16
|
|
99
|
+
},
|
|
100
|
+
INT_32: {
|
|
101
|
+
primitiveType: 'INT32',
|
|
102
|
+
originalType: 'INT_32',
|
|
103
|
+
toPrimitive: toPrimitive_INT32
|
|
104
|
+
},
|
|
105
|
+
INT_64: {
|
|
106
|
+
primitiveType: 'INT64',
|
|
107
|
+
originalType: 'INT_64',
|
|
108
|
+
toPrimitive: toPrimitive_INT64
|
|
109
|
+
},
|
|
110
|
+
JSON: {
|
|
111
|
+
primitiveType: 'BYTE_ARRAY',
|
|
112
|
+
originalType: 'JSON',
|
|
113
|
+
toPrimitive: toPrimitive_JSON,
|
|
114
|
+
fromPrimitive: fromPrimitive_JSON
|
|
115
|
+
},
|
|
116
|
+
BSON: {
|
|
117
|
+
primitiveType: 'BYTE_ARRAY',
|
|
118
|
+
originalType: 'BSON',
|
|
119
|
+
toPrimitive: toPrimitive_BSON,
|
|
120
|
+
fromPrimitive: fromPrimitive_BSON
|
|
121
|
+
},
|
|
122
|
+
INTERVAL: {
|
|
123
|
+
primitiveType: 'FIXED_LEN_BYTE_ARRAY',
|
|
124
|
+
originalType: 'INTERVAL',
|
|
125
|
+
typeLength: 12,
|
|
126
|
+
toPrimitive: toPrimitive_INTERVAL,
|
|
127
|
+
fromPrimitive: fromPrimitive_INTERVAL
|
|
128
|
+
},
|
|
129
|
+
DECIMAL_INT32: {
|
|
130
|
+
primitiveType: 'INT32',
|
|
131
|
+
originalType: 'DECIMAL_INT32',
|
|
132
|
+
toPrimitive: decimalToPrimitive_INT32,
|
|
133
|
+
fromPrimitive: decimalFromPrimitive_INT
|
|
134
|
+
},
|
|
135
|
+
DECIMAL_INT64: {
|
|
136
|
+
primitiveType: 'INT64',
|
|
137
|
+
originalType: 'DECIMAL_INT64',
|
|
138
|
+
toPrimitive: decimalToPrimitive_INT64,
|
|
139
|
+
fromPrimitive: decimalFromPrimitive_INT
|
|
140
|
+
},
|
|
141
|
+
DECIMAL_BYTE_ARRAY: {
|
|
142
|
+
primitiveType: 'BYTE_ARRAY',
|
|
143
|
+
originalType: 'DECIMAL_BYTE_ARRAY',
|
|
144
|
+
toPrimitive: decimalToPrimitive_BYTE_ARRAY,
|
|
145
|
+
fromPrimitive: decimalFromPrimitive_BYTE_ARRAY
|
|
146
|
+
},
|
|
147
|
+
DECIMAL_FIXED_LEN_BYTE_ARRAY: {
|
|
148
|
+
primitiveType: 'FIXED_LEN_BYTE_ARRAY',
|
|
149
|
+
originalType: 'DECIMAL_FIXED_LEN_BYTE_ARRAY',
|
|
150
|
+
toPrimitive: decimalToPrimitive_BYTE_ARRAY,
|
|
151
|
+
fromPrimitive: decimalFromPrimitive_BYTE_ARRAY
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
export function toPrimitive(type, value, field) {
|
|
155
|
+
if (!(type in PARQUET_LOGICAL_TYPES)) {
|
|
156
|
+
throw new Error("invalid type: ".concat(type));
|
|
157
|
+
}
|
|
158
|
+
return PARQUET_LOGICAL_TYPES[type].toPrimitive(value, field);
|
|
159
|
+
}
|
|
160
|
+
export function fromPrimitive(type, value, field) {
|
|
161
|
+
if (!(type in PARQUET_LOGICAL_TYPES)) {
|
|
162
|
+
throw new Error("invalid type: ".concat(type));
|
|
163
|
+
}
|
|
164
|
+
if ('fromPrimitive' in PARQUET_LOGICAL_TYPES[type]) {
|
|
165
|
+
var _PARQUET_LOGICAL_TYPE, _PARQUET_LOGICAL_TYPE2;
|
|
166
|
+
return (_PARQUET_LOGICAL_TYPE = (_PARQUET_LOGICAL_TYPE2 = PARQUET_LOGICAL_TYPES[type]).fromPrimitive) === null || _PARQUET_LOGICAL_TYPE === void 0 ? void 0 : _PARQUET_LOGICAL_TYPE.call(_PARQUET_LOGICAL_TYPE2, value, field);
|
|
167
|
+
}
|
|
168
|
+
return value;
|
|
169
|
+
}
|
|
170
|
+
function toPrimitive_BOOLEAN(value) {
|
|
171
|
+
return Boolean(value);
|
|
172
|
+
}
|
|
173
|
+
function fromPrimitive_BOOLEAN(value) {
|
|
174
|
+
return Boolean(value);
|
|
175
|
+
}
|
|
176
|
+
function toPrimitive_FLOAT(value) {
|
|
177
|
+
const v = parseFloat(value);
|
|
178
|
+
if (isNaN(v)) {
|
|
179
|
+
throw new Error("invalid value for FLOAT: ".concat(value));
|
|
180
|
+
}
|
|
181
|
+
return v;
|
|
182
|
+
}
|
|
183
|
+
function toPrimitive_DOUBLE(value) {
|
|
184
|
+
const v = parseFloat(value);
|
|
185
|
+
if (isNaN(v)) {
|
|
186
|
+
throw new Error("invalid value for DOUBLE: ".concat(value));
|
|
187
|
+
}
|
|
188
|
+
return v;
|
|
189
|
+
}
|
|
190
|
+
function toPrimitive_INT8(value) {
|
|
191
|
+
const v = parseInt(value, 10);
|
|
192
|
+
if (v < -0x80 || v > 0x7f || isNaN(v)) {
|
|
193
|
+
throw new Error("invalid value for INT8: ".concat(value));
|
|
194
|
+
}
|
|
195
|
+
return v;
|
|
196
|
+
}
|
|
197
|
+
function toPrimitive_UINT8(value) {
|
|
198
|
+
const v = parseInt(value, 10);
|
|
199
|
+
if (v < 0 || v > 0xff || isNaN(v)) {
|
|
200
|
+
throw new Error("invalid value for UINT8: ".concat(value));
|
|
201
|
+
}
|
|
202
|
+
return v;
|
|
203
|
+
}
|
|
204
|
+
function toPrimitive_INT16(value) {
|
|
205
|
+
const v = parseInt(value, 10);
|
|
206
|
+
if (v < -0x8000 || v > 0x7fff || isNaN(v)) {
|
|
207
|
+
throw new Error("invalid value for INT16: ".concat(value));
|
|
208
|
+
}
|
|
209
|
+
return v;
|
|
210
|
+
}
|
|
211
|
+
function toPrimitive_UINT16(value) {
|
|
212
|
+
const v = parseInt(value, 10);
|
|
213
|
+
if (v < 0 || v > 0xffff || isNaN(v)) {
|
|
214
|
+
throw new Error("invalid value for UINT16: ".concat(value));
|
|
215
|
+
}
|
|
216
|
+
return v;
|
|
217
|
+
}
|
|
218
|
+
function toPrimitive_INT32(value) {
|
|
219
|
+
const v = parseInt(value, 10);
|
|
220
|
+
if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
|
|
221
|
+
throw new Error("invalid value for INT32: ".concat(value));
|
|
222
|
+
}
|
|
223
|
+
return v;
|
|
224
|
+
}
|
|
225
|
+
function decimalToPrimitive_INT32(value, field) {
|
|
226
|
+
const primitiveValue = value * 10 ** (field.scale || 0);
|
|
227
|
+
const v = Math.round(primitiveValue * 10 ** -field.presision % 1 * 10 ** field.presision);
|
|
228
|
+
if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
|
|
229
|
+
throw new Error("invalid value for INT32: ".concat(value));
|
|
230
|
+
}
|
|
231
|
+
return v;
|
|
232
|
+
}
|
|
233
|
+
function toPrimitive_UINT32(value) {
|
|
234
|
+
const v = parseInt(value, 10);
|
|
235
|
+
if (v < 0 || v > 0xffffffffffff || isNaN(v)) {
|
|
236
|
+
throw new Error("invalid value for UINT32: ".concat(value));
|
|
237
|
+
}
|
|
238
|
+
return v;
|
|
239
|
+
}
|
|
240
|
+
function toPrimitive_INT64(value) {
|
|
241
|
+
const v = parseInt(value, 10);
|
|
242
|
+
if (isNaN(v)) {
|
|
243
|
+
throw new Error("invalid value for INT64: ".concat(value));
|
|
244
|
+
}
|
|
245
|
+
return v;
|
|
246
|
+
}
|
|
247
|
+
function decimalToPrimitive_INT64(value, field) {
|
|
248
|
+
const primitiveValue = value * 10 ** (field.scale || 0);
|
|
249
|
+
const v = Math.round(primitiveValue * 10 ** -field.presision % 1 * 10 ** field.presision);
|
|
250
|
+
if (isNaN(v)) {
|
|
251
|
+
throw new Error("invalid value for INT64: ".concat(value));
|
|
252
|
+
}
|
|
253
|
+
return v;
|
|
254
|
+
}
|
|
255
|
+
function toPrimitive_UINT64(value) {
|
|
256
|
+
const v = parseInt(value, 10);
|
|
257
|
+
if (v < 0 || isNaN(v)) {
|
|
258
|
+
throw new Error("invalid value for UINT64: ".concat(value));
|
|
259
|
+
}
|
|
260
|
+
return v;
|
|
261
|
+
}
|
|
262
|
+
function toPrimitive_INT96(value) {
|
|
263
|
+
const v = parseInt(value, 10);
|
|
264
|
+
if (isNaN(v)) {
|
|
265
|
+
throw new Error("invalid value for INT96: ".concat(value));
|
|
266
|
+
}
|
|
267
|
+
return v;
|
|
268
|
+
}
|
|
269
|
+
function toPrimitive_BYTE_ARRAY(value) {
|
|
270
|
+
return Buffer.from(value);
|
|
271
|
+
}
|
|
272
|
+
function decimalToPrimitive_BYTE_ARRAY(value) {
|
|
273
|
+
return Buffer.from(value);
|
|
274
|
+
}
|
|
275
|
+
function toPrimitive_UTF8(value) {
|
|
276
|
+
return Buffer.from(value, 'utf8');
|
|
277
|
+
}
|
|
278
|
+
function fromPrimitive_UTF8(value) {
|
|
279
|
+
return value.toString();
|
|
280
|
+
}
|
|
281
|
+
function toPrimitive_JSON(value) {
|
|
282
|
+
return Buffer.from(JSON.stringify(value));
|
|
283
|
+
}
|
|
284
|
+
function fromPrimitive_JSON(value) {
|
|
285
|
+
return JSON.parse(value);
|
|
286
|
+
}
|
|
287
|
+
function toPrimitive_BSON(value) {
|
|
288
|
+
var _BSONWriter$encodeSyn;
|
|
289
|
+
const arrayBuffer = (_BSONWriter$encodeSyn = BSONWriter.encodeSync) === null || _BSONWriter$encodeSyn === void 0 ? void 0 : _BSONWriter$encodeSyn.call(BSONWriter, value);
|
|
290
|
+
return Buffer.from(arrayBuffer);
|
|
291
|
+
}
|
|
292
|
+
function fromPrimitive_BSON(value) {
|
|
293
|
+
var _BSONLoader$parseSync;
|
|
294
|
+
return (_BSONLoader$parseSync = BSONLoader.parseSync) === null || _BSONLoader$parseSync === void 0 ? void 0 : _BSONLoader$parseSync.call(BSONLoader, value);
|
|
295
|
+
}
|
|
296
|
+
function toPrimitive_TIME_MILLIS(value) {
|
|
297
|
+
const v = parseInt(value, 10);
|
|
298
|
+
if (v < 0 || v > 0xffffffffffffffff || isNaN(v)) {
|
|
299
|
+
throw new Error("invalid value for TIME_MILLIS: ".concat(value));
|
|
300
|
+
}
|
|
301
|
+
return v;
|
|
302
|
+
}
|
|
303
|
+
function toPrimitive_TIME_MICROS(value) {
|
|
304
|
+
const v = parseInt(value, 10);
|
|
305
|
+
if (v < 0 || isNaN(v)) {
|
|
306
|
+
throw new Error("invalid value for TIME_MICROS: ".concat(value));
|
|
307
|
+
}
|
|
308
|
+
return v;
|
|
309
|
+
}
|
|
310
|
+
const kMillisPerDay = 86400000;
|
|
311
|
+
function toPrimitive_DATE(value) {
|
|
312
|
+
if (value instanceof Date) {
|
|
313
|
+
return value.getTime() / kMillisPerDay;
|
|
314
|
+
}
|
|
315
|
+
{
|
|
316
|
+
const v = parseInt(value, 10);
|
|
317
|
+
if (v < 0 || isNaN(v)) {
|
|
318
|
+
throw new Error("invalid value for DATE: ".concat(value));
|
|
319
|
+
}
|
|
320
|
+
return v;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
function fromPrimitive_DATE(value) {
|
|
324
|
+
return new Date(value * kMillisPerDay);
|
|
325
|
+
}
|
|
326
|
+
function toPrimitive_TIMESTAMP_MILLIS(value) {
|
|
327
|
+
if (value instanceof Date) {
|
|
328
|
+
return value.getTime();
|
|
329
|
+
}
|
|
330
|
+
{
|
|
331
|
+
const v = parseInt(value, 10);
|
|
332
|
+
if (v < 0 || isNaN(v)) {
|
|
333
|
+
throw new Error("invalid value for TIMESTAMP_MILLIS: ".concat(value));
|
|
334
|
+
}
|
|
335
|
+
return v;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
function fromPrimitive_TIMESTAMP_MILLIS(value) {
|
|
339
|
+
return new Date(value);
|
|
340
|
+
}
|
|
341
|
+
function toPrimitive_TIMESTAMP_MICROS(value) {
|
|
342
|
+
if (value instanceof Date) {
|
|
343
|
+
return value.getTime() * 1000;
|
|
344
|
+
}
|
|
345
|
+
{
|
|
346
|
+
const v = parseInt(value, 10);
|
|
347
|
+
if (v < 0 || isNaN(v)) {
|
|
348
|
+
throw new Error("invalid value for TIMESTAMP_MICROS: ".concat(value));
|
|
349
|
+
}
|
|
350
|
+
return v;
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
function fromPrimitive_TIMESTAMP_MICROS(value) {
|
|
354
|
+
return new Date(value / 1000);
|
|
355
|
+
}
|
|
356
|
+
function toPrimitive_INTERVAL(value) {
|
|
357
|
+
if (!value.months || !value.days || !value.milliseconds) {
|
|
358
|
+
throw new Error('value for INTERVAL must be object { months: ..., days: ..., milliseconds: ... }');
|
|
359
|
+
}
|
|
360
|
+
const buf = Buffer.alloc(12);
|
|
361
|
+
buf.writeUInt32LE(value.months, 0);
|
|
362
|
+
buf.writeUInt32LE(value.days, 4);
|
|
363
|
+
buf.writeUInt32LE(value.milliseconds, 8);
|
|
364
|
+
return buf;
|
|
365
|
+
}
|
|
366
|
+
function fromPrimitive_INTERVAL(value) {
|
|
367
|
+
const buf = Buffer.from(value);
|
|
368
|
+
const months = buf.readUInt32LE(0);
|
|
369
|
+
const days = buf.readUInt32LE(4);
|
|
370
|
+
const millis = buf.readUInt32LE(8);
|
|
371
|
+
return {
|
|
372
|
+
months,
|
|
373
|
+
days,
|
|
374
|
+
milliseconds: millis
|
|
375
|
+
};
|
|
376
|
+
}
|
|
377
|
+
function decimalFromPrimitive_INT(value, field) {
|
|
378
|
+
const presisionInt = Math.round(value * 10 ** -field.presision % 1 * 10 ** field.presision);
|
|
379
|
+
return presisionInt * 10 ** -(field.scale || 0);
|
|
380
|
+
}
|
|
381
|
+
function decimalFromPrimitive_BYTE_ARRAY(value, field) {
|
|
382
|
+
let number = 0;
|
|
383
|
+
if (value.length <= 4) {
|
|
384
|
+
for (let i = 0; i < value.length; i++) {
|
|
385
|
+
const component = value[i] << 8 * (value.length - i - 1);
|
|
386
|
+
number += component;
|
|
387
|
+
}
|
|
388
|
+
} else {
|
|
389
|
+
for (let i = 0; i < value.length; i++) {
|
|
390
|
+
const component = value[i] * 2 ** (8 * (value.length - 1 - i));
|
|
391
|
+
number += component;
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
const presisionInt = Math.round(number * 10 ** -field.presision % 1 * 10 ** field.presision);
|
|
395
|
+
return presisionInt * 10 ** -(field.scale || 0);
|
|
396
|
+
}
|
|
397
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","names":["BSONLoader","BSONWriter","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","concat","_PARQUET_LOGICAL_TYPE","_PARQUET_LOGICAL_TYPE2","call","Boolean","v","parseFloat","isNaN","parseInt","primitiveValue","scale","Math","round","presision","Buffer","from","toString","stringify","parse","_BSONWriter$encodeSyn","arrayBuffer","encodeSync","_BSONLoader$parseSync","parseSync","kMillisPerDay","Date","getTime","months","days","milliseconds","buf","alloc","writeUInt32LE","readUInt32LE","millis","presisionInt","number","length","i","component"],"sources":["../../../../src/parquetjs/schema/types.ts"],"sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\n/* eslint-disable camelcase */\nimport {BSONLoader, BSONWriter} from '@loaders.gl/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: unknown, field?: ParquetField): unknown {\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: unknown, 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: unknown): boolean {\n return Boolean(value);\n}\n\nfunction fromPrimitive_BOOLEAN(value: any): boolean {\n return Boolean(value);\n}\n\nfunction toPrimitive_FLOAT(value: any): number {\n const v = parseFloat(value);\n if (isNaN(v)) {\n throw new Error(`invalid value for FLOAT: ${value}`);\n }\n return v;\n}\n\nfunction toPrimitive_DOUBLE(value: any): number {\n const v = parseFloat(value);\n if (isNaN(v)) {\n throw new Error(`invalid value for DOUBLE: ${value}`);\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): number {\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 return v;\n}\n\nfunction toPrimitive_UINT32(value: any): number {\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 return v;\n}\n\nfunction toPrimitive_INT64(value: any): number {\n const v = parseInt(value, 10);\n if (isNaN(v)) {\n throw new Error(`invalid value for INT64: ${value}`);\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): Buffer {\n return Buffer.from(value);\n}\n\nfunction decimalToPrimitive_BYTE_ARRAY(value: any): Buffer {\n // TBD\n return Buffer.from(value);\n}\n\nfunction toPrimitive_UTF8(value: any): Buffer {\n return Buffer.from(value, 'utf8');\n}\n\nfunction fromPrimitive_UTF8(value: any): string {\n return value.toString();\n}\n\nfunction toPrimitive_JSON(value: any): Buffer {\n return Buffer.from(JSON.stringify(value));\n}\n\nfunction fromPrimitive_JSON(value: any): unknown {\n return JSON.parse(value);\n}\n\nfunction toPrimitive_BSON(value: any): Buffer {\n const arrayBuffer = BSONWriter.encodeSync?.(value) as ArrayBuffer;\n return Buffer.from(arrayBuffer);\n}\n\nfunction fromPrimitive_BSON(value: any) {\n return BSONLoader.parseSync?.(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): number {\n const v = parseInt(value, 10);\n if (v < 0 || isNaN(v)) {\n throw new Error(`invalid value for TIME_MICROS: ${value}`);\n }\n return v;\n}\n\nconst kMillisPerDay = 86400000;\n\nfunction toPrimitive_DATE(value: any): number {\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): Date {\n return new Date(value * kMillisPerDay);\n}\n\nfunction toPrimitive_TIMESTAMP_MILLIS(value: any): number {\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): Date {\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"],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { fs } from '@loaders.gl/loader-utils';
|
|
2
|
+
export function load(name) {
|
|
3
|
+
return (module || global).require(name);
|
|
4
|
+
}
|
|
5
|
+
export function oswrite(os, buf) {
|
|
6
|
+
return new Promise((resolve, reject) => {
|
|
7
|
+
os.write(buf, err => {
|
|
8
|
+
if (err) {
|
|
9
|
+
reject(err);
|
|
10
|
+
} else {
|
|
11
|
+
resolve();
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
export function osclose(os) {
|
|
17
|
+
return new Promise((resolve, reject) => {
|
|
18
|
+
os.close(err => {
|
|
19
|
+
if (err) {
|
|
20
|
+
reject(err);
|
|
21
|
+
} else {
|
|
22
|
+
resolve();
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
export function osopen(path, opts) {
|
|
28
|
+
return new Promise((resolve, reject) => {
|
|
29
|
+
const outputStream = fs.createWriteStream(path, opts);
|
|
30
|
+
outputStream.once('open', fd => resolve(outputStream));
|
|
31
|
+
outputStream.once('error', err => reject(err));
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=file-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-utils.js","names":["fs","load","name","module","global","require","oswrite","os","buf","Promise","resolve","reject","write","err","osclose","close","osopen","path","opts","outputStream","createWriteStream","once","fd"],"sources":["../../../../src/parquetjs/utils/file-utils.ts"],"sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\nimport {fs, stream} from '@loaders.gl/loader-utils';\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: stream.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: stream.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"],"mappings":"AACA,SAAQA,EAAE,QAAe,0BAA0B;AAEnD,OAAO,SAASC,IAAIA,CAACC,IAAY,EAAO;EACtC,OAAO,CAACC,MAAM,IAAKC,MAAc,EAAEC,OAAO,CAACH,IAAI,CAAC;AAClD;AAUA,OAAO,SAASI,OAAOA,CAACC,EAAmB,EAAEC,GAAW,EAAiB;EACvE,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtCJ,EAAE,CAACK,KAAK,CAACJ,GAAG,EAAGK,GAAG,IAAK;MACrB,IAAIA,GAAG,EAAE;QACPF,MAAM,CAACE,GAAG,CAAC;MACb,CAAC,MAAM;QACLH,OAAO,CAAC,CAAC;MACX;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ;AAEA,OAAO,SAASI,OAAOA,CAACP,EAAmB,EAAiB;EAC1D,OAAO,IAAIE,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACrCJ,EAAE,CAASQ,KAAK,CAAEF,GAAQ,IAAK;MAC9B,IAAIA,GAAG,EAAE;QACPF,MAAM,CAACE,GAAG,CAAC;MACb,CAAC,MAAM;QACLH,OAAO,CAAC,CAAC;MACX;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ;AAEA,OAAO,SAASM,MAAMA,CAACC,IAAY,EAAEC,IAAyB,EAA2B;EACvF,OAAO,IAAIT,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,MAAMQ,YAAY,GAAGnB,EAAE,CAACoB,iBAAiB,CAACH,IAAI,EAAEC,IAAW,CAAC;IAC5DC,YAAY,CAACE,IAAI,CAAC,MAAM,EAAGC,EAAE,IAAKZ,OAAO,CAACS,YAAY,CAAC,CAAC;IACxDA,YAAY,CAACE,IAAI,CAAC,OAAO,EAAGR,GAAG,IAAKF,MAAM,CAACE,GAAG,CAAC,CAAC;EAClD,CAAC,CAAC;AACJ"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import { TBufferedTransport, TCompactProtocol, TFramedTransport } from 'thrift';
|
|
3
|
+
import { FileMetaData, PageHeader } from '../parquet-thrift';
|
|
4
|
+
class UFramedTransport extends TFramedTransport {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
_defineProperty(this, "readPos", 0);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export function serializeThrift(obj) {
|
|
11
|
+
const output = [];
|
|
12
|
+
const transport = new TBufferedTransport(undefined, buf => {
|
|
13
|
+
output.push(buf);
|
|
14
|
+
});
|
|
15
|
+
const protocol = new TCompactProtocol(transport);
|
|
16
|
+
obj.write(protocol);
|
|
17
|
+
transport.flush();
|
|
18
|
+
return Buffer.concat(output);
|
|
19
|
+
}
|
|
20
|
+
export function decodeThrift(obj, buf, offset) {
|
|
21
|
+
if (!offset) {
|
|
22
|
+
offset = 0;
|
|
23
|
+
}
|
|
24
|
+
const transport = new UFramedTransport(buf);
|
|
25
|
+
transport.readPos = offset;
|
|
26
|
+
const protocol = new TCompactProtocol(transport);
|
|
27
|
+
obj.read(protocol);
|
|
28
|
+
return transport.readPos - offset;
|
|
29
|
+
}
|
|
30
|
+
export function getThriftEnum(klass, value) {
|
|
31
|
+
for (const k in klass) {
|
|
32
|
+
if (klass[k] === value) {
|
|
33
|
+
return k;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
throw new Error('Invalid ENUM value');
|
|
37
|
+
}
|
|
38
|
+
export function decodeFileMetadata(buf, offset) {
|
|
39
|
+
if (!offset) {
|
|
40
|
+
offset = 0;
|
|
41
|
+
}
|
|
42
|
+
const transport = new UFramedTransport(buf);
|
|
43
|
+
transport.readPos = offset;
|
|
44
|
+
const protocol = new TCompactProtocol(transport);
|
|
45
|
+
const metadata = FileMetaData.read(protocol);
|
|
46
|
+
return {
|
|
47
|
+
length: transport.readPos - offset,
|
|
48
|
+
metadata
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export function decodePageHeader(buf, offset) {
|
|
52
|
+
if (!offset) {
|
|
53
|
+
offset = 0;
|
|
54
|
+
}
|
|
55
|
+
const transport = new UFramedTransport(buf);
|
|
56
|
+
transport.readPos = offset;
|
|
57
|
+
const protocol = new TCompactProtocol(transport);
|
|
58
|
+
const pageHeader = PageHeader.read(protocol);
|
|
59
|
+
return {
|
|
60
|
+
length: transport.readPos - offset,
|
|
61
|
+
pageHeader
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
export function getBitWidth(val) {
|
|
65
|
+
if (val === 0) {
|
|
66
|
+
return 0;
|
|
67
|
+
}
|
|
68
|
+
return Math.ceil(Math.log2(val + 1));
|
|
69
|
+
}
|
|
70
|
+
export function fieldIndexOf(arr, elem) {
|
|
71
|
+
for (let j = 0; j < arr.length; j++) {
|
|
72
|
+
if (arr[j].length > elem.length) {
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
let m = true;
|
|
76
|
+
for (let i = 0; i < elem.length; i++) {
|
|
77
|
+
if (arr[j][i] === elem[i] || arr[j][i] === '+' || arr[j][i] === '#') {
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
if (i >= arr[j].length && arr[j][arr[j].length - 1] === '#') {
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
m = false;
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
if (m) return j;
|
|
87
|
+
}
|
|
88
|
+
return -1;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=read-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-utils.js","names":["TBufferedTransport","TCompactProtocol","TFramedTransport","FileMetaData","PageHeader","UFramedTransport","constructor","arguments","_defineProperty","serializeThrift","obj","output","transport","undefined","buf","push","protocol","write","flush","Buffer","concat","decodeThrift","offset","readPos","read","getThriftEnum","klass","value","k","Error","decodeFileMetadata","metadata","length","decodePageHeader","pageHeader","getBitWidth","val","Math","ceil","log2","fieldIndexOf","arr","elem","j","m","i"],"sources":["../../../../src/parquetjs/utils/read-utils.ts"],"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"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parquet-worker.js","names":["createLoaderWorker","ParquetLoader"],"sources":["../../../src/workers/parquet-worker.ts"],"sourcesContent":["import {createLoaderWorker} from '@loaders.gl/loader-utils';\nimport {ParquetLoader} from '../index';\n\ncreateLoaderWorker(ParquetLoader);\n"],"mappings":"AAAA,SAAQA,kBAAkB,QAAO,0BAA0B;AAC3D,SAAQC,aAAa,QAAO,UAAU;AAEtCD,kBAAkB,CAACC,aAAa,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,24 @@
|
|
|
1
1
|
import type { LoaderWithParser } from '@loaders.gl/loader-utils';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
2
|
+
import type { ObjectRowTable, ObjectRowTableBatch, ColumnarTable, ColumnarTableBatch } from '@loaders.gl/schema';
|
|
3
|
+
import type { Table as ArrowTable } from 'apache-arrow';
|
|
4
|
+
import { ParquetLoader as ParquetWorkerLoader, ParquetLoaderOptions } from './parquet-loader';
|
|
5
|
+
import { ParquetWasmLoaderOptions } from './lib/wasm/parse-parquet-wasm';
|
|
6
|
+
import { ParquetWasmLoader as ParquetWasmWorkerLoader } from './parquet-wasm-loader';
|
|
7
|
+
export { ParquetWorkerLoader, ParquetWasmWorkerLoader };
|
|
5
8
|
/** ParquetJS table loader */
|
|
6
|
-
export declare const ParquetLoader:
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
id: string;
|
|
11
|
-
module: string;
|
|
12
|
-
version: any;
|
|
13
|
-
worker: boolean;
|
|
14
|
-
category: string;
|
|
15
|
-
extensions: string[];
|
|
16
|
-
mimeTypes: string[];
|
|
17
|
-
binary: boolean;
|
|
18
|
-
tests: string[];
|
|
19
|
-
options: import("./parquet-loader").ParquetLoaderOptions;
|
|
20
|
-
};
|
|
9
|
+
export declare const ParquetLoader: LoaderWithParser<ObjectRowTable, ObjectRowTableBatch, ParquetLoaderOptions>;
|
|
10
|
+
/** ParquetJS table loader */
|
|
11
|
+
export declare const ParquetColumnarLoader: LoaderWithParser<ColumnarTable, ColumnarTableBatch, ParquetLoaderOptions>;
|
|
12
|
+
export declare const ParquetWasmLoader: LoaderWithParser<ArrowTable, never, ParquetWasmLoaderOptions>;
|
|
21
13
|
export { ParquetWriter as _ParquetWriter } from './parquet-writer';
|
|
14
|
+
export { ParquetWasmWriter } from './parquet-wasm-writer';
|
|
22
15
|
export { preloadCompressions } from './parquetjs/compression';
|
|
23
16
|
export { ParquetSchema } from './parquetjs/schema/schema';
|
|
24
17
|
export { ParquetReader } from './parquetjs/parser/parquet-reader';
|
|
25
|
-
export {
|
|
26
|
-
export { convertParquetToArrowSchema } from './lib/convert-schema';
|
|
18
|
+
export { ParquetEncoder } from './parquetjs/encoder/parquet-encoder';
|
|
19
|
+
export { convertParquetSchema, convertParquetSchema as convertParquetToArrowSchema } from './lib/arrow/convert-schema-from-parquet';
|
|
27
20
|
export declare const _typecheckParquetLoader: LoaderWithParser;
|
|
21
|
+
export { default as geoJSONSchema } from './lib/geo/geoparquet-schema';
|
|
22
|
+
export type { GeoMetadata } from './lib/geo/decode-geo-metadata';
|
|
23
|
+
export { getGeoMetadata, setGeoMetadata, unpackGeoMetadata } from './lib/geo/decode-geo-metadata';
|
|
28
24
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAC,KAAK,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AAItD,OAAO,EACL,aAAa,IAAI,mBAAmB,EAEpC,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EAAmB,wBAAwB,EAAC,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAC,iBAAiB,IAAI,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAC,mBAAmB,EAAE,uBAAuB,EAAC,CAAC;AAEtD,6BAA6B;AAC7B,eAAO,MAAM,aAAa,EAAE,gBAAgB,CAC1C,cAAc,EACd,mBAAmB,EACnB,oBAAoB,CAKrB,CAAC;AAEF,6BAA6B;AAE7B,eAAO,MAAM,qBAAqB,EAAE,gBAAgB,CAClD,aAAa,EACb,kBAAkB,EAClB,oBAAoB,CAKrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,gBAAgB,CAAC,UAAU,EAAE,KAAK,EAAE,wBAAwB,CAG3F,CAAC;AAIF,OAAO,EAAC,aAAa,IAAI,cAAc,EAAC,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAIxD,OAAO,EAAC,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAC,aAAa,EAAC,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EACL,oBAAoB,EACpB,oBAAoB,IAAI,2BAA2B,EACpD,MAAM,yCAAyC,CAAC;AAGjD,eAAO,MAAM,uBAAuB,EAAE,gBAAgC,CAAC;AAGvE,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAErE,YAAY,EAAC,WAAW,EAAC,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAC,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,+BAA+B,CAAC"}
|