@loaders.gl/schema 4.0.0-beta.1 → 4.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/dist/dist.dev.js +1745 -0
  2. package/dist/index.cjs +1692 -0
  3. package/dist/index.d.ts +0 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +16 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/{esm/lib → lib}/mesh/convert-mesh.js +1 -1
  8. package/dist/lib/mesh/convert-mesh.js.map +1 -0
  9. package/dist/{esm/lib → lib}/mesh/deduce-mesh-schema.js +1 -1
  10. package/dist/lib/mesh/deduce-mesh-schema.js.map +1 -0
  11. package/dist/lib/mesh/mesh-to-arrow-table.js.map +1 -0
  12. package/dist/lib/mesh/mesh-utils.js.map +1 -0
  13. package/dist/{esm/lib → lib}/table/arrow-api/arrow-like-field.js +5 -6
  14. package/dist/lib/table/arrow-api/arrow-like-field.js.map +1 -0
  15. package/dist/{esm/lib → lib}/table/arrow-api/arrow-like-schema.js +3 -4
  16. package/dist/lib/table/arrow-api/arrow-like-schema.js.map +1 -0
  17. package/dist/{esm/lib → lib}/table/arrow-api/arrow-like-table.js +7 -8
  18. package/dist/lib/table/arrow-api/arrow-like-table.js.map +1 -0
  19. package/dist/lib/table/arrow-api/arrow-like-type.d.ts +1 -1
  20. package/dist/lib/table/arrow-api/arrow-like-type.d.ts.map +1 -1
  21. package/dist/{esm/lib → lib}/table/arrow-api/arrow-like-type.js +22 -23
  22. package/dist/lib/table/arrow-api/arrow-like-type.js.map +1 -0
  23. package/dist/lib/table/arrow-api/enum.js.map +1 -0
  24. package/dist/{esm/lib → lib}/table/arrow-api/get-type-info.js +1 -1
  25. package/dist/lib/table/arrow-api/get-type-info.js.map +1 -0
  26. package/dist/lib/table/arrow-api/index.js +5 -0
  27. package/dist/lib/table/arrow-api/index.js.map +1 -0
  28. package/dist/{esm/lib → lib}/table/batches/base-table-batch-aggregator.js +6 -7
  29. package/dist/lib/table/batches/base-table-batch-aggregator.js.map +1 -0
  30. package/dist/{esm/lib → lib}/table/batches/columnar-table-batch-aggregator.js +4 -5
  31. package/dist/lib/table/batches/columnar-table-batch-aggregator.js.map +1 -0
  32. package/dist/{esm/lib → lib}/table/batches/row-table-batch-aggregator.js +8 -9
  33. package/dist/lib/table/batches/row-table-batch-aggregator.js.map +1 -0
  34. package/dist/lib/table/batches/table-batch-aggregator.js.map +1 -0
  35. package/dist/{esm/lib → lib}/table/batches/table-batch-builder.js +14 -15
  36. package/dist/lib/table/batches/table-batch-builder.js.map +1 -0
  37. package/dist/{esm/lib → lib}/table/simple-table/convert-table.js +3 -3
  38. package/dist/lib/table/simple-table/convert-table.js.map +1 -0
  39. package/dist/lib/table/simple-table/data-type.js.map +1 -0
  40. package/dist/{esm/lib → lib}/table/simple-table/make-table.js +1 -1
  41. package/dist/lib/table/simple-table/make-table.js.map +1 -0
  42. package/dist/lib/table/simple-table/row-utils.js.map +1 -0
  43. package/dist/{esm/lib → lib}/table/simple-table/table-accessors.js +2 -2
  44. package/dist/lib/table/simple-table/table-accessors.js.map +1 -0
  45. package/dist/{esm/lib → lib}/table/simple-table/table-column.js +1 -1
  46. package/dist/lib/table/simple-table/table-column.js.map +1 -0
  47. package/dist/{esm/lib → lib}/table/simple-table/table-schema.js +1 -1
  48. package/dist/lib/table/simple-table/table-schema.js.map +1 -0
  49. package/dist/lib/utils/assert.js.map +1 -0
  50. package/dist/{esm/lib → lib}/utils/async-queue.js +3 -4
  51. package/dist/lib/utils/async-queue.js.map +1 -0
  52. package/dist/types/batch.d.ts +3 -2
  53. package/dist/types/batch.d.ts.map +1 -1
  54. package/dist/types/batch.js.map +1 -0
  55. package/dist/types/binary-geometries.js.map +1 -0
  56. package/dist/types/category-gis.js.map +1 -0
  57. package/dist/types/category-image.js.map +1 -0
  58. package/dist/types/category-mesh.js.map +1 -0
  59. package/dist/types/category-table.js.map +1 -0
  60. package/dist/types/category-texture.js.map +1 -0
  61. package/dist/types/flat-geometries.js.map +1 -0
  62. package/dist/types/schema.js.map +1 -0
  63. package/dist/types/types.d.ts +1 -1
  64. package/dist/types/types.d.ts.map +1 -1
  65. package/dist/types/types.js.map +1 -0
  66. package/package.json +14 -6
  67. package/src/index.ts +0 -1
  68. package/src/lib/table/arrow-api/arrow-like-type.ts +0 -2
  69. package/src/types/batch.ts +4 -2
  70. package/src/types/types.ts +0 -2
  71. package/dist/bundle.d.ts +0 -2
  72. package/dist/bundle.d.ts.map +0 -1
  73. package/dist/dist.min.js +0 -13204
  74. package/dist/es5/bundle.js +0 -6
  75. package/dist/es5/bundle.js.map +0 -1
  76. package/dist/es5/index.js +0 -413
  77. package/dist/es5/index.js.map +0 -1
  78. package/dist/es5/lib/mesh/convert-mesh.js +0 -34
  79. package/dist/es5/lib/mesh/convert-mesh.js.map +0 -1
  80. package/dist/es5/lib/mesh/deduce-mesh-schema.js +0 -56
  81. package/dist/es5/lib/mesh/deduce-mesh-schema.js.map +0 -1
  82. package/dist/es5/lib/mesh/mesh-to-arrow-table.js +0 -2
  83. package/dist/es5/lib/mesh/mesh-to-arrow-table.js.map +0 -1
  84. package/dist/es5/lib/mesh/mesh-utils.js +0 -40
  85. package/dist/es5/lib/mesh/mesh-utils.js.map +0 -1
  86. package/dist/es5/lib/table/arrow/arrow-type-utils.js +0 -30
  87. package/dist/es5/lib/table/arrow/arrow-type-utils.js.map +0 -1
  88. package/dist/es5/lib/table/arrow/convert-schema-arrow.js +0 -179
  89. package/dist/es5/lib/table/arrow/convert-schema-arrow.js.map +0 -1
  90. package/dist/es5/lib/table/arrow/convert-table-to-arrow.js +0 -2
  91. package/dist/es5/lib/table/arrow/convert-table-to-arrow.js.map +0 -1
  92. package/dist/es5/lib/table/arrow-api/arrow-like-field.js +0 -49
  93. package/dist/es5/lib/table/arrow-api/arrow-like-field.js.map +0 -1
  94. package/dist/es5/lib/table/arrow-api/arrow-like-schema.js +0 -118
  95. package/dist/es5/lib/table/arrow-api/arrow-like-schema.js.map +0 -1
  96. package/dist/es5/lib/table/arrow-api/arrow-like-table.js +0 -81
  97. package/dist/es5/lib/table/arrow-api/arrow-like-table.js.map +0 -1
  98. package/dist/es5/lib/table/arrow-api/arrow-like-type.js +0 -740
  99. package/dist/es5/lib/table/arrow-api/arrow-like-type.js.map +0 -1
  100. package/dist/es5/lib/table/arrow-api/enum.js +0 -55
  101. package/dist/es5/lib/table/arrow-api/enum.js.map +0 -1
  102. package/dist/es5/lib/table/arrow-api/get-type-info.js +0 -27
  103. package/dist/es5/lib/table/arrow-api/get-type-info.js.map +0 -1
  104. package/dist/es5/lib/table/arrow-api/index.js +0 -44
  105. package/dist/es5/lib/table/arrow-api/index.js.map +0 -1
  106. package/dist/es5/lib/table/batches/base-table-batch-aggregator.js +0 -78
  107. package/dist/es5/lib/table/batches/base-table-batch-aggregator.js.map +0 -1
  108. package/dist/es5/lib/table/batches/columnar-table-batch-aggregator.js +0 -106
  109. package/dist/es5/lib/table/batches/columnar-table-batch-aggregator.js.map +0 -1
  110. package/dist/es5/lib/table/batches/row-table-batch-aggregator.js +0 -96
  111. package/dist/es5/lib/table/batches/row-table-batch-aggregator.js.map +0 -1
  112. package/dist/es5/lib/table/batches/table-batch-aggregator.js +0 -2
  113. package/dist/es5/lib/table/batches/table-batch-aggregator.js.map +0 -1
  114. package/dist/es5/lib/table/batches/table-batch-builder.js +0 -173
  115. package/dist/es5/lib/table/batches/table-batch-builder.js.map +0 -1
  116. package/dist/es5/lib/table/simple-table/convert-table.js +0 -106
  117. package/dist/es5/lib/table/simple-table/convert-table.js.map +0 -1
  118. package/dist/es5/lib/table/simple-table/data-type.js +0 -94
  119. package/dist/es5/lib/table/simple-table/data-type.js.map +0 -1
  120. package/dist/es5/lib/table/simple-table/make-table.js +0 -60
  121. package/dist/es5/lib/table/simple-table/make-table.js.map +0 -1
  122. package/dist/es5/lib/table/simple-table/row-utils.js +0 -34
  123. package/dist/es5/lib/table/simple-table/row-utils.js.map +0 -1
  124. package/dist/es5/lib/table/simple-table/table-accessors.js +0 -370
  125. package/dist/es5/lib/table/simple-table/table-accessors.js.map +0 -1
  126. package/dist/es5/lib/table/simple-table/table-column.js +0 -12
  127. package/dist/es5/lib/table/simple-table/table-column.js.map +0 -1
  128. package/dist/es5/lib/table/simple-table/table-schema.js +0 -85
  129. package/dist/es5/lib/table/simple-table/table-schema.js.map +0 -1
  130. package/dist/es5/lib/utils/assert.js +0 -12
  131. package/dist/es5/lib/utils/assert.js.map +0 -1
  132. package/dist/es5/lib/utils/async-queue.js +0 -169
  133. package/dist/es5/lib/utils/async-queue.js.map +0 -1
  134. package/dist/es5/types/batch.js +0 -2
  135. package/dist/es5/types/batch.js.map +0 -1
  136. package/dist/es5/types/binary-geometries.js +0 -2
  137. package/dist/es5/types/binary-geometries.js.map +0 -1
  138. package/dist/es5/types/category-gis.js +0 -2
  139. package/dist/es5/types/category-gis.js.map +0 -1
  140. package/dist/es5/types/category-image.js +0 -2
  141. package/dist/es5/types/category-image.js.map +0 -1
  142. package/dist/es5/types/category-mesh.js +0 -2
  143. package/dist/es5/types/category-mesh.js.map +0 -1
  144. package/dist/es5/types/category-table.js +0 -2
  145. package/dist/es5/types/category-table.js.map +0 -1
  146. package/dist/es5/types/category-texture.js +0 -2
  147. package/dist/es5/types/category-texture.js.map +0 -1
  148. package/dist/es5/types/flat-geometries.js +0 -2
  149. package/dist/es5/types/flat-geometries.js.map +0 -1
  150. package/dist/es5/types/schema.js +0 -2
  151. package/dist/es5/types/schema.js.map +0 -1
  152. package/dist/es5/types/types.js +0 -2
  153. package/dist/es5/types/types.js.map +0 -1
  154. package/dist/esm/bundle.js +0 -4
  155. package/dist/esm/bundle.js.map +0 -1
  156. package/dist/esm/index.js +0 -17
  157. package/dist/esm/index.js.map +0 -1
  158. package/dist/esm/lib/mesh/convert-mesh.js.map +0 -1
  159. package/dist/esm/lib/mesh/deduce-mesh-schema.js.map +0 -1
  160. package/dist/esm/lib/mesh/mesh-to-arrow-table.js.map +0 -1
  161. package/dist/esm/lib/mesh/mesh-utils.js.map +0 -1
  162. package/dist/esm/lib/table/arrow/arrow-type-utils.js +0 -24
  163. package/dist/esm/lib/table/arrow/arrow-type-utils.js.map +0 -1
  164. package/dist/esm/lib/table/arrow/convert-schema-arrow.js +0 -158
  165. package/dist/esm/lib/table/arrow/convert-schema-arrow.js.map +0 -1
  166. package/dist/esm/lib/table/arrow/convert-table-to-arrow.js +0 -2
  167. package/dist/esm/lib/table/arrow/convert-table-to-arrow.js.map +0 -1
  168. package/dist/esm/lib/table/arrow-api/arrow-like-field.js.map +0 -1
  169. package/dist/esm/lib/table/arrow-api/arrow-like-schema.js.map +0 -1
  170. package/dist/esm/lib/table/arrow-api/arrow-like-table.js.map +0 -1
  171. package/dist/esm/lib/table/arrow-api/arrow-like-type.js.map +0 -1
  172. package/dist/esm/lib/table/arrow-api/enum.js.map +0 -1
  173. package/dist/esm/lib/table/arrow-api/get-type-info.js.map +0 -1
  174. package/dist/esm/lib/table/arrow-api/index.js +0 -5
  175. package/dist/esm/lib/table/arrow-api/index.js.map +0 -1
  176. package/dist/esm/lib/table/batches/base-table-batch-aggregator.js.map +0 -1
  177. package/dist/esm/lib/table/batches/columnar-table-batch-aggregator.js.map +0 -1
  178. package/dist/esm/lib/table/batches/row-table-batch-aggregator.js.map +0 -1
  179. package/dist/esm/lib/table/batches/table-batch-aggregator.js.map +0 -1
  180. package/dist/esm/lib/table/batches/table-batch-builder.js.map +0 -1
  181. package/dist/esm/lib/table/simple-table/convert-table.js.map +0 -1
  182. package/dist/esm/lib/table/simple-table/data-type.js.map +0 -1
  183. package/dist/esm/lib/table/simple-table/make-table.js.map +0 -1
  184. package/dist/esm/lib/table/simple-table/row-utils.js.map +0 -1
  185. package/dist/esm/lib/table/simple-table/table-accessors.js.map +0 -1
  186. package/dist/esm/lib/table/simple-table/table-column.js.map +0 -1
  187. package/dist/esm/lib/table/simple-table/table-schema.js.map +0 -1
  188. package/dist/esm/lib/utils/assert.js.map +0 -1
  189. package/dist/esm/lib/utils/async-queue.js.map +0 -1
  190. package/dist/esm/types/batch.js.map +0 -1
  191. package/dist/esm/types/binary-geometries.js.map +0 -1
  192. package/dist/esm/types/category-gis.js.map +0 -1
  193. package/dist/esm/types/category-image.js.map +0 -1
  194. package/dist/esm/types/category-mesh.js.map +0 -1
  195. package/dist/esm/types/category-table.js.map +0 -1
  196. package/dist/esm/types/category-texture.js.map +0 -1
  197. package/dist/esm/types/flat-geometries.js.map +0 -1
  198. package/dist/esm/types/schema.js.map +0 -1
  199. package/dist/esm/types/types.js.map +0 -1
  200. package/dist/lib/table/arrow/arrow-type-utils.d.ts +0 -4
  201. package/dist/lib/table/arrow/arrow-type-utils.d.ts.map +0 -1
  202. package/dist/lib/table/arrow/convert-schema-arrow.d.ts +0 -13
  203. package/dist/lib/table/arrow/convert-schema-arrow.d.ts.map +0 -1
  204. package/dist/lib/table/arrow/convert-table-to-arrow.d.ts +0 -42
  205. package/dist/lib/table/arrow/convert-table-to-arrow.d.ts.map +0 -1
  206. package/src/bundle.ts +0 -4
  207. package/src/lib/table/arrow/arrow-type-utils.ts +0 -71
  208. package/src/lib/table/arrow/convert-schema-arrow.ts +0 -232
  209. package/src/lib/table/arrow/convert-table-to-arrow.ts +0 -59
  210. /package/dist/{esm/lib → lib}/mesh/mesh-to-arrow-table.js +0 -0
  211. /package/dist/{esm/lib → lib}/mesh/mesh-utils.js +0 -0
  212. /package/dist/{esm/lib → lib}/table/arrow-api/enum.js +0 -0
  213. /package/dist/{esm/lib → lib}/table/batches/table-batch-aggregator.js +0 -0
  214. /package/dist/{esm/lib → lib}/table/simple-table/data-type.js +0 -0
  215. /package/dist/{esm/lib → lib}/table/simple-table/row-utils.js +0 -0
  216. /package/dist/{esm/lib → lib}/utils/assert.js +0 -0
  217. /package/dist/{esm/types → types}/batch.js +0 -0
  218. /package/dist/{esm/types → types}/binary-geometries.js +0 -0
  219. /package/dist/{esm/types → types}/category-gis.js +0 -0
  220. /package/dist/{esm/types → types}/category-image.js +0 -0
  221. /package/dist/{esm/types → types}/category-mesh.js +0 -0
  222. /package/dist/{esm/types → types}/category-table.js +0 -0
  223. /package/dist/{esm/types → types}/category-texture.js +0 -0
  224. /package/dist/{esm/types → types}/flat-geometries.js +0 -0
  225. /package/dist/{esm/types → types}/schema.js +0 -0
  226. /package/dist/{esm/types → types}/types.js +0 -0
@@ -1,370 +0,0 @@
1
- "use strict";
2
-
3
- var _regeneratorRuntime2 = require("@babel/runtime/regenerator");
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.getTableCell = getTableCell;
9
- exports.getTableCellAt = getTableCellAt;
10
- exports.getTableColumnIndex = getTableColumnIndex;
11
- exports.getTableColumnName = getTableColumnName;
12
- exports.getTableLength = getTableLength;
13
- exports.getTableNumCols = getTableNumCols;
14
- exports.getTableRowAsArray = getTableRowAsArray;
15
- exports.getTableRowAsObject = getTableRowAsObject;
16
- exports.getTableRowShape = getTableRowShape;
17
- exports.makeArrayRowIterator = makeArrayRowIterator;
18
- exports.makeArrayRowTable = makeArrayRowTable;
19
- exports.makeColumnarTable = makeColumnarTable;
20
- exports.makeObjectRowIterator = makeObjectRowIterator;
21
- exports.makeObjectRowTable = makeObjectRowTable;
22
- exports.makeRowIterator = makeRowIterator;
23
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
24
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
25
- var _marked = _regeneratorRuntime2.mark(makeRowIterator);
26
- function getTableLength(table) {
27
- switch (table.shape) {
28
- case 'array-row-table':
29
- case 'object-row-table':
30
- return table.data.length;
31
- case 'geojson-table':
32
- return table.features.length;
33
- case 'arrow-table':
34
- var arrowTable = table.data;
35
- return arrowTable.numRows;
36
- case 'columnar-table':
37
- for (var _i = 0, _Object$values = Object.values(table.data); _i < _Object$values.length; _i++) {
38
- var column = _Object$values[_i];
39
- return column.length || 0;
40
- }
41
- return 0;
42
- default:
43
- throw new Error('table');
44
- }
45
- }
46
- function getTableNumCols(table) {
47
- if (table.schema) {
48
- return table.schema.fields.length;
49
- }
50
- if (getTableLength(table) === 0) {
51
- throw new Error('empty table');
52
- }
53
- switch (table.shape) {
54
- case 'array-row-table':
55
- return table.data[0].length;
56
- case 'object-row-table':
57
- return Object.keys(table.data[0]).length;
58
- case 'geojson-table':
59
- return Object.keys(table.features[0]).length;
60
- case 'columnar-table':
61
- return Object.keys(table.data).length;
62
- case 'arrow-table':
63
- var arrowTable = table.data;
64
- return arrowTable.numCols;
65
- default:
66
- throw new Error('table');
67
- }
68
- }
69
- function getTableCell(table, rowIndex, columnName) {
70
- var _arrowTable$getChildA;
71
- switch (table.shape) {
72
- case 'array-row-table':
73
- var columnIndex = getTableColumnIndex(table, columnName);
74
- return table.data[rowIndex][columnIndex];
75
- case 'object-row-table':
76
- return table.data[rowIndex][columnName];
77
- case 'geojson-table':
78
- return table.features[rowIndex][columnName];
79
- case 'columnar-table':
80
- var column = table.data[columnName];
81
- return column[rowIndex];
82
- case 'arrow-table':
83
- var arrowTable = table.data;
84
- var arrowColumnIndex = arrowTable.schema.fields.findIndex(function (field) {
85
- return field.name === columnName;
86
- });
87
- return (_arrowTable$getChildA = arrowTable.getChildAt(arrowColumnIndex)) === null || _arrowTable$getChildA === void 0 ? void 0 : _arrowTable$getChildA.get(rowIndex);
88
- default:
89
- throw new Error('todo');
90
- }
91
- }
92
- function getTableCellAt(table, rowIndex, columnIndex) {
93
- var _arrowTable$getChildA2;
94
- switch (table.shape) {
95
- case 'array-row-table':
96
- return table.data[rowIndex][columnIndex];
97
- case 'object-row-table':
98
- var columnName1 = getTableColumnName(table, columnIndex);
99
- return table.data[rowIndex][columnName1];
100
- case 'geojson-table':
101
- var columnName2 = getTableColumnName(table, columnIndex);
102
- return table.features[rowIndex][columnName2];
103
- case 'columnar-table':
104
- var columnName3 = getTableColumnName(table, columnIndex);
105
- var column = table.data[columnName3];
106
- return column[rowIndex];
107
- case 'arrow-table':
108
- var arrowTable = table.data;
109
- return (_arrowTable$getChildA2 = arrowTable.getChildAt(columnIndex)) === null || _arrowTable$getChildA2 === void 0 ? void 0 : _arrowTable$getChildA2.get(rowIndex);
110
- default:
111
- throw new Error('todo');
112
- }
113
- }
114
- function getTableRowShape(table) {
115
- switch (table.shape) {
116
- case 'array-row-table':
117
- case 'object-row-table':
118
- return table.shape;
119
- case 'geojson-table':
120
- return 'object-row-table';
121
- case 'columnar-table':
122
- default:
123
- throw new Error('Not a row table');
124
- }
125
- }
126
- function getTableColumnIndex(table, columnName) {
127
- var _table$schema;
128
- var columnIndex = (_table$schema = table.schema) === null || _table$schema === void 0 ? void 0 : _table$schema.fields.findIndex(function (field) {
129
- return field.name === columnName;
130
- });
131
- if (columnIndex === undefined) {
132
- throw new Error(columnName);
133
- }
134
- return columnIndex;
135
- }
136
- function getTableColumnName(table, columnIndex) {
137
- var _table$schema2, _table$schema2$fields;
138
- var columnName = (_table$schema2 = table.schema) === null || _table$schema2 === void 0 ? void 0 : (_table$schema2$fields = _table$schema2.fields[columnIndex]) === null || _table$schema2$fields === void 0 ? void 0 : _table$schema2$fields.name;
139
- if (!columnName) {
140
- throw new Error("".concat(columnIndex));
141
- }
142
- return columnName;
143
- }
144
- function getTableRowAsObject(table, rowIndex, target, copy) {
145
- switch (table.shape) {
146
- case 'object-row-table':
147
- return copy ? Object.fromEntries(Object.entries(table.data[rowIndex])) : table.data[rowIndex];
148
- case 'array-row-table':
149
- if (table.schema) {
150
- var _objectRow = target || {};
151
- for (var i = 0; i < table.schema.fields.length; i++) {
152
- _objectRow[table.schema.fields[i].name] = table.data[rowIndex][i];
153
- }
154
- return _objectRow;
155
- }
156
- throw new Error('no schema');
157
- case 'geojson-table':
158
- if (table.schema) {
159
- var _objectRow2 = target || {};
160
- for (var _i2 = 0; _i2 < table.schema.fields.length; _i2++) {
161
- _objectRow2[table.schema.fields[_i2].name] = table.features[rowIndex][_i2];
162
- }
163
- return _objectRow2;
164
- }
165
- throw new Error('no schema');
166
- case 'columnar-table':
167
- if (table.schema) {
168
- var _objectRow3 = target || {};
169
- for (var _i3 = 0; _i3 < table.schema.fields.length; _i3++) {
170
- _objectRow3[table.schema.fields[_i3].name] = table.data[table.schema.fields[_i3].name][rowIndex];
171
- }
172
- return _objectRow3;
173
- } else {
174
- var _objectRow4 = target || {};
175
- for (var _i4 = 0, _Object$entries = Object.entries(table.data); _i4 < _Object$entries.length; _i4++) {
176
- var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i4], 2),
177
- name = _Object$entries$_i[0],
178
- column = _Object$entries$_i[1];
179
- _objectRow4[name] = column[rowIndex];
180
- }
181
- return _objectRow4;
182
- }
183
- case 'arrow-table':
184
- var arrowTable = table.data;
185
- var objectRow = target || {};
186
- var row = arrowTable.get(rowIndex);
187
- var schema = arrowTable.schema;
188
- for (var _i5 = 0; _i5 < schema.fields.length; _i5++) {
189
- objectRow[schema.fields[_i5].name] = row === null || row === void 0 ? void 0 : row[schema.fields[_i5].name];
190
- }
191
- return objectRow;
192
- default:
193
- throw new Error('shape');
194
- }
195
- }
196
- function getTableRowAsArray(table, rowIndex, target, copy) {
197
- switch (table.shape) {
198
- case 'array-row-table':
199
- return copy ? Array.from(table.data[rowIndex]) : table.data[rowIndex];
200
- case 'object-row-table':
201
- if (table.schema) {
202
- var _arrayRow = target || [];
203
- for (var i = 0; i < table.schema.fields.length; i++) {
204
- _arrayRow[i] = table.data[rowIndex][table.schema.fields[i].name];
205
- }
206
- return _arrayRow;
207
- }
208
- return Object.values(table.data[rowIndex]);
209
- case 'geojson-table':
210
- if (table.schema) {
211
- var _arrayRow2 = target || [];
212
- for (var _i6 = 0; _i6 < table.schema.fields.length; _i6++) {
213
- _arrayRow2[_i6] = table.features[rowIndex][table.schema.fields[_i6].name];
214
- }
215
- return _arrayRow2;
216
- }
217
- return Object.values(table.features[rowIndex]);
218
- case 'columnar-table':
219
- if (table.schema) {
220
- var _arrayRow3 = target || [];
221
- for (var _i7 = 0; _i7 < table.schema.fields.length; _i7++) {
222
- _arrayRow3[_i7] = table.data[table.schema.fields[_i7].name][rowIndex];
223
- }
224
- return _arrayRow3;
225
- } else {
226
- var _arrayRow4 = target || [];
227
- var _i8 = 0;
228
- for (var _i9 = 0, _Object$values2 = Object.values(table.data); _i9 < _Object$values2.length; _i9++) {
229
- var column = _Object$values2[_i9];
230
- _arrayRow4[_i8] = column[rowIndex];
231
- _i8++;
232
- }
233
- return _arrayRow4;
234
- }
235
- case 'arrow-table':
236
- var arrowTable = table.data;
237
- var arrayRow = target || [];
238
- var row = arrowTable.get(rowIndex);
239
- var schema = arrowTable.schema;
240
- for (var _i10 = 0; _i10 < schema.fields.length; _i10++) {
241
- arrayRow[_i10] = row === null || row === void 0 ? void 0 : row[schema.fields[_i10].name];
242
- }
243
- return arrayRow;
244
- default:
245
- throw new Error('shape');
246
- }
247
- }
248
- function makeArrayRowTable(table) {
249
- if (table.shape === 'array-row-table') {
250
- return table;
251
- }
252
- var length = getTableLength(table);
253
- var data = new Array(length);
254
- for (var rowIndex = 0; rowIndex < length; rowIndex++) {
255
- data[rowIndex] = getTableRowAsArray(table, rowIndex);
256
- }
257
- return {
258
- shape: 'array-row-table',
259
- schema: table.schema,
260
- data: data
261
- };
262
- }
263
- function makeObjectRowTable(table) {
264
- if (table.shape === 'object-row-table') {
265
- return table;
266
- }
267
- var length = getTableLength(table);
268
- var data = new Array(length);
269
- for (var rowIndex = 0; rowIndex < length; rowIndex++) {
270
- data[rowIndex] = getTableRowAsObject(table, rowIndex);
271
- }
272
- return {
273
- shape: 'object-row-table',
274
- schema: table.schema,
275
- data: data
276
- };
277
- }
278
- function makeColumnarTable(table) {
279
- if (table.shape === 'object-row-table') {
280
- return table;
281
- }
282
- var length = getTableLength(table);
283
- var data = new Array(length);
284
- for (var rowIndex = 0; rowIndex < length; rowIndex++) {
285
- data[rowIndex] = getTableRowAsObject(table, rowIndex);
286
- }
287
- return {
288
- shape: 'object-row-table',
289
- schema: table.schema,
290
- data: data
291
- };
292
- }
293
- function makeRowIterator(table, shape) {
294
- return _regenerator.default.wrap(function makeRowIterator$(_context) {
295
- while (1) switch (_context.prev = _context.next) {
296
- case 0:
297
- _context.t0 = shape;
298
- _context.next = _context.t0 === 'array-row-table' ? 3 : _context.t0 === 'object-row-table' ? 5 : 7;
299
- break;
300
- case 3:
301
- return _context.delegateYield(makeArrayRowIterator(table), "t1", 4);
302
- case 4:
303
- return _context.abrupt("break", 8);
304
- case 5:
305
- return _context.delegateYield(makeObjectRowIterator(table), "t2", 6);
306
- case 6:
307
- return _context.abrupt("break", 8);
308
- case 7:
309
- throw new Error("Unknown row type ".concat(shape));
310
- case 8:
311
- case "end":
312
- return _context.stop();
313
- }
314
- }, _marked);
315
- }
316
- function makeArrayRowIterator(table) {
317
- var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
318
- return _regenerator.default.mark(function _callee() {
319
- var length, rowIndex;
320
- return _regenerator.default.wrap(function _callee$(_context2) {
321
- while (1) switch (_context2.prev = _context2.next) {
322
- case 0:
323
- length = getTableLength(table);
324
- rowIndex = 0;
325
- case 2:
326
- if (!(rowIndex < length)) {
327
- _context2.next = 8;
328
- break;
329
- }
330
- _context2.next = 5;
331
- return getTableRowAsArray(table, rowIndex, target);
332
- case 5:
333
- rowIndex++;
334
- _context2.next = 2;
335
- break;
336
- case 8:
337
- case "end":
338
- return _context2.stop();
339
- }
340
- }, _callee);
341
- })();
342
- }
343
- function makeObjectRowIterator(table) {
344
- var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
345
- return _regenerator.default.mark(function _callee2() {
346
- var length, rowIndex;
347
- return _regenerator.default.wrap(function _callee2$(_context3) {
348
- while (1) switch (_context3.prev = _context3.next) {
349
- case 0:
350
- length = getTableLength(table);
351
- rowIndex = 0;
352
- case 2:
353
- if (!(rowIndex < length)) {
354
- _context3.next = 8;
355
- break;
356
- }
357
- _context3.next = 5;
358
- return getTableRowAsObject(table, rowIndex, target);
359
- case 5:
360
- rowIndex++;
361
- _context3.next = 2;
362
- break;
363
- case 8:
364
- case "end":
365
- return _context3.stop();
366
- }
367
- }, _callee2);
368
- })();
369
- }
370
- //# sourceMappingURL=table-accessors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-accessors.js","names":["makeRowIterator","getTableLength","table","shape","data","length","features","arrowTable","numRows","_i","_Object$values","Object","values","column","Error","getTableNumCols","schema","fields","keys","numCols","getTableCell","rowIndex","columnName","_arrowTable$getChildA","columnIndex","getTableColumnIndex","arrowColumnIndex","findIndex","field","name","getChildAt","get","getTableCellAt","_arrowTable$getChildA2","columnName1","getTableColumnName","columnName2","columnName3","getTableRowShape","_table$schema","undefined","_table$schema2","_table$schema2$fields","concat","getTableRowAsObject","target","copy","fromEntries","entries","objectRow","i","_i4","_Object$entries","_Object$entries$_i","_slicedToArray2","default","row","getTableRowAsArray","Array","from","arrayRow","_i9","_Object$values2","makeArrayRowTable","makeObjectRowTable","makeColumnarTable","_regenerator","wrap","makeRowIterator$","_context","prev","next","t0","delegateYield","makeArrayRowIterator","abrupt","makeObjectRowIterator","stop","_marked","arguments","mark","_callee","_callee$","_context2","_callee2","_callee2$","_context3"],"sources":["../../../../../src/lib/table/simple-table/table-accessors.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n/* eslint-disable no-else-return */\n\nimport {Table, ArrayRowTable, ObjectRowTable} from '../../../types/category-table';\n\n/**\n * Returns the length of the table (i.e. the number of rows)\n */\nexport function getTableLength(table: Table): number {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return table.data.length;\n\n case 'geojson-table':\n return table.features.length;\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.numRows;\n\n case 'columnar-table':\n for (const column of Object.values(table.data)) {\n return column.length || 0;\n }\n return 0;\n default:\n throw new Error('table');\n }\n}\n\n/**\n * Returns the number of columns in the table\n * @throws Fails to deduce number of columns if the table has no schema and is empty\n */\nexport function getTableNumCols(table: Table): number {\n if (table.schema) {\n return table.schema.fields.length;\n }\n if (getTableLength(table) === 0) {\n throw new Error('empty table');\n }\n switch (table.shape) {\n case 'array-row-table':\n return table.data[0].length;\n case 'object-row-table':\n return Object.keys(table.data[0]).length;\n case 'geojson-table':\n return Object.keys(table.features[0]).length;\n case 'columnar-table':\n return Object.keys(table.data).length;\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.numCols;\n default:\n throw new Error('table');\n }\n}\n\n/** Get a table cell value at row index and column name */\nexport function getTableCell(table: Table, rowIndex: number, columnName: string): unknown {\n switch (table.shape) {\n case 'array-row-table':\n const columnIndex = getTableColumnIndex(table, columnName);\n return table.data[rowIndex][columnIndex];\n\n case 'object-row-table':\n return table.data[rowIndex][columnName];\n\n case 'geojson-table':\n return table.features[rowIndex][columnName];\n\n case 'columnar-table':\n const column = table.data[columnName];\n return column[rowIndex];\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const arrowColumnIndex = arrowTable.schema.fields.findIndex(\n (field) => field.name === columnName\n );\n return arrowTable.getChildAt(arrowColumnIndex)?.get(rowIndex);\n\n default:\n throw new Error('todo');\n }\n}\n\n/** Get a table cell value at row index and column name */\nexport function getTableCellAt(table: Table, rowIndex: number, columnIndex: number): unknown {\n switch (table.shape) {\n case 'array-row-table':\n return table.data[rowIndex][columnIndex];\n\n case 'object-row-table':\n const columnName1 = getTableColumnName(table, columnIndex);\n return table.data[rowIndex][columnName1];\n\n case 'geojson-table':\n const columnName2 = getTableColumnName(table, columnIndex);\n return table.features[rowIndex][columnName2];\n\n case 'columnar-table':\n const columnName3 = getTableColumnName(table, columnIndex);\n const column = table.data[columnName3];\n return column[rowIndex];\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n return arrowTable.getChildAt(columnIndex)?.get(rowIndex);\n\n default:\n throw new Error('todo');\n }\n}\n\n/** Deduce the table row shape */\nexport function getTableRowShape(table: Table): 'array-row-table' | 'object-row-table' {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return table.shape;\n\n case 'geojson-table':\n // TODO - this is not correct, geojson-table is not a row table\n return 'object-row-table';\n\n case 'columnar-table':\n default:\n throw new Error('Not a row table');\n }\n}\n\n/** Get the index of a named table column. Requires the table to have a schema */\nexport function getTableColumnIndex(table: Table, columnName: string): number {\n const columnIndex = table.schema?.fields.findIndex((field) => field.name === columnName);\n if (columnIndex === undefined) {\n throw new Error(columnName);\n }\n return columnIndex;\n}\n\n/** Get the name of a table column by index. Requires the table to have a schema */\nexport function getTableColumnName(table: Table, columnIndex: number): string {\n const columnName = table.schema?.fields[columnIndex]?.name;\n if (!columnName) {\n throw new Error(`${columnIndex}`);\n }\n return columnName;\n}\n\n/**\n * Returns one row of the table in object format.\n * @param target Optional parameter will be used if needed to store the row. Can be reused between calls to improve performance\n * @returns an array representing the row. May be the original array in the row, a new object, or the target parameter\n */\n// eslint-disable-next-line complexity\nexport function getTableRowAsObject(\n table: Table,\n rowIndex: number,\n target?: {[columnName: string]: unknown},\n copy?: 'copy'\n): {[columnName: string]: unknown} {\n switch (table.shape) {\n case 'object-row-table':\n return copy ? Object.fromEntries(Object.entries(table.data[rowIndex])) : table.data[rowIndex];\n\n case 'array-row-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] = table.data[rowIndex][i];\n }\n return objectRow;\n }\n throw new Error('no schema');\n\n case 'geojson-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n // TODO - should lift properties to top level\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] = table.features[rowIndex][i];\n }\n return objectRow;\n }\n throw new Error('no schema');\n\n case 'columnar-table':\n if (table.schema) {\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (let i = 0; i < table.schema.fields.length; i++) {\n objectRow[table.schema.fields[i].name] =\n table.data[table.schema.fields[i].name][rowIndex];\n }\n return objectRow;\n } else {\n // eslint-disable-line no-else-return\n const objectRow: {[columnName: string]: unknown} = target || {};\n for (const [name, column] of Object.entries(table.data)) {\n objectRow[name] = column[rowIndex];\n }\n return objectRow;\n }\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const objectRow: {[columnName: string]: unknown} = target || {};\n const row = arrowTable.get(rowIndex);\n const schema = arrowTable.schema;\n for (let i = 0; i < schema.fields.length; i++) {\n objectRow[schema.fields[i].name] = row?.[schema.fields[i].name];\n }\n return objectRow;\n\n default:\n throw new Error('shape');\n }\n}\n\n/**\n * Returns one row of the table in array format.\n * @param target Optional parameter will be used if needed to store the row. Can be reused between calls to improve performance.\n * @returns an array representing the row. May be the original array in the row, a new object, or the target parameter\n */\n// eslint-disable-next-line complexity\nexport function getTableRowAsArray(\n table: Table,\n rowIndex: number,\n target?: unknown[],\n copy?: 'copy'\n): unknown[] {\n switch (table.shape) {\n case 'array-row-table':\n return copy ? Array.from(table.data[rowIndex]) : table.data[rowIndex];\n\n case 'object-row-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.data[rowIndex][table.schema.fields[i].name];\n }\n return arrayRow;\n }\n // Warning: just slap on the values, this risks mismatches between rows\n return Object.values(table.data[rowIndex]);\n\n case 'geojson-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n // TODO - should lift properties to top level\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.features[rowIndex][table.schema.fields[i].name];\n }\n return arrayRow;\n }\n // Warning: just slap on the values, this risks mismatches between rows\n return Object.values(table.features[rowIndex]);\n\n case 'columnar-table':\n if (table.schema) {\n const arrayRow: unknown[] = target || [];\n for (let i = 0; i < table.schema.fields.length; i++) {\n arrayRow[i] = table.data[table.schema.fields[i].name][rowIndex];\n }\n return arrayRow;\n } else {\n // eslint-disable-line no-else-return\n const arrayRow: unknown[] = target || [];\n let i = 0;\n for (const column of Object.values(table.data)) {\n arrayRow[i] = column[rowIndex];\n i++;\n }\n return arrayRow;\n }\n\n case 'arrow-table':\n const arrowTable = table.data as any;\n const arrayRow: unknown[] = target || [];\n const row = arrowTable.get(rowIndex);\n const schema = arrowTable.schema;\n for (let i = 0; i < schema.fields.length; i++) {\n arrayRow[i] = row?.[schema.fields[i].name];\n }\n return arrayRow;\n\n default:\n throw new Error('shape');\n }\n}\n\n/** Convert any table into array row format */\nexport function makeArrayRowTable(table: Table): ArrayRowTable {\n if (table.shape === 'array-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<unknown[]>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsArray(table, rowIndex);\n }\n return {\n shape: 'array-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format */\nexport function makeObjectRowTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n\n/** Convert any table into object row format */\nexport function makeColumnarTable(table: Table): ObjectRowTable {\n if (table.shape === 'object-row-table') {\n return table;\n }\n const length = getTableLength(table);\n const data = new Array<{[key: string]: unknown}>(length);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n data[rowIndex] = getTableRowAsObject(table, rowIndex);\n }\n return {\n shape: 'object-row-table',\n schema: table.schema,\n data\n };\n}\n\n// Row Iterators\n\n/**\n * Iterate over table rows\n * @param table\n * @param shape\n */\nexport function* makeRowIterator(\n table: Table,\n shape: 'object-row-table' | 'array-row-table'\n): Iterable<unknown[] | {[key: string]: unknown}> {\n switch (shape) {\n case 'array-row-table':\n yield* makeArrayRowIterator(table);\n break;\n case 'object-row-table':\n yield* makeObjectRowIterator(table);\n break;\n\n default:\n throw new Error(`Unknown row type ${shape}`);\n }\n}\n\n/**\n * Streaming processing: Iterate over table, yielding array rows\n * @param table\n * @param shape\n */\nexport function* makeArrayRowIterator(table: Table, target: unknown[] = []): Iterable<unknown[]> {\n const length = getTableLength(table);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n yield getTableRowAsArray(table, rowIndex, target);\n }\n}\n\n/**\n * Streaming processing: Iterate over table, yielding object rows\n * @param table\n * @param shape\n */\nexport function* makeObjectRowIterator(\n table: Table,\n target: {[key: string]: unknown} = {}\n): Iterable<{[key: string]: unknown}> {\n const length = getTableLength(table);\n for (let rowIndex = 0; rowIndex < length; rowIndex++) {\n yield getTableRowAsObject(table, rowIndex, target);\n }\n}\n"],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.makeColumnFromField = makeColumnFromField;
7
- var _dataType = require("./data-type");
8
- function makeColumnFromField(field, length) {
9
- var ArrayType = (0, _dataType.getArrayTypeFromDataType)(field.type, field.nullable);
10
- return new ArrayType(length);
11
- }
12
- //# sourceMappingURL=table-column.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-column.js","names":["_dataType","require","makeColumnFromField","field","length","ArrayType","getArrayTypeFromDataType","type","nullable"],"sources":["../../../../../src/lib/table/simple-table/table-column.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n// import type {TypedArray,} from '../../../types/types';\nimport {Field} from '../../../types/schema';\nimport {getArrayTypeFromDataType} from './data-type';\n\nexport interface ArrayType<T = unknown> {\n readonly length: number;\n [n: number]: T;\n}\n\nexport function makeColumnFromField(field: Field, length: number): ArrayType {\n const ArrayType = getArrayTypeFromDataType(field.type, field.nullable);\n return new ArrayType(length);\n}\n\n/*\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction deduceSchema(rows) {\n const row = rows[0];\n\n const schema = {};\n let i = 0;\n for (const columnName in row) {\n const value = row[columnName];\n switch (typeof value) {\n case 'number':\n case 'boolean':\n // TODO - booleans could be handled differently...\n schema[columnName] = {name: String(columnName), index: i, type: Float32Array};\n break;\n\n case 'object':\n schema[columnName] = {name: String(columnName), index: i, type: Array};\n break;\n\n case 'string':\n default:\n schema[columnName] = {name: String(columnName), index: i, type: Array};\n // We currently only handle numeric rows\n // TODO we could offer a function to map strings to numbers?\n }\n i++;\n }\n return schema;\n}\n*/\n"],"mappings":";;;;;;AAIA,IAAAA,SAAA,GAAAC,OAAA;AAOO,SAASC,mBAAmBA,CAACC,KAAY,EAAEC,MAAc,EAAa;EAC3E,IAAMC,SAAS,GAAG,IAAAC,kCAAwB,EAACH,KAAK,CAACI,IAAI,EAAEJ,KAAK,CAACK,QAAQ,CAAC;EACtE,OAAO,IAAIH,SAAS,CAACD,MAAM,CAAC;AAC9B"}
@@ -1,85 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.deduceSchema = deduceSchema;
8
- exports.deduceTableSchema = deduceTableSchema;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _dataType = require("./data-type");
11
- function deduceTableSchema(table) {
12
- switch (table.shape) {
13
- case 'array-row-table':
14
- case 'object-row-table':
15
- return deduceSchemaFromRows(table.data);
16
- case 'columnar-table':
17
- return deduceSchemaFromColumns(table.data);
18
- case 'arrow-table':
19
- default:
20
- throw new Error('Deduce schema');
21
- }
22
- }
23
- function deduceSchema(data) {
24
- return Array.isArray(data) ? deduceSchemaFromRows(data) : deduceSchemaFromColumns(data);
25
- }
26
- function deduceSchemaFromColumns(columnarTable) {
27
- var fields = [];
28
- for (var _i = 0, _Object$entries = Object.entries(columnarTable); _i < _Object$entries.length; _i++) {
29
- var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
30
- columnName = _Object$entries$_i[0],
31
- column = _Object$entries$_i[1];
32
- var field = deduceFieldFromColumn(column, columnName);
33
- fields.push(field);
34
- }
35
- return {
36
- fields: fields,
37
- metadata: {}
38
- };
39
- }
40
- function deduceSchemaFromRows(rowTable) {
41
- if (!rowTable.length) {
42
- throw new Error('deduce from empty table');
43
- }
44
- var fields = [];
45
- var row0 = rowTable[0];
46
- for (var _i2 = 0, _Object$entries2 = Object.entries(row0); _i2 < _Object$entries2.length; _i2++) {
47
- var _Object$entries2$_i = (0, _slicedToArray2.default)(_Object$entries2[_i2], 2),
48
- columnName = _Object$entries2$_i[0],
49
- value = _Object$entries2$_i[1];
50
- fields.push(deduceFieldFromValue(value, columnName));
51
- }
52
- return {
53
- fields: fields,
54
- metadata: {}
55
- };
56
- }
57
- function deduceFieldFromColumn(column, name) {
58
- if (ArrayBuffer.isView(column)) {
59
- var type = (0, _dataType.getDataTypeFromArray)(column);
60
- return {
61
- name: name,
62
- type: type.type || 'null',
63
- nullable: type.nullable
64
- };
65
- }
66
- if (Array.isArray(column) && column.length > 0) {
67
- var value = column[0];
68
- var _type = (0, _dataType.getDataTypeFromValue)(value);
69
- return {
70
- name: name,
71
- type: _type,
72
- nullable: true
73
- };
74
- }
75
- throw new Error('empty table');
76
- }
77
- function deduceFieldFromValue(value, name) {
78
- var type = (0, _dataType.getDataTypeFromValue)(value);
79
- return {
80
- name: name,
81
- type: type,
82
- nullable: true
83
- };
84
- }
85
- //# sourceMappingURL=table-schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-schema.js","names":["_dataType","require","deduceTableSchema","table","shape","deduceSchemaFromRows","data","deduceSchemaFromColumns","Error","deduceSchema","Array","isArray","columnarTable","fields","_i","_Object$entries","Object","entries","length","_Object$entries$_i","_slicedToArray2","default","columnName","column","field","deduceFieldFromColumn","push","metadata","rowTable","row0","_i2","_Object$entries2","_Object$entries2$_i","value","deduceFieldFromValue","name","ArrayBuffer","isView","type","getDataTypeFromArray","nullable","getDataTypeFromValue"],"sources":["../../../../../src/lib/table/simple-table/table-schema.ts"],"sourcesContent":["// Type deduction\nimport {Schema, Field} from '../../../types/schema';\nimport {ArrayType} from '../../../types/types';\nimport {Table} from '../../../types/category-table';\nimport {getDataTypeFromArray, getDataTypeFromValue} from './data-type';\n\n/**\n * SCHEMA SUPPORT - AUTODEDUCTION\n * @param {*} table\n * @param {*} schema\n * @returns\n */\nexport function deduceTableSchema(table: Table): Schema {\n switch (table.shape) {\n case 'array-row-table':\n case 'object-row-table':\n return deduceSchemaFromRows(table.data);\n\n case 'columnar-table':\n return deduceSchemaFromColumns(table.data);\n\n case 'arrow-table':\n default:\n throw new Error('Deduce schema');\n }\n}\n\nexport function deduceSchema(\n data: unknown[][] | {[key: string]: unknown}[] | {[key: string]: unknown[]}\n): Schema {\n return Array.isArray(data) ? deduceSchemaFromRows(data) : deduceSchemaFromColumns(data);\n}\n\n/** Given an object with columnar arrays, try to deduce a schema */\nfunction deduceSchemaFromColumns(columnarTable: {[key: string]: ArrayType}): Schema {\n const fields: Field[] = [];\n for (const [columnName, column] of Object.entries(columnarTable)) {\n const field = deduceFieldFromColumn(column, columnName);\n fields.push(field);\n }\n return {fields, metadata: {}};\n}\n\n/** Given an array of rows, try to deduce a schema */\nfunction deduceSchemaFromRows(rowTable: unknown[][] | {[key: string]: unknown}[]): Schema {\n if (!rowTable.length) {\n throw new Error('deduce from empty table');\n }\n const fields: Field[] = [];\n const row0 = rowTable[0];\n // TODO - fields can be nullable, false detection...\n // Could look at additional rows if nulls in first row\n // TODO - if array, column names will be numbers\n for (const [columnName, value] of Object.entries(row0)) {\n fields.push(deduceFieldFromValue(value, columnName));\n }\n\n return {fields, metadata: {}};\n}\n\n/** Given a column (i.e. array), attempt to deduce an appropriate `Field` */\nfunction deduceFieldFromColumn(column: ArrayType, name: string): Field {\n if (ArrayBuffer.isView(column)) {\n const type = getDataTypeFromArray(column);\n return {\n name,\n type: type.type || 'null',\n nullable: type.nullable\n // metadata: {}\n };\n }\n\n if (Array.isArray(column) && column.length > 0) {\n const value = column[0];\n const type = getDataTypeFromValue(value);\n // TODO - support nested schemas?\n return {\n name,\n type,\n nullable: true\n // metadata: {},\n };\n }\n\n throw new Error('empty table');\n}\n\n/** Given a value, attempt to deduce an appropriate `Field` */\nfunction deduceFieldFromValue(value: unknown, name: string): Field {\n const type = getDataTypeFromValue(value);\n return {\n name,\n type,\n nullable: true\n // metadata: {}\n };\n}\n"],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.assert = assert;
7
- function assert(condition, message) {
8
- if (!condition) {
9
- throw new Error(message || 'loader assertion failed.');
10
- }
11
- }
12
- //# sourceMappingURL=assert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assert.js","names":["assert","condition","message","Error"],"sources":["../../../../src/lib/utils/assert.ts"],"sourcesContent":["// Replacement for the external assert method to reduce bundle size\n// Note: We don't use the second \"message\" argument in calling code,\n// so no need to support it here\nexport function assert(condition: boolean, message?: string) {\n if (!condition) {\n throw new Error(message || 'loader assertion failed.');\n }\n}\n"],"mappings":";;;;;;AAGO,SAASA,MAAMA,CAACC,SAAkB,EAAEC,OAAgB,EAAE;EAC3D,IAAI,CAACD,SAAS,EAAE;IACd,MAAM,IAAIE,KAAK,CAACD,OAAO,IAAI,0BAA0B,CAAC;EACxD;AACF"}