@loaders.gl/schema 4.0.0-alpha.5 → 4.0.0-alpha.7

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 (377) hide show
  1. package/dist/bundle.js +2 -2
  2. package/dist/dist.min.js +11362 -13932
  3. package/dist/es5/bundle.js +6 -0
  4. package/dist/es5/bundle.js.map +1 -0
  5. package/dist/es5/index.js +406 -0
  6. package/dist/es5/index.js.map +1 -0
  7. package/dist/es5/lib/mesh/convert-mesh.js +34 -0
  8. package/dist/es5/lib/mesh/convert-mesh.js.map +1 -0
  9. package/dist/es5/lib/mesh/deduce-mesh-schema.js +56 -0
  10. package/dist/es5/lib/mesh/deduce-mesh-schema.js.map +1 -0
  11. package/dist/es5/lib/mesh/mesh-to-arrow-table.js +2 -0
  12. package/dist/es5/lib/mesh/mesh-to-arrow-table.js.map +1 -0
  13. package/dist/es5/lib/mesh/mesh-utils.js +40 -0
  14. package/dist/es5/lib/mesh/mesh-utils.js.map +1 -0
  15. package/dist/es5/lib/table/arrow/arrow-type-utils.js +30 -0
  16. package/dist/es5/lib/table/arrow/arrow-type-utils.js.map +1 -0
  17. package/dist/es5/lib/table/arrow/convert-schema-arrow.js +179 -0
  18. package/dist/es5/lib/table/arrow/convert-schema-arrow.js.map +1 -0
  19. package/dist/es5/lib/table/arrow/convert-table-to-arrow.js +2 -0
  20. package/dist/es5/lib/table/arrow/convert-table-to-arrow.js.map +1 -0
  21. package/dist/es5/lib/table/arrow-api/arrow-like-field.js +49 -0
  22. package/dist/es5/lib/table/arrow-api/arrow-like-field.js.map +1 -0
  23. package/dist/es5/lib/table/arrow-api/arrow-like-schema.js +118 -0
  24. package/dist/es5/lib/table/arrow-api/arrow-like-schema.js.map +1 -0
  25. package/dist/es5/lib/table/arrow-api/arrow-like-table.js +80 -0
  26. package/dist/es5/lib/table/arrow-api/arrow-like-table.js.map +1 -0
  27. package/dist/es5/lib/table/arrow-api/arrow-like-type.js +740 -0
  28. package/dist/es5/lib/table/arrow-api/arrow-like-type.js.map +1 -0
  29. package/dist/es5/lib/table/arrow-api/enum.js +55 -0
  30. package/dist/es5/lib/table/arrow-api/enum.js.map +1 -0
  31. package/dist/es5/lib/table/arrow-api/get-type-info.js +27 -0
  32. package/dist/es5/lib/table/arrow-api/get-type-info.js.map +1 -0
  33. package/dist/es5/lib/table/arrow-api/index.js +44 -0
  34. package/dist/es5/lib/table/arrow-api/index.js.map +1 -0
  35. package/dist/es5/lib/table/batches/base-table-batch-aggregator.js +78 -0
  36. package/dist/es5/lib/table/batches/base-table-batch-aggregator.js.map +1 -0
  37. package/dist/es5/lib/table/batches/columnar-table-batch-aggregator.js +106 -0
  38. package/dist/es5/lib/table/batches/columnar-table-batch-aggregator.js.map +1 -0
  39. package/dist/es5/lib/table/batches/row-table-batch-aggregator.js +96 -0
  40. package/dist/es5/lib/table/batches/row-table-batch-aggregator.js.map +1 -0
  41. package/dist/es5/lib/table/batches/table-batch-aggregator.js +2 -0
  42. package/dist/es5/lib/table/batches/table-batch-aggregator.js.map +1 -0
  43. package/dist/es5/lib/table/batches/table-batch-builder.js +173 -0
  44. package/dist/es5/lib/table/batches/table-batch-builder.js.map +1 -0
  45. package/dist/es5/lib/table/simple-table/convert-table.js +82 -0
  46. package/dist/es5/lib/table/simple-table/convert-table.js.map +1 -0
  47. package/dist/es5/lib/table/simple-table/data-type.js +94 -0
  48. package/dist/es5/lib/table/simple-table/data-type.js.map +1 -0
  49. package/dist/es5/lib/table/simple-table/make-table.js +60 -0
  50. package/dist/es5/lib/table/simple-table/make-table.js.map +1 -0
  51. package/dist/es5/lib/table/simple-table/row-utils.js +34 -0
  52. package/dist/es5/lib/table/simple-table/row-utils.js.map +1 -0
  53. package/dist/es5/lib/table/simple-table/table-accessors.js +343 -0
  54. package/dist/es5/lib/table/simple-table/table-accessors.js.map +1 -0
  55. package/dist/es5/lib/table/simple-table/table-column.js +12 -0
  56. package/dist/es5/lib/table/simple-table/table-column.js.map +1 -0
  57. package/dist/es5/lib/table/simple-table/table-schema.js +85 -0
  58. package/dist/es5/lib/table/simple-table/table-schema.js.map +1 -0
  59. package/dist/es5/lib/utils/assert.js +12 -0
  60. package/dist/es5/lib/utils/assert.js.map +1 -0
  61. package/dist/es5/lib/utils/async-queue.js +169 -0
  62. package/dist/es5/lib/utils/async-queue.js.map +1 -0
  63. package/dist/es5/types/category-gis.js +2 -0
  64. package/dist/es5/types/category-gis.js.map +1 -0
  65. package/dist/es5/types/category-image.js +2 -0
  66. package/dist/es5/types/category-image.js.map +1 -0
  67. package/dist/es5/types/category-mesh.js +2 -0
  68. package/dist/es5/types/category-mesh.js.map +1 -0
  69. package/dist/es5/types/category-table.js +2 -0
  70. package/dist/es5/types/category-table.js.map +1 -0
  71. package/dist/es5/types/category-texture.js +2 -0
  72. package/dist/es5/types/category-texture.js.map +1 -0
  73. package/dist/es5/types/schema.js +2 -0
  74. package/dist/es5/types/schema.js.map +1 -0
  75. package/dist/es5/types/types.js +2 -0
  76. package/dist/es5/types/types.js.map +1 -0
  77. package/dist/esm/bundle.js +4 -0
  78. package/dist/esm/bundle.js.map +1 -0
  79. package/dist/esm/index.js +16 -0
  80. package/dist/esm/index.js.map +1 -0
  81. package/dist/{category → esm/lib}/mesh/convert-mesh.js +0 -11
  82. package/dist/esm/lib/mesh/convert-mesh.js.map +1 -0
  83. package/dist/esm/lib/mesh/deduce-mesh-schema.js +48 -0
  84. package/dist/esm/lib/mesh/deduce-mesh-schema.js.map +1 -0
  85. package/dist/esm/lib/mesh/mesh-to-arrow-table.js +2 -0
  86. package/dist/esm/lib/mesh/mesh-to-arrow-table.js.map +1 -0
  87. package/dist/{category → esm/lib}/mesh/mesh-utils.js +0 -5
  88. package/dist/esm/lib/mesh/mesh-utils.js.map +1 -0
  89. package/dist/{lib/arrow/arrow-like-type-utils.js → esm/lib/table/arrow/arrow-type-utils.js} +3 -11
  90. package/dist/esm/lib/table/arrow/arrow-type-utils.js.map +1 -0
  91. package/dist/esm/lib/table/arrow/convert-schema-arrow.js +158 -0
  92. package/dist/esm/lib/table/arrow/convert-schema-arrow.js.map +1 -0
  93. package/dist/esm/lib/table/arrow/convert-table-to-arrow.js +2 -0
  94. package/dist/esm/lib/table/arrow/convert-table-to-arrow.js.map +1 -0
  95. package/dist/{lib/schema/impl/field.js → esm/lib/table/arrow-api/arrow-like-field.js} +6 -13
  96. package/dist/esm/lib/table/arrow-api/arrow-like-field.js.map +1 -0
  97. package/dist/{lib/schema/impl/schema.js → esm/lib/table/arrow-api/arrow-like-schema.js} +22 -47
  98. package/dist/esm/lib/table/arrow-api/arrow-like-schema.js.map +1 -0
  99. package/dist/esm/lib/table/arrow-api/arrow-like-table.js +51 -0
  100. package/dist/esm/lib/table/arrow-api/arrow-like-table.js.map +1 -0
  101. package/dist/{lib/schema/impl/type.js → esm/lib/table/arrow-api/arrow-like-type.js} +11 -116
  102. package/dist/esm/lib/table/arrow-api/arrow-like-type.js.map +1 -0
  103. package/dist/{lib/schema/impl → esm/lib/table/arrow-api}/enum.js +3 -4
  104. package/dist/esm/lib/table/arrow-api/enum.js.map +1 -0
  105. package/dist/{lib/arrow → esm/lib/table/arrow-api}/get-type-info.js +1 -4
  106. package/dist/esm/lib/table/arrow-api/get-type-info.js.map +1 -0
  107. package/dist/esm/lib/table/arrow-api/index.js +5 -0
  108. package/dist/esm/lib/table/arrow-api/index.js.map +1 -0
  109. package/dist/{lib → esm/lib/table}/batches/base-table-batch-aggregator.js +1 -18
  110. package/dist/esm/lib/table/batches/base-table-batch-aggregator.js.map +1 -0
  111. package/dist/{lib → esm/lib/table}/batches/columnar-table-batch-aggregator.js +1 -24
  112. package/dist/esm/lib/table/batches/columnar-table-batch-aggregator.js.map +1 -0
  113. package/dist/{lib → esm/lib/table}/batches/row-table-batch-aggregator.js +2 -22
  114. package/dist/esm/lib/table/batches/row-table-batch-aggregator.js.map +1 -0
  115. package/dist/esm/lib/table/batches/table-batch-aggregator.js.map +1 -0
  116. package/dist/{lib → esm/lib/table}/batches/table-batch-builder.js +6 -49
  117. package/dist/esm/lib/table/batches/table-batch-builder.js.map +1 -0
  118. package/dist/esm/lib/table/simple-table/convert-table.js +59 -0
  119. package/dist/esm/lib/table/simple-table/convert-table.js.map +1 -0
  120. package/dist/esm/lib/table/simple-table/data-type.js +85 -0
  121. package/dist/esm/lib/table/simple-table/data-type.js.map +1 -0
  122. package/dist/esm/lib/table/simple-table/make-table.js +50 -0
  123. package/dist/esm/lib/table/simple-table/make-table.js.map +1 -0
  124. package/dist/{lib/utils → esm/lib/table/simple-table}/row-utils.js +0 -8
  125. package/dist/esm/lib/table/simple-table/row-utils.js.map +1 -0
  126. package/dist/esm/lib/table/simple-table/table-accessors.js +262 -0
  127. package/dist/esm/lib/table/simple-table/table-accessors.js.map +1 -0
  128. package/dist/esm/lib/table/simple-table/table-column.js +6 -0
  129. package/dist/esm/lib/table/simple-table/table-column.js.map +1 -0
  130. package/dist/esm/lib/table/simple-table/table-schema.js +70 -0
  131. package/dist/esm/lib/table/simple-table/table-schema.js.map +1 -0
  132. package/dist/esm/lib/utils/assert.js +6 -0
  133. package/dist/esm/lib/utils/assert.js.map +1 -0
  134. package/dist/esm/lib/utils/async-queue.js +94 -0
  135. package/dist/esm/lib/utils/async-queue.js.map +1 -0
  136. package/dist/esm/types/category-gis.js +2 -0
  137. package/dist/esm/types/category-gis.js.map +1 -0
  138. package/dist/esm/types/category-image.js +2 -0
  139. package/dist/esm/types/category-image.js.map +1 -0
  140. package/dist/esm/types/category-mesh.js +2 -0
  141. package/dist/esm/types/category-mesh.js.map +1 -0
  142. package/dist/esm/types/category-table.js +2 -0
  143. package/dist/esm/types/category-table.js.map +1 -0
  144. package/dist/esm/types/category-texture.js +2 -0
  145. package/dist/esm/types/category-texture.js.map +1 -0
  146. package/dist/esm/types/schema.js +2 -0
  147. package/dist/esm/types/schema.js.map +1 -0
  148. package/dist/esm/types/types.js.map +1 -0
  149. package/dist/index.d.ts +27 -25
  150. package/dist/index.d.ts.map +1 -1
  151. package/dist/index.js +92 -13
  152. package/dist/{category → lib}/mesh/convert-mesh.d.ts +3 -3
  153. package/dist/lib/mesh/convert-mesh.d.ts.map +1 -0
  154. package/dist/lib/mesh/convert-mesh.js +40 -0
  155. package/dist/{category → lib}/mesh/deduce-mesh-schema.d.ts +5 -5
  156. package/dist/lib/mesh/deduce-mesh-schema.d.ts.map +1 -0
  157. package/dist/lib/mesh/deduce-mesh-schema.js +66 -0
  158. package/dist/lib/mesh/mesh-to-arrow-table.d.ts +1 -0
  159. package/dist/lib/mesh/mesh-to-arrow-table.d.ts.map +1 -0
  160. package/dist/lib/mesh/mesh-to-arrow-table.js +44 -0
  161. package/dist/{category → lib}/mesh/mesh-utils.d.ts +4 -4
  162. package/dist/lib/mesh/mesh-utils.d.ts.map +1 -0
  163. package/dist/lib/mesh/mesh-utils.js +51 -0
  164. package/dist/lib/table/arrow/arrow-type-utils.d.ts +4 -0
  165. package/dist/lib/table/arrow/arrow-type-utils.d.ts.map +1 -0
  166. package/dist/lib/table/arrow/arrow-type-utils.js +53 -0
  167. package/dist/lib/table/arrow/convert-schema-arrow.d.ts +13 -0
  168. package/dist/lib/table/arrow/convert-schema-arrow.d.ts.map +1 -0
  169. package/dist/lib/table/arrow/convert-schema-arrow.js +187 -0
  170. package/dist/lib/table/arrow/convert-table-to-arrow.d.ts +42 -0
  171. package/dist/lib/table/arrow/convert-table-to-arrow.d.ts.map +1 -0
  172. package/dist/lib/table/arrow/convert-table-to-arrow.js +57 -0
  173. package/dist/lib/{schema/impl/field.d.ts → table/arrow-api/arrow-like-field.d.ts} +4 -4
  174. package/dist/lib/table/arrow-api/arrow-like-field.d.ts.map +1 -0
  175. package/dist/lib/table/arrow-api/arrow-like-field.js +34 -0
  176. package/dist/lib/table/arrow-api/arrow-like-schema.d.ts +12 -0
  177. package/dist/lib/table/arrow-api/arrow-like-schema.d.ts.map +1 -0
  178. package/dist/lib/table/arrow-api/arrow-like-schema.js +81 -0
  179. package/dist/lib/table/arrow-api/arrow-like-table.d.ts +28 -0
  180. package/dist/lib/table/arrow-api/arrow-like-table.d.ts.map +1 -0
  181. package/dist/lib/table/arrow-api/arrow-like-table.js +53 -0
  182. package/dist/lib/{schema/impl/type.d.ts → table/arrow-api/arrow-like-type.d.ts} +7 -6
  183. package/dist/lib/table/arrow-api/arrow-like-type.d.ts.map +1 -0
  184. package/dist/lib/table/arrow-api/arrow-like-type.js +463 -0
  185. package/dist/lib/table/arrow-api/enum.d.ts.map +1 -0
  186. package/dist/lib/table/arrow-api/enum.js +97 -0
  187. package/dist/lib/{arrow → table/arrow-api}/get-type-info.d.ts +2 -3
  188. package/dist/lib/table/arrow-api/get-type-info.d.ts.map +1 -0
  189. package/dist/lib/table/arrow-api/get-type-info.js +29 -0
  190. package/dist/lib/table/arrow-api/index.d.ts +5 -0
  191. package/dist/lib/table/arrow-api/index.d.ts.map +1 -0
  192. package/dist/lib/table/arrow-api/index.js +25 -0
  193. package/dist/lib/{batches → table/batches}/base-table-batch-aggregator.d.ts +3 -3
  194. package/dist/lib/table/batches/base-table-batch-aggregator.d.ts.map +1 -0
  195. package/dist/lib/table/batches/base-table-batch-aggregator.js +60 -0
  196. package/dist/lib/{batches → table/batches}/columnar-table-batch-aggregator.d.ts +4 -4
  197. package/dist/lib/table/batches/columnar-table-batch-aggregator.d.ts.map +1 -0
  198. package/dist/lib/table/batches/columnar-table-batch-aggregator.js +92 -0
  199. package/dist/lib/{batches → table/batches}/row-table-batch-aggregator.d.ts +3 -3
  200. package/dist/lib/table/batches/row-table-batch-aggregator.d.ts.map +1 -0
  201. package/dist/lib/table/batches/row-table-batch-aggregator.js +81 -0
  202. package/dist/lib/{batches → table/batches}/table-batch-aggregator.d.ts +2 -2
  203. package/dist/lib/table/batches/table-batch-aggregator.d.ts.map +1 -0
  204. package/dist/lib/table/batches/table-batch-aggregator.js +3 -0
  205. package/dist/lib/{batches → table/batches}/table-batch-builder.d.ts +5 -5
  206. package/dist/lib/table/batches/table-batch-builder.d.ts.map +1 -0
  207. package/dist/lib/table/batches/table-batch-builder.js +152 -0
  208. package/dist/lib/table/simple-table/convert-table.d.ts +8 -0
  209. package/dist/lib/table/simple-table/convert-table.d.ts.map +1 -0
  210. package/dist/lib/table/simple-table/convert-table.js +65 -0
  211. package/dist/lib/table/simple-table/data-type.d.ts +17 -0
  212. package/dist/lib/table/simple-table/data-type.d.ts.map +1 -0
  213. package/dist/lib/table/simple-table/data-type.js +93 -0
  214. package/dist/lib/table/simple-table/make-table.d.ts +65 -0
  215. package/dist/lib/table/simple-table/make-table.d.ts.map +1 -0
  216. package/dist/lib/table/simple-table/make-table.js +95 -0
  217. package/dist/lib/table/simple-table/row-utils.d.ts.map +1 -0
  218. package/dist/lib/table/simple-table/row-utils.js +33 -0
  219. package/dist/lib/table/simple-table/table-accessors.d.ts +67 -0
  220. package/dist/lib/table/simple-table/table-accessors.d.ts.map +1 -0
  221. package/dist/lib/table/simple-table/table-accessors.js +319 -0
  222. package/dist/lib/table/simple-table/table-column.d.ts +7 -0
  223. package/dist/lib/table/simple-table/table-column.d.ts.map +1 -0
  224. package/dist/lib/table/simple-table/table-column.js +41 -0
  225. package/dist/lib/table/simple-table/table-schema.d.ts +15 -0
  226. package/dist/lib/table/simple-table/table-schema.d.ts.map +1 -0
  227. package/dist/lib/table/simple-table/table-schema.js +85 -0
  228. package/dist/lib/utils/assert.js +11 -5
  229. package/dist/lib/utils/async-queue.js +82 -109
  230. package/dist/{category/gis.d.ts → types/category-gis.d.ts} +26 -26
  231. package/dist/types/category-gis.d.ts.map +1 -0
  232. package/dist/types/category-gis.js +2 -0
  233. package/dist/{category/image/image.d.ts → types/category-image.d.ts} +4 -4
  234. package/dist/types/category-image.d.ts.map +1 -0
  235. package/dist/types/category-image.js +2 -0
  236. package/dist/{category/mesh/mesh-types.d.ts → types/category-mesh.d.ts} +8 -10
  237. package/dist/types/category-mesh.d.ts.map +1 -0
  238. package/dist/types/category-mesh.js +3 -0
  239. package/dist/{category/table/table-types.d.ts → types/category-table.d.ts} +44 -34
  240. package/dist/types/category-table.d.ts.map +1 -0
  241. package/dist/types/category-table.js +3 -0
  242. package/dist/types/category-texture.d.ts +18 -0
  243. package/dist/types/category-texture.d.ts.map +1 -0
  244. package/dist/types/category-texture.js +3 -0
  245. package/dist/types/schema.d.ts +77 -0
  246. package/dist/types/schema.d.ts.map +1 -0
  247. package/dist/types/schema.js +3 -0
  248. package/dist/types/types.d.ts +15 -0
  249. package/dist/types/types.d.ts.map +1 -0
  250. package/dist/types/types.js +2 -0
  251. package/package.json +5 -6
  252. package/src/index.ts +65 -31
  253. package/src/{category → lib}/mesh/convert-mesh.ts +10 -8
  254. package/src/{category → lib}/mesh/deduce-mesh-schema.ts +20 -19
  255. package/src/{category → lib}/mesh/mesh-to-arrow-table.ts +5 -3
  256. package/src/{category → lib}/mesh/mesh-utils.ts +2 -2
  257. package/src/lib/{arrow → table/arrow}/arrow-type-utils.ts +16 -12
  258. package/src/lib/table/arrow/convert-schema-arrow.ts +232 -0
  259. package/src/lib/table/arrow/convert-table-to-arrow.ts +59 -0
  260. package/src/lib/{schema/impl/field.ts → table/arrow-api/arrow-like-field.ts} +6 -4
  261. package/src/lib/table/arrow-api/arrow-like-schema.ts +99 -0
  262. package/src/lib/table/arrow-api/arrow-like-table.ts +83 -0
  263. package/src/lib/{schema/impl/type.ts → table/arrow-api/arrow-like-type.ts} +2 -1
  264. package/src/lib/{arrow → table/arrow-api}/get-type-info.ts +4 -3
  265. package/src/lib/table/arrow-api/index.ts +6 -0
  266. package/src/lib/{batches → table/batches}/base-table-batch-aggregator.ts +5 -3
  267. package/src/lib/{batches → table/batches}/columnar-table-batch-aggregator.ts +5 -3
  268. package/src/lib/{batches → table/batches}/row-table-batch-aggregator.ts +6 -4
  269. package/src/lib/{batches → table/batches}/table-batch-aggregator.ts +4 -2
  270. package/src/lib/{batches → table/batches}/table-batch-builder.ts +8 -6
  271. package/src/lib/table/simple-table/convert-table.ts +72 -0
  272. package/src/lib/table/simple-table/data-type.ts +102 -0
  273. package/src/lib/table/simple-table/make-table.ts +108 -0
  274. package/src/lib/table/simple-table/table-accessors.ts +360 -0
  275. package/src/lib/table/simple-table/table-column.ts +47 -0
  276. package/src/lib/table/simple-table/table-schema.ts +97 -0
  277. package/src/{category/gis.ts → types/category-gis.ts} +9 -2
  278. package/src/{category/mesh/mesh-types.ts → types/category-mesh.ts} +6 -4
  279. package/src/types/category-table.ts +104 -0
  280. package/src/{category/texture/texture.ts → types/category-texture.ts} +3 -1
  281. package/src/types/schema.ts +97 -0
  282. package/src/types/types.ts +43 -0
  283. package/dist/bundle.js.map +0 -1
  284. package/dist/category/common.d.ts +0 -19
  285. package/dist/category/common.d.ts.map +0 -1
  286. package/dist/category/common.js +0 -2
  287. package/dist/category/common.js.map +0 -1
  288. package/dist/category/gis.d.ts.map +0 -1
  289. package/dist/category/gis.js +0 -2
  290. package/dist/category/gis.js.map +0 -1
  291. package/dist/category/image/image.d.ts.map +0 -1
  292. package/dist/category/image/image.js +0 -2
  293. package/dist/category/image/image.js.map +0 -1
  294. package/dist/category/mesh/convert-mesh.d.ts.map +0 -1
  295. package/dist/category/mesh/convert-mesh.js.map +0 -1
  296. package/dist/category/mesh/deduce-mesh-schema.d.ts.map +0 -1
  297. package/dist/category/mesh/deduce-mesh-schema.js +0 -42
  298. package/dist/category/mesh/deduce-mesh-schema.js.map +0 -1
  299. package/dist/category/mesh/mesh-to-arrow-table.d.ts +0 -11
  300. package/dist/category/mesh/mesh-to-arrow-table.d.ts.map +0 -1
  301. package/dist/category/mesh/mesh-to-arrow-table.js +0 -31
  302. package/dist/category/mesh/mesh-to-arrow-table.js.map +0 -1
  303. package/dist/category/mesh/mesh-types.d.ts.map +0 -1
  304. package/dist/category/mesh/mesh-types.js +0 -2
  305. package/dist/category/mesh/mesh-types.js.map +0 -1
  306. package/dist/category/mesh/mesh-utils.d.ts.map +0 -1
  307. package/dist/category/mesh/mesh-utils.js.map +0 -1
  308. package/dist/category/table/deduce-table-schema.d.ts +0 -9
  309. package/dist/category/table/deduce-table-schema.d.ts.map +0 -1
  310. package/dist/category/table/deduce-table-schema.js +0 -51
  311. package/dist/category/table/deduce-table-schema.js.map +0 -1
  312. package/dist/category/table/table-types.d.ts.map +0 -1
  313. package/dist/category/table/table-types.js +0 -2
  314. package/dist/category/table/table-types.js.map +0 -1
  315. package/dist/category/texture/texture.d.ts +0 -18
  316. package/dist/category/texture/texture.d.ts.map +0 -1
  317. package/dist/category/texture/texture.js +0 -2
  318. package/dist/category/texture/texture.js.map +0 -1
  319. package/dist/index.js.map +0 -1
  320. package/dist/lib/arrow/arrow-like-type-utils.d.ts +0 -4
  321. package/dist/lib/arrow/arrow-like-type-utils.d.ts.map +0 -1
  322. package/dist/lib/arrow/arrow-like-type-utils.js.map +0 -1
  323. package/dist/lib/arrow/arrow-type-utils.d.ts +0 -6
  324. package/dist/lib/arrow/arrow-type-utils.d.ts.map +0 -1
  325. package/dist/lib/arrow/arrow-type-utils.js +0 -62
  326. package/dist/lib/arrow/arrow-type-utils.js.map +0 -1
  327. package/dist/lib/arrow/get-type-info.d.ts.map +0 -1
  328. package/dist/lib/arrow/get-type-info.js.map +0 -1
  329. package/dist/lib/batches/base-table-batch-aggregator.d.ts.map +0 -1
  330. package/dist/lib/batches/base-table-batch-aggregator.js.map +0 -1
  331. package/dist/lib/batches/columnar-table-batch-aggregator.d.ts.map +0 -1
  332. package/dist/lib/batches/columnar-table-batch-aggregator.js.map +0 -1
  333. package/dist/lib/batches/row-table-batch-aggregator.d.ts.map +0 -1
  334. package/dist/lib/batches/row-table-batch-aggregator.js.map +0 -1
  335. package/dist/lib/batches/table-batch-aggregator.d.ts.map +0 -1
  336. package/dist/lib/batches/table-batch-aggregator.js.map +0 -1
  337. package/dist/lib/batches/table-batch-builder.d.ts.map +0 -1
  338. package/dist/lib/batches/table-batch-builder.js.map +0 -1
  339. package/dist/lib/schema/impl/enum.d.ts.map +0 -1
  340. package/dist/lib/schema/impl/enum.js.map +0 -1
  341. package/dist/lib/schema/impl/field.d.ts.map +0 -1
  342. package/dist/lib/schema/impl/field.js.map +0 -1
  343. package/dist/lib/schema/impl/schema.d.ts +0 -16
  344. package/dist/lib/schema/impl/schema.d.ts.map +0 -1
  345. package/dist/lib/schema/impl/schema.js.map +0 -1
  346. package/dist/lib/schema/impl/type.d.ts.map +0 -1
  347. package/dist/lib/schema/impl/type.js.map +0 -1
  348. package/dist/lib/schema/schema.d.ts +0 -5
  349. package/dist/lib/schema/schema.d.ts.map +0 -1
  350. package/dist/lib/schema/schema.js +0 -5
  351. package/dist/lib/schema/schema.js.map +0 -1
  352. package/dist/lib/schema-utils/deduce-column-type.d.ts +0 -3
  353. package/dist/lib/schema-utils/deduce-column-type.d.ts.map +0 -1
  354. package/dist/lib/schema-utils/deduce-column-type.js +0 -23
  355. package/dist/lib/schema-utils/deduce-column-type.js.map +0 -1
  356. package/dist/lib/utils/assert.js.map +0 -1
  357. package/dist/lib/utils/async-queue.js.map +0 -1
  358. package/dist/lib/utils/row-utils.d.ts.map +0 -1
  359. package/dist/lib/utils/row-utils.js.map +0 -1
  360. package/dist/types.d.ts +0 -8
  361. package/dist/types.d.ts.map +0 -1
  362. package/dist/types.js.map +0 -1
  363. package/src/category/common.ts +0 -30
  364. package/src/category/table/deduce-table-schema.ts +0 -123
  365. package/src/category/table/table-types.ts +0 -81
  366. package/src/lib/arrow/arrow-like-type-utils.ts +0 -35
  367. package/src/lib/schema/impl/schema.ts +0 -99
  368. package/src/lib/schema/schema.ts +0 -82
  369. package/src/lib/schema-utils/deduce-column-type.ts +0 -92
  370. package/src/types.ts +0 -19
  371. /package/dist/{lib → esm/lib/table}/batches/table-batch-aggregator.js +0 -0
  372. /package/dist/{types.js → esm/types/types.js} +0 -0
  373. /package/dist/lib/{schema/impl → table/arrow-api}/enum.d.ts +0 -0
  374. /package/dist/lib/{utils → table/simple-table}/row-utils.d.ts +0 -0
  375. /package/src/lib/{schema/impl → table/arrow-api}/enum.ts +0 -0
  376. /package/src/lib/{utils → table/simple-table}/row-utils.ts +0 -0
  377. /package/src/{category/image/image.ts → types/category-image.ts} +0 -0
@@ -0,0 +1,232 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import type {DataType, Field, Schema, SchemaMetadata} from '../../../types/schema';
4
+ import {
5
+ Field as ArrowField,
6
+ Schema as ArrowSchema,
7
+ DataType as ArrowDataType,
8
+ Null,
9
+ Binary,
10
+ Bool,
11
+ // Int,
12
+ Int8,
13
+ Int16,
14
+ Int32,
15
+ Int64,
16
+ Uint8,
17
+ Uint16,
18
+ Uint32,
19
+ Uint64,
20
+ // Float,
21
+ Float16,
22
+ Float32,
23
+ Float64,
24
+ Utf8,
25
+ // Date,
26
+ DateDay,
27
+ DateMillisecond,
28
+ // Time,
29
+ TimeMillisecond,
30
+ TimeSecond,
31
+ // Timestamp,
32
+ TimestampSecond,
33
+ TimestampMillisecond,
34
+ TimestampMicrosecond,
35
+ TimestampNanosecond,
36
+ // Interval,
37
+ IntervalDayTime,
38
+ IntervalYearMonth,
39
+ FixedSizeList,
40
+ Struct
41
+ } from 'apache-arrow/Arrow.dom';
42
+
43
+ export function serializeArrowSchema(arrowSchema: ArrowSchema): Schema {
44
+ return {
45
+ fields: arrowSchema.fields.map((arrowField) => serializeArrowField(arrowField)),
46
+ metadata: serializeArrowMetadata(arrowSchema.metadata)
47
+ };
48
+ }
49
+
50
+ export function deserializeArrowSchema(schema: Schema): ArrowSchema {
51
+ return new ArrowSchema(
52
+ schema.fields.map((field) => deserializeArrowField(field)),
53
+ deserializeArrowMetadata(schema.metadata)
54
+ );
55
+ }
56
+
57
+ export function serializeArrowMetadata(arrowMetadata: Map<string, string>): SchemaMetadata {
58
+ return Object.fromEntries(arrowMetadata);
59
+ }
60
+
61
+ export function deserializeArrowMetadata(metadata?: SchemaMetadata): Map<string, string> {
62
+ return metadata ? new Map(Object.entries(metadata)) : new Map<string, string>();
63
+ }
64
+
65
+ export function serializeArrowField(field: ArrowField): Field {
66
+ return {
67
+ name: field.name,
68
+ type: serializeArrowType(field.type),
69
+ nullable: field.nullable,
70
+ metadata: serializeArrowMetadata(field.metadata)
71
+ };
72
+ }
73
+
74
+ export function deserializeArrowField(field: Field): ArrowField {
75
+ return new ArrowField(
76
+ field.name,
77
+ deserializeArrowType(field.type),
78
+ field.nullable,
79
+ deserializeArrowMetadata(field.metadata)
80
+ );
81
+ }
82
+
83
+ /** Converts a serializable loaders.gl data type to hydrated arrow data type */
84
+ // eslint-disable-next-line complexity
85
+ export function serializeArrowType(arrowType: ArrowDataType): DataType {
86
+ switch (arrowType.constructor) {
87
+ case Null:
88
+ return 'null';
89
+ case Binary:
90
+ return 'binary';
91
+ case Bool:
92
+ return 'bool';
93
+ // case Int: return 'int';
94
+ case Int8:
95
+ return 'int8';
96
+ case Int16:
97
+ return 'int16';
98
+ case Int32:
99
+ return 'int32';
100
+ case Int64:
101
+ return 'int64';
102
+ case Uint8:
103
+ return 'uint8';
104
+ case Uint16:
105
+ return 'uint16';
106
+ case Uint32:
107
+ return 'uint32';
108
+ case Uint64:
109
+ return 'uint64';
110
+ // case Float: return 'float';
111
+ case Float16:
112
+ return 'float16';
113
+ case Float32:
114
+ return 'float32';
115
+ case Float64:
116
+ return 'float64';
117
+ case Utf8:
118
+ return 'utf8';
119
+ // case Date: return 'date';
120
+ case DateDay:
121
+ return 'date-day';
122
+ case DateMillisecond:
123
+ return 'date-millisecond';
124
+ // case Time: return 'time';
125
+ case TimeMillisecond:
126
+ return 'time-millisecond';
127
+ case TimeSecond:
128
+ return 'time-second';
129
+ // case Timestamp: return 'timestamp';
130
+ case TimestampSecond:
131
+ return 'timestamp-second';
132
+ case TimestampMillisecond:
133
+ return 'timestamp-millisecond';
134
+ case TimestampMicrosecond:
135
+ return 'timestamp-microsecond';
136
+ case TimestampNanosecond:
137
+ return 'timestamp-nanosecond';
138
+ // case Interval: return 'interval';
139
+ case IntervalDayTime:
140
+ return 'interval-daytime';
141
+ case IntervalYearMonth:
142
+ return 'interval-yearmonth';
143
+ case FixedSizeList:
144
+ return {
145
+ type: 'fixed-size-list',
146
+ listSize: (arrowType as FixedSizeList).listSize,
147
+ children: [serializeArrowField((arrowType as FixedSizeList).children[0])]
148
+ };
149
+ // case Struct:
150
+ // return {type: 'struct', children: (arrowType as Struct).children};
151
+ default:
152
+ throw new Error('array type not supported');
153
+ }
154
+ }
155
+
156
+ /** Converts a serializable loaders.gl data type to hydrated arrow data type */
157
+ // eslint-disable-next-line complexity
158
+ export function deserializeArrowType(dataType: DataType): ArrowDataType {
159
+ if (typeof dataType === 'object') {
160
+ switch (dataType.type) {
161
+ case 'fixed-size-list':
162
+ const child = deserializeArrowField(dataType.children[0]);
163
+ return new FixedSizeList(dataType.listSize, child);
164
+ case 'struct':
165
+ const children = dataType.children.map((arrowField) => deserializeArrowField(arrowField));
166
+ return new Struct(children);
167
+ default:
168
+ throw new Error('array type not supported');
169
+ }
170
+ }
171
+
172
+ switch (dataType) {
173
+ case 'null':
174
+ return new Null();
175
+ case 'binary':
176
+ return new Binary();
177
+ case 'bool':
178
+ return new Bool();
179
+ // case 'int': return new Int();
180
+ case 'int8':
181
+ return new Int8();
182
+ case 'int16':
183
+ return new Int16();
184
+ case 'int32':
185
+ return new Int32();
186
+ case 'int64':
187
+ return new Int64();
188
+ case 'uint8':
189
+ return new Uint8();
190
+ case 'uint16':
191
+ return new Uint16();
192
+ case 'uint32':
193
+ return new Uint32();
194
+ case 'uint64':
195
+ return new Uint64();
196
+ // case 'float': return new Float();
197
+ case 'float16':
198
+ return new Float16();
199
+ case 'float32':
200
+ return new Float32();
201
+ case 'float64':
202
+ return new Float64();
203
+ case 'utf8':
204
+ return new Utf8();
205
+ // case 'date': return new Date();
206
+ case 'date-day':
207
+ return new DateDay();
208
+ case 'date-millisecond':
209
+ return new DateMillisecond();
210
+ // case 'time': return new Time();
211
+ case 'time-millisecond':
212
+ return new TimeMillisecond();
213
+ case 'time-second':
214
+ return new TimeSecond();
215
+ // case 'timestamp': return new Timestamp();
216
+ case 'timestamp-second':
217
+ return new TimestampSecond();
218
+ case 'timestamp-millisecond':
219
+ return new TimestampMillisecond();
220
+ case 'timestamp-microsecond':
221
+ return new TimestampMicrosecond();
222
+ case 'timestamp-nanosecond':
223
+ return new TimestampNanosecond();
224
+ // case 'interval': return new Interval();
225
+ case 'interval-daytime':
226
+ return new IntervalDayTime();
227
+ case 'interval-yearmonth':
228
+ return new IntervalYearMonth();
229
+ default:
230
+ throw new Error('array type not supported');
231
+ }
232
+ }
@@ -0,0 +1,59 @@
1
+ // loaders.gl, MIT license
2
+
3
+ // import {
4
+ // Table as ApacheArrowTable,
5
+ // Schema as ApacheArrowSchema,
6
+ // RecordBatch,
7
+ // FixedSizeList,
8
+ // Field,
9
+ // Data,
10
+ // FixedSizeListVector
11
+ // } from 'apache-arrow/Arrow.dom';
12
+ // import {AbstractVector} from 'apache-arrow/vector';
13
+
14
+ // import {Table} from '../../types/category-table';
15
+ // import {getArrowType, getArrowVector} from './arrow-type-utils';
16
+ // import {makeMeshAttributeMetadata} from './deduce-mesh-schema';
17
+ // import {getTableLength, getTableNumCols} from './table-accessors';
18
+
19
+ /**
20
+ * * Convert a loaders.gl Mesh to an Apache Arrow Table
21
+ * @param mesh
22
+ * @param metadata
23
+ * @param batchSize
24
+ * @returns
25
+ *
26
+ export function convertTableToArrow(table: Table, options?: {batchSize?: number}): ArrowTable {
27
+ const vectors: AbstractVector[] = [];
28
+ const fields: Field[] = [];
29
+
30
+ const length = getTableLength(table);
31
+ const batchSize = options?.batchSize || length;
32
+
33
+ const recordBatches: RecordBatch[] = [];
34
+ for (let i = 0; i < length; i += batchSize) {
35
+ for (let columnIndex = 0; columnIndex < getTableNumCols(table); ++columnIndex) {
36
+ const field_ = table.schema.fields[columnIndex];
37
+ const column = getTableColumnAt(table, columnIndex, i, batchSize);
38
+ const type = getArrowType(column);
39
+ const vector = getArrowVector(column);
40
+ const listType = new FixedSizeList(size, new Field('value', type));
41
+ const field = new Field(field_.name, listType, false, makeMeshAttributeMetadata(attribute));
42
+ const data = new Data(listType, 0, value.length / size, 0, undefined, [vector]);
43
+ const listVector = new FixedSizeListVector(data);
44
+ vectors.push(listVector);
45
+ fields.push(field);
46
+ }
47
+
48
+ for (const attributeKey in table.columns) {
49
+ const attribute = mesh.attributes[attributeKey];
50
+ const {value, size = 1} = attribute;
51
+ }
52
+
53
+ const schema = new ApacheArrowSchema(fields, table?.schema?.metadata || new Map<string, string>());
54
+ const recordBatch = new RecordBatch(schema, vectors[0].length, vectors);
55
+ const apacheArrowTable = new ApacheArrowTable(schema, recordBatch);
56
+
57
+ return apacheArrowTable;
58
+ }
59
+ */
@@ -1,4 +1,6 @@
1
- import {DataType} from './type';
1
+ // loaders.gl, MIT license
2
+
3
+ import {DataType} from './arrow-like-type';
2
4
 
3
5
  /**
4
6
  * ArrowJS `Field` API-compatible class for row-based tables
@@ -6,7 +8,7 @@ import {DataType} from './type';
6
8
  * A field holds name, nullable, and metadata information about a table "column"
7
9
  * A Schema is essentially a list of fields
8
10
  */
9
- export default class Field {
11
+ export class ArrowLikeField {
10
12
  name: string;
11
13
  type: DataType;
12
14
  nullable: boolean;
@@ -28,8 +30,8 @@ export default class Field {
28
30
  return this.type && this.type.typeId;
29
31
  }
30
32
 
31
- clone(): Field {
32
- return new Field(this.name, this.type, this.nullable, this.metadata);
33
+ clone(): ArrowLikeField {
34
+ return new ArrowLikeField(this.name, this.type, this.nullable, this.metadata);
33
35
  }
34
36
 
35
37
  compareTo(other: this): boolean {
@@ -0,0 +1,99 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import {SchemaMetadata, Field} from '../../../types/schema';
4
+ import {ArrowLikeField} from './arrow-like-field';
5
+
6
+ export class ArrowLikeSchema {
7
+ fields: ArrowLikeField[];
8
+ metadata: Map<string, string>;
9
+
10
+ constructor(
11
+ fields: ArrowLikeField[] | Field[],
12
+ metadata: SchemaMetadata | Map<string, string> = new Map<string, string>()
13
+ ) {
14
+ // checkNames(fields);
15
+ // For kepler fields, create arrow compatible `Fields` that have kepler fields as `metadata`
16
+ this.fields = fields.map(
17
+ (field) => new ArrowLikeField(field.name, field.type, field.nullable, field.metadata)
18
+ );
19
+ this.metadata =
20
+ metadata instanceof Map ? metadata : new Map<string, string>(Object.entries(metadata));
21
+ }
22
+
23
+ // TODO - arrow only seems to compare fields, not metadata
24
+ compareTo(other: ArrowLikeSchema): boolean {
25
+ if (this.metadata !== other.metadata) {
26
+ return false;
27
+ }
28
+ if (this.fields.length !== other.fields.length) {
29
+ return false;
30
+ }
31
+ for (let i = 0; i < this.fields.length; ++i) {
32
+ if (!this.fields[i].compareTo(other.fields[i])) {
33
+ return false;
34
+ }
35
+ }
36
+ return true;
37
+ }
38
+
39
+ select(...columnNames: string[]): ArrowLikeSchema {
40
+ // Ensure column names reference valid fields
41
+ const nameMap = Object.create(null);
42
+ for (const name of columnNames) {
43
+ nameMap[name] = true;
44
+ }
45
+ const selectedFields = this.fields.filter((field) => nameMap[field.name]);
46
+ return new ArrowLikeSchema(selectedFields, this.metadata);
47
+ }
48
+
49
+ selectAt(...columnIndices: number[]): ArrowLikeSchema {
50
+ // Ensure column indices reference valid fields
51
+ const selectedFields = columnIndices.map((index) => this.fields[index]).filter(Boolean);
52
+ return new ArrowLikeSchema(selectedFields, this.metadata);
53
+ }
54
+
55
+ assign(schemaOrFields: ArrowLikeSchema | ArrowLikeField[]): ArrowLikeSchema {
56
+ let fields: ArrowLikeField[];
57
+ let metadata = this.metadata;
58
+
59
+ if (schemaOrFields instanceof ArrowLikeSchema) {
60
+ const otherArrowLikeSchema = schemaOrFields;
61
+ fields = otherArrowLikeSchema.fields;
62
+ metadata = mergeMaps(mergeMaps(new Map(), this.metadata), otherArrowLikeSchema.metadata);
63
+ } else {
64
+ fields = schemaOrFields;
65
+ }
66
+
67
+ // Create a merged list of fields, overwrite fields in place, new fields at end
68
+ const fieldMap: {[key: string]: ArrowLikeField} = Object.create(null);
69
+
70
+ for (const field of this.fields) {
71
+ fieldMap[field.name] = field;
72
+ }
73
+
74
+ for (const field of fields) {
75
+ fieldMap[field.name] = field;
76
+ }
77
+
78
+ const mergedFields = Object.values(fieldMap);
79
+
80
+ return new ArrowLikeSchema(mergedFields, metadata);
81
+ }
82
+ }
83
+
84
+ // Warn if any duplicated field names
85
+ // function checkNames(fields: Field[]): void {
86
+ // const usedNames: Record<string, boolean> = {};
87
+ // for (const field of fields) {
88
+ // if (usedNames[field.name]) {
89
+ // // eslint-disable-next-line
90
+ // console.warn('ArrowLikeSchema: duplicated field name', field.name, field);
91
+ // }
92
+ // usedNames[field.name] = true;
93
+ // }
94
+ // }
95
+
96
+ function mergeMaps<T>(m1: T, m2: T): T {
97
+ // @ts-ignore
98
+ return new Map([...(m1 || new Map()), ...(m2 || new Map())]);
99
+ }
@@ -0,0 +1,83 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import {Table} from '../../../types/category-table';
4
+
5
+ import {ArrowLikeSchema} from './arrow-like-schema';
6
+
7
+ import {deduceTableSchema} from '../simple-table/table-schema';
8
+
9
+ import {
10
+ getTableCell,
11
+ getTableLength,
12
+ getTableNumCols
13
+ // getTableCell,
14
+ // getTableRowShape,
15
+ // getTableColumnIndex,
16
+ // getTableColumnName,
17
+ // getTableRowAsObject,
18
+ // getTableRowAsArray
19
+ } from '../simple-table/table-accessors';
20
+
21
+ class ArrowLikeVector {
22
+ table: Table;
23
+ columnName: string;
24
+
25
+ constructor(table: Table, columnName: string) {
26
+ this.table = table;
27
+ this.columnName = columnName;
28
+ }
29
+
30
+ get(rowIndex: number): unknown {
31
+ return getTableCell(this.table, rowIndex, this.columnName);
32
+ }
33
+
34
+ toArray(): ArrayLike<unknown> {
35
+ switch (this.table.shape) {
36
+ case 'arrow-table':
37
+ return this.table.data.getChild(this.columnName)?.toArray();
38
+ case 'columnar-table':
39
+ return this.table.data[this.columnName];
40
+ default:
41
+ throw new Error(this.table.shape);
42
+ }
43
+ }
44
+ }
45
+
46
+ /**
47
+ * Class that provides an API similar to Apache Arrow Table class
48
+ * Forwards methods directly if the underlying table is Arrow, otherwise calls accessor functions
49
+ */
50
+ export class ArrowLikeTable {
51
+ schema: ArrowLikeSchema;
52
+ table: Table;
53
+
54
+ constructor(table: Table) {
55
+ const schema = table.schema || deduceTableSchema(table);
56
+ this.schema = new ArrowLikeSchema(schema.fields, schema.metadata);
57
+ this.table = {...table, schema};
58
+ }
59
+
60
+ // get schema() {
61
+ // return this.table.schema;
62
+ // }
63
+
64
+ get data() {
65
+ return this.table.data;
66
+ }
67
+
68
+ get numCols(): number {
69
+ return getTableNumCols(this.table);
70
+ }
71
+
72
+ get length(): number {
73
+ return getTableLength(this.table);
74
+ }
75
+
76
+ getChild(columnName: string): ArrowLikeVector {
77
+ return new ArrowLikeVector(this.table, columnName);
78
+ }
79
+
80
+ // getChildAt(columnIndex: number): ArrowLikeVector {
81
+ // return
82
+ // }
83
+ }
@@ -3,7 +3,7 @@
3
3
 
4
4
  import {Type} from './enum';
5
5
 
6
- import Field from './field';
6
+ import {ArrowLikeField as Field} from './arrow-like-field';
7
7
 
8
8
  export {Type} from './enum';
9
9
 
@@ -24,6 +24,7 @@ export type TypedArray = TypedIntArray | TypedFloatArray;
24
24
 
25
25
  export type AnyArrayType = Array<any> | TypedIntArray | TypedFloatArray;
26
26
 
27
+ /** ArrowLike DataType class */
27
28
  export class DataType {
28
29
  static isNull(x: any): boolean {
29
30
  return x && x.typeId === Type.Null;
@@ -1,5 +1,6 @@
1
- import {Type} from '../schema/schema';
2
- import {AnyArray} from '../../types';
1
+ // loaders.gl, MIT license
2
+
3
+ import {Type} from './arrow-like-type';
3
4
 
4
5
  /**
5
6
  * Gets type information from an Arrow type object or "mock" Arrow type object
@@ -7,7 +8,7 @@ import {AnyArray} from '../../types';
7
8
  */
8
9
  export function getTypeInfo(arrowTypeLike: any): {
9
10
  typeId: Type;
10
- ArrayType: AnyArray;
11
+ ArrayType: ArrayLike<unknown>;
11
12
  typeName: string;
12
13
  typeEnumName?: string;
13
14
  precision?: number;
@@ -0,0 +1,6 @@
1
+ // loaders.gl, MIT license
2
+
3
+ export {ArrowLikeField as Field} from './arrow-like-field';
4
+ export {ArrowLikeSchema as Schema} from './arrow-like-schema';
5
+ export {ArrowLikeTable as Table} from './arrow-like-table';
6
+ export * from './arrow-like-type';
@@ -1,10 +1,12 @@
1
- import type {Schema} from '../schema/schema';
2
- import type {TableBatch} from '../../category/table/table-types';
1
+ // loaders.gl, MIT license
2
+
3
+ import type {Schema} from '../../../types/schema';
4
+ import type {TableBatch} from '../../../types/category-table';
3
5
  import {TableBatchAggregator, TableBatchOptions} from './table-batch-aggregator';
4
6
 
5
7
  const DEFAULT_ROW_COUNT = 100;
6
8
 
7
- export default class RowTableBatchAggregator implements TableBatchAggregator {
9
+ export class BaseTableBatchAggregator implements TableBatchAggregator {
8
10
  schema: Schema;
9
11
  options: TableBatchOptions;
10
12
 
@@ -1,12 +1,14 @@
1
- import type {Schema} from '../schema/schema';
2
- import type {ColumnarTableBatch, ArrowTableBatch} from '../../category/table/table-types';
1
+ // loaders.gl, MIT license
2
+
3
+ import type {Schema} from '../../../types/schema';
4
+ import type {ColumnarTableBatch, ArrowTableBatch} from '../../../types/category-table';
3
5
  import {TableBatchAggregator} from './table-batch-aggregator';
4
6
 
5
7
  type ColumnarTableBatchOptions = {};
6
8
 
7
9
  const DEFAULT_ROW_COUNT = 100;
8
10
 
9
- export default class ColumnarTableBatchAggregator implements TableBatchAggregator {
11
+ export class ColumnarTableBatchAggregator implements TableBatchAggregator {
10
12
  schema: Schema;
11
13
  length: number = 0;
12
14
  allocated: number = 0;
@@ -1,12 +1,14 @@
1
- import type {Schema} from '../schema/schema';
2
- import type {TableBatch} from '../../category/table/table-types';
1
+ // loaders.gl, MIT license
2
+
3
+ import type {Schema} from '../../../types/schema';
4
+ import type {TableBatch} from '../../../types/category-table';
3
5
  // import type {ArrayRowTableBatch, ObjectRowTableBatch} from '../../category/table';
4
- import {convertToArrayRow, convertToObjectRow} from '../utils/row-utils';
6
+ import {convertToArrayRow, convertToObjectRow} from '../simple-table/row-utils';
5
7
  import {TableBatchAggregator, TableBatchOptions} from './table-batch-aggregator';
6
8
 
7
9
  const DEFAULT_ROW_COUNT = 100;
8
10
 
9
- export default class RowTableBatchAggregator implements TableBatchAggregator {
11
+ export class RowTableBatchAggregator implements TableBatchAggregator {
10
12
  schema: Schema;
11
13
  options: TableBatchOptions;
12
14
 
@@ -1,5 +1,7 @@
1
- import type {Schema} from '../schema/schema';
2
- import type {TableBatch} from '../../category/table/table-types';
1
+ // loaders.gl, MIT license
2
+
3
+ import type {Schema} from '../../../types/schema';
4
+ import type {TableBatch} from '../../../types/category-table';
3
5
 
4
6
  export interface TableBatchOptions {
5
7
  batchSize: number | string;
@@ -1,9 +1,11 @@
1
- import type {Schema} from '../schema/schema';
2
- import type {TableBatch} from '../../category/table/table-types';
1
+ // loaders.gl, MIT license
2
+
3
+ import type {Schema} from '../../../types/schema';
4
+ import type {TableBatch} from '../../../types/category-table';
3
5
  import type {TableBatchAggregator, TableBatchConstructor} from './table-batch-aggregator';
4
- import BaseTableBatchAggregator from './base-table-batch-aggregator';
5
- import RowTableBatchAggregator from './row-table-batch-aggregator';
6
- import ColumnarTableBatchAggregator from './columnar-table-batch-aggregator';
6
+ import {BaseTableBatchAggregator} from './base-table-batch-aggregator';
7
+ import {RowTableBatchAggregator} from './row-table-batch-aggregator';
8
+ import {ColumnarTableBatchAggregator} from './columnar-table-batch-aggregator';
7
9
 
8
10
  // TODO define interface instead
9
11
  type TableBatchBuilderOptions = {
@@ -30,7 +32,7 @@ const DEFAULT_OPTIONS: Required<TableBatchBuilderOptions> = {
30
32
  const ERR_MESSAGE = 'TableBatchBuilder';
31
33
 
32
34
  /** Incrementally builds batches from a stream of rows */
33
- export default class TableBatchBuilder {
35
+ export class TableBatchBuilder {
34
36
  schema: Schema;
35
37
  options: Required<TableBatchBuilderOptions>;
36
38