@loaders.gl/arrow 4.0.3 → 4.0.5

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 (111) hide show
  1. package/dist/arrow-loader.d.ts +6 -3
  2. package/dist/arrow-loader.d.ts.map +1 -1
  3. package/dist/arrow-loader.js +9 -1
  4. package/dist/arrow-loader.js.map +1 -1
  5. package/dist/arrow-worker.js +37 -537
  6. package/dist/dist.dev.js +1573 -231
  7. package/dist/geoarrow/convert-geoarrow-to-binary-geometry.d.ts +31 -1
  8. package/dist/geoarrow/convert-geoarrow-to-binary-geometry.d.ts.map +1 -1
  9. package/dist/geoarrow/convert-geoarrow-to-binary-geometry.js +123 -13
  10. package/dist/geoarrow/convert-geoarrow-to-binary-geometry.js.map +1 -1
  11. package/dist/geoarrow/convert-geoarrow-to-geojson.d.ts +2 -1
  12. package/dist/geoarrow/convert-geoarrow-to-geojson.d.ts.map +1 -1
  13. package/dist/geoarrow/convert-geoarrow-to-geojson.js +4 -0
  14. package/dist/geoarrow/convert-geoarrow-to-geojson.js.map +1 -1
  15. package/dist/geoarrow-loader.d.ts +19 -0
  16. package/dist/geoarrow-loader.d.ts.map +1 -0
  17. package/dist/geoarrow-loader.js +24 -0
  18. package/dist/geoarrow-loader.js.map +1 -0
  19. package/dist/geoarrow-writer.d.ts +9 -0
  20. package/dist/geoarrow-writer.d.ts.map +1 -0
  21. package/dist/geoarrow-writer.js +19 -0
  22. package/dist/geoarrow-writer.js.map +1 -0
  23. package/dist/index.cjs +472 -275
  24. package/dist/index.d.ts +9 -12
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +7 -13
  27. package/dist/index.js.map +1 -1
  28. package/dist/lib/arrow-table-batch.d.ts.map +1 -1
  29. package/dist/lib/arrow-table-batch.js.map +1 -1
  30. package/dist/lib/encode-arrow.d.ts.map +1 -1
  31. package/dist/lib/encode-arrow.js.map +1 -1
  32. package/dist/lib/encode-geoarrow.d.ts +15 -0
  33. package/dist/lib/encode-geoarrow.d.ts.map +1 -0
  34. package/dist/lib/encode-geoarrow.js +22 -0
  35. package/dist/lib/encode-geoarrow.js.map +1 -0
  36. package/dist/{lib → parsers}/parse-arrow-in-batches.d.ts +1 -1
  37. package/dist/parsers/parse-arrow-in-batches.d.ts.map +1 -0
  38. package/dist/parsers/parse-arrow-in-batches.js.map +1 -0
  39. package/dist/parsers/parse-arrow-sync.d.ts +6 -0
  40. package/dist/parsers/parse-arrow-sync.d.ts.map +1 -0
  41. package/dist/parsers/parse-arrow-sync.js +26 -0
  42. package/dist/parsers/parse-arrow-sync.js.map +1 -0
  43. package/dist/parsers/parse-geoarrow-in-batches.d.ts +6 -0
  44. package/dist/parsers/parse-geoarrow-in-batches.d.ts.map +1 -0
  45. package/dist/parsers/parse-geoarrow-in-batches.js +5 -0
  46. package/dist/parsers/parse-geoarrow-in-batches.js.map +1 -0
  47. package/dist/parsers/parse-geoarrow-sync.d.ts +6 -0
  48. package/dist/parsers/parse-geoarrow-sync.d.ts.map +1 -0
  49. package/dist/parsers/parse-geoarrow-sync.js +14 -0
  50. package/dist/parsers/parse-geoarrow-sync.js.map +1 -0
  51. package/dist/tables/convert-arrow-to-columnar-table.d.ts +8 -0
  52. package/dist/tables/convert-arrow-to-columnar-table.d.ts.map +1 -0
  53. package/dist/tables/convert-arrow-to-columnar-table.js +14 -0
  54. package/dist/tables/convert-arrow-to-columnar-table.js.map +1 -0
  55. package/dist/tables/convert-arrow-to-geojson-table.d.ts +16 -0
  56. package/dist/tables/convert-arrow-to-geojson-table.d.ts.map +1 -0
  57. package/dist/tables/convert-arrow-to-geojson-table.js +33 -0
  58. package/dist/tables/convert-arrow-to-geojson-table.js.map +1 -0
  59. package/dist/tables/convert-columnar-to-row-table.d.ts +7 -0
  60. package/dist/tables/convert-columnar-to-row-table.d.ts.map +1 -0
  61. package/dist/tables/convert-columnar-to-row-table.js +18 -0
  62. package/dist/tables/convert-columnar-to-row-table.js.map +1 -0
  63. package/dist/triangulate-on-worker.d.ts +36 -0
  64. package/dist/triangulate-on-worker.d.ts.map +1 -0
  65. package/dist/triangulate-on-worker.js +14 -0
  66. package/dist/triangulate-on-worker.js.map +1 -0
  67. package/dist/triangulation-worker.js +880 -0
  68. package/dist/workers/arrow-worker.js +1 -1
  69. package/dist/workers/arrow-worker.js.map +1 -1
  70. package/dist/workers/triangulation-worker-node.d.ts +2 -0
  71. package/dist/workers/triangulation-worker-node.d.ts.map +1 -0
  72. package/dist/workers/triangulation-worker-node.js +2 -0
  73. package/dist/workers/triangulation-worker-node.js.map +1 -0
  74. package/dist/workers/triangulation-worker.d.ts +2 -0
  75. package/dist/workers/triangulation-worker.d.ts.map +1 -0
  76. package/dist/workers/triangulation-worker.js +24 -0
  77. package/dist/workers/triangulation-worker.js.map +1 -0
  78. package/package.json +9 -7
  79. package/src/arrow-loader.ts +25 -3
  80. package/src/geoarrow/convert-geoarrow-to-binary-geometry.ts +209 -20
  81. package/src/geoarrow/convert-geoarrow-to-geojson.ts +6 -2
  82. package/src/geoarrow-loader.ts +55 -0
  83. package/src/geoarrow-writer.ts +41 -0
  84. package/src/index.ts +30 -36
  85. package/src/lib/arrow-table-batch.ts +3 -0
  86. package/src/lib/encode-arrow.ts +3 -0
  87. package/src/lib/encode-geoarrow.ts +45 -0
  88. package/src/{lib → parsers}/parse-arrow-in-batches.ts +4 -2
  89. package/src/parsers/parse-arrow-sync.ts +38 -0
  90. package/src/parsers/parse-geoarrow-in-batches.ts +15 -0
  91. package/src/parsers/parse-geoarrow-sync.ts +22 -0
  92. package/src/tables/convert-arrow-to-columnar-table.ts +29 -0
  93. package/src/tables/convert-arrow-to-geojson-table.ts +54 -0
  94. package/src/tables/convert-columnar-to-row-table.ts +29 -0
  95. package/src/triangulate-on-worker.ts +47 -0
  96. package/src/workers/arrow-worker.ts +1 -1
  97. package/src/workers/triangulation-worker-node.ts +4 -0
  98. package/src/workers/triangulation-worker.ts +39 -0
  99. package/dist/lib/parse-arrow-in-batches.d.ts.map +0 -1
  100. package/dist/lib/parse-arrow-in-batches.js.map +0 -1
  101. package/dist/lib/parse-arrow-sync.d.ts +0 -5
  102. package/dist/lib/parse-arrow-sync.d.ts.map +0 -1
  103. package/dist/lib/parse-arrow-sync.js +0 -21
  104. package/dist/lib/parse-arrow-sync.js.map +0 -1
  105. package/dist/tables/convert-arrow-to-table.d.ts +0 -21
  106. package/dist/tables/convert-arrow-to-table.d.ts.map +0 -1
  107. package/dist/tables/convert-arrow-to-table.js +0 -37
  108. package/dist/tables/convert-arrow-to-table.js.map +0 -1
  109. package/src/lib/parse-arrow-sync.ts +0 -35
  110. package/src/tables/convert-arrow-to-table.ts +0 -68
  111. /package/dist/{lib → parsers}/parse-arrow-in-batches.js +0 -0
@@ -1,68 +0,0 @@
1
- // loaders.gl, MIT license
2
- // Copyright (c) vis.gl contributors
3
-
4
- import type {ColumnarTable, ObjectRowTable} from '@loaders.gl/schema';
5
- import type * as arrow from 'apache-arrow';
6
- import type {ArrowTable} from '../lib/arrow-table';
7
-
8
- /**
9
- * Wrap an apache arrow table in a loaders.gl table wrapper.
10
- * From this additional conversions are available.
11
- * @param arrowTable
12
- * @returns
13
- */
14
- export function convertApacheArrowToArrowTable(arrowTable: arrow.Table): ArrowTable {
15
- return {
16
- shape: 'arrow-table',
17
- data: arrowTable
18
- };
19
- }
20
-
21
- /**
22
- * Convert an Apache Arrow table to a ColumnarTable
23
- * @note Currently does not convert schema
24
- */
25
- export function convertArrowToColumnarTable(table: ArrowTable): ColumnarTable {
26
- // TODO - avoid calling `getColumn` on columns we are not interested in?
27
- // Add options object?
28
-
29
- const arrowTable = table.data;
30
- const columnarTable = {};
31
-
32
- for (const field of arrowTable.schema.fields) {
33
- // This (is intended to) coalesce all record batches into a single typed array
34
- const arrowColumn = arrowTable.getChild(field.name);
35
- const values = arrowColumn?.toArray();
36
- columnarTable[field.name] = values;
37
- }
38
-
39
- return {
40
- shape: 'columnar-table',
41
- data: columnarTable
42
- };
43
- }
44
-
45
- /**
46
- *
47
- * @note - should be part of schema module
48
- */
49
- export function convertColumnarToRowFormatTable(columnarTable: ColumnarTable): ObjectRowTable {
50
- const tableKeys = Object.keys(columnarTable);
51
- const tableRowsCount = columnarTable[tableKeys[0]].length;
52
-
53
- const rowFormatTable: {}[] = [];
54
-
55
- for (let index = 0; index < tableRowsCount; index++) {
56
- const tableItem = {};
57
- for (let keyIndex = 0; keyIndex < tableKeys.length; keyIndex++) {
58
- const fieldName = tableKeys[keyIndex];
59
- tableItem[fieldName] = columnarTable[fieldName][index];
60
- }
61
- rowFormatTable.push(tableItem);
62
- }
63
-
64
- return {
65
- shape: 'object-row-table',
66
- data: rowFormatTable
67
- };
68
- }
File without changes