@loaders.gl/parquet 3.4.0-alpha.1 → 3.4.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dist.min.js +22 -29
- package/dist/dist.min.js.map +3 -3
- package/dist/es5/constants.js +0 -2
- package/dist/es5/constants.js.map +1 -1
- package/dist/es5/index.js +47 -9
- package/dist/es5/index.js.map +1 -1
- 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 +98 -0
- package/dist/es5/lib/arrow/convert-schema-from-parquet.js.map +1 -0
- package/dist/es5/lib/{convert-schema.js → arrow/convert-schema-to-parquet.js} +4 -32
- package/dist/es5/lib/arrow/convert-schema-to-parquet.js.map +1 -0
- package/dist/es5/lib/geo/decode-geo-metadata.js +77 -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 +173 -0
- package/dist/es5/lib/parsers/parse-parquet-to-columns.js.map +1 -0
- package/dist/es5/lib/parsers/parse-parquet-to-rows.js +150 -0
- package/dist/es5/lib/parsers/parse-parquet-to-rows.js.map +1 -0
- package/dist/es5/lib/wasm/encode-parquet-wasm.js +14 -16
- package/dist/es5/lib/wasm/encode-parquet-wasm.js.map +1 -1
- package/dist/es5/lib/wasm/load-wasm/index.js.map +1 -1
- package/dist/es5/lib/wasm/load-wasm/load-wasm-browser.js +16 -18
- package/dist/es5/lib/wasm/load-wasm/load-wasm-browser.js.map +1 -1
- package/dist/es5/lib/wasm/load-wasm/load-wasm-node.js +6 -8
- package/dist/es5/lib/wasm/load-wasm/load-wasm-node.js.map +1 -1
- package/dist/es5/lib/wasm/parse-parquet-wasm.js +16 -18
- package/dist/es5/lib/wasm/parse-parquet-wasm.js.map +1 -1
- 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 +4 -3
- package/dist/es5/parquet-loader.js.map +1 -1
- package/dist/es5/parquet-wasm-loader.js +1 -2
- package/dist/es5/parquet-wasm-loader.js.map +1 -1
- package/dist/es5/parquet-wasm-writer.js +1 -1
- package/dist/es5/parquet-wasm-writer.js.map +1 -1
- package/dist/es5/parquet-writer.js +1 -1
- package/dist/es5/parquet-writer.js.map +1 -1
- package/dist/es5/parquetjs/codecs/dictionary.js.map +1 -1
- package/dist/es5/parquetjs/codecs/index.js +0 -1
- package/dist/es5/parquetjs/codecs/index.js.map +1 -1
- package/dist/es5/parquetjs/codecs/plain.js +0 -3
- package/dist/es5/parquetjs/codecs/plain.js.map +1 -1
- package/dist/es5/parquetjs/codecs/rle.js +0 -4
- package/dist/es5/parquetjs/codecs/rle.js.map +1 -1
- package/dist/es5/parquetjs/compression.js +58 -58
- package/dist/es5/parquetjs/compression.js.map +1 -1
- 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 +4 -4
- package/dist/es5/parquetjs/parquet-thrift/BoundaryOrder.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/BsonType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js +4 -4
- package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js +4 -4
- package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/DateType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/DecimalType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/Encoding.js +4 -4
- package/dist/es5/parquetjs/parquet-thrift/Encoding.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/EnumType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js +4 -4
- package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/IntType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/JsonType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/KeyValue.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/ListType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/LogicalType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/MapType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/NullType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/PageHeader.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/PageLocation.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/PageType.js +4 -4
- package/dist/es5/parquetjs/parquet-thrift/PageType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/RowGroup.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/Statistics.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/StringType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/TimeType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/TimestampType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/Type.js +4 -4
- package/dist/es5/parquetjs/parquet-thrift/Type.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/UUIDType.js.map +1 -1
- package/dist/es5/parquetjs/parquet-thrift/index.js.map +1 -1
- package/dist/es5/parquetjs/parser/decoders.js +244 -261
- package/dist/es5/parquetjs/parser/decoders.js.map +1 -1
- package/dist/es5/parquetjs/parser/parquet-reader.js +555 -256
- package/dist/es5/parquetjs/parser/parquet-reader.js.map +1 -1
- package/dist/es5/parquetjs/schema/declare.js.map +1 -1
- package/dist/es5/parquetjs/schema/schema.js +2 -12
- package/dist/es5/parquetjs/schema/schema.js.map +1 -1
- package/dist/es5/parquetjs/schema/shred.js +40 -46
- package/dist/es5/parquetjs/schema/shred.js.map +1 -1
- package/dist/es5/parquetjs/schema/types.js +6 -11
- package/dist/es5/parquetjs/schema/types.js.map +1 -1
- package/dist/es5/parquetjs/utils/file-utils.js +2 -4
- package/dist/es5/parquetjs/utils/file-utils.js.map +1 -1
- package/dist/es5/parquetjs/utils/read-utils.js +0 -7
- package/dist/es5/parquetjs/utils/read-utils.js.map +1 -1
- package/dist/es5/workers/parquet-worker.js.map +1 -1
- package/dist/esm/bundle.js +0 -1
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/constants.js +0 -3
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/index.js +11 -9
- package/dist/esm/index.js.map +1 -1
- 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/{convert-schema.js → arrow/convert-schema-from-parquet.js} +30 -16
- package/dist/esm/lib/arrow/convert-schema-from-parquet.js.map +1 -0
- package/dist/esm/lib/arrow/convert-schema-to-parquet.js +37 -0
- package/dist/esm/lib/arrow/convert-schema-to-parquet.js.map +1 -0
- package/dist/esm/lib/geo/decode-geo-metadata.js +58 -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 +35 -0
- package/dist/esm/lib/parsers/parse-parquet-to-columns.js.map +1 -0
- package/dist/esm/lib/parsers/parse-parquet-to-rows.js +18 -0
- package/dist/esm/lib/parsers/parse-parquet-to-rows.js.map +1 -0
- package/dist/esm/lib/wasm/encode-parquet-wasm.js +0 -1
- package/dist/esm/lib/wasm/encode-parquet-wasm.js.map +1 -1
- package/dist/esm/lib/wasm/load-wasm/load-wasm-browser.js +0 -1
- package/dist/esm/lib/wasm/load-wasm/load-wasm-browser.js.map +1 -1
- package/dist/esm/lib/wasm/load-wasm/load-wasm-node.js.map +1 -1
- package/dist/esm/lib/wasm/parse-parquet-wasm.js +0 -3
- package/dist/esm/lib/wasm/parse-parquet-wasm.js.map +1 -1
- 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 +4 -4
- package/dist/esm/parquet-loader.js.map +1 -1
- package/dist/esm/parquet-wasm-loader.js +1 -3
- package/dist/esm/parquet-wasm-loader.js.map +1 -1
- package/dist/esm/parquet-wasm-writer.js +1 -2
- package/dist/esm/parquet-wasm-writer.js.map +1 -1
- package/dist/esm/parquet-writer.js +1 -2
- package/dist/esm/parquet-writer.js.map +1 -1
- package/dist/esm/parquetjs/codecs/dictionary.js.map +1 -1
- package/dist/esm/parquetjs/codecs/index.js +0 -2
- package/dist/esm/parquetjs/codecs/index.js.map +1 -1
- package/dist/esm/parquetjs/codecs/plain.js +0 -4
- package/dist/esm/parquetjs/codecs/plain.js.map +1 -1
- package/dist/esm/parquetjs/codecs/rle.js +0 -6
- package/dist/esm/parquetjs/codecs/rle.js.map +1 -1
- package/dist/esm/parquetjs/compression.js +10 -10
- package/dist/esm/parquetjs/compression.js.map +1 -1
- package/dist/esm/parquetjs/encoder/{writer.js → parquet-encoder.js} +6 -74
- package/dist/esm/parquetjs/encoder/parquet-encoder.js.map +1 -0
- package/dist/esm/parquetjs/parquet-thrift/BoundaryOrder.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/BoundaryOrder.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/BsonType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/BsonType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/CompressionCodec.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/CompressionCodec.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/ConvertedType.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/ConvertedType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/DateType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/DateType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/DecimalType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/Encoding.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/Encoding.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/EnumType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/EnumType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/FieldRepetitionType.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/FieldRepetitionType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/FileMetaData.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/IndexPageHeader.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/IntType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/JsonType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/JsonType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/KeyValue.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/ListType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/ListType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/LogicalType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/MapType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/MapType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/MicroSeconds.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/MilliSeconds.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/NullType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/NullType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/PageHeader.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/PageLocation.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/PageType.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/PageType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/RowGroup.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/SchemaElement.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/SortingColumn.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/Statistics.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/StringType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/StringType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/TimeType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/TimeUnit.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/TimestampType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/Type.js +3 -4
- package/dist/esm/parquetjs/parquet-thrift/Type.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/TypeDefinedOrder.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/UUIDType.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/UUIDType.js.map +1 -1
- package/dist/esm/parquetjs/parquet-thrift/index.js +0 -1
- package/dist/esm/parquetjs/parquet-thrift/index.js.map +1 -1
- package/dist/esm/parquetjs/parser/decoders.js +1 -18
- package/dist/esm/parquetjs/parser/decoders.js.map +1 -1
- package/dist/esm/parquetjs/parser/parquet-reader.js +153 -80
- package/dist/esm/parquetjs/parser/parquet-reader.js.map +1 -1
- package/dist/esm/parquetjs/schema/declare.js +0 -1
- package/dist/esm/parquetjs/schema/declare.js.map +1 -1
- package/dist/esm/parquetjs/schema/schema.js +0 -10
- package/dist/esm/parquetjs/schema/schema.js.map +1 -1
- package/dist/esm/parquetjs/schema/shred.js +42 -48
- package/dist/esm/parquetjs/schema/shred.js.map +1 -1
- package/dist/esm/parquetjs/schema/types.js +6 -10
- package/dist/esm/parquetjs/schema/types.js.map +1 -1
- package/dist/esm/parquetjs/utils/file-utils.js +1 -2
- package/dist/esm/parquetjs/utils/file-utils.js.map +1 -1
- package/dist/esm/parquetjs/utils/read-utils.js +0 -8
- package/dist/esm/parquetjs/utils/read-utils.js.map +1 -1
- package/dist/index.d.ts +24 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +26 -9
- 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/{convert-schema.js → arrow/convert-schema-from-parquet.js} +30 -18
- 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 +72 -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 +73 -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 +40 -0
- package/dist/lib/parsers/parse-parquet-to-rows.d.ts +4 -0
- package/dist/lib/parsers/parse-parquet-to-rows.d.ts.map +1 -0
- package/dist/lib/parsers/parse-parquet-to-rows.js +40 -0
- package/dist/parquet-loader.d.ts +2 -0
- package/dist/parquet-loader.d.ts.map +1 -1
- package/dist/parquet-loader.js +3 -1
- package/dist/parquet-worker.js +25 -32
- package/dist/parquet-worker.js.map +3 -3
- package/dist/parquetjs/compression.d.ts.map +1 -1
- package/dist/parquetjs/compression.js +16 -5
- package/dist/parquetjs/encoder/{writer.d.ts → parquet-encoder.d.ts} +10 -19
- package/dist/parquetjs/encoder/parquet-encoder.d.ts.map +1 -0
- package/dist/parquetjs/encoder/{writer.js → parquet-encoder.js} +39 -37
- 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 +168 -102
- package/dist/parquetjs/schema/declare.d.ts +14 -7
- package/dist/parquetjs/schema/declare.d.ts.map +1 -1
- package/dist/parquetjs/schema/declare.js +2 -0
- package/dist/parquetjs/schema/shred.d.ts +115 -0
- package/dist/parquetjs/schema/shred.d.ts.map +1 -1
- package/dist/parquetjs/schema/shred.js +161 -43
- 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 +4 -6
- package/dist/parquetjs/utils/file-utils.d.ts +3 -4
- package/dist/parquetjs/utils/file-utils.d.ts.map +1 -1
- package/dist/parquetjs/utils/file-utils.js +2 -5
- package/package.json +8 -7
- package/src/index.ts +24 -4
- 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/{convert-schema.ts → arrow/convert-schema-from-parquet.ts} +41 -22
- package/src/lib/arrow/convert-schema-to-parquet.ts +102 -0
- package/src/lib/geo/decode-geo-metadata.ts +99 -0
- package/src/lib/geo/geoparquet-schema.ts +69 -0
- package/src/lib/parsers/parse-parquet-to-columns.ts +49 -0
- package/src/lib/parsers/parse-parquet-to-rows.ts +40 -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 +5 -1
- package/src/parquetjs/compression.ts +14 -1
- package/src/parquetjs/encoder/{writer.ts → parquet-encoder.ts} +22 -28
- package/src/parquetjs/parser/parquet-reader.ts +239 -122
- package/src/parquetjs/schema/declare.ts +17 -9
- package/src/parquetjs/schema/shred.ts +157 -28
- package/src/parquetjs/schema/types.ts +25 -30
- package/src/parquetjs/utils/file-utils.ts +3 -4
- package/dist/es5/lib/convert-schema.js.map +0 -1
- package/dist/es5/lib/parse-parquet.js +0 -130
- package/dist/es5/lib/parse-parquet.js.map +0 -1
- package/dist/es5/lib/read-array-buffer.js +0 -43
- package/dist/es5/lib/read-array-buffer.js.map +0 -1
- package/dist/es5/parquetjs/encoder/writer.js +0 -757
- package/dist/es5/parquetjs/encoder/writer.js.map +0 -1
- package/dist/es5/parquetjs/file.js +0 -94
- package/dist/es5/parquetjs/file.js.map +0 -1
- package/dist/es5/parquetjs/parser/parquet-cursor.js +0 -183
- package/dist/es5/parquetjs/parser/parquet-cursor.js.map +0 -1
- package/dist/es5/parquetjs/parser/parquet-envelope-reader.js +0 -327
- package/dist/es5/parquetjs/parser/parquet-envelope-reader.js.map +0 -1
- package/dist/es5/parquetjs/utils/buffer-utils.js +0 -19
- package/dist/es5/parquetjs/utils/buffer-utils.js.map +0 -1
- package/dist/esm/lib/convert-schema.js.map +0 -1
- package/dist/esm/lib/parse-parquet.js +0 -25
- package/dist/esm/lib/parse-parquet.js.map +0 -1
- package/dist/esm/lib/read-array-buffer.js +0 -10
- package/dist/esm/lib/read-array-buffer.js.map +0 -1
- package/dist/esm/parquetjs/encoder/writer.js.map +0 -1
- package/dist/esm/parquetjs/file.js +0 -81
- package/dist/esm/parquetjs/file.js.map +0 -1
- package/dist/esm/parquetjs/parser/parquet-cursor.js +0 -78
- package/dist/esm/parquetjs/parser/parquet-cursor.js.map +0 -1
- package/dist/esm/parquetjs/parser/parquet-envelope-reader.js +0 -129
- package/dist/esm/parquetjs/parser/parquet-envelope-reader.js.map +0 -1
- package/dist/esm/parquetjs/utils/buffer-utils.js +0 -13
- package/dist/esm/parquetjs/utils/buffer-utils.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/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/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 -29
- package/dist/parquetjs/encoder/writer.d.ts.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 -99
- 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 -74
- 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 +0 -136
- 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 -22
- 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/es5/constants.js
CHANGED
|
@@ -7,10 +7,8 @@ exports.PARQUET_VERSION = exports.PARQUET_RDLVL_TYPE = exports.PARQUET_RDLVL_ENC
|
|
|
7
7
|
var PARQUET_MAGIC = 'PAR1';
|
|
8
8
|
exports.PARQUET_MAGIC = PARQUET_MAGIC;
|
|
9
9
|
var PARQUET_MAGIC_ENCRYPTED = 'PARE';
|
|
10
|
-
|
|
11
10
|
exports.PARQUET_MAGIC_ENCRYPTED = PARQUET_MAGIC_ENCRYPTED;
|
|
12
11
|
var PARQUET_VERSION = 1;
|
|
13
|
-
|
|
14
12
|
exports.PARQUET_VERSION = PARQUET_VERSION;
|
|
15
13
|
var PARQUET_RDLVL_TYPE = 'INT32';
|
|
16
14
|
exports.PARQUET_RDLVL_TYPE = PARQUET_RDLVL_TYPE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","names":["PARQUET_MAGIC","PARQUET_MAGIC_ENCRYPTED","PARQUET_VERSION","PARQUET_RDLVL_TYPE","PARQUET_RDLVL_ENCODING"],"sources":["../../src/constants.ts"],"sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\n/**\n * Parquet File Magic String\n */\nexport const PARQUET_MAGIC = 'PAR1';\nexport const PARQUET_MAGIC_ENCRYPTED = 'PARE';\n\n/**\n * Parquet File Format Version\n */\nexport const PARQUET_VERSION = 1;\n\n/**\n * Internal type used for repetition/definition levels\n */\nexport const PARQUET_RDLVL_TYPE = 'INT32';\nexport const PARQUET_RDLVL_ENCODING = 'RLE';\n"],"mappings":";;;;;;AAIO,IAAMA,aAAa,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"constants.js","names":["PARQUET_MAGIC","exports","PARQUET_MAGIC_ENCRYPTED","PARQUET_VERSION","PARQUET_RDLVL_TYPE","PARQUET_RDLVL_ENCODING"],"sources":["../../src/constants.ts"],"sourcesContent":["// Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)\n/**\n * Parquet File Magic String\n */\nexport const PARQUET_MAGIC = 'PAR1';\nexport const PARQUET_MAGIC_ENCRYPTED = 'PARE';\n\n/**\n * Parquet File Format Version\n */\nexport const PARQUET_VERSION = 1;\n\n/**\n * Internal type used for repetition/definition levels\n */\nexport const PARQUET_RDLVL_TYPE = 'INT32';\nexport const PARQUET_RDLVL_ENCODING = 'RLE';\n"],"mappings":";;;;;;AAIO,IAAMA,aAAa,GAAG,MAAM;AAACC,OAAA,CAAAD,aAAA,GAAAA,aAAA;AAC7B,IAAME,uBAAuB,GAAG,MAAM;AAACD,OAAA,CAAAC,uBAAA,GAAAA,uBAAA;AAKvC,IAAMC,eAAe,GAAG,CAAC;AAACF,OAAA,CAAAE,eAAA,GAAAA,eAAA;AAK1B,IAAMC,kBAAkB,GAAG,OAAO;AAACH,OAAA,CAAAG,kBAAA,GAAAA,kBAAA;AACnC,IAAMC,sBAAsB,GAAG,KAAK;AAACJ,OAAA,CAAAI,sBAAA,GAAAA,sBAAA"}
|
package/dist/es5/index.js
CHANGED
|
@@ -4,10 +4,11 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
|
|
7
|
+
exports.ParquetColumnarLoader = void 0;
|
|
8
|
+
Object.defineProperty(exports, "ParquetEncoder", {
|
|
8
9
|
enumerable: true,
|
|
9
10
|
get: function get() {
|
|
10
|
-
return
|
|
11
|
+
return _parquetEncoder.ParquetEncoder;
|
|
11
12
|
}
|
|
12
13
|
});
|
|
13
14
|
exports.ParquetLoader = void 0;
|
|
@@ -52,7 +53,25 @@ exports._typecheckParquetLoader = void 0;
|
|
|
52
53
|
Object.defineProperty(exports, "convertParquetToArrowSchema", {
|
|
53
54
|
enumerable: true,
|
|
54
55
|
get: function get() {
|
|
55
|
-
return
|
|
56
|
+
return _convertSchemaFromParquet.convertSchemaFromParquet;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
Object.defineProperty(exports, "convertSchemaFromParquet", {
|
|
60
|
+
enumerable: true,
|
|
61
|
+
get: function get() {
|
|
62
|
+
return _convertSchemaFromParquet.convertSchemaFromParquet;
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
Object.defineProperty(exports, "geoJSONSchema", {
|
|
66
|
+
enumerable: true,
|
|
67
|
+
get: function get() {
|
|
68
|
+
return _geoparquetSchema.default;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
Object.defineProperty(exports, "getGeoMetadata", {
|
|
72
|
+
enumerable: true,
|
|
73
|
+
get: function get() {
|
|
74
|
+
return _decodeGeoMetadata.getGeoMetadata;
|
|
56
75
|
}
|
|
57
76
|
});
|
|
58
77
|
Object.defineProperty(exports, "preloadCompressions", {
|
|
@@ -61,29 +80,48 @@ Object.defineProperty(exports, "preloadCompressions", {
|
|
|
61
80
|
return _compression.preloadCompressions;
|
|
62
81
|
}
|
|
63
82
|
});
|
|
83
|
+
Object.defineProperty(exports, "setGeoMetadata", {
|
|
84
|
+
enumerable: true,
|
|
85
|
+
get: function get() {
|
|
86
|
+
return _decodeGeoMetadata.setGeoMetadata;
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
Object.defineProperty(exports, "unpackGeoMetadata", {
|
|
90
|
+
enumerable: true,
|
|
91
|
+
get: function get() {
|
|
92
|
+
return _decodeGeoMetadata.unpackGeoMetadata;
|
|
93
|
+
}
|
|
94
|
+
});
|
|
64
95
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
65
96
|
var _parquetWasmLoader = require("./parquet-wasm-loader");
|
|
66
97
|
var _parquetLoader = require("./parquet-loader");
|
|
67
|
-
var
|
|
98
|
+
var _parseParquetToRows = require("./lib/parsers/parse-parquet-to-rows");
|
|
99
|
+
var _parseParquetToColumns = require("./lib/parsers/parse-parquet-to-columns");
|
|
68
100
|
var _parseParquetWasm = require("./lib/wasm/parse-parquet-wasm");
|
|
69
101
|
var _parquetWriter = require("./parquet-writer");
|
|
70
102
|
var _parquetWasmWriter = require("./parquet-wasm-writer");
|
|
71
103
|
var _compression = require("./parquetjs/compression");
|
|
72
104
|
var _schema = require("./parquetjs/schema/schema");
|
|
73
105
|
var _parquetReader = require("./parquetjs/parser/parquet-reader");
|
|
74
|
-
var
|
|
75
|
-
var
|
|
106
|
+
var _parquetEncoder = require("./parquetjs/encoder/parquet-encoder");
|
|
107
|
+
var _convertSchemaFromParquet = require("./lib/arrow/convert-schema-from-parquet");
|
|
108
|
+
var _geoparquetSchema = _interopRequireDefault(require("./lib/geo/geoparquet-schema"));
|
|
109
|
+
var _decodeGeoMetadata = require("./lib/geo/decode-geo-metadata");
|
|
76
110
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
77
111
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
78
112
|
var ParquetLoader = _objectSpread(_objectSpread({}, _parquetLoader.ParquetLoader), {}, {
|
|
79
|
-
parse:
|
|
80
|
-
parseFileInBatches:
|
|
113
|
+
parse: _parseParquetToRows.parseParquet,
|
|
114
|
+
parseFileInBatches: _parseParquetToRows.parseParquetFileInBatches
|
|
81
115
|
});
|
|
82
116
|
exports.ParquetLoader = ParquetLoader;
|
|
117
|
+
var ParquetColumnarLoader = _objectSpread(_objectSpread({}, _parquetLoader.ParquetLoader), {}, {
|
|
118
|
+
parse: _parseParquetToColumns.parseParquetInColumns,
|
|
119
|
+
parseFileInBatches: _parseParquetToColumns.parseParquetFileInColumnarBatches
|
|
120
|
+
});
|
|
121
|
+
exports.ParquetColumnarLoader = ParquetColumnarLoader;
|
|
83
122
|
var ParquetWasmLoader = _objectSpread(_objectSpread({}, _parquetWasmLoader.ParquetWasmLoader), {}, {
|
|
84
123
|
parse: _parseParquetWasm.parseParquet
|
|
85
124
|
});
|
|
86
|
-
|
|
87
125
|
exports.ParquetWasmLoader = ParquetWasmLoader;
|
|
88
126
|
var _typecheckParquetLoader = ParquetLoader;
|
|
89
127
|
exports._typecheckParquetLoader = _typecheckParquetLoader;
|
package/dist/es5/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["ParquetLoader","ParquetWorkerLoader","parse","parseParquet","parseFileInBatches","parseParquetFileInBatches","ParquetWasmLoader","ParquetWasmWorkerLoader","parseParquetWasm","_typecheckParquetLoader"],"sources":["../../src/index.ts"],"sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\n\n// ParquetLoader\n\nimport {ParquetWasmLoader as ParquetWasmWorkerLoader} from './parquet-wasm-loader';\nimport {ParquetLoader as ParquetWorkerLoader} from './parquet-loader';\nimport {parseParquet, parseParquetFileInBatches} from './lib/parse-parquet';\nimport {parseParquet as parseParquetWasm} from './lib/wasm/parse-parquet-wasm';\n\nexport {ParquetWorkerLoader, ParquetWasmWorkerLoader};\n\n/** ParquetJS table loader */\nexport const ParquetLoader = {\n ...ParquetWorkerLoader,\n parse: parseParquet,\n parseFileInBatches: parseParquetFileInBatches\n};\n\nexport const ParquetWasmLoader = {\n ...ParquetWasmWorkerLoader,\n parse: parseParquetWasm\n};\n\n// ParquetWriter\n\nexport {ParquetWriter as _ParquetWriter} from './parquet-writer';\nexport {ParquetWasmWriter} from './parquet-wasm-writer';\n\n// EXPERIMENTAL - expose the internal parquetjs API\n\nexport {preloadCompressions} from './parquetjs/compression';\n\nexport {ParquetSchema} from './parquetjs/schema/schema';\nexport {ParquetReader} from './parquetjs/parser/parquet-reader';\nexport {
|
|
1
|
+
{"version":3,"file":"index.js","names":["_parquetWasmLoader","require","_parquetLoader","_parseParquetToRows","_parseParquetToColumns","_parseParquetWasm","_parquetWriter","_parquetWasmWriter","_compression","_schema","_parquetReader","_parquetEncoder","_convertSchemaFromParquet","_geoparquetSchema","_interopRequireDefault","_decodeGeoMetadata","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","ParquetLoader","ParquetWorkerLoader","parse","parseParquet","parseFileInBatches","parseParquetFileInBatches","exports","ParquetColumnarLoader","parseParquetInColumns","parseParquetFileInColumnarBatches","ParquetWasmLoader","ParquetWasmWorkerLoader","parseParquetWasm","_typecheckParquetLoader"],"sources":["../../src/index.ts"],"sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\n\n// ParquetLoader\n\nimport {ParquetWasmLoader as ParquetWasmWorkerLoader} from './parquet-wasm-loader';\nimport {ParquetLoader as ParquetWorkerLoader} from './parquet-loader';\nimport {parseParquet, parseParquetFileInBatches} from './lib/parsers/parse-parquet-to-rows';\nimport {\n parseParquetInColumns,\n parseParquetFileInColumnarBatches\n} from './lib/parsers/parse-parquet-to-columns';\nimport {parseParquet as parseParquetWasm} from './lib/wasm/parse-parquet-wasm';\n\nexport {ParquetWorkerLoader, ParquetWasmWorkerLoader};\n\n/** ParquetJS table loader */\nexport const ParquetLoader = {\n ...ParquetWorkerLoader,\n parse: parseParquet,\n parseFileInBatches: parseParquetFileInBatches\n};\n\n/** ParquetJS table loader */\nexport const ParquetColumnarLoader = {\n ...ParquetWorkerLoader,\n parse: parseParquetInColumns,\n parseFileInBatches: parseParquetFileInColumnarBatches\n};\n\nexport const ParquetWasmLoader = {\n ...ParquetWasmWorkerLoader,\n parse: parseParquetWasm\n};\n\n// ParquetWriter\n\nexport {ParquetWriter as _ParquetWriter} from './parquet-writer';\nexport {ParquetWasmWriter} from './parquet-wasm-writer';\n\n// EXPERIMENTAL - expose the internal parquetjs API\n\nexport {preloadCompressions} from './parquetjs/compression';\n\nexport {ParquetSchema} from './parquetjs/schema/schema';\nexport {ParquetReader} from './parquetjs/parser/parquet-reader';\nexport {ParquetEncoder} from './parquetjs/encoder/parquet-encoder';\n\nexport {\n convertSchemaFromParquet,\n convertSchemaFromParquet as convertParquetToArrowSchema\n} from './lib/arrow/convert-schema-from-parquet';\n\n// TESTS\nexport const _typecheckParquetLoader: LoaderWithParser = ParquetLoader;\n\n// Geo Metadata\nexport {default as geoJSONSchema} from './lib/geo/geoparquet-schema';\n\nexport type {GeoMetadata} from './lib/geo/decode-geo-metadata';\nexport {getGeoMetadata, setGeoMetadata, unpackGeoMetadata} from './lib/geo/decode-geo-metadata';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAH,OAAA;AAIA,IAAAI,iBAAA,GAAAJ,OAAA;AAyBA,IAAAK,cAAA,GAAAL,OAAA;AACA,IAAAM,kBAAA,GAAAN,OAAA;AAIA,IAAAO,YAAA,GAAAP,OAAA;AAEA,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AAEA,IAAAW,yBAAA,GAAAX,OAAA;AASA,IAAAY,iBAAA,GAAAC,sBAAA,CAAAb,OAAA;AAGA,IAAAc,kBAAA,GAAAd,OAAA;AAAgG,SAAAe,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,QAAAC,gBAAA,CAAAC,OAAA,EAAAR,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAmB,yBAAA,GAAAnB,MAAA,CAAAoB,gBAAA,CAAAV,MAAA,EAAAV,MAAA,CAAAmB,yBAAA,CAAAL,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAqB,cAAA,CAAAX,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AA3CzF,IAAMY,aAAa,GAAAb,aAAA,CAAAA,aAAA,KACrBc,4BAAmB;EACtBC,KAAK,EAAEC,gCAAY;EACnBC,kBAAkB,EAAEC;AAAyB,EAC9C;AAACC,OAAA,CAAAN,aAAA,GAAAA,aAAA;AAGK,IAAMO,qBAAqB,GAAApB,aAAA,CAAAA,aAAA,KAC7Bc,4BAAmB;EACtBC,KAAK,EAAEM,4CAAqB;EAC5BJ,kBAAkB,EAAEK;AAAiC,EACtD;AAACH,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAEK,IAAMG,iBAAiB,GAAAvB,aAAA,CAAAA,aAAA,KACzBwB,oCAAuB;EAC1BT,KAAK,EAAEU;AAAgB,EACxB;AAACN,OAAA,CAAAI,iBAAA,GAAAA,iBAAA;AAqBK,IAAMG,uBAAyC,GAAGb,aAAa;AAACM,OAAA,CAAAO,uBAAA,GAAAA,uBAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-columns-to-row-group.js","names":[],"sources":["../../../../src/lib/arrow/convert-columns-to-row-group.ts"],"sourcesContent":[""],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.convertParquetRowGroupToColumns = convertParquetRowGroupToColumns;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
|
+
function convertParquetRowGroupToColumns(schema, rowGroup) {
|
|
10
|
+
var columns = {};
|
|
11
|
+
for (var _i = 0, _Object$entries = Object.entries(rowGroup.columnData); _i < _Object$entries.length; _i++) {
|
|
12
|
+
var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
|
|
13
|
+
columnName = _Object$entries$_i[0],
|
|
14
|
+
data = _Object$entries$_i[1];
|
|
15
|
+
columns[columnName] = columns[columnName] || data.values;
|
|
16
|
+
}
|
|
17
|
+
return columns;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=convert-row-group-to-columns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-row-group-to-columns.js","names":["convertParquetRowGroupToColumns","schema","rowGroup","columns","_i","_Object$entries","Object","entries","columnData","length","_Object$entries$_i","_slicedToArray2","default","columnName","data","values"],"sources":["../../../../src/lib/arrow/convert-row-group-to-columns.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport {Schema} from '@loaders.gl/schema';\nimport {ParquetBuffer} from '@loaders.gl/parquet/parquetjs/schema/declare';\n\nexport function convertParquetRowGroupToColumns(\n schema: Schema,\n rowGroup: ParquetBuffer\n): Record<string, any[]> {\n const columns: Record<string, any[]> = {};\n for (const [columnName, data] of Object.entries(rowGroup.columnData)) {\n columns[columnName] = columns[columnName] || data.values;\n }\n return columns;\n}\n"],"mappings":";;;;;;;;AAKO,SAASA,+BAA+BA,CAC7CC,MAAc,EACdC,QAAuB,EACA;EACvB,IAAMC,OAA8B,GAAG,CAAC,CAAC;EACzC,SAAAC,EAAA,MAAAC,eAAA,GAAiCC,MAAM,CAACC,OAAO,CAACL,QAAQ,CAACM,UAAU,CAAC,EAAAJ,EAAA,GAAAC,eAAA,CAAAI,MAAA,EAAAL,EAAA,IAAE;IAAjE,IAAAM,kBAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAP,eAAA,CAAAD,EAAA;MAAOS,UAAU,GAAAH,kBAAA;MAAEI,IAAI,GAAAJ,kBAAA;IAC1BP,OAAO,CAACU,UAAU,CAAC,GAAGV,OAAO,CAACU,UAAU,CAAC,IAAIC,IAAI,CAACC,MAAM;EAC1D;EACA,OAAOZ,OAAO;AAChB"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PARQUET_TYPE_MAPPING = void 0;
|
|
7
|
+
exports.convertSchemaFromParquet = convertSchemaFromParquet;
|
|
8
|
+
var _schema = require("@loaders.gl/schema");
|
|
9
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
10
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
11
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
12
|
+
var PARQUET_TYPE_MAPPING = {
|
|
13
|
+
BOOLEAN: _schema.Bool,
|
|
14
|
+
INT32: _schema.Int32,
|
|
15
|
+
INT64: _schema.Float64,
|
|
16
|
+
INT96: _schema.Float64,
|
|
17
|
+
FLOAT: _schema.Float32,
|
|
18
|
+
DOUBLE: _schema.Float64,
|
|
19
|
+
BYTE_ARRAY: _schema.Binary,
|
|
20
|
+
FIXED_LEN_BYTE_ARRAY: _schema.Binary,
|
|
21
|
+
UTF8: _schema.Utf8,
|
|
22
|
+
DATE: _schema.Int32,
|
|
23
|
+
TIME_MILLIS: _schema.Int64,
|
|
24
|
+
TIME_MICROS: _schema.Int64,
|
|
25
|
+
TIMESTAMP_MILLIS: _schema.Int64,
|
|
26
|
+
TIMESTAMP_MICROS: _schema.Int64,
|
|
27
|
+
UINT_8: _schema.Int32,
|
|
28
|
+
UINT_16: _schema.Uint16,
|
|
29
|
+
UINT_32: _schema.Uint32,
|
|
30
|
+
UINT_64: _schema.Uint64,
|
|
31
|
+
INT_8: _schema.Int8,
|
|
32
|
+
INT_16: _schema.Int16,
|
|
33
|
+
INT_32: _schema.Int32,
|
|
34
|
+
INT_64: _schema.Int64,
|
|
35
|
+
JSON: _schema.Binary,
|
|
36
|
+
BSON: _schema.Binary,
|
|
37
|
+
INTERVAL: _schema.Binary,
|
|
38
|
+
DECIMAL_INT32: _schema.Float32,
|
|
39
|
+
DECIMAL_INT64: _schema.Float64,
|
|
40
|
+
DECIMAL_BYTE_ARRAY: _schema.Float64,
|
|
41
|
+
DECIMAL_FIXED_LEN_BYTE_ARRAY: _schema.Float64
|
|
42
|
+
};
|
|
43
|
+
exports.PARQUET_TYPE_MAPPING = PARQUET_TYPE_MAPPING;
|
|
44
|
+
function convertSchemaFromParquet(parquetSchema, parquetMetadata) {
|
|
45
|
+
var fields = getFields(parquetSchema.schema);
|
|
46
|
+
var metadata = parquetMetadata && getSchemaMetadata(parquetMetadata);
|
|
47
|
+
return new _schema.Schema(fields, metadata);
|
|
48
|
+
}
|
|
49
|
+
function getFields(schema) {
|
|
50
|
+
var fields = [];
|
|
51
|
+
for (var name in schema) {
|
|
52
|
+
var field = schema[name];
|
|
53
|
+
if (field.fields) {
|
|
54
|
+
var childFields = getFields(field.fields);
|
|
55
|
+
var nestedField = new _schema.Field(name, new _schema.Struct(childFields), field.optional);
|
|
56
|
+
fields.push(nestedField);
|
|
57
|
+
} else {
|
|
58
|
+
var FieldType = PARQUET_TYPE_MAPPING[field.type];
|
|
59
|
+
var metadata = getFieldMetadata(field);
|
|
60
|
+
var arrowField = new _schema.Field(name, new FieldType(), field.optional, metadata);
|
|
61
|
+
fields.push(arrowField);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return fields;
|
|
65
|
+
}
|
|
66
|
+
function getFieldMetadata(field) {
|
|
67
|
+
var metadata = new Map();
|
|
68
|
+
for (var key in field) {
|
|
69
|
+
if (key !== 'name') {
|
|
70
|
+
var value = field[key] || '';
|
|
71
|
+
value = typeof field[key] !== 'string' ? JSON.stringify(field[key]) : field[key];
|
|
72
|
+
metadata.set(key, value);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return metadata;
|
|
76
|
+
}
|
|
77
|
+
function getSchemaMetadata(parquetMetadata) {
|
|
78
|
+
var metadata = new Map();
|
|
79
|
+
var keyValueList = parquetMetadata.key_value_metadata || [];
|
|
80
|
+
var _iterator = _createForOfIteratorHelper(keyValueList),
|
|
81
|
+
_step;
|
|
82
|
+
try {
|
|
83
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
84
|
+
var _step$value = _step.value,
|
|
85
|
+
key = _step$value.key,
|
|
86
|
+
value = _step$value.value;
|
|
87
|
+
if (typeof value === 'string') {
|
|
88
|
+
metadata.set(key, value);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
} catch (err) {
|
|
92
|
+
_iterator.e(err);
|
|
93
|
+
} finally {
|
|
94
|
+
_iterator.f();
|
|
95
|
+
}
|
|
96
|
+
return metadata;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=convert-schema-from-parquet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-schema-from-parquet.js","names":["_schema","require","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","PARQUET_TYPE_MAPPING","BOOLEAN","Bool","INT32","Int32","INT64","Float64","INT96","FLOAT","Float32","DOUBLE","BYTE_ARRAY","Binary","FIXED_LEN_BYTE_ARRAY","UTF8","Utf8","DATE","TIME_MILLIS","Int64","TIME_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UINT_8","UINT_16","Uint16","UINT_32","Uint32","UINT_64","Uint64","INT_8","Int8","INT_16","Int16","INT_32","INT_64","JSON","BSON","INTERVAL","DECIMAL_INT32","DECIMAL_INT64","DECIMAL_BYTE_ARRAY","DECIMAL_FIXED_LEN_BYTE_ARRAY","exports","convertSchemaFromParquet","parquetSchema","parquetMetadata","fields","getFields","schema","metadata","getSchemaMetadata","Schema","field","childFields","nestedField","Field","Struct","optional","push","FieldType","type","getFieldMetadata","arrowField","Map","key","stringify","set","keyValueList","key_value_metadata","_iterator","_step","_step$value"],"sources":["../../../../src/lib/arrow/convert-schema-from-parquet.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {ParquetSchema} from '../../parquetjs/schema/schema';\nimport type {FieldDefinition, ParquetField, ParquetType} from '../../parquetjs/schema/declare';\nimport {FileMetaData} from '@loaders.gl/parquet/parquetjs/parquet-thrift';\n\nimport {\n Schema,\n Struct,\n Field,\n DataType,\n Bool,\n Float64,\n Int32,\n Float32,\n Binary,\n Utf8,\n Int64,\n Uint16,\n Uint32,\n Uint64,\n Int8,\n Int16\n} from '@loaders.gl/schema';\n\nexport const PARQUET_TYPE_MAPPING: {[type in ParquetType]: typeof DataType} = {\n BOOLEAN: Bool,\n INT32: Int32,\n INT64: Float64,\n INT96: Float64,\n FLOAT: Float32,\n DOUBLE: Float64,\n BYTE_ARRAY: Binary,\n FIXED_LEN_BYTE_ARRAY: Binary,\n UTF8: Utf8,\n DATE: Int32,\n TIME_MILLIS: Int64,\n TIME_MICROS: Int64,\n TIMESTAMP_MILLIS: Int64,\n TIMESTAMP_MICROS: Int64,\n UINT_8: Int32,\n UINT_16: Uint16,\n UINT_32: Uint32,\n UINT_64: Uint64,\n INT_8: Int8,\n INT_16: Int16,\n INT_32: Int32,\n INT_64: Int64,\n JSON: Binary,\n BSON: Binary,\n // TODO check interval type\n INTERVAL: Binary,\n DECIMAL_INT32: Float32,\n DECIMAL_INT64: Float64,\n DECIMAL_BYTE_ARRAY: Float64,\n DECIMAL_FIXED_LEN_BYTE_ARRAY: Float64\n};\n\nexport function convertSchemaFromParquet(\n parquetSchema: ParquetSchema,\n parquetMetadata?: FileMetaData\n): Schema {\n const fields = getFields(parquetSchema.schema);\n const metadata = parquetMetadata && getSchemaMetadata(parquetMetadata);\n return new Schema(fields, metadata);\n}\n\nfunction getFields(schema: FieldDefinition): Field[] {\n const fields: Field[] = [];\n\n for (const name in schema) {\n const field = schema[name];\n\n if (field.fields) {\n const childFields = getFields(field.fields);\n const nestedField = new Field(name, new Struct(childFields), field.optional);\n fields.push(nestedField);\n } else {\n const FieldType = PARQUET_TYPE_MAPPING[field.type];\n const metadata = getFieldMetadata(field);\n const arrowField = new Field(name, new FieldType(), field.optional, metadata);\n fields.push(arrowField);\n }\n }\n\n return fields;\n}\n\nfunction getFieldMetadata(field: ParquetField): Map<string, string> {\n const metadata = new Map();\n\n for (const key in field) {\n if (key !== 'name') {\n let value = field[key] || '';\n value = typeof field[key] !== 'string' ? JSON.stringify(field[key]) : field[key];\n metadata.set(key, value);\n }\n }\n\n return metadata;\n}\n\nfunction getSchemaMetadata(parquetMetadata: FileMetaData): Map<string, string> {\n const metadata = new Map();\n\n const keyValueList = parquetMetadata.key_value_metadata || [];\n for (const {key, value} of keyValueList) {\n if (typeof value === 'string') {\n metadata.set(key, value);\n }\n }\n\n return metadata;\n}\n"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.PARQUET_TYPE_MAPPING = void 0;
|
|
7
|
-
exports.
|
|
7
|
+
exports.convertToParquetSchema = convertToParquetSchema;
|
|
8
8
|
var _schema = require("@loaders.gl/schema");
|
|
9
9
|
var PARQUET_TYPE_MAPPING = {
|
|
10
10
|
BOOLEAN: _schema.Bool,
|
|
@@ -38,36 +38,8 @@ var PARQUET_TYPE_MAPPING = {
|
|
|
38
38
|
DECIMAL_FIXED_LEN_BYTE_ARRAY: _schema.Float64
|
|
39
39
|
};
|
|
40
40
|
exports.PARQUET_TYPE_MAPPING = PARQUET_TYPE_MAPPING;
|
|
41
|
-
function
|
|
42
|
-
var fields = getFields(parquetSchema.schema);
|
|
43
|
-
|
|
44
|
-
return new _schema.Schema(fields);
|
|
45
|
-
}
|
|
46
|
-
function getFieldMetadata(field) {
|
|
47
|
-
var metadata = new Map();
|
|
48
|
-
for (var key in field) {
|
|
49
|
-
if (key !== 'name') {
|
|
50
|
-
var value = typeof field[key] !== 'string' ? JSON.stringify(field[key]) : field[key];
|
|
51
|
-
metadata.set(key, value);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return metadata;
|
|
55
|
-
}
|
|
56
|
-
function getFields(schema) {
|
|
41
|
+
function convertToParquetSchema(schema) {
|
|
57
42
|
var fields = [];
|
|
58
|
-
|
|
59
|
-
var field = schema[name];
|
|
60
|
-
if (field.fields) {
|
|
61
|
-
var childField = getFields(field.fields);
|
|
62
|
-
var nestedField = new _schema.Field(name, new _schema.Struct(childField), field.optional);
|
|
63
|
-
fields.push(nestedField);
|
|
64
|
-
} else {
|
|
65
|
-
var FieldType = PARQUET_TYPE_MAPPING[field.type];
|
|
66
|
-
var metadata = getFieldMetadata(field);
|
|
67
|
-
var arrowField = new _schema.Field(name, new FieldType(), field.optional, metadata);
|
|
68
|
-
fields.push(arrowField);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return fields;
|
|
43
|
+
return new _schema.Schema(fields);
|
|
72
44
|
}
|
|
73
|
-
//# sourceMappingURL=convert-schema.js.map
|
|
45
|
+
//# sourceMappingURL=convert-schema-to-parquet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-schema-to-parquet.js","names":["_schema","require","PARQUET_TYPE_MAPPING","BOOLEAN","Bool","INT32","Int32","INT64","Float64","INT96","FLOAT","Float32","DOUBLE","BYTE_ARRAY","Binary","FIXED_LEN_BYTE_ARRAY","UTF8","Utf8","DATE","TIME_MILLIS","Int64","TIME_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UINT_8","UINT_16","Uint16","UINT_32","Uint32","UINT_64","Uint64","INT_8","Int8","INT_16","Int16","INT_32","INT_64","JSON","BSON","INTERVAL","DECIMAL_INT32","DECIMAL_INT64","DECIMAL_BYTE_ARRAY","DECIMAL_FIXED_LEN_BYTE_ARRAY","exports","convertToParquetSchema","schema","fields","Schema"],"sources":["../../../../src/lib/arrow/convert-schema-to-parquet.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n// import type {ParquetSchema} from '../../parquetjs/schema/schema';\nimport type {\n // FieldDefinition, ParquetField,\n ParquetType\n} from '../../parquetjs/schema/declare';\n\nimport {\n Schema,\n // Struct,\n // Field,\n DataType,\n Bool,\n Float64,\n Int32,\n Float32,\n Binary,\n Utf8,\n Int64,\n Uint16,\n Uint32,\n Uint64,\n Int8,\n Int16\n} from '@loaders.gl/schema';\n\nexport const PARQUET_TYPE_MAPPING: {[type in ParquetType]: typeof DataType} = {\n BOOLEAN: Bool,\n INT32: Int32,\n INT64: Float64,\n INT96: Float64,\n FLOAT: Float32,\n DOUBLE: Float64,\n BYTE_ARRAY: Binary,\n FIXED_LEN_BYTE_ARRAY: Binary,\n UTF8: Utf8,\n DATE: Int32,\n TIME_MILLIS: Int64,\n TIME_MICROS: Int64,\n TIMESTAMP_MILLIS: Int64,\n TIMESTAMP_MICROS: Int64,\n UINT_8: Int32,\n UINT_16: Uint16,\n UINT_32: Uint32,\n UINT_64: Uint64,\n INT_8: Int8,\n INT_16: Int16,\n INT_32: Int32,\n INT_64: Int64,\n JSON: Binary,\n BSON: Binary,\n // TODO check interval type\n INTERVAL: Binary,\n DECIMAL_INT32: Float32,\n DECIMAL_INT64: Float64,\n DECIMAL_BYTE_ARRAY: Float64,\n DECIMAL_FIXED_LEN_BYTE_ARRAY: Float64\n};\n\nexport function convertToParquetSchema(schema: Schema): Schema {\n const fields = []; // getFields(schema.fields);\n\n // TODO add metadata if needed.\n return new Schema(fields);\n}\n\n// function getFields(schema: Field[]): Definition[] {\n// const fields: Field[] = [];\n\n// for (const name in schema) {\n// const field = schema[name];\n\n// // @ts-ignore\n// const children = field.children as DataType[];\n// if (children) {\n// const childField = getFields(field.fields);\n// const nestedField = new Field(name, new Struct(childField), field.optional);\n// fields.push(nestedField);\n// } else {\n// const FieldType = PARQUET_TYPE_MAPPING[field.type];\n// const metadata = getFieldMetadata(field);\n// const arrowField = new Field(name, new FieldType(), field.optional, metadata);\n// fields.push(arrowField);\n// }\n// }\n\n// return fields;\n// }\n\n// function getFieldMetadata(field: ParquetField): Map<string, string> {\n// const metadata = new Map();\n\n// for (const key in field) {\n// if (key !== 'name') {\n// const value = typeof field[key] !== 'string' ? JSON.stringify(field[key]) : field[key];\n// metadata.set(key, value);\n// }\n// }\n\n// return metadata;\n// }\n"],"mappings":";;;;;;;AAQA,IAAAA,OAAA,GAAAC,OAAA;AAmBO,IAAMC,oBAA8D,GAAG;EAC5EC,OAAO,EAAEC,YAAI;EACbC,KAAK,EAAEC,aAAK;EACZC,KAAK,EAAEC,eAAO;EACdC,KAAK,EAAED,eAAO;EACdE,KAAK,EAAEC,eAAO;EACdC,MAAM,EAAEJ,eAAO;EACfK,UAAU,EAAEC,cAAM;EAClBC,oBAAoB,EAAED,cAAM;EAC5BE,IAAI,EAAEC,YAAI;EACVC,IAAI,EAAEZ,aAAK;EACXa,WAAW,EAAEC,aAAK;EAClBC,WAAW,EAAED,aAAK;EAClBE,gBAAgB,EAAEF,aAAK;EACvBG,gBAAgB,EAAEH,aAAK;EACvBI,MAAM,EAAElB,aAAK;EACbmB,OAAO,EAAEC,cAAM;EACfC,OAAO,EAAEC,cAAM;EACfC,OAAO,EAAEC,cAAM;EACfC,KAAK,EAAEC,YAAI;EACXC,MAAM,EAAEC,aAAK;EACbC,MAAM,EAAE7B,aAAK;EACb8B,MAAM,EAAEhB,aAAK;EACbiB,IAAI,EAAEvB,cAAM;EACZwB,IAAI,EAAExB,cAAM;EAEZyB,QAAQ,EAAEzB,cAAM;EAChB0B,aAAa,EAAE7B,eAAO;EACtB8B,aAAa,EAAEjC,eAAO;EACtBkC,kBAAkB,EAAElC,eAAO;EAC3BmC,4BAA4B,EAAEnC;AAChC,CAAC;AAACoC,OAAA,CAAA1C,oBAAA,GAAAA,oBAAA;AAEK,SAAS2C,sBAAsBA,CAACC,MAAc,EAAU;EAC7D,IAAMC,MAAM,GAAG,EAAE;EAGjB,OAAO,IAAIC,cAAM,CAACD,MAAM,CAAC;AAC3B"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.getGeoMetadata = getGeoMetadata;
|
|
8
|
+
exports.setGeoMetadata = setGeoMetadata;
|
|
9
|
+
exports.unpackGeoMetadata = unpackGeoMetadata;
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
function getGeoMetadata(schema) {
|
|
12
|
+
var stringifiedGeoMetadata = schema.metadata.get('geo');
|
|
13
|
+
if (!stringifiedGeoMetadata) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
try {
|
|
17
|
+
var geoMetadata = JSON.parse(stringifiedGeoMetadata);
|
|
18
|
+
return geoMetadata;
|
|
19
|
+
} catch (_unused) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function setGeoMetadata(schema, geoMetadata) {
|
|
24
|
+
var stringifiedGeoMetadata = JSON.stringify(geoMetadata);
|
|
25
|
+
schema.metadata.set('geo', stringifiedGeoMetadata);
|
|
26
|
+
}
|
|
27
|
+
function unpackGeoMetadata(schema) {
|
|
28
|
+
var geoMetadata = getGeoMetadata(schema);
|
|
29
|
+
if (!geoMetadata) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
var version = geoMetadata.version,
|
|
33
|
+
primary_column = geoMetadata.primary_column,
|
|
34
|
+
columns = geoMetadata.columns;
|
|
35
|
+
if (version) {
|
|
36
|
+
schema.metadata.set('geo.version', version);
|
|
37
|
+
}
|
|
38
|
+
if (primary_column) {
|
|
39
|
+
schema.metadata.set('geo.primary_column', primary_column);
|
|
40
|
+
}
|
|
41
|
+
schema.metadata.set('geo.columns', Object.keys(columns || {}).join(''));
|
|
42
|
+
var _loop = function _loop() {
|
|
43
|
+
var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
|
|
44
|
+
columnName = _Object$entries$_i[0],
|
|
45
|
+
columnMetadata = _Object$entries$_i[1];
|
|
46
|
+
var field = schema.fields.find(function (field) {
|
|
47
|
+
return field.name === columnName;
|
|
48
|
+
});
|
|
49
|
+
if (field) {
|
|
50
|
+
if (field.name === primary_column) {
|
|
51
|
+
field.metadata.set('geo.primary_field', 'true');
|
|
52
|
+
}
|
|
53
|
+
unpackGeoFieldMetadata(field, columnMetadata);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
for (var _i = 0, _Object$entries = Object.entries(columns || {}); _i < _Object$entries.length; _i++) {
|
|
57
|
+
_loop();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function unpackGeoFieldMetadata(field, columnMetadata) {
|
|
61
|
+
for (var _i2 = 0, _Object$entries2 = Object.entries(columnMetadata || {}); _i2 < _Object$entries2.length; _i2++) {
|
|
62
|
+
var _Object$entries2$_i = (0, _slicedToArray2.default)(_Object$entries2[_i2], 2),
|
|
63
|
+
_key = _Object$entries2$_i[0],
|
|
64
|
+
value = _Object$entries2$_i[1];
|
|
65
|
+
switch (_key) {
|
|
66
|
+
case 'geometry_type':
|
|
67
|
+
field.metadata.set("geo.".concat(_key), value.join(','));
|
|
68
|
+
break;
|
|
69
|
+
case 'bbox':
|
|
70
|
+
case 'crs':
|
|
71
|
+
case 'edges':
|
|
72
|
+
default:
|
|
73
|
+
field.metadata.set("geo.".concat(_key), typeof value === 'string' ? value : JSON.stringify(value));
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=decode-geo-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decode-geo-metadata.js","names":["getGeoMetadata","schema","stringifiedGeoMetadata","metadata","get","geoMetadata","JSON","parse","_unused","setGeoMetadata","stringify","set","unpackGeoMetadata","version","primary_column","columns","Object","keys","join","_loop","_Object$entries$_i","_slicedToArray2","default","_Object$entries","_i","columnName","columnMetadata","field","fields","find","name","unpackGeoFieldMetadata","entries","length","_i2","_Object$entries2","_Object$entries2$_i","key","value","concat"],"sources":["../../../../src/lib/geo/decode-geo-metadata.ts"],"sourcesContent":["// loaders.gl, MIT license\nimport {Schema, Field} from '@loaders.gl/schema';\n\n/* eslint-disable camelcase */\n\n/** A geoarrow / geoparquet geo metadata object (stored in stringified form in the top level metadata 'geo' key) */\nexport type GeoMetadata = {\n version?: string;\n primary_column?: string;\n columns: Record<string, GeoColumnMetadata>;\n [key: string]: unknown;\n};\n\n/** A geoarrow / geoparquet geo metadata for one geometry column */\nexport type GeoColumnMetadata = {\n bounding_box?:\n | [number, number, number, number]\n | [number, number, number, number, number, number];\n crs?: string;\n geometry_type?: string[];\n edges?: string;\n [key: string]: unknown;\n};\n\n/**\n * Reads the GeoMetadata object from the metadata\n * @note geoarrow / parquet schema is stringified into a single key-value pair in the parquet metadata */\nexport function getGeoMetadata(schema: Schema): GeoMetadata | null {\n const stringifiedGeoMetadata = schema.metadata.get('geo');\n if (!stringifiedGeoMetadata) {\n return null;\n }\n\n try {\n const geoMetadata = JSON.parse(stringifiedGeoMetadata) as GeoMetadata;\n return geoMetadata;\n } catch {\n return null;\n }\n}\n\n/**\n * Stores a geoarrow / geoparquet geo metadata object in the schema\n * @note geoarrow / geoparquet geo metadata is a single stringified JSON field\n */\nexport function setGeoMetadata(schema: Schema, geoMetadata: GeoMetadata): void {\n const stringifiedGeoMetadata = JSON.stringify(geoMetadata);\n schema.metadata.set('geo', stringifiedGeoMetadata);\n}\n\n/**\n * Unpacks geo metadata into separate metadata fields (parses the long JSON string)\n * @note geoarrow / parquet schema is stringified into a single key-value pair in the parquet metadata\n */\nexport function unpackGeoMetadata(schema: Schema): void {\n const geoMetadata = getGeoMetadata(schema);\n if (!geoMetadata) {\n return;\n }\n\n // Store Parquet Schema Level Metadata\n\n const {version, primary_column, columns} = geoMetadata;\n if (version) {\n schema.metadata.set('geo.version', version);\n }\n\n if (primary_column) {\n schema.metadata.set('geo.primary_column', primary_column);\n }\n\n // store column names as comma separated list\n schema.metadata.set('geo.columns', Object.keys(columns || {}).join(''));\n\n for (const [columnName, columnMetadata] of Object.entries(columns || {})) {\n const field = schema.fields.find((field) => field.name === columnName);\n if (field) {\n if (field.name === primary_column) {\n field.metadata.set('geo.primary_field', 'true');\n }\n unpackGeoFieldMetadata(field, columnMetadata);\n }\n }\n}\n\nfunction unpackGeoFieldMetadata(field: Field, columnMetadata): void {\n for (const [key, value] of Object.entries(columnMetadata || {})) {\n switch (key) {\n case 'geometry_type':\n field.metadata.set(`geo.${key}`, (value as string[]).join(','));\n break;\n case 'bbox':\n case 'crs':\n case 'edges':\n default:\n field.metadata.set(`geo.${key}`, typeof value === 'string' ? value : JSON.stringify(value));\n }\n }\n}\n"],"mappings":";;;;;;;;;;AA2BO,SAASA,cAAcA,CAACC,MAAc,EAAsB;EACjE,IAAMC,sBAAsB,GAAGD,MAAM,CAACE,QAAQ,CAACC,GAAG,CAAC,KAAK,CAAC;EACzD,IAAI,CAACF,sBAAsB,EAAE;IAC3B,OAAO,IAAI;EACb;EAEA,IAAI;IACF,IAAMG,WAAW,GAAGC,IAAI,CAACC,KAAK,CAACL,sBAAsB,CAAgB;IACrE,OAAOG,WAAW;EACpB,CAAC,CAAC,OAAAG,OAAA,EAAM;IACN,OAAO,IAAI;EACb;AACF;AAMO,SAASC,cAAcA,CAACR,MAAc,EAAEI,WAAwB,EAAQ;EAC7E,IAAMH,sBAAsB,GAAGI,IAAI,CAACI,SAAS,CAACL,WAAW,CAAC;EAC1DJ,MAAM,CAACE,QAAQ,CAACQ,GAAG,CAAC,KAAK,EAAET,sBAAsB,CAAC;AACpD;AAMO,SAASU,iBAAiBA,CAACX,MAAc,EAAQ;EACtD,IAAMI,WAAW,GAAGL,cAAc,CAACC,MAAM,CAAC;EAC1C,IAAI,CAACI,WAAW,EAAE;IAChB;EACF;EAIA,IAAOQ,OAAO,GAA6BR,WAAW,CAA/CQ,OAAO;IAAEC,cAAc,GAAaT,WAAW,CAAtCS,cAAc;IAAEC,OAAO,GAAIV,WAAW,CAAtBU,OAAO;EACvC,IAAIF,OAAO,EAAE;IACXZ,MAAM,CAACE,QAAQ,CAACQ,GAAG,CAAC,aAAa,EAAEE,OAAO,CAAC;EAC7C;EAEA,IAAIC,cAAc,EAAE;IAClBb,MAAM,CAACE,QAAQ,CAACQ,GAAG,CAAC,oBAAoB,EAAEG,cAAc,CAAC;EAC3D;EAGAb,MAAM,CAACE,QAAQ,CAACQ,GAAG,CAAC,aAAa,EAAEK,MAAM,CAACC,IAAI,CAACF,OAAO,IAAI,CAAC,CAAC,CAAC,CAACG,IAAI,CAAC,EAAE,CAAC,CAAC;EAAC,IAAAC,KAAA,YAAAA,MAAA,EAEE;IAArE,IAAAC,kBAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAC,eAAA,CAAAC,EAAA;MAAOC,UAAU,GAAAL,kBAAA;MAAEM,cAAc,GAAAN,kBAAA;IACpC,IAAMO,KAAK,GAAG1B,MAAM,CAAC2B,MAAM,CAACC,IAAI,CAAC,UAACF,KAAK;MAAA,OAAKA,KAAK,CAACG,IAAI,KAAKL,UAAU;IAAA,EAAC;IACtE,IAAIE,KAAK,EAAE;MACT,IAAIA,KAAK,CAACG,IAAI,KAAKhB,cAAc,EAAE;QACjCa,KAAK,CAACxB,QAAQ,CAACQ,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC;MACjD;MACAoB,sBAAsB,CAACJ,KAAK,EAAED,cAAc,CAAC;IAC/C;EACF,CAAC;EARD,SAAAF,EAAA,MAAAD,eAAA,GAA2CP,MAAM,CAACgB,OAAO,CAACjB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAAS,EAAA,GAAAD,eAAA,CAAAU,MAAA,EAAAT,EAAA;IAAAL,KAAA;EAAA;AAS1E;AAEA,SAASY,sBAAsBA,CAACJ,KAAY,EAAED,cAAc,EAAQ;EAClE,SAAAQ,GAAA,MAAAC,gBAAA,GAA2BnB,MAAM,CAACgB,OAAO,CAACN,cAAc,IAAI,CAAC,CAAC,CAAC,EAAAQ,GAAA,GAAAC,gBAAA,CAAAF,MAAA,EAAAC,GAAA,IAAE;IAA5D,IAAAE,mBAAA,OAAAf,eAAA,CAAAC,OAAA,EAAAa,gBAAA,CAAAD,GAAA;MAAOG,IAAG,GAAAD,mBAAA;MAAEE,KAAK,GAAAF,mBAAA;IACpB,QAAQC,IAAG;MACT,KAAK,eAAe;QAClBV,KAAK,CAACxB,QAAQ,CAACQ,GAAG,QAAA4B,MAAA,CAAQF,IAAG,GAAKC,KAAK,CAAcpB,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D;MACF,KAAK,MAAM;MACX,KAAK,KAAK;MACV,KAAK,OAAO;MACZ;QACES,KAAK,CAACxB,QAAQ,CAACQ,GAAG,QAAA4B,MAAA,CAAQF,IAAG,GAAI,OAAOC,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAGhC,IAAI,CAACI,SAAS,CAAC4B,KAAK,CAAC,CAAC;IAAC;EAElG;AACF"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _default = {
|
|
8
|
+
$schema: 'http://json-schema.org/draft-07/schema#',
|
|
9
|
+
title: 'GeoParquet',
|
|
10
|
+
description: 'Parquet metadata included in the geo field.',
|
|
11
|
+
type: 'object',
|
|
12
|
+
required: ['version', 'primary_column', 'columns'],
|
|
13
|
+
properties: {
|
|
14
|
+
version: {
|
|
15
|
+
type: 'string',
|
|
16
|
+
const: '1.0.0-beta.1'
|
|
17
|
+
},
|
|
18
|
+
primary_column: {
|
|
19
|
+
type: 'string',
|
|
20
|
+
minLength: 1
|
|
21
|
+
},
|
|
22
|
+
columns: {
|
|
23
|
+
type: 'object',
|
|
24
|
+
minProperties: 1,
|
|
25
|
+
patternProperties: {
|
|
26
|
+
'.+': {
|
|
27
|
+
type: 'object',
|
|
28
|
+
required: ['encoding', 'geometry_types'],
|
|
29
|
+
properties: {
|
|
30
|
+
encoding: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
const: 'WKB'
|
|
33
|
+
},
|
|
34
|
+
geometry_types: {
|
|
35
|
+
type: 'array',
|
|
36
|
+
uniqueItems: true,
|
|
37
|
+
items: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
pattern: '^(GeometryCollection|(Multi)?(Point|LineString|Polygon))( Z)?$'
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
crs: {
|
|
43
|
+
oneOf: [{
|
|
44
|
+
$ref: 'https://proj.org/schemas/v0.5/projjson.schema.json'
|
|
45
|
+
}, {
|
|
46
|
+
type: 'null'
|
|
47
|
+
}]
|
|
48
|
+
},
|
|
49
|
+
edges: {
|
|
50
|
+
type: 'string',
|
|
51
|
+
enum: ['planar', 'spherical']
|
|
52
|
+
},
|
|
53
|
+
orientation: {
|
|
54
|
+
type: 'string',
|
|
55
|
+
const: 'counterclockwise'
|
|
56
|
+
},
|
|
57
|
+
bbox: {
|
|
58
|
+
type: 'array',
|
|
59
|
+
items: {
|
|
60
|
+
type: 'number'
|
|
61
|
+
},
|
|
62
|
+
oneOf: [{
|
|
63
|
+
description: '2D bbox consisting of (xmin, ymin, xmax, ymax)',
|
|
64
|
+
minItems: 4,
|
|
65
|
+
maxItems: 4
|
|
66
|
+
}, {
|
|
67
|
+
description: '3D bbox consisting of (xmin, ymin, zmin, xmax, ymax, zmax)',
|
|
68
|
+
minItems: 6,
|
|
69
|
+
maxItems: 6
|
|
70
|
+
}]
|
|
71
|
+
},
|
|
72
|
+
epoch: {
|
|
73
|
+
type: 'number'
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
additionalProperties: false
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
exports.default = _default;
|
|
83
|
+
//# sourceMappingURL=geoparquet-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geoparquet-schema.js","names":["$schema","title","description","type","required","properties","version","const","primary_column","minLength","columns","minProperties","patternProperties","encoding","geometry_types","uniqueItems","items","pattern","crs","oneOf","$ref","edges","enum","orientation","bbox","minItems","maxItems","epoch","additionalProperties","exports","default","_default"],"sources":["../../../../src/lib/geo/geoparquet-schema.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n/* eslint-disable camelcase */\n\n/**\n * Geoparquet JSON schema for geo metadata\n * @see https://github.com/geoarrow/geoarrow/blob/main/metadata.md\n * @see https://github.com/opengeospatial/geoparquet/blob/main/format-specs/geoparquet.md\n */\nexport default {\n $schema: 'http://json-schema.org/draft-07/schema#',\n title: 'GeoParquet',\n description: 'Parquet metadata included in the geo field.',\n type: 'object',\n required: ['version', 'primary_column', 'columns'],\n properties: {\n version: {type: 'string', const: '1.0.0-beta.1'},\n primary_column: {type: 'string', minLength: 1},\n columns: {\n type: 'object',\n minProperties: 1,\n patternProperties: {\n '.+': {\n type: 'object',\n required: ['encoding', 'geometry_types'],\n properties: {\n encoding: {type: 'string', const: 'WKB'},\n geometry_types: {\n type: 'array',\n uniqueItems: true,\n items: {\n type: 'string',\n pattern: '^(GeometryCollection|(Multi)?(Point|LineString|Polygon))( Z)?$'\n }\n },\n crs: {\n oneOf: [\n {\n $ref: 'https://proj.org/schemas/v0.5/projjson.schema.json'\n },\n {type: 'null'}\n ]\n },\n edges: {type: 'string', enum: ['planar', 'spherical']},\n orientation: {type: 'string', const: 'counterclockwise'},\n bbox: {\n type: 'array',\n items: {type: 'number'},\n oneOf: [\n {\n description: '2D bbox consisting of (xmin, ymin, xmax, ymax)',\n minItems: 4,\n maxItems: 4\n },\n {\n description: '3D bbox consisting of (xmin, ymin, zmin, xmax, ymax, zmax)',\n minItems: 6,\n maxItems: 6\n }\n ]\n },\n epoch: {type: 'number'}\n }\n }\n },\n additionalProperties: false\n }\n }\n};\n"],"mappings":";;;;;;eASe;EACbA,OAAO,EAAE,yCAAyC;EAClDC,KAAK,EAAE,YAAY;EACnBC,WAAW,EAAE,6CAA6C;EAC1DC,IAAI,EAAE,QAAQ;EACdC,QAAQ,EAAE,CAAC,SAAS,EAAE,gBAAgB,EAAE,SAAS,CAAC;EAClDC,UAAU,EAAE;IACVC,OAAO,EAAE;MAACH,IAAI,EAAE,QAAQ;MAAEI,KAAK,EAAE;IAAc,CAAC;IAChDC,cAAc,EAAE;MAACL,IAAI,EAAE,QAAQ;MAAEM,SAAS,EAAE;IAAC,CAAC;IAC9CC,OAAO,EAAE;MACPP,IAAI,EAAE,QAAQ;MACdQ,aAAa,EAAE,CAAC;MAChBC,iBAAiB,EAAE;QACjB,IAAI,EAAE;UACJT,IAAI,EAAE,QAAQ;UACdC,QAAQ,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC;UACxCC,UAAU,EAAE;YACVQ,QAAQ,EAAE;cAACV,IAAI,EAAE,QAAQ;cAAEI,KAAK,EAAE;YAAK,CAAC;YACxCO,cAAc,EAAE;cACdX,IAAI,EAAE,OAAO;cACbY,WAAW,EAAE,IAAI;cACjBC,KAAK,EAAE;gBACLb,IAAI,EAAE,QAAQ;gBACdc,OAAO,EAAE;cACX;YACF,CAAC;YACDC,GAAG,EAAE;cACHC,KAAK,EAAE,CACL;gBACEC,IAAI,EAAE;cACR,CAAC,EACD;gBAACjB,IAAI,EAAE;cAAM,CAAC;YAElB,CAAC;YACDkB,KAAK,EAAE;cAAClB,IAAI,EAAE,QAAQ;cAAEmB,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW;YAAC,CAAC;YACtDC,WAAW,EAAE;cAACpB,IAAI,EAAE,QAAQ;cAAEI,KAAK,EAAE;YAAkB,CAAC;YACxDiB,IAAI,EAAE;cACJrB,IAAI,EAAE,OAAO;cACba,KAAK,EAAE;gBAACb,IAAI,EAAE;cAAQ,CAAC;cACvBgB,KAAK,EAAE,CACL;gBACEjB,WAAW,EAAE,gDAAgD;gBAC7DuB,QAAQ,EAAE,CAAC;gBACXC,QAAQ,EAAE;cACZ,CAAC,EACD;gBACExB,WAAW,EAAE,4DAA4D;gBACzEuB,QAAQ,EAAE,CAAC;gBACXC,QAAQ,EAAE;cACZ,CAAC;YAEL,CAAC;YACDC,KAAK,EAAE;cAACxB,IAAI,EAAE;YAAQ;UACxB;QACF;MACF,CAAC;MACDyB,oBAAoB,EAAE;IACxB;EACF;AACF,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAC,QAAA"}
|