@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.
Files changed (596) hide show
  1. package/dist/bundle.js +2 -2
  2. package/dist/constants.js +18 -6
  3. package/dist/dist.min.js +27 -25
  4. package/dist/dist.min.js.map +3 -3
  5. package/dist/es5/bundle.js +6 -0
  6. package/dist/es5/bundle.js.map +1 -0
  7. package/dist/es5/constants.js +17 -0
  8. package/dist/es5/constants.js.map +1 -0
  9. package/dist/es5/index.js +128 -0
  10. package/dist/es5/index.js.map +1 -0
  11. package/dist/es5/lib/arrow/convert-columns-to-row-group.js +2 -0
  12. package/dist/es5/lib/arrow/convert-columns-to-row-group.js.map +1 -0
  13. package/dist/es5/lib/arrow/convert-row-group-to-columns.js +19 -0
  14. package/dist/es5/lib/arrow/convert-row-group-to-columns.js.map +1 -0
  15. package/dist/es5/lib/arrow/convert-schema-from-parquet.js +114 -0
  16. package/dist/es5/lib/arrow/convert-schema-from-parquet.js.map +1 -0
  17. package/dist/es5/lib/arrow/convert-schema-to-parquet.js +47 -0
  18. package/dist/es5/lib/arrow/convert-schema-to-parquet.js.map +1 -0
  19. package/dist/es5/lib/geo/decode-geo-metadata.js +81 -0
  20. package/dist/es5/lib/geo/decode-geo-metadata.js.map +1 -0
  21. package/dist/es5/lib/geo/geoparquet-schema.js +83 -0
  22. package/dist/es5/lib/geo/geoparquet-schema.js.map +1 -0
  23. package/dist/es5/lib/parsers/parse-parquet-to-columns.js +177 -0
  24. package/dist/es5/lib/parsers/parse-parquet-to-columns.js.map +1 -0
  25. package/dist/es5/lib/parsers/parse-parquet-to-rows.js +172 -0
  26. package/dist/es5/lib/parsers/parse-parquet-to-rows.js.map +1 -0
  27. package/dist/es5/lib/wasm/encode-parquet-wasm.js +43 -0
  28. package/dist/es5/lib/wasm/encode-parquet-wasm.js.map +1 -0
  29. package/dist/es5/lib/wasm/load-wasm/index.js +13 -0
  30. package/dist/es5/lib/wasm/load-wasm/index.js.map +1 -0
  31. package/dist/es5/lib/wasm/load-wasm/load-wasm-browser.js +42 -0
  32. package/dist/es5/lib/wasm/load-wasm/load-wasm-browser.js.map +1 -0
  33. package/dist/es5/lib/wasm/load-wasm/load-wasm-node.js +31 -0
  34. package/dist/es5/lib/wasm/load-wasm/load-wasm-node.js.map +1 -0
  35. package/dist/es5/lib/wasm/parse-parquet-wasm.js +60 -0
  36. package/dist/es5/lib/wasm/parse-parquet-wasm.js.map +1 -0
  37. package/dist/es5/lib/wip/convert-schema-deep.java.disabled +910 -0
  38. package/dist/es5/lib/wip/convert-schema-deep.rs.disabled +976 -0
  39. package/dist/es5/parquet-loader.js +44 -0
  40. package/dist/es5/parquet-loader.js.map +1 -0
  41. package/dist/es5/parquet-wasm-loader.js +30 -0
  42. package/dist/es5/parquet-wasm-loader.js.map +1 -0
  43. package/dist/es5/parquet-wasm-writer.js +26 -0
  44. package/dist/es5/parquet-wasm-writer.js.map +1 -0
  45. package/dist/es5/parquet-writer.js +24 -0
  46. package/dist/es5/parquet-writer.js.map +1 -0
  47. package/dist/es5/parquetjs/codecs/declare.js +2 -0
  48. package/dist/es5/parquetjs/codecs/declare.js.map +1 -0
  49. package/dist/es5/parquetjs/codecs/dictionary.js +23 -0
  50. package/dist/es5/parquetjs/codecs/dictionary.js.map +1 -0
  51. package/dist/es5/parquetjs/codecs/index.js +47 -0
  52. package/dist/es5/parquetjs/codecs/index.js.map +1 -0
  53. package/dist/es5/parquetjs/codecs/plain.js +208 -0
  54. package/dist/es5/parquetjs/codecs/plain.js.map +1 -0
  55. package/dist/es5/parquetjs/codecs/rle.js +132 -0
  56. package/dist/es5/parquetjs/codecs/rle.js.map +1 -0
  57. package/dist/es5/parquetjs/compression.js +137 -0
  58. package/dist/es5/parquetjs/compression.js.map +1 -0
  59. package/dist/es5/parquetjs/encoder/parquet-encoder.js +625 -0
  60. package/dist/es5/parquetjs/encoder/parquet-encoder.js.map +1 -0
  61. package/dist/es5/parquetjs/parquet-thrift/BoundaryOrder.js +14 -0
  62. package/dist/es5/parquetjs/parquet-thrift/BoundaryOrder.js.map +1 -0
  63. package/dist/es5/parquetjs/parquet-thrift/BsonType.js +52 -0
  64. package/dist/es5/parquetjs/parquet-thrift/BsonType.js.map +1 -0
  65. package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js +193 -0
  66. package/dist/es5/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -0
  67. package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js +198 -0
  68. package/dist/es5/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -0
  69. package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js +367 -0
  70. package/dist/es5/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -0
  71. package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js +99 -0
  72. package/dist/es5/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -0
  73. package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js +19 -0
  74. package/dist/es5/parquetjs/parquet-thrift/CompressionCodec.js.map +1 -0
  75. package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js +33 -0
  76. package/dist/es5/parquetjs/parquet-thrift/ConvertedType.js.map +1 -0
  77. package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js +152 -0
  78. package/dist/es5/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -0
  79. package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js +207 -0
  80. package/dist/es5/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -0
  81. package/dist/es5/parquetjs/parquet-thrift/DateType.js +52 -0
  82. package/dist/es5/parquetjs/parquet-thrift/DateType.js.map +1 -0
  83. package/dist/es5/parquetjs/parquet-thrift/DecimalType.js +96 -0
  84. package/dist/es5/parquetjs/parquet-thrift/DecimalType.js.map +1 -0
  85. package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js +113 -0
  86. package/dist/es5/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -0
  87. package/dist/es5/parquetjs/parquet-thrift/Encoding.js +19 -0
  88. package/dist/es5/parquetjs/parquet-thrift/Encoding.js.map +1 -0
  89. package/dist/es5/parquetjs/parquet-thrift/EnumType.js +52 -0
  90. package/dist/es5/parquetjs/parquet-thrift/EnumType.js.map +1 -0
  91. package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js +14 -0
  92. package/dist/es5/parquetjs/parquet-thrift/FieldRepetitionType.js.map +1 -0
  93. package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js +239 -0
  94. package/dist/es5/parquetjs/parquet-thrift/FileMetaData.js.map +1 -0
  95. package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js +52 -0
  96. package/dist/es5/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -0
  97. package/dist/es5/parquetjs/parquet-thrift/IntType.js +96 -0
  98. package/dist/es5/parquetjs/parquet-thrift/IntType.js.map +1 -0
  99. package/dist/es5/parquetjs/parquet-thrift/JsonType.js +52 -0
  100. package/dist/es5/parquetjs/parquet-thrift/JsonType.js.map +1 -0
  101. package/dist/es5/parquetjs/parquet-thrift/KeyValue.js +94 -0
  102. package/dist/es5/parquetjs/parquet-thrift/KeyValue.js.map +1 -0
  103. package/dist/es5/parquetjs/parquet-thrift/ListType.js +52 -0
  104. package/dist/es5/parquetjs/parquet-thrift/ListType.js.map +1 -0
  105. package/dist/es5/parquetjs/parquet-thrift/LogicalType.js +423 -0
  106. package/dist/es5/parquetjs/parquet-thrift/LogicalType.js.map +1 -0
  107. package/dist/es5/parquetjs/parquet-thrift/MapType.js +52 -0
  108. package/dist/es5/parquetjs/parquet-thrift/MapType.js.map +1 -0
  109. package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js +52 -0
  110. package/dist/es5/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -0
  111. package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js +52 -0
  112. package/dist/es5/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -0
  113. package/dist/es5/parquetjs/parquet-thrift/NullType.js +52 -0
  114. package/dist/es5/parquetjs/parquet-thrift/NullType.js.map +1 -0
  115. package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js +89 -0
  116. package/dist/es5/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -0
  117. package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js +115 -0
  118. package/dist/es5/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -0
  119. package/dist/es5/parquetjs/parquet-thrift/PageHeader.js +204 -0
  120. package/dist/es5/parquetjs/parquet-thrift/PageHeader.js.map +1 -0
  121. package/dist/es5/parquetjs/parquet-thrift/PageLocation.js +124 -0
  122. package/dist/es5/parquetjs/parquet-thrift/PageLocation.js.map +1 -0
  123. package/dist/es5/parquetjs/parquet-thrift/PageType.js +15 -0
  124. package/dist/es5/parquetjs/parquet-thrift/PageType.js.map +1 -0
  125. package/dist/es5/parquetjs/parquet-thrift/RowGroup.js +165 -0
  126. package/dist/es5/parquetjs/parquet-thrift/RowGroup.js.map +1 -0
  127. package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js +231 -0
  128. package/dist/es5/parquetjs/parquet-thrift/SchemaElement.js.map +1 -0
  129. package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js +115 -0
  130. package/dist/es5/parquetjs/parquet-thrift/SortingColumn.js.map +1 -0
  131. package/dist/es5/parquetjs/parquet-thrift/Statistics.js +165 -0
  132. package/dist/es5/parquetjs/parquet-thrift/Statistics.js.map +1 -0
  133. package/dist/es5/parquetjs/parquet-thrift/StringType.js +52 -0
  134. package/dist/es5/parquetjs/parquet-thrift/StringType.js.map +1 -0
  135. package/dist/es5/parquetjs/parquet-thrift/TimeType.js +97 -0
  136. package/dist/es5/parquetjs/parquet-thrift/TimeType.js.map +1 -0
  137. package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js +126 -0
  138. package/dist/es5/parquetjs/parquet-thrift/TimeUnit.js.map +1 -0
  139. package/dist/es5/parquetjs/parquet-thrift/TimestampType.js +97 -0
  140. package/dist/es5/parquetjs/parquet-thrift/TimestampType.js.map +1 -0
  141. package/dist/es5/parquetjs/parquet-thrift/Type.js +19 -0
  142. package/dist/es5/parquetjs/parquet-thrift/Type.js.map +1 -0
  143. package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js +52 -0
  144. package/dist/es5/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -0
  145. package/dist/es5/parquetjs/parquet-thrift/UUIDType.js +52 -0
  146. package/dist/es5/parquetjs/parquet-thrift/UUIDType.js.map +1 -0
  147. package/dist/es5/parquetjs/parquet-thrift/index.js +479 -0
  148. package/dist/es5/parquetjs/parquet-thrift/index.js.map +1 -0
  149. package/dist/es5/parquetjs/parser/decoders.js +393 -0
  150. package/dist/es5/parquetjs/parser/decoders.js.map +1 -0
  151. package/dist/es5/parquetjs/parser/parquet-reader.js +610 -0
  152. package/dist/es5/parquetjs/parser/parquet-reader.js.map +1 -0
  153. package/dist/es5/parquetjs/schema/declare.js +21 -0
  154. package/dist/es5/parquetjs/schema/declare.js.map +1 -0
  155. package/dist/es5/parquetjs/schema/schema.js +165 -0
  156. package/dist/es5/parquetjs/schema/schema.js.map +1 -0
  157. package/dist/es5/parquetjs/schema/shred.js +282 -0
  158. package/dist/es5/parquetjs/schema/shred.js.map +1 -0
  159. package/dist/es5/parquetjs/schema/types.js +406 -0
  160. package/dist/es5/parquetjs/schema/types.js.map +1 -0
  161. package/dist/es5/parquetjs/utils/file-utils.js +47 -0
  162. package/dist/es5/parquetjs/utils/file-utils.js.map +1 -0
  163. package/dist/es5/parquetjs/utils/read-utils.js +120 -0
  164. package/dist/es5/parquetjs/utils/read-utils.js.map +1 -0
  165. package/dist/es5/workers/parquet-worker.js +6 -0
  166. package/dist/es5/workers/parquet-worker.js.map +1 -0
  167. package/dist/esm/bundle.js +4 -0
  168. package/dist/esm/bundle.js.map +1 -0
  169. package/dist/esm/constants.js +6 -0
  170. package/dist/esm/constants.js.map +1 -0
  171. package/dist/esm/index.js +31 -0
  172. package/dist/esm/index.js.map +1 -0
  173. package/dist/esm/lib/arrow/convert-columns-to-row-group.js +2 -0
  174. package/dist/esm/lib/arrow/convert-columns-to-row-group.js.map +1 -0
  175. package/dist/esm/lib/arrow/convert-row-group-to-columns.js +8 -0
  176. package/dist/esm/lib/arrow/convert-row-group-to-columns.js.map +1 -0
  177. package/dist/esm/lib/arrow/convert-schema-from-parquet.js +95 -0
  178. package/dist/esm/lib/arrow/convert-schema-from-parquet.js.map +1 -0
  179. package/dist/esm/lib/arrow/convert-schema-to-parquet.js +39 -0
  180. package/dist/esm/lib/arrow/convert-schema-to-parquet.js.map +1 -0
  181. package/dist/esm/lib/geo/decode-geo-metadata.js +62 -0
  182. package/dist/esm/lib/geo/decode-geo-metadata.js.map +1 -0
  183. package/dist/esm/lib/geo/geoparquet-schema.js +76 -0
  184. package/dist/esm/lib/geo/geoparquet-schema.js.map +1 -0
  185. package/dist/esm/lib/parsers/parse-parquet-to-columns.js +39 -0
  186. package/dist/esm/lib/parsers/parse-parquet-to-columns.js.map +1 -0
  187. package/dist/esm/lib/parsers/parse-parquet-to-rows.js +29 -0
  188. package/dist/esm/lib/parsers/parse-parquet-to-rows.js.map +1 -0
  189. package/dist/esm/lib/wasm/encode-parquet-wasm.js +15 -0
  190. package/dist/esm/lib/wasm/encode-parquet-wasm.js.map +1 -0
  191. package/dist/esm/lib/wasm/load-wasm/index.js +2 -0
  192. package/dist/esm/lib/wasm/load-wasm/index.js.map +1 -0
  193. package/dist/esm/lib/wasm/load-wasm/load-wasm-browser.js +11 -0
  194. package/dist/esm/lib/wasm/load-wasm/load-wasm-browser.js.map +1 -0
  195. package/dist/esm/lib/wasm/load-wasm/load-wasm-node.js +5 -0
  196. package/dist/esm/lib/wasm/load-wasm/load-wasm-node.js.map +1 -0
  197. package/dist/esm/lib/wasm/parse-parquet-wasm.js +21 -0
  198. package/dist/esm/lib/wasm/parse-parquet-wasm.js.map +1 -0
  199. package/dist/esm/lib/wip/convert-schema-deep.java.disabled +910 -0
  200. package/dist/esm/lib/wip/convert-schema-deep.rs.disabled +976 -0
  201. package/dist/esm/parquet-loader.js +36 -0
  202. package/dist/esm/parquet-loader.js.map +1 -0
  203. package/dist/esm/parquet-wasm-loader.js +22 -0
  204. package/dist/esm/parquet-wasm-loader.js.map +1 -0
  205. package/dist/esm/parquet-wasm-writer.js +19 -0
  206. package/dist/esm/parquet-wasm-writer.js.map +1 -0
  207. package/dist/esm/parquet-writer.js +17 -0
  208. package/dist/esm/parquet-writer.js.map +1 -0
  209. package/dist/esm/parquetjs/LICENSE +20 -0
  210. package/dist/esm/parquetjs/codecs/declare.js +2 -0
  211. package/dist/esm/parquetjs/codecs/declare.js.map +1 -0
  212. package/dist/esm/parquetjs/codecs/dictionary.js +13 -0
  213. package/dist/esm/parquetjs/codecs/dictionary.js.map +1 -0
  214. package/dist/esm/parquetjs/codecs/index.js +23 -0
  215. package/dist/esm/parquetjs/codecs/index.js.map +1 -0
  216. package/dist/esm/parquetjs/codecs/plain.js +200 -0
  217. package/dist/esm/parquetjs/codecs/plain.js.map +1 -0
  218. package/dist/esm/parquetjs/codecs/rle.js +119 -0
  219. package/dist/esm/parquetjs/codecs/rle.js.map +1 -0
  220. package/dist/esm/parquetjs/compression.js +61 -0
  221. package/dist/esm/parquetjs/compression.js.map +1 -0
  222. package/dist/{parquetjs/encoder/writer.js → esm/parquetjs/encoder/parquet-encoder.js} +8 -106
  223. package/dist/esm/parquetjs/encoder/parquet-encoder.js.map +1 -0
  224. package/dist/esm/parquetjs/modules.d.ts +21 -0
  225. package/dist/esm/parquetjs/parquet-thrift/BoundaryOrder.js +7 -0
  226. package/dist/esm/parquetjs/parquet-thrift/BoundaryOrder.js.map +1 -0
  227. package/dist/esm/parquetjs/parquet-thrift/BsonType.js +31 -0
  228. package/dist/esm/parquetjs/parquet-thrift/BsonType.js.map +1 -0
  229. package/dist/esm/parquetjs/parquet-thrift/ColumnChunk.js +173 -0
  230. package/dist/esm/parquetjs/parquet-thrift/ColumnChunk.js.map +1 -0
  231. package/dist/esm/parquetjs/parquet-thrift/ColumnIndex.js +176 -0
  232. package/dist/esm/parquetjs/parquet-thrift/ColumnIndex.js.map +1 -0
  233. package/dist/esm/parquetjs/parquet-thrift/ColumnMetaData.js +347 -0
  234. package/dist/esm/parquetjs/parquet-thrift/ColumnMetaData.js.map +1 -0
  235. package/dist/esm/parquetjs/parquet-thrift/ColumnOrder.js +77 -0
  236. package/dist/esm/parquetjs/parquet-thrift/ColumnOrder.js.map +1 -0
  237. package/dist/esm/parquetjs/parquet-thrift/CompressionCodec.js +12 -0
  238. package/dist/esm/parquetjs/parquet-thrift/CompressionCodec.js.map +1 -0
  239. package/dist/esm/parquetjs/parquet-thrift/ConvertedType.js +26 -0
  240. package/dist/esm/parquetjs/parquet-thrift/ConvertedType.js.map +1 -0
  241. package/dist/esm/parquetjs/parquet-thrift/DataPageHeader.js +132 -0
  242. package/dist/esm/parquetjs/parquet-thrift/DataPageHeader.js.map +1 -0
  243. package/dist/esm/parquetjs/parquet-thrift/DataPageHeaderV2.js +187 -0
  244. package/dist/esm/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +1 -0
  245. package/dist/esm/parquetjs/parquet-thrift/DateType.js +31 -0
  246. package/dist/esm/parquetjs/parquet-thrift/DateType.js.map +1 -0
  247. package/dist/esm/parquetjs/parquet-thrift/DecimalType.js +76 -0
  248. package/dist/esm/parquetjs/parquet-thrift/DecimalType.js.map +1 -0
  249. package/dist/esm/parquetjs/parquet-thrift/DictionaryPageHeader.js +93 -0
  250. package/dist/esm/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +1 -0
  251. package/dist/esm/parquetjs/parquet-thrift/Encoding.js +12 -0
  252. package/dist/esm/parquetjs/parquet-thrift/Encoding.js.map +1 -0
  253. package/dist/esm/parquetjs/parquet-thrift/EnumType.js +31 -0
  254. package/dist/esm/parquetjs/parquet-thrift/EnumType.js.map +1 -0
  255. package/dist/esm/parquetjs/parquet-thrift/FieldRepetitionType.js +7 -0
  256. package/dist/esm/parquetjs/parquet-thrift/FieldRepetitionType.js.map +1 -0
  257. package/dist/esm/parquetjs/parquet-thrift/FileMetaData.js +219 -0
  258. package/dist/esm/parquetjs/parquet-thrift/FileMetaData.js.map +1 -0
  259. package/dist/esm/parquetjs/parquet-thrift/IndexPageHeader.js +31 -0
  260. package/dist/esm/parquetjs/parquet-thrift/IndexPageHeader.js.map +1 -0
  261. package/dist/esm/parquetjs/parquet-thrift/IntType.js +76 -0
  262. package/dist/esm/parquetjs/parquet-thrift/IntType.js.map +1 -0
  263. package/dist/esm/parquetjs/parquet-thrift/JsonType.js +31 -0
  264. package/dist/esm/parquetjs/parquet-thrift/JsonType.js.map +1 -0
  265. package/dist/esm/parquetjs/parquet-thrift/KeyValue.js +74 -0
  266. package/dist/esm/parquetjs/parquet-thrift/KeyValue.js.map +1 -0
  267. package/dist/esm/parquetjs/parquet-thrift/ListType.js +31 -0
  268. package/dist/esm/parquetjs/parquet-thrift/ListType.js.map +1 -0
  269. package/dist/esm/parquetjs/parquet-thrift/LogicalType.js +377 -0
  270. package/dist/esm/parquetjs/parquet-thrift/LogicalType.js.map +1 -0
  271. package/dist/esm/parquetjs/parquet-thrift/MapType.js +31 -0
  272. package/dist/esm/parquetjs/parquet-thrift/MapType.js.map +1 -0
  273. package/dist/esm/parquetjs/parquet-thrift/MicroSeconds.js +31 -0
  274. package/dist/esm/parquetjs/parquet-thrift/MicroSeconds.js.map +1 -0
  275. package/dist/esm/parquetjs/parquet-thrift/MilliSeconds.js +31 -0
  276. package/dist/esm/parquetjs/parquet-thrift/MilliSeconds.js.map +1 -0
  277. package/dist/esm/parquetjs/parquet-thrift/NullType.js +31 -0
  278. package/dist/esm/parquetjs/parquet-thrift/NullType.js.map +1 -0
  279. package/dist/esm/parquetjs/parquet-thrift/OffsetIndex.js +69 -0
  280. package/dist/esm/parquetjs/parquet-thrift/OffsetIndex.js.map +1 -0
  281. package/dist/esm/parquetjs/parquet-thrift/PageEncodingStats.js +95 -0
  282. package/dist/esm/parquetjs/parquet-thrift/PageEncodingStats.js.map +1 -0
  283. package/dist/esm/parquetjs/parquet-thrift/PageHeader.js +184 -0
  284. package/dist/esm/parquetjs/parquet-thrift/PageHeader.js.map +1 -0
  285. package/dist/esm/parquetjs/parquet-thrift/PageLocation.js +104 -0
  286. package/dist/esm/parquetjs/parquet-thrift/PageLocation.js.map +1 -0
  287. package/dist/esm/parquetjs/parquet-thrift/PageType.js +8 -0
  288. package/dist/esm/parquetjs/parquet-thrift/PageType.js.map +1 -0
  289. package/dist/esm/parquetjs/parquet-thrift/RowGroup.js +145 -0
  290. package/dist/esm/parquetjs/parquet-thrift/RowGroup.js.map +1 -0
  291. package/dist/esm/parquetjs/parquet-thrift/SchemaElement.js +211 -0
  292. package/dist/esm/parquetjs/parquet-thrift/SchemaElement.js.map +1 -0
  293. package/dist/esm/parquetjs/parquet-thrift/SortingColumn.js +95 -0
  294. package/dist/esm/parquetjs/parquet-thrift/SortingColumn.js.map +1 -0
  295. package/dist/esm/parquetjs/parquet-thrift/Statistics.js +145 -0
  296. package/dist/esm/parquetjs/parquet-thrift/Statistics.js.map +1 -0
  297. package/dist/esm/parquetjs/parquet-thrift/StringType.js +31 -0
  298. package/dist/esm/parquetjs/parquet-thrift/StringType.js.map +1 -0
  299. package/dist/esm/parquetjs/parquet-thrift/TimeType.js +77 -0
  300. package/dist/esm/parquetjs/parquet-thrift/TimeType.js.map +1 -0
  301. package/dist/esm/parquetjs/parquet-thrift/TimeUnit.js +102 -0
  302. package/dist/esm/parquetjs/parquet-thrift/TimeUnit.js.map +1 -0
  303. package/dist/esm/parquetjs/parquet-thrift/TimestampType.js +77 -0
  304. package/dist/esm/parquetjs/parquet-thrift/TimestampType.js.map +1 -0
  305. package/dist/esm/parquetjs/parquet-thrift/Type.js +12 -0
  306. package/dist/esm/parquetjs/parquet-thrift/Type.js.map +1 -0
  307. package/dist/esm/parquetjs/parquet-thrift/TypeDefinedOrder.js +31 -0
  308. package/dist/esm/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +1 -0
  309. package/dist/esm/parquetjs/parquet-thrift/UUIDType.js +31 -0
  310. package/dist/esm/parquetjs/parquet-thrift/UUIDType.js.map +1 -0
  311. package/dist/esm/parquetjs/parquet-thrift/index.js +44 -0
  312. package/dist/esm/parquetjs/parquet-thrift/index.js.map +1 -0
  313. package/dist/esm/parquetjs/parser/decoders.js +253 -0
  314. package/dist/esm/parquetjs/parser/decoders.js.map +1 -0
  315. package/dist/{parquetjs/parser/parquet-envelope-reader.js → esm/parquetjs/parser/parquet-reader.js} +95 -74
  316. package/dist/esm/parquetjs/parser/parquet-reader.js.map +1 -0
  317. package/dist/esm/parquetjs/schema/declare.js +12 -0
  318. package/dist/esm/parquetjs/schema/declare.js.map +1 -0
  319. package/dist/esm/parquetjs/schema/schema.js +140 -0
  320. package/dist/esm/parquetjs/schema/schema.js.map +1 -0
  321. package/dist/esm/parquetjs/schema/shred.js +228 -0
  322. package/dist/esm/parquetjs/schema/shred.js.map +1 -0
  323. package/dist/esm/parquetjs/schema/types.js +397 -0
  324. package/dist/esm/parquetjs/schema/types.js.map +1 -0
  325. package/dist/esm/parquetjs/utils/file-utils.js +34 -0
  326. package/dist/esm/parquetjs/utils/file-utils.js.map +1 -0
  327. package/dist/esm/parquetjs/utils/read-utils.js +90 -0
  328. package/dist/esm/parquetjs/utils/read-utils.js.map +1 -0
  329. package/dist/esm/workers/parquet-worker.js +4 -0
  330. package/dist/esm/workers/parquet-worker.js.map +1 -0
  331. package/dist/index.d.ts +16 -20
  332. package/dist/index.d.ts.map +1 -1
  333. package/dist/index.js +58 -15
  334. package/dist/lib/arrow/convert-columns-to-row-group.d.ts +1 -0
  335. package/dist/lib/arrow/convert-columns-to-row-group.d.ts.map +1 -0
  336. package/dist/lib/arrow/convert-columns-to-row-group.js +1 -0
  337. package/dist/lib/arrow/convert-row-group-to-columns.d.ts +4 -0
  338. package/dist/lib/arrow/convert-row-group-to-columns.d.ts.map +1 -0
  339. package/dist/lib/arrow/convert-row-group-to-columns.js +12 -0
  340. package/dist/lib/arrow/convert-schema-from-parquet.d.ts +9 -0
  341. package/dist/lib/arrow/convert-schema-from-parquet.d.ts.map +1 -0
  342. package/dist/lib/arrow/convert-schema-from-parquet.js +86 -0
  343. package/dist/lib/arrow/convert-schema-to-parquet.d.ts +7 -0
  344. package/dist/lib/arrow/convert-schema-to-parquet.d.ts.map +1 -0
  345. package/dist/lib/arrow/convert-schema-to-parquet.js +71 -0
  346. package/dist/lib/geo/decode-geo-metadata.d.ts +31 -0
  347. package/dist/lib/geo/decode-geo-metadata.d.ts.map +1 -0
  348. package/dist/lib/geo/decode-geo-metadata.js +77 -0
  349. package/dist/lib/geo/geoparquet-schema.d.ts +80 -0
  350. package/dist/lib/geo/geoparquet-schema.d.ts.map +1 -0
  351. package/dist/lib/geo/geoparquet-schema.js +69 -0
  352. package/dist/lib/parsers/parse-parquet-to-columns.d.ts +5 -0
  353. package/dist/lib/parsers/parse-parquet-to-columns.d.ts.map +1 -0
  354. package/dist/lib/parsers/parse-parquet-to-columns.js +46 -0
  355. package/dist/lib/parsers/parse-parquet-to-rows.d.ts +5 -0
  356. package/dist/lib/parsers/parse-parquet-to-rows.d.ts.map +1 -0
  357. package/dist/lib/parsers/parse-parquet-to-rows.js +37 -0
  358. package/dist/lib/wasm/encode-parquet-wasm.d.ts +21 -0
  359. package/dist/lib/wasm/encode-parquet-wasm.d.ts.map +1 -0
  360. package/dist/lib/wasm/encode-parquet-wasm.js +30 -0
  361. package/dist/lib/wasm/load-wasm/index.d.ts +2 -0
  362. package/dist/lib/wasm/load-wasm/index.d.ts.map +1 -0
  363. package/dist/lib/wasm/load-wasm/index.js +5 -0
  364. package/dist/lib/wasm/load-wasm/load-wasm-browser.d.ts +3 -0
  365. package/dist/lib/wasm/load-wasm/load-wasm-browser.d.ts.map +1 -0
  366. package/dist/lib/wasm/load-wasm/load-wasm-browser.js +38 -0
  367. package/dist/lib/wasm/load-wasm/load-wasm-node.d.ts +3 -0
  368. package/dist/lib/wasm/load-wasm/load-wasm-node.d.ts.map +1 -0
  369. package/dist/lib/wasm/load-wasm/load-wasm-node.js +31 -0
  370. package/dist/lib/wasm/parse-parquet-wasm.d.ts +10 -0
  371. package/dist/lib/wasm/parse-parquet-wasm.d.ts.map +1 -0
  372. package/dist/lib/wasm/parse-parquet-wasm.js +27 -0
  373. package/dist/parquet-loader.d.ts +6 -15
  374. package/dist/parquet-loader.d.ts.map +1 -1
  375. package/dist/parquet-loader.js +38 -19
  376. package/dist/parquet-wasm-loader.d.ts +23 -0
  377. package/dist/parquet-wasm-loader.d.ts.map +1 -0
  378. package/dist/parquet-wasm-loader.js +27 -0
  379. package/dist/parquet-wasm-writer.d.ts +3 -0
  380. package/dist/parquet-wasm-writer.d.ts.map +1 -0
  381. package/dist/parquet-wasm-writer.js +23 -0
  382. package/dist/parquet-worker.js +27 -25
  383. package/dist/parquet-worker.js.map +3 -3
  384. package/dist/parquet-writer.d.ts +3 -2
  385. package/dist/parquet-writer.d.ts.map +1 -1
  386. package/dist/parquet-writer.js +18 -14
  387. package/dist/parquetjs/codecs/declare.js +2 -2
  388. package/dist/parquetjs/codecs/dictionary.js +12 -10
  389. package/dist/parquetjs/codecs/index.js +54 -22
  390. package/dist/parquetjs/codecs/plain.js +173 -232
  391. package/dist/parquetjs/codecs/rle.js +134 -140
  392. package/dist/parquetjs/compression.d.ts +3 -0
  393. package/dist/parquetjs/compression.d.ts.map +1 -1
  394. package/dist/parquetjs/compression.js +169 -48
  395. package/dist/parquetjs/encoder/{writer.d.ts → parquet-encoder.d.ts} +15 -23
  396. package/dist/parquetjs/encoder/parquet-encoder.d.ts.map +1 -0
  397. package/dist/parquetjs/encoder/parquet-encoder.js +484 -0
  398. package/dist/parquetjs/parquet-thrift/BoundaryOrder.js +14 -7
  399. package/dist/parquetjs/parquet-thrift/BsonType.js +60 -37
  400. package/dist/parquetjs/parquet-thrift/ColumnChunk.js +209 -215
  401. package/dist/parquetjs/parquet-thrift/ColumnIndex.js +210 -211
  402. package/dist/parquetjs/parquet-thrift/ColumnMetaData.js +394 -421
  403. package/dist/parquetjs/parquet-thrift/ColumnOrder.js +102 -89
  404. package/dist/parquetjs/parquet-thrift/CompressionCodec.js +19 -12
  405. package/dist/parquetjs/parquet-thrift/ConvertedType.js +33 -26
  406. package/dist/parquetjs/parquet-thrift/DataPageHeader.js +165 -161
  407. package/dist/parquetjs/parquet-thrift/DataPageHeaderV2.js +228 -234
  408. package/dist/parquetjs/parquet-thrift/DateType.js +60 -37
  409. package/dist/parquetjs/parquet-thrift/DecimalType.js +104 -90
  410. package/dist/parquetjs/parquet-thrift/DictionaryPageHeader.js +121 -112
  411. package/dist/parquetjs/parquet-thrift/Encoding.js +19 -12
  412. package/dist/parquetjs/parquet-thrift/EnumType.js +60 -37
  413. package/dist/parquetjs/parquet-thrift/FieldRepetitionType.js +14 -7
  414. package/dist/parquetjs/parquet-thrift/FileMetaData.js +253 -263
  415. package/dist/parquetjs/parquet-thrift/IndexPageHeader.js +60 -37
  416. package/dist/parquetjs/parquet-thrift/IntType.js +104 -90
  417. package/dist/parquetjs/parquet-thrift/JsonType.js +60 -37
  418. package/dist/parquetjs/parquet-thrift/KeyValue.js +101 -88
  419. package/dist/parquetjs/parquet-thrift/ListType.js +60 -37
  420. package/dist/parquetjs/parquet-thrift/LogicalType.js +366 -449
  421. package/dist/parquetjs/parquet-thrift/MapType.js +60 -37
  422. package/dist/parquetjs/parquet-thrift/MicroSeconds.js +60 -37
  423. package/dist/parquetjs/parquet-thrift/MilliSeconds.js +60 -37
  424. package/dist/parquetjs/parquet-thrift/NullType.js +60 -37
  425. package/dist/parquetjs/parquet-thrift/OffsetIndex.js +96 -80
  426. package/dist/parquetjs/parquet-thrift/PageEncodingStats.js +126 -114
  427. package/dist/parquetjs/parquet-thrift/PageHeader.js +218 -231
  428. package/dist/parquetjs/parquet-thrift/PageLocation.js +140 -123
  429. package/dist/parquetjs/parquet-thrift/PageType.js +15 -8
  430. package/dist/parquetjs/parquet-thrift/RowGroup.js +179 -171
  431. package/dist/parquetjs/parquet-thrift/SchemaElement.js +241 -268
  432. package/dist/parquetjs/parquet-thrift/SortingColumn.js +126 -114
  433. package/dist/parquetjs/parquet-thrift/Statistics.js +175 -178
  434. package/dist/parquetjs/parquet-thrift/StringType.js +60 -37
  435. package/dist/parquetjs/parquet-thrift/TimeType.js +105 -91
  436. package/dist/parquetjs/parquet-thrift/TimeUnit.js +124 -119
  437. package/dist/parquetjs/parquet-thrift/TimestampType.js +105 -91
  438. package/dist/parquetjs/parquet-thrift/Type.js +19 -12
  439. package/dist/parquetjs/parquet-thrift/TypeDefinedOrder.js +60 -37
  440. package/dist/parquetjs/parquet-thrift/UUIDType.js +60 -37
  441. package/dist/parquetjs/parquet-thrift/index.js +65 -44
  442. package/dist/parquetjs/parser/decoders.d.ts +2 -2
  443. package/dist/parquetjs/parser/decoders.d.ts.map +1 -1
  444. package/dist/parquetjs/parser/decoders.js +301 -283
  445. package/dist/parquetjs/parser/parquet-reader.d.ts +47 -57
  446. package/dist/parquetjs/parser/parquet-reader.d.ts.map +1 -1
  447. package/dist/parquetjs/parser/parquet-reader.js +193 -113
  448. package/dist/parquetjs/schema/declare.d.ts +26 -18
  449. package/dist/parquetjs/schema/declare.d.ts.map +1 -1
  450. package/dist/parquetjs/schema/declare.js +11 -12
  451. package/dist/parquetjs/schema/schema.d.ts +4 -4
  452. package/dist/parquetjs/schema/schema.d.ts.map +1 -1
  453. package/dist/parquetjs/schema/schema.js +148 -162
  454. package/dist/parquetjs/schema/shred.d.ts +33 -12
  455. package/dist/parquetjs/schema/shred.d.ts.map +1 -1
  456. package/dist/parquetjs/schema/shred.js +340 -147
  457. package/dist/parquetjs/schema/types.d.ts +2 -2
  458. package/dist/parquetjs/schema/types.d.ts.map +1 -1
  459. package/dist/parquetjs/schema/types.js +355 -415
  460. package/dist/parquetjs/utils/file-utils.d.ts +5 -4
  461. package/dist/parquetjs/utils/file-utils.d.ts.map +1 -1
  462. package/dist/parquetjs/utils/file-utils.js +37 -28
  463. package/dist/parquetjs/utils/read-utils.js +99 -95
  464. package/dist/workers/parquet-worker.js +5 -4
  465. package/package.json +17 -12
  466. package/src/index.ts +58 -7
  467. package/src/lib/arrow/convert-columns-to-row-group.ts +0 -0
  468. package/src/lib/arrow/convert-row-group-to-columns.ts +15 -0
  469. package/src/lib/arrow/convert-schema-from-parquet.ts +104 -0
  470. package/src/lib/arrow/convert-schema-to-parquet.ts +90 -0
  471. package/src/lib/geo/decode-geo-metadata.ts +108 -0
  472. package/src/lib/geo/geoparquet-schema.ts +69 -0
  473. package/src/lib/parsers/parse-parquet-to-columns.ts +60 -0
  474. package/src/lib/parsers/parse-parquet-to-rows.ts +45 -0
  475. package/src/lib/wasm/encode-parquet-wasm.ts +40 -0
  476. package/src/lib/wasm/load-wasm/index.ts +1 -0
  477. package/src/lib/wasm/load-wasm/load-wasm-browser.ts +15 -0
  478. package/src/lib/wasm/load-wasm/load-wasm-node.ts +5 -0
  479. package/src/lib/wasm/parse-parquet-wasm.ts +42 -0
  480. package/src/lib/wip/convert-schema-deep.java.disabled +910 -0
  481. package/src/lib/wip/convert-schema-deep.rs.disabled +976 -0
  482. package/src/parquet-loader.ts +30 -3
  483. package/src/parquet-wasm-loader.ts +36 -0
  484. package/src/parquet-wasm-writer.ts +24 -0
  485. package/src/parquet-writer.ts +4 -1
  486. package/src/parquetjs/compression.ts +24 -7
  487. package/src/parquetjs/encoder/{writer.ts → parquet-encoder.ts} +33 -38
  488. package/src/parquetjs/parser/decoders.ts +3 -3
  489. package/src/parquetjs/parser/parquet-reader.ts +239 -122
  490. package/src/parquetjs/schema/declare.ts +22 -13
  491. package/src/parquetjs/schema/schema.ts +8 -8
  492. package/src/parquetjs/schema/shred.ts +239 -71
  493. package/src/parquetjs/schema/types.ts +25 -30
  494. package/src/parquetjs/utils/file-utils.ts +3 -4
  495. package/dist/bundle.js.map +0 -1
  496. package/dist/constants.js.map +0 -1
  497. package/dist/index.js.map +0 -1
  498. package/dist/lib/convert-schema.d.ts +0 -8
  499. package/dist/lib/convert-schema.d.ts.map +0 -1
  500. package/dist/lib/convert-schema.js +0 -71
  501. package/dist/lib/convert-schema.js.map +0 -1
  502. package/dist/lib/parse-parquet.d.ts +0 -4
  503. package/dist/lib/parse-parquet.d.ts.map +0 -1
  504. package/dist/lib/parse-parquet.js +0 -28
  505. package/dist/lib/parse-parquet.js.map +0 -1
  506. package/dist/lib/read-array-buffer.d.ts +0 -19
  507. package/dist/lib/read-array-buffer.d.ts.map +0 -1
  508. package/dist/lib/read-array-buffer.js +0 -9
  509. package/dist/lib/read-array-buffer.js.map +0 -1
  510. package/dist/parquet-loader.js.map +0 -1
  511. package/dist/parquet-writer.js.map +0 -1
  512. package/dist/parquetjs/codecs/declare.js.map +0 -1
  513. package/dist/parquetjs/codecs/dictionary.js.map +0 -1
  514. package/dist/parquetjs/codecs/index.js.map +0 -1
  515. package/dist/parquetjs/codecs/plain.js.map +0 -1
  516. package/dist/parquetjs/codecs/rle.js.map +0 -1
  517. package/dist/parquetjs/compression.js.map +0 -1
  518. package/dist/parquetjs/encoder/writer.d.ts.map +0 -1
  519. package/dist/parquetjs/encoder/writer.js.map +0 -1
  520. package/dist/parquetjs/file.d.ts +0 -10
  521. package/dist/parquetjs/file.d.ts.map +0 -1
  522. package/dist/parquetjs/file.js +0 -80
  523. package/dist/parquetjs/file.js.map +0 -1
  524. package/dist/parquetjs/parquet-thrift/BoundaryOrder.js.map +0 -1
  525. package/dist/parquetjs/parquet-thrift/BsonType.js.map +0 -1
  526. package/dist/parquetjs/parquet-thrift/ColumnChunk.js.map +0 -1
  527. package/dist/parquetjs/parquet-thrift/ColumnIndex.js.map +0 -1
  528. package/dist/parquetjs/parquet-thrift/ColumnMetaData.js.map +0 -1
  529. package/dist/parquetjs/parquet-thrift/ColumnOrder.js.map +0 -1
  530. package/dist/parquetjs/parquet-thrift/CompressionCodec.js.map +0 -1
  531. package/dist/parquetjs/parquet-thrift/ConvertedType.js.map +0 -1
  532. package/dist/parquetjs/parquet-thrift/DataPageHeader.js.map +0 -1
  533. package/dist/parquetjs/parquet-thrift/DataPageHeaderV2.js.map +0 -1
  534. package/dist/parquetjs/parquet-thrift/DateType.js.map +0 -1
  535. package/dist/parquetjs/parquet-thrift/DecimalType.js.map +0 -1
  536. package/dist/parquetjs/parquet-thrift/DictionaryPageHeader.js.map +0 -1
  537. package/dist/parquetjs/parquet-thrift/Encoding.js.map +0 -1
  538. package/dist/parquetjs/parquet-thrift/EnumType.js.map +0 -1
  539. package/dist/parquetjs/parquet-thrift/FieldRepetitionType.js.map +0 -1
  540. package/dist/parquetjs/parquet-thrift/FileMetaData.js.map +0 -1
  541. package/dist/parquetjs/parquet-thrift/IndexPageHeader.js.map +0 -1
  542. package/dist/parquetjs/parquet-thrift/IntType.js.map +0 -1
  543. package/dist/parquetjs/parquet-thrift/JsonType.js.map +0 -1
  544. package/dist/parquetjs/parquet-thrift/KeyValue.js.map +0 -1
  545. package/dist/parquetjs/parquet-thrift/ListType.js.map +0 -1
  546. package/dist/parquetjs/parquet-thrift/LogicalType.js.map +0 -1
  547. package/dist/parquetjs/parquet-thrift/MapType.js.map +0 -1
  548. package/dist/parquetjs/parquet-thrift/MicroSeconds.js.map +0 -1
  549. package/dist/parquetjs/parquet-thrift/MilliSeconds.js.map +0 -1
  550. package/dist/parquetjs/parquet-thrift/NullType.js.map +0 -1
  551. package/dist/parquetjs/parquet-thrift/OffsetIndex.js.map +0 -1
  552. package/dist/parquetjs/parquet-thrift/PageEncodingStats.js.map +0 -1
  553. package/dist/parquetjs/parquet-thrift/PageHeader.js.map +0 -1
  554. package/dist/parquetjs/parquet-thrift/PageLocation.js.map +0 -1
  555. package/dist/parquetjs/parquet-thrift/PageType.js.map +0 -1
  556. package/dist/parquetjs/parquet-thrift/RowGroup.js.map +0 -1
  557. package/dist/parquetjs/parquet-thrift/SchemaElement.js.map +0 -1
  558. package/dist/parquetjs/parquet-thrift/SortingColumn.js.map +0 -1
  559. package/dist/parquetjs/parquet-thrift/Statistics.js.map +0 -1
  560. package/dist/parquetjs/parquet-thrift/StringType.js.map +0 -1
  561. package/dist/parquetjs/parquet-thrift/TimeType.js.map +0 -1
  562. package/dist/parquetjs/parquet-thrift/TimeUnit.js.map +0 -1
  563. package/dist/parquetjs/parquet-thrift/TimestampType.js.map +0 -1
  564. package/dist/parquetjs/parquet-thrift/Type.js.map +0 -1
  565. package/dist/parquetjs/parquet-thrift/TypeDefinedOrder.js.map +0 -1
  566. package/dist/parquetjs/parquet-thrift/UUIDType.js.map +0 -1
  567. package/dist/parquetjs/parquet-thrift/index.js.map +0 -1
  568. package/dist/parquetjs/parser/decoders.js.map +0 -1
  569. package/dist/parquetjs/parser/parquet-cursor.d.ts +0 -36
  570. package/dist/parquetjs/parser/parquet-cursor.d.ts.map +0 -1
  571. package/dist/parquetjs/parser/parquet-cursor.js +0 -90
  572. package/dist/parquetjs/parser/parquet-cursor.js.map +0 -1
  573. package/dist/parquetjs/parser/parquet-envelope-reader.d.ts +0 -40
  574. package/dist/parquetjs/parser/parquet-envelope-reader.d.ts.map +0 -1
  575. package/dist/parquetjs/parser/parquet-envelope-reader.js.map +0 -1
  576. package/dist/parquetjs/parser/parquet-reader.js.map +0 -1
  577. package/dist/parquetjs/schema/declare.js.map +0 -1
  578. package/dist/parquetjs/schema/schema.js.map +0 -1
  579. package/dist/parquetjs/schema/shred.js.map +0 -1
  580. package/dist/parquetjs/schema/types.js.map +0 -1
  581. package/dist/parquetjs/utils/buffer-utils.d.ts +0 -10
  582. package/dist/parquetjs/utils/buffer-utils.d.ts.map +0 -1
  583. package/dist/parquetjs/utils/buffer-utils.js +0 -12
  584. package/dist/parquetjs/utils/buffer-utils.js.map +0 -1
  585. package/dist/parquetjs/utils/file-utils.js.map +0 -1
  586. package/dist/parquetjs/utils/read-utils.js.map +0 -1
  587. package/dist/workers/parquet-worker.js.map +0 -1
  588. package/src/lib/convert-schema.ts +0 -95
  589. package/src/lib/parse-parquet.ts +0 -27
  590. package/src/lib/read-array-buffer.ts +0 -31
  591. package/src/parquetjs/file.ts +0 -90
  592. package/src/parquetjs/parser/parquet-cursor.ts +0 -94
  593. package/src/parquetjs/parser/parquet-envelope-reader.ts +0 -199
  594. package/src/parquetjs/utils/buffer-utils.ts +0 -18
  595. /package/dist/{parquetjs → es5/parquetjs}/LICENSE +0 -0
  596. /package/dist/{parquetjs → es5/parquetjs}/modules.d.ts +0 -0
@@ -1,476 +1,416 @@
1
- import BSON from '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
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fromPrimitive = exports.toPrimitive = exports.PARQUET_LOGICAL_TYPES = void 0;
4
+ // Forked from https://github.com/kbajalc/parquets under MIT license (Copyright (c) 2017 ironSource Ltd.)
5
+ /* eslint-disable camelcase */
6
+ const bson_1 = require("@loaders.gl/bson");
7
+ exports.PARQUET_LOGICAL_TYPES = {
8
+ BOOLEAN: {
9
+ primitiveType: 'BOOLEAN',
10
+ toPrimitive: toPrimitive_BOOLEAN,
11
+ fromPrimitive: fromPrimitive_BOOLEAN
12
+ },
13
+ INT32: {
14
+ primitiveType: 'INT32',
15
+ toPrimitive: toPrimitive_INT32
16
+ },
17
+ INT64: {
18
+ primitiveType: 'INT64',
19
+ toPrimitive: toPrimitive_INT64
20
+ },
21
+ INT96: {
22
+ primitiveType: 'INT96',
23
+ toPrimitive: toPrimitive_INT96
24
+ },
25
+ FLOAT: {
26
+ primitiveType: 'FLOAT',
27
+ toPrimitive: toPrimitive_FLOAT
28
+ },
29
+ DOUBLE: {
30
+ primitiveType: 'DOUBLE',
31
+ toPrimitive: toPrimitive_DOUBLE
32
+ },
33
+ BYTE_ARRAY: {
34
+ primitiveType: 'BYTE_ARRAY',
35
+ toPrimitive: toPrimitive_BYTE_ARRAY
36
+ },
37
+ FIXED_LEN_BYTE_ARRAY: {
38
+ primitiveType: 'FIXED_LEN_BYTE_ARRAY',
39
+ toPrimitive: toPrimitive_BYTE_ARRAY
40
+ },
41
+ UTF8: {
42
+ primitiveType: 'BYTE_ARRAY',
43
+ originalType: 'UTF8',
44
+ toPrimitive: toPrimitive_UTF8,
45
+ fromPrimitive: fromPrimitive_UTF8
46
+ },
47
+ TIME_MILLIS: {
48
+ primitiveType: 'INT32',
49
+ originalType: 'TIME_MILLIS',
50
+ toPrimitive: toPrimitive_TIME_MILLIS
51
+ },
52
+ TIME_MICROS: {
53
+ primitiveType: 'INT64',
54
+ originalType: 'TIME_MICROS',
55
+ toPrimitive: toPrimitive_TIME_MICROS
56
+ },
57
+ DATE: {
58
+ primitiveType: 'INT32',
59
+ originalType: 'DATE',
60
+ toPrimitive: toPrimitive_DATE,
61
+ fromPrimitive: fromPrimitive_DATE
62
+ },
63
+ TIMESTAMP_MILLIS: {
64
+ primitiveType: 'INT64',
65
+ originalType: 'TIMESTAMP_MILLIS',
66
+ toPrimitive: toPrimitive_TIMESTAMP_MILLIS,
67
+ fromPrimitive: fromPrimitive_TIMESTAMP_MILLIS
68
+ },
69
+ TIMESTAMP_MICROS: {
70
+ primitiveType: 'INT64',
71
+ originalType: 'TIMESTAMP_MICROS',
72
+ toPrimitive: toPrimitive_TIMESTAMP_MICROS,
73
+ fromPrimitive: fromPrimitive_TIMESTAMP_MICROS
74
+ },
75
+ UINT_8: {
76
+ primitiveType: 'INT32',
77
+ originalType: 'UINT_8',
78
+ toPrimitive: toPrimitive_UINT8
79
+ },
80
+ UINT_16: {
81
+ primitiveType: 'INT32',
82
+ originalType: 'UINT_16',
83
+ toPrimitive: toPrimitive_UINT16
84
+ },
85
+ UINT_32: {
86
+ primitiveType: 'INT32',
87
+ originalType: 'UINT_32',
88
+ toPrimitive: toPrimitive_UINT32
89
+ },
90
+ UINT_64: {
91
+ primitiveType: 'INT64',
92
+ originalType: 'UINT_64',
93
+ toPrimitive: toPrimitive_UINT64
94
+ },
95
+ INT_8: {
96
+ primitiveType: 'INT32',
97
+ originalType: 'INT_8',
98
+ toPrimitive: toPrimitive_INT8
99
+ },
100
+ INT_16: {
101
+ primitiveType: 'INT32',
102
+ originalType: 'INT_16',
103
+ toPrimitive: toPrimitive_INT16
104
+ },
105
+ INT_32: {
106
+ primitiveType: 'INT32',
107
+ originalType: 'INT_32',
108
+ toPrimitive: toPrimitive_INT32
109
+ },
110
+ INT_64: {
111
+ primitiveType: 'INT64',
112
+ originalType: 'INT_64',
113
+ toPrimitive: toPrimitive_INT64
114
+ },
115
+ JSON: {
116
+ primitiveType: 'BYTE_ARRAY',
117
+ originalType: 'JSON',
118
+ toPrimitive: toPrimitive_JSON,
119
+ fromPrimitive: fromPrimitive_JSON
120
+ },
121
+ BSON: {
122
+ primitiveType: 'BYTE_ARRAY',
123
+ originalType: 'BSON',
124
+ toPrimitive: toPrimitive_BSON,
125
+ fromPrimitive: fromPrimitive_BSON
126
+ },
127
+ INTERVAL: {
128
+ primitiveType: 'FIXED_LEN_BYTE_ARRAY',
129
+ originalType: 'INTERVAL',
130
+ typeLength: 12,
131
+ toPrimitive: toPrimitive_INTERVAL,
132
+ fromPrimitive: fromPrimitive_INTERVAL
133
+ },
134
+ DECIMAL_INT32: {
135
+ primitiveType: 'INT32',
136
+ originalType: 'DECIMAL_INT32',
137
+ toPrimitive: decimalToPrimitive_INT32,
138
+ fromPrimitive: decimalFromPrimitive_INT
139
+ },
140
+ DECIMAL_INT64: {
141
+ primitiveType: 'INT64',
142
+ originalType: 'DECIMAL_INT64',
143
+ toPrimitive: decimalToPrimitive_INT64,
144
+ fromPrimitive: decimalFromPrimitive_INT
145
+ },
146
+ DECIMAL_BYTE_ARRAY: {
147
+ primitiveType: 'BYTE_ARRAY',
148
+ originalType: 'DECIMAL_BYTE_ARRAY',
149
+ toPrimitive: decimalToPrimitive_BYTE_ARRAY,
150
+ fromPrimitive: decimalFromPrimitive_BYTE_ARRAY
151
+ },
152
+ DECIMAL_FIXED_LEN_BYTE_ARRAY: {
153
+ primitiveType: 'FIXED_LEN_BYTE_ARRAY',
154
+ originalType: 'DECIMAL_FIXED_LEN_BYTE_ARRAY',
155
+ toPrimitive: decimalToPrimitive_BYTE_ARRAY,
156
+ fromPrimitive: decimalFromPrimitive_BYTE_ARRAY
157
+ }
153
158
  };
154
- export function toPrimitive(type, value, field) {
155
- if (!(type in PARQUET_LOGICAL_TYPES)) {
156
- throw new Error("invalid type: ".concat(type));
157
- }
158
-
159
- return PARQUET_LOGICAL_TYPES[type].toPrimitive(value, field);
160
- }
161
- export function fromPrimitive(type, value, field) {
162
- if (!(type in PARQUET_LOGICAL_TYPES)) {
163
- throw new Error("invalid type: ".concat(type));
164
- }
165
-
166
- if ('fromPrimitive' in PARQUET_LOGICAL_TYPES[type]) {
167
- var _PARQUET_LOGICAL_TYPE, _PARQUET_LOGICAL_TYPE2;
168
-
169
- 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);
170
- }
171
-
172
- return value;
173
- }
174
-
159
+ /**
160
+ * Convert a value from it's native representation to the internal/underlying
161
+ * primitive type
162
+ */
163
+ function toPrimitive(type, value, field) {
164
+ if (!(type in exports.PARQUET_LOGICAL_TYPES)) {
165
+ throw new Error(`invalid type: ${type}`);
166
+ }
167
+ return exports.PARQUET_LOGICAL_TYPES[type].toPrimitive(value, field);
168
+ }
169
+ exports.toPrimitive = toPrimitive;
170
+ /**
171
+ * Convert a value from it's internal/underlying primitive representation to
172
+ * the native representation
173
+ */
174
+ function fromPrimitive(type, value, field) {
175
+ if (!(type in exports.PARQUET_LOGICAL_TYPES)) {
176
+ throw new Error(`invalid type: ${type}`);
177
+ }
178
+ if ('fromPrimitive' in exports.PARQUET_LOGICAL_TYPES[type]) {
179
+ return exports.PARQUET_LOGICAL_TYPES[type].fromPrimitive?.(value, field);
180
+ // tslint:disable-next-line:no-else-after-return
181
+ }
182
+ return value;
183
+ }
184
+ exports.fromPrimitive = fromPrimitive;
175
185
  function toPrimitive_BOOLEAN(value) {
176
- return Boolean(value);
186
+ return Boolean(value);
177
187
  }
178
-
179
188
  function fromPrimitive_BOOLEAN(value) {
180
- return Boolean(value);
189
+ return Boolean(value);
181
190
  }
182
-
183
191
  function toPrimitive_FLOAT(value) {
184
- const v = parseFloat(value);
185
-
186
- if (isNaN(v)) {
187
- throw new Error("invalid value for FLOAT: ".concat(value));
188
- }
189
-
190
- return v;
191
- }
192
-
192
+ const v = parseFloat(value);
193
+ if (isNaN(v)) {
194
+ throw new Error(`invalid value for FLOAT: ${value}`);
195
+ }
196
+ return v;
197
+ }
193
198
  function toPrimitive_DOUBLE(value) {
194
- const v = parseFloat(value);
195
-
196
- if (isNaN(v)) {
197
- throw new Error("invalid value for DOUBLE: ".concat(value));
198
- }
199
-
200
- return v;
201
- }
202
-
199
+ const v = parseFloat(value);
200
+ if (isNaN(v)) {
201
+ throw new Error(`invalid value for DOUBLE: ${value}`);
202
+ }
203
+ return v;
204
+ }
203
205
  function toPrimitive_INT8(value) {
204
- const v = parseInt(value, 10);
205
-
206
- if (v < -0x80 || v > 0x7f || isNaN(v)) {
207
- throw new Error("invalid value for INT8: ".concat(value));
208
- }
209
-
210
- return v;
211
- }
212
-
206
+ const v = parseInt(value, 10);
207
+ if (v < -0x80 || v > 0x7f || isNaN(v)) {
208
+ throw new Error(`invalid value for INT8: ${value}`);
209
+ }
210
+ return v;
211
+ }
213
212
  function toPrimitive_UINT8(value) {
214
- const v = parseInt(value, 10);
215
-
216
- if (v < 0 || v > 0xff || isNaN(v)) {
217
- throw new Error("invalid value for UINT8: ".concat(value));
218
- }
219
-
220
- return v;
221
- }
222
-
213
+ const v = parseInt(value, 10);
214
+ if (v < 0 || v > 0xff || isNaN(v)) {
215
+ throw new Error(`invalid value for UINT8: ${value}`);
216
+ }
217
+ return v;
218
+ }
223
219
  function toPrimitive_INT16(value) {
224
- const v = parseInt(value, 10);
225
-
226
- if (v < -0x8000 || v > 0x7fff || isNaN(v)) {
227
- throw new Error("invalid value for INT16: ".concat(value));
228
- }
229
-
230
- return v;
231
- }
232
-
220
+ const v = parseInt(value, 10);
221
+ if (v < -0x8000 || v > 0x7fff || isNaN(v)) {
222
+ throw new Error(`invalid value for INT16: ${value}`);
223
+ }
224
+ return v;
225
+ }
233
226
  function toPrimitive_UINT16(value) {
234
- const v = parseInt(value, 10);
235
-
236
- if (v < 0 || v > 0xffff || isNaN(v)) {
237
- throw new Error("invalid value for UINT16: ".concat(value));
238
- }
239
-
240
- return v;
241
- }
242
-
227
+ const v = parseInt(value, 10);
228
+ if (v < 0 || v > 0xffff || isNaN(v)) {
229
+ throw new Error(`invalid value for UINT16: ${value}`);
230
+ }
231
+ return v;
232
+ }
243
233
  function toPrimitive_INT32(value) {
244
- const v = parseInt(value, 10);
245
-
246
- if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
247
- throw new Error("invalid value for INT32: ".concat(value));
248
- }
249
-
250
- return v;
251
- }
252
-
234
+ const v = parseInt(value, 10);
235
+ if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
236
+ throw new Error(`invalid value for INT32: ${value}`);
237
+ }
238
+ return v;
239
+ }
253
240
  function decimalToPrimitive_INT32(value, field) {
254
- const primitiveValue = value * 10 ** (field.scale || 0);
255
- const v = Math.round(primitiveValue * 10 ** -field.presision % 1 * 10 ** field.presision);
256
-
257
- if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
258
- throw new Error("invalid value for INT32: ".concat(value));
259
- }
260
-
261
- return v;
262
- }
263
-
241
+ const primitiveValue = value * 10 ** (field.scale || 0);
242
+ const v = Math.round(((primitiveValue * 10 ** -field.presision) % 1) * 10 ** field.presision);
243
+ if (v < -0x80000000 || v > 0x7fffffff || isNaN(v)) {
244
+ throw new Error(`invalid value for INT32: ${value}`);
245
+ }
246
+ return v;
247
+ }
264
248
  function toPrimitive_UINT32(value) {
265
- const v = parseInt(value, 10);
266
-
267
- if (v < 0 || v > 0xffffffffffff || isNaN(v)) {
268
- throw new Error("invalid value for UINT32: ".concat(value));
269
- }
270
-
271
- return v;
272
- }
273
-
249
+ const v = parseInt(value, 10);
250
+ if (v < 0 || v > 0xffffffffffff || isNaN(v)) {
251
+ throw new Error(`invalid value for UINT32: ${value}`);
252
+ }
253
+ return v;
254
+ }
274
255
  function toPrimitive_INT64(value) {
275
- const v = parseInt(value, 10);
276
-
277
- if (isNaN(v)) {
278
- throw new Error("invalid value for INT64: ".concat(value));
279
- }
280
-
281
- return v;
282
- }
283
-
256
+ const v = parseInt(value, 10);
257
+ if (isNaN(v)) {
258
+ throw new Error(`invalid value for INT64: ${value}`);
259
+ }
260
+ return v;
261
+ }
284
262
  function decimalToPrimitive_INT64(value, field) {
285
- const primitiveValue = value * 10 ** (field.scale || 0);
286
- const v = Math.round(primitiveValue * 10 ** -field.presision % 1 * 10 ** field.presision);
287
-
288
- if (isNaN(v)) {
289
- throw new Error("invalid value for INT64: ".concat(value));
290
- }
291
-
292
- return v;
293
- }
294
-
263
+ const primitiveValue = value * 10 ** (field.scale || 0);
264
+ const v = Math.round(((primitiveValue * 10 ** -field.presision) % 1) * 10 ** field.presision);
265
+ if (isNaN(v)) {
266
+ throw new Error(`invalid value for INT64: ${value}`);
267
+ }
268
+ return v;
269
+ }
295
270
  function toPrimitive_UINT64(value) {
296
- const v = parseInt(value, 10);
297
-
298
- if (v < 0 || isNaN(v)) {
299
- throw new Error("invalid value for UINT64: ".concat(value));
300
- }
301
-
302
- return v;
303
- }
304
-
271
+ const v = parseInt(value, 10);
272
+ if (v < 0 || isNaN(v)) {
273
+ throw new Error(`invalid value for UINT64: ${value}`);
274
+ }
275
+ return v;
276
+ }
305
277
  function toPrimitive_INT96(value) {
306
- const v = parseInt(value, 10);
307
-
308
- if (isNaN(v)) {
309
- throw new Error("invalid value for INT96: ".concat(value));
310
- }
311
-
312
- return v;
313
- }
314
-
278
+ const v = parseInt(value, 10);
279
+ if (isNaN(v)) {
280
+ throw new Error(`invalid value for INT96: ${value}`);
281
+ }
282
+ return v;
283
+ }
315
284
  function toPrimitive_BYTE_ARRAY(value) {
316
- return Buffer.from(value);
285
+ return Buffer.from(value);
317
286
  }
318
-
319
287
  function decimalToPrimitive_BYTE_ARRAY(value) {
320
- return Buffer.from(value);
288
+ // TBD
289
+ return Buffer.from(value);
321
290
  }
322
-
323
291
  function toPrimitive_UTF8(value) {
324
- return Buffer.from(value, 'utf8');
292
+ return Buffer.from(value, 'utf8');
325
293
  }
326
-
327
294
  function fromPrimitive_UTF8(value) {
328
- return value.toString();
295
+ return value.toString();
329
296
  }
330
-
331
297
  function toPrimitive_JSON(value) {
332
- return Buffer.from(JSON.stringify(value));
298
+ return Buffer.from(JSON.stringify(value));
333
299
  }
334
-
335
300
  function fromPrimitive_JSON(value) {
336
- return JSON.parse(value);
301
+ return JSON.parse(value);
337
302
  }
338
-
339
303
  function toPrimitive_BSON(value) {
340
- return Buffer.from(BSON.serialize(value));
304
+ const arrayBuffer = bson_1.BSONWriter.encodeSync?.(value);
305
+ return Buffer.from(arrayBuffer);
341
306
  }
342
-
343
307
  function fromPrimitive_BSON(value) {
344
- return BSON.deserialize(value);
308
+ return bson_1.BSONLoader.parseSync?.(value);
345
309
  }
346
-
347
310
  function toPrimitive_TIME_MILLIS(value) {
348
- const v = parseInt(value, 10);
349
-
350
- if (v < 0 || v > 0xffffffffffffffff || isNaN(v)) {
351
- throw new Error("invalid value for TIME_MILLIS: ".concat(value));
352
- }
353
-
354
- return v;
355
- }
356
-
311
+ const v = parseInt(value, 10);
312
+ if (v < 0 || v > 0xffffffffffffffff || isNaN(v)) {
313
+ throw new Error(`invalid value for TIME_MILLIS: ${value}`);
314
+ }
315
+ return v;
316
+ }
357
317
  function toPrimitive_TIME_MICROS(value) {
358
- const v = parseInt(value, 10);
359
-
360
- if (v < 0 || isNaN(v)) {
361
- throw new Error("invalid value for TIME_MICROS: ".concat(value));
362
- }
363
-
364
- return v;
365
- }
366
-
367
- const kMillisPerDay = 86400000;
368
-
369
- function toPrimitive_DATE(value) {
370
- if (value instanceof Date) {
371
- return value.getTime() / kMillisPerDay;
372
- }
373
-
374
- {
375
318
  const v = parseInt(value, 10);
376
-
377
319
  if (v < 0 || isNaN(v)) {
378
- throw new Error("invalid value for DATE: ".concat(value));
320
+ throw new Error(`invalid value for TIME_MICROS: ${value}`);
379
321
  }
380
-
381
322
  return v;
382
- }
383
323
  }
384
-
324
+ const kMillisPerDay = 86400000;
325
+ function toPrimitive_DATE(value) {
326
+ /* convert from date */
327
+ if (value instanceof Date) {
328
+ return value.getTime() / kMillisPerDay;
329
+ }
330
+ /* convert from integer */
331
+ {
332
+ const v = parseInt(value, 10);
333
+ if (v < 0 || isNaN(v)) {
334
+ throw new Error(`invalid value for DATE: ${value}`);
335
+ }
336
+ return v;
337
+ }
338
+ }
385
339
  function fromPrimitive_DATE(value) {
386
- return new Date(value * kMillisPerDay);
340
+ return new Date(value * kMillisPerDay);
387
341
  }
388
-
389
342
  function toPrimitive_TIMESTAMP_MILLIS(value) {
390
- if (value instanceof Date) {
391
- return value.getTime();
392
- }
393
-
394
- {
395
- const v = parseInt(value, 10);
396
-
397
- if (v < 0 || isNaN(v)) {
398
- throw new Error("invalid value for TIMESTAMP_MILLIS: ".concat(value));
343
+ /* convert from date */
344
+ if (value instanceof Date) {
345
+ return value.getTime();
346
+ }
347
+ /* convert from integer */
348
+ {
349
+ const v = parseInt(value, 10);
350
+ if (v < 0 || isNaN(v)) {
351
+ throw new Error(`invalid value for TIMESTAMP_MILLIS: ${value}`);
352
+ }
353
+ return v;
399
354
  }
400
-
401
- return v;
402
- }
403
355
  }
404
-
405
356
  function fromPrimitive_TIMESTAMP_MILLIS(value) {
406
- return new Date(value);
357
+ return new Date(value);
407
358
  }
408
-
409
359
  function toPrimitive_TIMESTAMP_MICROS(value) {
410
- if (value instanceof Date) {
411
- return value.getTime() * 1000;
412
- }
413
-
414
- {
415
- const v = parseInt(value, 10);
416
-
417
- if (v < 0 || isNaN(v)) {
418
- throw new Error("invalid value for TIMESTAMP_MICROS: ".concat(value));
360
+ /* convert from date */
361
+ if (value instanceof Date) {
362
+ return value.getTime() * 1000;
363
+ }
364
+ /* convert from integer */
365
+ {
366
+ const v = parseInt(value, 10);
367
+ if (v < 0 || isNaN(v)) {
368
+ throw new Error(`invalid value for TIMESTAMP_MICROS: ${value}`);
369
+ }
370
+ return v;
419
371
  }
420
-
421
- return v;
422
- }
423
372
  }
424
-
425
373
  function fromPrimitive_TIMESTAMP_MICROS(value) {
426
- return new Date(value / 1000);
374
+ return new Date(value / 1000);
427
375
  }
428
-
429
376
  function toPrimitive_INTERVAL(value) {
430
- if (!value.months || !value.days || !value.milliseconds) {
431
- throw new Error('value for INTERVAL must be object { months: ..., days: ..., milliseconds: ... }');
432
- }
433
-
434
- const buf = Buffer.alloc(12);
435
- buf.writeUInt32LE(value.months, 0);
436
- buf.writeUInt32LE(value.days, 4);
437
- buf.writeUInt32LE(value.milliseconds, 8);
438
- return buf;
439
- }
440
-
377
+ if (!value.months || !value.days || !value.milliseconds) {
378
+ throw new Error('value for INTERVAL must be object { months: ..., days: ..., milliseconds: ... }');
379
+ }
380
+ const buf = Buffer.alloc(12);
381
+ buf.writeUInt32LE(value.months, 0);
382
+ buf.writeUInt32LE(value.days, 4);
383
+ buf.writeUInt32LE(value.milliseconds, 8);
384
+ return buf;
385
+ }
441
386
  function fromPrimitive_INTERVAL(value) {
442
- const buf = Buffer.from(value);
443
- const months = buf.readUInt32LE(0);
444
- const days = buf.readUInt32LE(4);
445
- const millis = buf.readUInt32LE(8);
446
- return {
447
- months,
448
- days,
449
- milliseconds: millis
450
- };
451
- }
452
-
387
+ const buf = Buffer.from(value);
388
+ const months = buf.readUInt32LE(0);
389
+ const days = buf.readUInt32LE(4);
390
+ const millis = buf.readUInt32LE(8);
391
+ return { months, days, milliseconds: millis };
392
+ }
453
393
  function decimalFromPrimitive_INT(value, field) {
454
- const presisionInt = Math.round(value * 10 ** -field.presision % 1 * 10 ** field.presision);
455
- return presisionInt * 10 ** -(field.scale || 0);
394
+ const presisionInt = Math.round(((value * 10 ** -field.presision) % 1) * 10 ** field.presision);
395
+ return presisionInt * 10 ** -(field.scale || 0);
456
396
  }
457
-
458
397
  function decimalFromPrimitive_BYTE_ARRAY(value, field) {
459
- let number = 0;
460
-
461
- if (value.length <= 4) {
462
- for (let i = 0; i < value.length; i++) {
463
- const component = value[i] << 8 * (value.length - i - 1);
464
- number += component;
398
+ let number = 0;
399
+ if (value.length <= 4) {
400
+ // Bytewise operators faster. Use them if it is possible
401
+ for (let i = 0; i < value.length; i++) {
402
+ // `value.length - i - 1` bytes have reverse order (big-endian)
403
+ const component = value[i] << (8 * (value.length - i - 1));
404
+ number += component;
405
+ }
465
406
  }
466
- } else {
467
- for (let i = 0; i < value.length; i++) {
468
- const component = value[i] * 2 ** (8 * (value.length - 1 - i));
469
- number += component;
407
+ else {
408
+ for (let i = 0; i < value.length; i++) {
409
+ // `value.length - i - 1` bytes have reverse order (big-endian)
410
+ const component = value[i] * 2 ** (8 * (value.length - 1 - i));
411
+ number += component;
412
+ }
470
413
  }
471
- }
472
-
473
- const presisionInt = Math.round(number * 10 ** -field.presision % 1 * 10 ** field.presision);
474
- return presisionInt * 10 ** -(field.scale || 0);
414
+ const presisionInt = Math.round(((number * 10 ** -field.presision) % 1) * 10 ** field.presision);
415
+ return presisionInt * 10 ** -(field.scale || 0);
475
416
  }
476
- //# sourceMappingURL=types.js.map