@kepler.gl/duckdb 3.1.0-alpha.6 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/preview-data-panel.js +2 -11
- package/dist/components/sql-panel.js +7 -3
- package/dist/components/tree.js +5 -4
- package/dist/plugin.d.ts +1 -0
- package/dist/plugin.js +9 -2
- package/dist/processors/data-processor.js +4 -5
- package/dist/table/duckdb-table-utils.d.ts +13 -0
- package/dist/table/duckdb-table-utils.js +110 -0
- package/dist/table/duckdb-table.d.ts +7 -2
- package/dist/table/duckdb-table.js +189 -44
- package/package.json +6 -6
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isGeoArrowLineString = isGeoArrowLineString;
|
|
7
|
+
exports.isGeoArrowMultiLineString = isGeoArrowMultiLineString;
|
|
8
|
+
exports.isGeoArrowMultiPoint = isGeoArrowMultiPoint;
|
|
9
|
+
exports.isGeoArrowMultiPolygon = isGeoArrowMultiPolygon;
|
|
10
|
+
exports.isGeoArrowPoint = isGeoArrowPoint;
|
|
11
|
+
exports.isGeoArrowPolygon = isGeoArrowPolygon;
|
|
12
|
+
var _type = require("apache-arrow/type");
|
|
13
|
+
// SPDX-License-Identifier: MIT
|
|
14
|
+
// Copyright contributors to the kepler.gl project
|
|
15
|
+
|
|
16
|
+
// loaders.gl
|
|
17
|
+
// SPDX-License-Identifier: MIT
|
|
18
|
+
// Copyright (c) vis.gl contributors
|
|
19
|
+
|
|
20
|
+
// Copied from loaders.gl/geoarrow
|
|
21
|
+
|
|
22
|
+
// TODO: Remove once Kepler.gl is upgraded to loaders.gl 4.4+
|
|
23
|
+
|
|
24
|
+
/** Checks whether the given Apache Arrow JS type is a Point data type */
|
|
25
|
+
function isGeoArrowPoint(type) {
|
|
26
|
+
if (_type.DataType.isFixedSizeList(type)) {
|
|
27
|
+
// Check list size
|
|
28
|
+
if (![2, 3, 4].includes(type.listSize)) {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Check child of FixedSizeList is floating type
|
|
33
|
+
if (!_type.DataType.isFloat(type.children[0])) {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/** Checks whether the given Apache Arrow JS type is a Point data type */
|
|
42
|
+
function isGeoArrowLineString(type) {
|
|
43
|
+
// Check the outer type is a List
|
|
44
|
+
if (!_type.DataType.isList(type)) {
|
|
45
|
+
return false;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// Check the child is a point type
|
|
49
|
+
if (!isGeoArrowPoint(type.children[0].type)) {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/** Checks whether the given Apache Arrow JS type is a Polygon data type */
|
|
56
|
+
function isGeoArrowPolygon(type) {
|
|
57
|
+
// Check the outer vector is a List
|
|
58
|
+
if (!_type.DataType.isList(type)) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// Check the child is a linestring vector
|
|
63
|
+
if (!isGeoArrowLineString(type.children[0].type)) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/** Checks whether the given Apache Arrow JS type is a Polygon data type */
|
|
70
|
+
function isGeoArrowMultiPoint(type) {
|
|
71
|
+
// Check the outer vector is a List
|
|
72
|
+
if (!_type.DataType.isList(type)) {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// Check the child is a point vector
|
|
77
|
+
if (!isGeoArrowPoint(type.children[0].type)) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/** Checks whether the given Apache Arrow JS type is a Polygon data type */
|
|
84
|
+
function isGeoArrowMultiLineString(type) {
|
|
85
|
+
// Check the outer vector is a List
|
|
86
|
+
if (!_type.DataType.isList(type)) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// Check the child is a linestring vector
|
|
91
|
+
if (!isGeoArrowLineString(type.children[0].type)) {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/** Checks whether the given Apache Arrow JS type is a Polygon data type */
|
|
98
|
+
function isGeoArrowMultiPolygon(type) {
|
|
99
|
+
// Check the outer vector is a List
|
|
100
|
+
if (!_type.DataType.isList(type)) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Check the child is a polygon vector
|
|
105
|
+
if (!isGeoArrowPolygon(type.children[0].type)) {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
return true;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZSIsInJlcXVpcmUiLCJpc0dlb0Fycm93UG9pbnQiLCJ0eXBlIiwiRGF0YVR5cGUiLCJpc0ZpeGVkU2l6ZUxpc3QiLCJpbmNsdWRlcyIsImxpc3RTaXplIiwiaXNGbG9hdCIsImNoaWxkcmVuIiwiaXNHZW9BcnJvd0xpbmVTdHJpbmciLCJpc0xpc3QiLCJpc0dlb0Fycm93UG9seWdvbiIsImlzR2VvQXJyb3dNdWx0aVBvaW50IiwiaXNHZW9BcnJvd011bHRpTGluZVN0cmluZyIsImlzR2VvQXJyb3dNdWx0aVBvbHlnb24iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdGFibGUvZHVja2RiLXRhYmxlLXV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbi8vIGxvYWRlcnMuZ2xcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCAoYykgdmlzLmdsIGNvbnRyaWJ1dG9yc1xuXG4vLyBDb3BpZWQgZnJvbSBsb2FkZXJzLmdsL2dlb2Fycm93XG5cbi8vIFRPRE86IFJlbW92ZSBvbmNlIEtlcGxlci5nbCBpcyB1cGdyYWRlZCB0byBsb2FkZXJzLmdsIDQuNCtcblxuaW1wb3J0IHtEYXRhVHlwZX0gZnJvbSAnYXBhY2hlLWFycm93L3R5cGUnO1xuXG4vKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIEFwYWNoZSBBcnJvdyBKUyB0eXBlIGlzIGEgUG9pbnQgZGF0YSB0eXBlICovXG5leHBvcnQgZnVuY3Rpb24gaXNHZW9BcnJvd1BvaW50KHR5cGU6IERhdGFUeXBlKSB7XG4gIGlmIChEYXRhVHlwZS5pc0ZpeGVkU2l6ZUxpc3QodHlwZSkpIHtcbiAgICAvLyBDaGVjayBsaXN0IHNpemVcbiAgICBpZiAoIVsyLCAzLCA0XS5pbmNsdWRlcyh0eXBlLmxpc3RTaXplKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIENoZWNrIGNoaWxkIG9mIEZpeGVkU2l6ZUxpc3QgaXMgZmxvYXRpbmcgdHlwZVxuICAgIGlmICghRGF0YVR5cGUuaXNGbG9hdCh0eXBlLmNoaWxkcmVuWzBdKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIEFwYWNoZSBBcnJvdyBKUyB0eXBlIGlzIGEgUG9pbnQgZGF0YSB0eXBlICovXG5leHBvcnQgZnVuY3Rpb24gaXNHZW9BcnJvd0xpbmVTdHJpbmcodHlwZTogRGF0YVR5cGUpIHtcbiAgLy8gQ2hlY2sgdGhlIG91dGVyIHR5cGUgaXMgYSBMaXN0XG4gIGlmICghRGF0YVR5cGUuaXNMaXN0KHR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gQ2hlY2sgdGhlIGNoaWxkIGlzIGEgcG9pbnQgdHlwZVxuICBpZiAoIWlzR2VvQXJyb3dQb2ludCh0eXBlLmNoaWxkcmVuWzBdLnR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKiBDaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gQXBhY2hlIEFycm93IEpTIHR5cGUgaXMgYSBQb2x5Z29uIGRhdGEgdHlwZSAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzR2VvQXJyb3dQb2x5Z29uKHR5cGU6IERhdGFUeXBlKSB7XG4gIC8vIENoZWNrIHRoZSBvdXRlciB2ZWN0b3IgaXMgYSBMaXN0XG4gIGlmICghRGF0YVR5cGUuaXNMaXN0KHR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gQ2hlY2sgdGhlIGNoaWxkIGlzIGEgbGluZXN0cmluZyB2ZWN0b3JcbiAgaWYgKCFpc0dlb0Fycm93TGluZVN0cmluZyh0eXBlLmNoaWxkcmVuWzBdLnR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKiBDaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gQXBhY2hlIEFycm93IEpTIHR5cGUgaXMgYSBQb2x5Z29uIGRhdGEgdHlwZSAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzR2VvQXJyb3dNdWx0aVBvaW50KHR5cGU6IERhdGFUeXBlKSB7XG4gIC8vIENoZWNrIHRoZSBvdXRlciB2ZWN0b3IgaXMgYSBMaXN0XG4gIGlmICghRGF0YVR5cGUuaXNMaXN0KHR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gQ2hlY2sgdGhlIGNoaWxkIGlzIGEgcG9pbnQgdmVjdG9yXG4gIGlmICghaXNHZW9BcnJvd1BvaW50KHR5cGUuY2hpbGRyZW5bMF0udHlwZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBBcGFjaGUgQXJyb3cgSlMgdHlwZSBpcyBhIFBvbHlnb24gZGF0YSB0eXBlICovXG5leHBvcnQgZnVuY3Rpb24gaXNHZW9BcnJvd011bHRpTGluZVN0cmluZyh0eXBlOiBEYXRhVHlwZSkge1xuICAvLyBDaGVjayB0aGUgb3V0ZXIgdmVjdG9yIGlzIGEgTGlzdFxuICBpZiAoIURhdGFUeXBlLmlzTGlzdCh0eXBlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8vIENoZWNrIHRoZSBjaGlsZCBpcyBhIGxpbmVzdHJpbmcgdmVjdG9yXG4gIGlmICghaXNHZW9BcnJvd0xpbmVTdHJpbmcodHlwZS5jaGlsZHJlblswXS50eXBlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG4vKiogQ2hlY2tzIHdoZXRoZXIgdGhlIGdpdmVuIEFwYWNoZSBBcnJvdyBKUyB0eXBlIGlzIGEgUG9seWdvbiBkYXRhIHR5cGUgKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0dlb0Fycm93TXVsdGlQb2x5Z29uKHR5cGU6IERhdGFUeXBlKSB7XG4gIC8vIENoZWNrIHRoZSBvdXRlciB2ZWN0b3IgaXMgYSBMaXN0XG4gIGlmICghRGF0YVR5cGUuaXNMaXN0KHR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLy8gQ2hlY2sgdGhlIGNoaWxkIGlzIGEgcG9seWdvbiB2ZWN0b3JcbiAgaWYgKCFpc0dlb0Fycm93UG9seWdvbih0eXBlLmNoaWxkcmVuWzBdLnR5cGUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBV0EsSUFBQUEsS0FBQSxHQUFBQyxPQUFBO0FBWEE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBSUE7QUFDTyxTQUFTQyxlQUFlQSxDQUFDQyxJQUFjLEVBQUU7RUFDOUMsSUFBSUMsY0FBUSxDQUFDQyxlQUFlLENBQUNGLElBQUksQ0FBQyxFQUFFO0lBQ2xDO0lBQ0EsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQ0csUUFBUSxDQUFDSCxJQUFJLENBQUNJLFFBQVEsQ0FBQyxFQUFFO01BQ3RDLE9BQU8sS0FBSztJQUNkOztJQUVBO0lBQ0EsSUFBSSxDQUFDSCxjQUFRLENBQUNJLE9BQU8sQ0FBQ0wsSUFBSSxDQUFDTSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtNQUN2QyxPQUFPLEtBQUs7SUFDZDtJQUVBLE9BQU8sSUFBSTtFQUNiO0VBRUEsT0FBTyxLQUFLO0FBQ2Q7O0FBRUE7QUFDTyxTQUFTQyxvQkFBb0JBLENBQUNQLElBQWMsRUFBRTtFQUNuRDtFQUNBLElBQUksQ0FBQ0MsY0FBUSxDQUFDTyxNQUFNLENBQUNSLElBQUksQ0FBQyxFQUFFO0lBQzFCLE9BQU8sS0FBSztFQUNkOztFQUVBO0VBQ0EsSUFBSSxDQUFDRCxlQUFlLENBQUNDLElBQUksQ0FBQ00sUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDTixJQUFJLENBQUMsRUFBRTtJQUMzQyxPQUFPLEtBQUs7RUFDZDtFQUVBLE9BQU8sSUFBSTtBQUNiOztBQUVBO0FBQ08sU0FBU1MsaUJBQWlCQSxDQUFDVCxJQUFjLEVBQUU7RUFDaEQ7RUFDQSxJQUFJLENBQUNDLGNBQVEsQ0FBQ08sTUFBTSxDQUFDUixJQUFJLENBQUMsRUFBRTtJQUMxQixPQUFPLEtBQUs7RUFDZDs7RUFFQTtFQUNBLElBQUksQ0FBQ08sb0JBQW9CLENBQUNQLElBQUksQ0FBQ00sUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDTixJQUFJLENBQUMsRUFBRTtJQUNoRCxPQUFPLEtBQUs7RUFDZDtFQUVBLE9BQU8sSUFBSTtBQUNiOztBQUVBO0FBQ08sU0FBU1Usb0JBQW9CQSxDQUFDVixJQUFjLEVBQUU7RUFDbkQ7RUFDQSxJQUFJLENBQUNDLGNBQVEsQ0FBQ08sTUFBTSxDQUFDUixJQUFJLENBQUMsRUFBRTtJQUMxQixPQUFPLEtBQUs7RUFDZDs7RUFFQTtFQUNBLElBQUksQ0FBQ0QsZUFBZSxDQUFDQyxJQUFJLENBQUNNLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ04sSUFBSSxDQUFDLEVBQUU7SUFDM0MsT0FBTyxLQUFLO0VBQ2Q7RUFFQSxPQUFPLElBQUk7QUFDYjs7QUFFQTtBQUNPLFNBQVNXLHlCQUF5QkEsQ0FBQ1gsSUFBYyxFQUFFO0VBQ3hEO0VBQ0EsSUFBSSxDQUFDQyxjQUFRLENBQUNPLE1BQU0sQ0FBQ1IsSUFBSSxDQUFDLEVBQUU7SUFDMUIsT0FBTyxLQUFLO0VBQ2Q7O0VBRUE7RUFDQSxJQUFJLENBQUNPLG9CQUFvQixDQUFDUCxJQUFJLENBQUNNLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ04sSUFBSSxDQUFDLEVBQUU7SUFDaEQsT0FBTyxLQUFLO0VBQ2Q7RUFFQSxPQUFPLElBQUk7QUFDYjs7QUFFQTtBQUNPLFNBQVNZLHNCQUFzQkEsQ0FBQ1osSUFBYyxFQUFFO0VBQ3JEO0VBQ0EsSUFBSSxDQUFDQyxjQUFRLENBQUNPLE1BQU0sQ0FBQ1IsSUFBSSxDQUFDLEVBQUU7SUFDMUIsT0FBTyxLQUFLO0VBQ2Q7O0VBRUE7RUFDQSxJQUFJLENBQUNTLGlCQUFpQixDQUFDVCxJQUFJLENBQUNNLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ04sSUFBSSxDQUFDLEVBQUU7SUFDN0MsT0FBTyxLQUFLO0VBQ2Q7RUFFQSxPQUFPLElBQUk7QUFDYiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -7,6 +7,10 @@ declare type ImportDataToDuckProps = {
|
|
|
7
7
|
db: AsyncDuckDB;
|
|
8
8
|
c: AsyncDuckDBConnection;
|
|
9
9
|
};
|
|
10
|
+
declare type ImportDataToDuckResult = {
|
|
11
|
+
addWKBMetadata?: Record<string, boolean>;
|
|
12
|
+
useNewFields?: boolean;
|
|
13
|
+
};
|
|
10
14
|
export declare class KeplerGlDuckDbTable extends KeplerTable {
|
|
11
15
|
readonly id: string;
|
|
12
16
|
label: string;
|
|
@@ -14,8 +18,8 @@ export declare class KeplerGlDuckDbTable extends KeplerTable {
|
|
|
14
18
|
metadata: Record<string, any>;
|
|
15
19
|
constructor(props: any);
|
|
16
20
|
importRowData({ data, db, c }: ImportDataToDuckProps): Promise<void>;
|
|
17
|
-
importGeoJsonData({ data, db, c }: ImportDataToDuckProps): Promise<
|
|
18
|
-
importArrowData({ data, db, c }: ImportDataToDuckProps): Promise<
|
|
21
|
+
importGeoJsonData({ data, db, c }: ImportDataToDuckProps): Promise<ImportDataToDuckResult>;
|
|
22
|
+
importArrowData({ data, db, c }: ImportDataToDuckProps): Promise<ImportDataToDuckResult>;
|
|
19
23
|
/**
|
|
20
24
|
* Creates a table from data, returns an arrow table with the data
|
|
21
25
|
* @param data
|
|
@@ -33,5 +37,6 @@ export declare class KeplerGlDuckDbTable extends KeplerTable {
|
|
|
33
37
|
processor: any;
|
|
34
38
|
format: any;
|
|
35
39
|
};
|
|
40
|
+
static getInputDataValidator: () => (d: any) => any;
|
|
36
41
|
}
|
|
37
42
|
export {};
|