@carto/kepler.gl 0.0.32 → 0.0.33-alpha1
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/constants/default-settings.js +2 -2
- package/dist/layers/base-layer.js +59 -12
- package/package.json +1 -1
- package/src/layers/base-layer.js +27 -1
- package/umd/keplergl.min.js +14 -14
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@carto/kepler.gl",
|
|
3
3
|
"author": "CARTO",
|
|
4
4
|
"homepage": "https://github.com/CartoDB/carto-kepler#readme",
|
|
5
|
-
"version": "0.0.
|
|
5
|
+
"version": "0.0.33-alpha1",
|
|
6
6
|
"description": "kepler.gl is a webgl based application to visualize large scale location data in the browser",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"main": "dist/index.js",
|
package/src/layers/base-layer.js
CHANGED
|
@@ -891,6 +891,8 @@ class Layer {
|
|
|
891
891
|
const layerDataset = datasets[this.config.dataId];
|
|
892
892
|
const {dataContainer} = layerDataset;
|
|
893
893
|
|
|
894
|
+
this.updateVisualChannelFields(layerDataset);
|
|
895
|
+
|
|
894
896
|
const getPosition = this.getPositionAccessor(dataContainer);
|
|
895
897
|
const dataUpdateTriggers = this.getDataUpdateTriggers(layerDataset);
|
|
896
898
|
const triggerChanged = this.getChangedTriggers(dataUpdateTriggers);
|
|
@@ -911,6 +913,22 @@ class Layer {
|
|
|
911
913
|
return {data, triggerChanged};
|
|
912
914
|
}
|
|
913
915
|
|
|
916
|
+
/**
|
|
917
|
+
* Update styled fields to match ones from new dataset.
|
|
918
|
+
*
|
|
919
|
+
* @param {Object} dataset
|
|
920
|
+
*/
|
|
921
|
+
updateVisualChannelFields(dataset) {
|
|
922
|
+
for (const {field} of Object.values(this.visualChannels)) {
|
|
923
|
+
const oldField = this.config[field];
|
|
924
|
+
if (!oldField) {
|
|
925
|
+
return;
|
|
926
|
+
}
|
|
927
|
+
const newDataSetField = dataset.fields.find(fd => fd.name === oldField.name) || null;
|
|
928
|
+
this.updateLayerConfig({[field]: newDataSetField});
|
|
929
|
+
}
|
|
930
|
+
}
|
|
931
|
+
|
|
914
932
|
/**
|
|
915
933
|
* helper function to update one layer domain when state.data changed
|
|
916
934
|
* if state.data change is due ot update filter, newFiler will be passed
|
|
@@ -1040,7 +1058,15 @@ class Layer {
|
|
|
1040
1058
|
return defaultDomain;
|
|
1041
1059
|
}
|
|
1042
1060
|
|
|
1043
|
-
return dataset.getColumnLayerDomain(field, scaleType) || defaultDomain;
|
|
1061
|
+
// return dataset.getColumnLayerDomain(field, scaleType) || defaultDomain;
|
|
1062
|
+
|
|
1063
|
+
const dataSetField = dataset.fields.find(f => f.name === field.name);
|
|
1064
|
+
if (!dataSetField) {
|
|
1065
|
+
// if new dataset doesn't contain previously set field
|
|
1066
|
+
return defaultDomain;
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
return dataset.getColumnLayerDomain(dataSetField, scaleType) || defaultDomain;
|
|
1044
1070
|
}
|
|
1045
1071
|
|
|
1046
1072
|
hasHoveredObject(objectInfo) {
|