@kepler.gl/deckgl-layers 3.3.0-alpha.5 → 3.3.0-alpha.6
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/cjs/3d-building-layer/3d-building-layer.js +66 -0
- package/dist/cjs/3d-building-layer/3d-building-utils.js +166 -0
- package/dist/cjs/3d-building-layer/types.js +6 -0
- package/dist/cjs/cluster-layer/cluster-layer.js +292 -0
- package/dist/cjs/column-layer/enhanced-column-layer.js +160 -0
- package/dist/{deckgl-extensions → cjs/deckgl-extensions}/filter-arrow-layer.js +1 -1
- package/dist/cjs/deckgl-extensions/filter-shader-module.js +26 -0
- package/dist/cjs/globe/atmosphere-layer.js +220 -0
- package/dist/cjs/globe/enhanced-multi-icon-layer.js +63 -0
- package/dist/cjs/globe/globe-depth-disk-layer.js +145 -0
- package/dist/cjs/globe/globe-layers.js +569 -0
- package/dist/cjs/globe/globe-stars-layer.js +69 -0
- package/dist/cjs/globe/globe-view.js +407 -0
- package/dist/{globe → cjs/globe}/index.js +1 -1
- package/dist/cjs/globe/mvt-label-layer.js +190 -0
- package/dist/cjs/grid-layer/enhanced-cpu-grid-layer.js +116 -0
- package/dist/cjs/hexagon-layer/enhanced-hexagon-layer.js +134 -0
- package/dist/{index.js → cjs/index.js} +1 -1
- package/dist/cjs/layer-utils/aggregation-utils.js +181 -0
- package/dist/cjs/layer-utils/cluster-utils.js +93 -0
- package/dist/cjs/layer-utils/cpu-aggregator.js +798 -0
- package/dist/cjs/layer-utils/globe-cell-utils.js +173 -0
- package/dist/cjs/layer-utils/shader-utils.js +38 -0
- package/dist/cjs/line-layer/line-layer.js +95 -0
- package/dist/cjs/raster/images.js +271 -0
- package/dist/cjs/raster/pipeline-validation-patch.js +101 -0
- package/dist/cjs/raster/raster-layer/raster-layer-shaders.js +163 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl1.fs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl1.vs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl2.fs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer-webgl2.vs.js +10 -0
- package/dist/cjs/raster/raster-layer/raster-layer.js +287 -0
- package/dist/cjs/raster/raster-mesh-layer/matrix.js +18 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +38 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +10 -0
- package/dist/cjs/raster/raster-mesh-layer/raster-mesh-layer.js +321 -0
- package/dist/cjs/raster/raster-processing-uniforms.js +124 -0
- package/dist/cjs/raster/types.js +6 -0
- package/dist/cjs/raster/util.js +139 -0
- package/dist/cjs/raster/webgl/color/colormap.js +45 -0
- package/dist/cjs/raster/webgl/color/filter.js +58 -0
- package/dist/cjs/raster/webgl/color/gamma-contrast.js +68 -0
- package/dist/cjs/raster/webgl/color/linear-rescale.js +35 -0
- package/dist/cjs/raster/webgl/color/saturation.js +42 -0
- package/dist/cjs/raster/webgl/color/sigmoidal-contrast.js +68 -0
- package/dist/{raster → cjs/raster}/webgl/index.js +1 -1
- package/dist/cjs/raster/webgl/pansharpen/pansharpen-brovey.js +46 -0
- package/dist/cjs/raster/webgl/spectral-indices/evi.js +26 -0
- package/dist/cjs/raster/webgl/spectral-indices/msavi.js +25 -0
- package/dist/cjs/raster/webgl/spectral-indices/normalized-difference.js +19 -0
- package/dist/cjs/raster/webgl/spectral-indices/savi.js +21 -0
- package/dist/cjs/raster/webgl/texture/combine-bands.js +65 -0
- package/dist/cjs/raster/webgl/texture/mask.js +50 -0
- package/dist/cjs/raster/webgl/texture/reorder-bands.js +72 -0
- package/dist/cjs/raster/webgl/texture/rgba-image.js +34 -0
- package/dist/cjs/raster/webgl/types.js +6 -0
- package/dist/cjs/svg-icon-layer/scatterplot-icon-layer.js +88 -0
- package/dist/cjs/svg-icon-layer/svg-icon-layer.js +104 -0
- package/dist/cjs/wms/wms-layer.js +624 -0
- package/dist/esm/3d-building-layer/3d-building-layer.js +62 -0
- package/dist/esm/3d-building-layer/3d-building-utils.js +157 -0
- package/dist/esm/3d-building-layer/types.js +3 -0
- package/dist/esm/cluster-layer/cluster-layer.js +286 -0
- package/dist/esm/column-layer/enhanced-column-layer.js +156 -0
- package/dist/esm/deckgl-extensions/filter-arrow-layer.js +64 -0
- package/dist/esm/deckgl-extensions/filter-shader-module.js +20 -0
- package/dist/esm/globe/atmosphere-layer.js +214 -0
- package/dist/esm/globe/enhanced-multi-icon-layer.js +60 -0
- package/dist/esm/globe/globe-depth-disk-layer.js +140 -0
- package/dist/esm/globe/globe-layers.js +561 -0
- package/dist/esm/globe/globe-stars-layer.js +63 -0
- package/dist/esm/globe/globe-view.js +401 -0
- package/dist/esm/globe/index.js +26 -0
- package/dist/esm/globe/mvt-label-layer.js +187 -0
- package/dist/esm/grid-layer/enhanced-cpu-grid-layer.js +112 -0
- package/dist/esm/hexagon-layer/enhanced-hexagon-layer.js +130 -0
- package/dist/esm/index.js +22 -0
- package/dist/esm/layer-utils/aggregation-utils.js +172 -0
- package/dist/esm/layer-utils/cluster-utils.js +86 -0
- package/dist/esm/layer-utils/cpu-aggregator.js +788 -0
- package/dist/esm/layer-utils/globe-cell-utils.js +167 -0
- package/dist/esm/layer-utils/shader-utils.js +32 -0
- package/dist/esm/line-layer/line-layer.js +91 -0
- package/dist/esm/raster/images.js +267 -0
- package/dist/esm/raster/pipeline-validation-patch.js +94 -0
- package/dist/esm/raster/raster-layer/raster-layer-shaders.js +153 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl1.fs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl1.vs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl2.fs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer-webgl2.vs.js +5 -0
- package/dist/esm/raster/raster-layer/raster-layer.js +283 -0
- package/dist/esm/raster/raster-mesh-layer/matrix.js +12 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +30 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +5 -0
- package/dist/esm/raster/raster-mesh-layer/raster-mesh-layer.js +318 -0
- package/dist/esm/raster/raster-processing-uniforms.js +118 -0
- package/dist/esm/raster/types.js +3 -0
- package/dist/esm/raster/util.js +134 -0
- package/dist/esm/raster/webgl/color/colormap.js +39 -0
- package/dist/esm/raster/webgl/color/filter.js +52 -0
- package/dist/esm/raster/webgl/color/gamma-contrast.js +62 -0
- package/dist/esm/raster/webgl/color/linear-rescale.js +29 -0
- package/dist/esm/raster/webgl/color/saturation.js +36 -0
- package/dist/esm/raster/webgl/color/sigmoidal-contrast.js +62 -0
- package/dist/esm/raster/webgl/index.js +26 -0
- package/dist/esm/raster/webgl/pansharpen/pansharpen-brovey.js +40 -0
- package/dist/esm/raster/webgl/spectral-indices/evi.js +20 -0
- package/dist/esm/raster/webgl/spectral-indices/msavi.js +19 -0
- package/dist/esm/raster/webgl/spectral-indices/normalized-difference.js +13 -0
- package/dist/esm/raster/webgl/spectral-indices/savi.js +15 -0
- package/dist/esm/raster/webgl/texture/combine-bands.js +58 -0
- package/dist/esm/raster/webgl/texture/mask.js +44 -0
- package/dist/esm/raster/webgl/texture/reorder-bands.js +65 -0
- package/dist/esm/raster/webgl/texture/rgba-image.js +28 -0
- package/dist/esm/raster/webgl/types.js +3 -0
- package/dist/esm/svg-icon-layer/scatterplot-icon-layer.js +84 -0
- package/dist/esm/svg-icon-layer/svg-icon-layer.js +101 -0
- package/dist/esm/wms/wms-layer.js +619 -0
- package/dist/wms/wms-layer.d.ts +8 -0
- package/package.json +17 -8
- package/dist/3d-building-layer/3d-building-layer.js +0 -66
- package/dist/3d-building-layer/3d-building-utils.js +0 -166
- package/dist/3d-building-layer/types.js +0 -6
- package/dist/cluster-layer/cluster-layer.js +0 -292
- package/dist/column-layer/enhanced-column-layer.js +0 -160
- package/dist/deckgl-extensions/filter-shader-module.js +0 -26
- package/dist/globe/atmosphere-layer.js +0 -220
- package/dist/globe/enhanced-multi-icon-layer.js +0 -63
- package/dist/globe/globe-depth-disk-layer.js +0 -145
- package/dist/globe/globe-layers.js +0 -569
- package/dist/globe/globe-stars-layer.js +0 -69
- package/dist/globe/globe-view.js +0 -404
- package/dist/globe/mvt-label-layer.js +0 -190
- package/dist/grid-layer/enhanced-cpu-grid-layer.js +0 -116
- package/dist/hexagon-layer/enhanced-hexagon-layer.js +0 -134
- package/dist/layer-utils/aggregation-utils.js +0 -181
- package/dist/layer-utils/cluster-utils.js +0 -93
- package/dist/layer-utils/cpu-aggregator.js +0 -798
- package/dist/layer-utils/globe-cell-utils.js +0 -173
- package/dist/layer-utils/shader-utils.js +0 -38
- package/dist/line-layer/line-layer.js +0 -95
- package/dist/raster/images.js +0 -271
- package/dist/raster/pipeline-validation-patch.js +0 -101
- package/dist/raster/raster-layer/raster-layer-shaders.js +0 -163
- package/dist/raster/raster-layer/raster-layer-webgl1.fs.js +0 -10
- package/dist/raster/raster-layer/raster-layer-webgl1.vs.js +0 -10
- package/dist/raster/raster-layer/raster-layer-webgl2.fs.js +0 -10
- package/dist/raster/raster-layer/raster-layer-webgl2.vs.js +0 -10
- package/dist/raster/raster-layer/raster-layer.js +0 -287
- package/dist/raster/raster-mesh-layer/matrix.js +0 -18
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-shaders.js +0 -38
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.fs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl1.vs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.fs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer-webgl2.vs.js +0 -10
- package/dist/raster/raster-mesh-layer/raster-mesh-layer.js +0 -321
- package/dist/raster/raster-processing-uniforms.js +0 -124
- package/dist/raster/types.js +0 -6
- package/dist/raster/util.js +0 -139
- package/dist/raster/webgl/color/colormap.js +0 -45
- package/dist/raster/webgl/color/filter.js +0 -58
- package/dist/raster/webgl/color/gamma-contrast.js +0 -68
- package/dist/raster/webgl/color/linear-rescale.js +0 -35
- package/dist/raster/webgl/color/saturation.js +0 -42
- package/dist/raster/webgl/color/sigmoidal-contrast.js +0 -68
- package/dist/raster/webgl/pansharpen/pansharpen-brovey.js +0 -46
- package/dist/raster/webgl/spectral-indices/evi.js +0 -26
- package/dist/raster/webgl/spectral-indices/msavi.js +0 -25
- package/dist/raster/webgl/spectral-indices/normalized-difference.js +0 -19
- package/dist/raster/webgl/spectral-indices/savi.js +0 -21
- package/dist/raster/webgl/texture/combine-bands.js +0 -65
- package/dist/raster/webgl/texture/mask.js +0 -50
- package/dist/raster/webgl/texture/reorder-bands.js +0 -72
- package/dist/raster/webgl/texture/rgba-image.js +0 -34
- package/dist/raster/webgl/types.js +0 -6
- package/dist/svg-icon-layer/scatterplot-icon-layer.js +0 -88
- package/dist/svg-icon-layer/svg-icon-layer.js +0 -104
- package/dist/wms/wms-layer.js +0 -594
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
4
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
5
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
6
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
7
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
8
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
9
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
10
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
11
|
+
// SPDX-License-Identifier: MIT
|
|
12
|
+
// Copyright contributors to the kepler.gl project
|
|
13
|
+
|
|
14
|
+
import { CompositeLayer } from '@deck.gl/core';
|
|
15
|
+
import { GeoJsonLayer, TextLayer } from '@deck.gl/layers';
|
|
16
|
+
import EnhancedMultiIconLayer from './enhanced-multi-icon-layer';
|
|
17
|
+
|
|
18
|
+
// Custom globe basemap label layer.
|
|
19
|
+
//
|
|
20
|
+
// This composite is used as the `renderSubLayers` of the globe basemap MVTLayer.
|
|
21
|
+
// It renders two things per tile:
|
|
22
|
+
// 1. A GeoJsonLayer for admin lines / water fills (same visuals as before).
|
|
23
|
+
// 2. A TextLayer for place labels (country names), gated on `config.labels`.
|
|
24
|
+
//
|
|
25
|
+
// The TextLayer uses a custom `EnhancedMultiIconLayer` as its glyph (characters)
|
|
26
|
+
// sublayer, which culls labels on the far side of the globe so they aren't drawn
|
|
27
|
+
// through the planet.
|
|
28
|
+
|
|
29
|
+
export var MVTLabelLayer = /*#__PURE__*/function (_CompositeLayer) {
|
|
30
|
+
function MVTLabelLayer() {
|
|
31
|
+
_classCallCheck(this, MVTLabelLayer);
|
|
32
|
+
return _callSuper(this, MVTLabelLayer, arguments);
|
|
33
|
+
}
|
|
34
|
+
_inherits(MVTLabelLayer, _CompositeLayer);
|
|
35
|
+
return _createClass(MVTLabelLayer, [{
|
|
36
|
+
key: "getLabel",
|
|
37
|
+
value: function getLabel(feature) {
|
|
38
|
+
var properties = feature.properties;
|
|
39
|
+
switch (properties === null || properties === void 0 ? void 0 : properties.layerName) {
|
|
40
|
+
// Mapbox `mapbox-streets-v8` schema.
|
|
41
|
+
case 'place_label':
|
|
42
|
+
switch (properties["class"]) {
|
|
43
|
+
case 'country':
|
|
44
|
+
return properties.name_en || properties.name || '';
|
|
45
|
+
default:
|
|
46
|
+
return '';
|
|
47
|
+
}
|
|
48
|
+
// CARTO / OpenMapTiles schema.
|
|
49
|
+
case 'place':
|
|
50
|
+
switch (properties["class"]) {
|
|
51
|
+
case 'country':
|
|
52
|
+
return properties['name:en'] || properties.name_en || properties.name || '';
|
|
53
|
+
default:
|
|
54
|
+
return '';
|
|
55
|
+
}
|
|
56
|
+
default:
|
|
57
|
+
return '';
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}, {
|
|
61
|
+
key: "getLabelSize",
|
|
62
|
+
value: function getLabelSize() {
|
|
63
|
+
return 10;
|
|
64
|
+
}
|
|
65
|
+
}, {
|
|
66
|
+
key: "getLabelAnchors",
|
|
67
|
+
value: function getLabelAnchors(feature) {
|
|
68
|
+
// @ts-expect-error geometry type is narrowed by the switch below
|
|
69
|
+
var _ref = feature.geometry || {},
|
|
70
|
+
type = _ref.type,
|
|
71
|
+
coordinates = _ref.coordinates;
|
|
72
|
+
switch (type) {
|
|
73
|
+
case 'Point':
|
|
74
|
+
return [coordinates];
|
|
75
|
+
case 'MultiPoint':
|
|
76
|
+
return coordinates;
|
|
77
|
+
default:
|
|
78
|
+
return [];
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}, {
|
|
82
|
+
key: "updateState",
|
|
83
|
+
value: function updateState(_ref2) {
|
|
84
|
+
var _this = this;
|
|
85
|
+
var changeFlags = _ref2.changeFlags;
|
|
86
|
+
var data = this.props.data;
|
|
87
|
+
if (changeFlags.dataChanged && data) {
|
|
88
|
+
var features = data.features || data;
|
|
89
|
+
var labelData = (features || []).flatMap(function (feature, index) {
|
|
90
|
+
var labelAnchors = _this.getLabelAnchors(feature);
|
|
91
|
+
return labelAnchors.map(function (p) {
|
|
92
|
+
return _this.getSubLayerRow({
|
|
93
|
+
position: p
|
|
94
|
+
}, feature, index);
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
this.setState({
|
|
98
|
+
labelData: labelData
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}, {
|
|
103
|
+
key: "renderLayers",
|
|
104
|
+
value: function renderLayers() {
|
|
105
|
+
var _this$props = this.props,
|
|
106
|
+
config = _this$props.config,
|
|
107
|
+
labelSizeUnits = _this$props.labelSizeUnits,
|
|
108
|
+
labelBackground = _this$props.labelBackground,
|
|
109
|
+
billboard = _this$props.billboard;
|
|
110
|
+
var layers = [];
|
|
111
|
+
|
|
112
|
+
// admin lines and water
|
|
113
|
+
layers.push(new GeoJsonLayer(this.props, this.getSubLayerProps({
|
|
114
|
+
id: 'geojson'
|
|
115
|
+
}), {
|
|
116
|
+
data: this.props.data,
|
|
117
|
+
updateTriggers: {
|
|
118
|
+
getFillColor: {
|
|
119
|
+
water: config.water,
|
|
120
|
+
waterColor: config.waterColor
|
|
121
|
+
},
|
|
122
|
+
getLineColor: {
|
|
123
|
+
adminLines: config.adminLines,
|
|
124
|
+
adminLinesColor: config.adminLinesColor
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}));
|
|
128
|
+
|
|
129
|
+
// labels
|
|
130
|
+
if (config.labels) {
|
|
131
|
+
layers.push(new TextLayer(this.getSubLayerProps({
|
|
132
|
+
id: 'text'
|
|
133
|
+
}), {
|
|
134
|
+
data: this.state.labelData,
|
|
135
|
+
parameters: {
|
|
136
|
+
// Globe mode sets a global `cull: true` (to backface-cull the sphere
|
|
137
|
+
// surface). That also backface-culls the glyph quads, hiding all labels,
|
|
138
|
+
// so explicitly disable culling here. depthTest off keeps labels on top of
|
|
139
|
+
// the globe surface rather than clipping into it.
|
|
140
|
+
cull: false,
|
|
141
|
+
depthTest: false,
|
|
142
|
+
depthMask: false
|
|
143
|
+
},
|
|
144
|
+
billboard: billboard,
|
|
145
|
+
sizeUnits: labelSizeUnits,
|
|
146
|
+
// Build the font atlas from the actual labels so accented / non-ASCII
|
|
147
|
+
// characters (ü, ó, etc. in country names) aren't dropped as "missing".
|
|
148
|
+
characterSet: 'auto',
|
|
149
|
+
fontFamily: 'Monaco, monospace',
|
|
150
|
+
background: Boolean(labelBackground),
|
|
151
|
+
getBackgroundColor: function getBackgroundColor() {
|
|
152
|
+
return labelBackground || [0, 0, 0, 0];
|
|
153
|
+
},
|
|
154
|
+
getPosition: function getPosition(d) {
|
|
155
|
+
return d.position;
|
|
156
|
+
},
|
|
157
|
+
getText: this.getSubLayerAccessor(this.getLabel),
|
|
158
|
+
getSize: this.getSubLayerAccessor(this.getLabelSize),
|
|
159
|
+
getColor: function getColor() {
|
|
160
|
+
return config.labelsColor;
|
|
161
|
+
},
|
|
162
|
+
_subLayerProps: {
|
|
163
|
+
characters: {
|
|
164
|
+
type: EnhancedMultiIconLayer
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
updateTriggers: {
|
|
168
|
+
getColor: config.labelsColor
|
|
169
|
+
}
|
|
170
|
+
}));
|
|
171
|
+
}
|
|
172
|
+
return layers;
|
|
173
|
+
}
|
|
174
|
+
}]);
|
|
175
|
+
}(CompositeLayer);
|
|
176
|
+
_defineProperty(MVTLabelLayer, "layerName", 'MVTLabelLayer');
|
|
177
|
+
_defineProperty(MVTLabelLayer, "defaultProps", _objectSpread(_objectSpread({}, GeoJsonLayer.defaultProps), {}, {
|
|
178
|
+
billboard: true,
|
|
179
|
+
labelSizeUnits: 'pixels',
|
|
180
|
+
labelBackground: {
|
|
181
|
+
type: 'color',
|
|
182
|
+
value: null,
|
|
183
|
+
optional: true
|
|
184
|
+
},
|
|
185
|
+
fontFamily: 'Monaco, monospace'
|
|
186
|
+
}));
|
|
187
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb21wb3NpdGVMYXllciIsIkdlb0pzb25MYXllciIsIlRleHRMYXllciIsIkVuaGFuY2VkTXVsdGlJY29uTGF5ZXIiLCJNVlRMYWJlbExheWVyIiwiX0NvbXBvc2l0ZUxheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwiZ2V0TGFiZWwiLCJmZWF0dXJlIiwicHJvcGVydGllcyIsImxheWVyTmFtZSIsIm5hbWVfZW4iLCJuYW1lIiwiZ2V0TGFiZWxTaXplIiwiZ2V0TGFiZWxBbmNob3JzIiwiX3JlZiIsImdlb21ldHJ5IiwidHlwZSIsImNvb3JkaW5hdGVzIiwidXBkYXRlU3RhdGUiLCJfcmVmMiIsIl90aGlzIiwiY2hhbmdlRmxhZ3MiLCJkYXRhIiwicHJvcHMiLCJkYXRhQ2hhbmdlZCIsImZlYXR1cmVzIiwibGFiZWxEYXRhIiwiZmxhdE1hcCIsImluZGV4IiwibGFiZWxBbmNob3JzIiwibWFwIiwicCIsImdldFN1YkxheWVyUm93IiwicG9zaXRpb24iLCJzZXRTdGF0ZSIsInJlbmRlckxheWVycyIsIl90aGlzJHByb3BzIiwiY29uZmlnIiwibGFiZWxTaXplVW5pdHMiLCJsYWJlbEJhY2tncm91bmQiLCJiaWxsYm9hcmQiLCJsYXllcnMiLCJwdXNoIiwiZ2V0U3ViTGF5ZXJQcm9wcyIsImlkIiwidXBkYXRlVHJpZ2dlcnMiLCJnZXRGaWxsQ29sb3IiLCJ3YXRlciIsIndhdGVyQ29sb3IiLCJnZXRMaW5lQ29sb3IiLCJhZG1pbkxpbmVzIiwiYWRtaW5MaW5lc0NvbG9yIiwibGFiZWxzIiwic3RhdGUiLCJwYXJhbWV0ZXJzIiwiY3VsbCIsImRlcHRoVGVzdCIsImRlcHRoTWFzayIsInNpemVVbml0cyIsImNoYXJhY3RlclNldCIsImZvbnRGYW1pbHkiLCJiYWNrZ3JvdW5kIiwiQm9vbGVhbiIsImdldEJhY2tncm91bmRDb2xvciIsImdldFBvc2l0aW9uIiwiZCIsImdldFRleHQiLCJnZXRTdWJMYXllckFjY2Vzc29yIiwiZ2V0U2l6ZSIsImdldENvbG9yIiwibGFiZWxzQ29sb3IiLCJfc3ViTGF5ZXJQcm9wcyIsImNoYXJhY3RlcnMiLCJfZGVmaW5lUHJvcGVydHkiLCJfb2JqZWN0U3ByZWFkIiwiZGVmYXVsdFByb3BzIiwib3B0aW9uYWwiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ2xvYmUvbXZ0LWxhYmVsLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7Q29tcG9zaXRlTGF5ZXIsIENvbG9yLCBMYXllciwgVXBkYXRlUGFyYW1ldGVycywgQWNjZXNzb3JGdW5jdGlvbn0gZnJvbSAnQGRlY2suZ2wvY29yZSc7XG5pbXBvcnQge0dlb0pzb25MYXllciwgVGV4dExheWVyfSBmcm9tICdAZGVjay5nbC9sYXllcnMnO1xuXG5pbXBvcnQgdHlwZSB7R2xvYmV9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB0eXBlIHtGZWF0dXJlfSBmcm9tICdnZW9qc29uJztcblxuaW1wb3J0IEVuaGFuY2VkTXVsdGlJY29uTGF5ZXIgZnJvbSAnLi9lbmhhbmNlZC1tdWx0aS1pY29uLWxheWVyJztcblxuLy8gQ3VzdG9tIGdsb2JlIGJhc2VtYXAgbGFiZWwgbGF5ZXIuXG4vL1xuLy8gVGhpcyBjb21wb3NpdGUgaXMgdXNlZCBhcyB0aGUgYHJlbmRlclN1YkxheWVyc2Agb2YgdGhlIGdsb2JlIGJhc2VtYXAgTVZUTGF5ZXIuXG4vLyBJdCByZW5kZXJzIHR3byB0aGluZ3MgcGVyIHRpbGU6XG4vLyAgIDEuIEEgR2VvSnNvbkxheWVyIGZvciBhZG1pbiBsaW5lcyAvIHdhdGVyIGZpbGxzIChzYW1lIHZpc3VhbHMgYXMgYmVmb3JlKS5cbi8vICAgMi4gQSBUZXh0TGF5ZXIgZm9yIHBsYWNlIGxhYmVscyAoY291bnRyeSBuYW1lcyksIGdhdGVkIG9uIGBjb25maWcubGFiZWxzYC5cbi8vXG4vLyBUaGUgVGV4dExheWVyIHVzZXMgYSBjdXN0b20gYEVuaGFuY2VkTXVsdGlJY29uTGF5ZXJgIGFzIGl0cyBnbHlwaCAoY2hhcmFjdGVycylcbi8vIHN1YmxheWVyLCB3aGljaCBjdWxscyBsYWJlbHMgb24gdGhlIGZhciBzaWRlIG9mIHRoZSBnbG9iZSBzbyB0aGV5IGFyZW4ndCBkcmF3blxuLy8gdGhyb3VnaCB0aGUgcGxhbmV0LlxuXG50eXBlIE1WVExhYmVsTGF5ZXJQcm9wcyA9IHtcbiAgZGF0YToge2ZlYXR1cmVzOiBGZWF0dXJlW119IHwgRmVhdHVyZVtdO1xuICBjb25maWc6IEdsb2JlWydjb25maWcnXTtcbiAgbGFiZWxTaXplVW5pdHM/OiAnbWV0ZXJzJyB8ICdjb21tb24nIHwgJ3BpeGVscyc7XG4gIGxhYmVsQmFja2dyb3VuZD86IENvbG9yO1xuICBiaWxsYm9hcmQ/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNsYXNzIE1WVExhYmVsTGF5ZXIgZXh0ZW5kcyBDb21wb3NpdGVMYXllcjxNVlRMYWJlbExheWVyUHJvcHM+IHtcbiAgc3RhdGljIGxheWVyTmFtZSA9ICdNVlRMYWJlbExheWVyJztcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAuLi5HZW9Kc29uTGF5ZXIuZGVmYXVsdFByb3BzLFxuICAgIGJpbGxib2FyZDogdHJ1ZSxcbiAgICBsYWJlbFNpemVVbml0czogJ3BpeGVscycsXG4gICAgbGFiZWxCYWNrZ3JvdW5kOiB7dHlwZTogJ2NvbG9yJywgdmFsdWU6IG51bGwsIG9wdGlvbmFsOiB0cnVlfSxcbiAgICBmb250RmFtaWx5OiAnTW9uYWNvLCBtb25vc3BhY2UnXG4gIH07XG5cbiAgZ2V0TGFiZWwoZmVhdHVyZTogRmVhdHVyZSk6IHN0cmluZyB7XG4gICAgY29uc3Qge3Byb3BlcnRpZXN9ID0gZmVhdHVyZTtcblxuICAgIHN3aXRjaCAocHJvcGVydGllcz8ubGF5ZXJOYW1lKSB7XG4gICAgICAvLyBNYXBib3ggYG1hcGJveC1zdHJlZXRzLXY4YCBzY2hlbWEuXG4gICAgICBjYXNlICdwbGFjZV9sYWJlbCc6XG4gICAgICAgIHN3aXRjaCAocHJvcGVydGllcy5jbGFzcykge1xuICAgICAgICAgIGNhc2UgJ2NvdW50cnknOlxuICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXMubmFtZV9lbiB8fCBwcm9wZXJ0aWVzLm5hbWUgfHwgJyc7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuICAgICAgLy8gQ0FSVE8gLyBPcGVuTWFwVGlsZXMgc2NoZW1hLlxuICAgICAgY2FzZSAncGxhY2UnOlxuICAgICAgICBzd2l0Y2ggKHByb3BlcnRpZXMuY2xhc3MpIHtcbiAgICAgICAgICBjYXNlICdjb3VudHJ5JzpcbiAgICAgICAgICAgIHJldHVybiBwcm9wZXJ0aWVzWyduYW1lOmVuJ10gfHwgcHJvcGVydGllcy5uYW1lX2VuIHx8IHByb3BlcnRpZXMubmFtZSB8fCAnJztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuICB9XG5cbiAgZ2V0TGFiZWxTaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDEwO1xuICB9XG5cbiAgZ2V0TGFiZWxBbmNob3JzKGZlYXR1cmU6IEZlYXR1cmUpOiBudW1iZXJbXVtdIHtcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIGdlb21ldHJ5IHR5cGUgaXMgbmFycm93ZWQgYnkgdGhlIHN3aXRjaCBiZWxvd1xuICAgIGNvbnN0IHt0eXBlLCBjb29yZGluYXRlc30gPSBmZWF0dXJlLmdlb21ldHJ5IHx8IHt9O1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAnUG9pbnQnOlxuICAgICAgICByZXR1cm4gW2Nvb3JkaW5hdGVzXTtcbiAgICAgIGNhc2UgJ011bHRpUG9pbnQnOlxuICAgICAgICByZXR1cm4gY29vcmRpbmF0ZXM7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlU3RhdGUoe2NoYW5nZUZsYWdzfTogVXBkYXRlUGFyYW1ldGVyczx0aGlzPik6IHZvaWQge1xuICAgIGNvbnN0IHtkYXRhfSA9IHRoaXMucHJvcHM7XG4gICAgaWYgKGNoYW5nZUZsYWdzLmRhdGFDaGFuZ2VkICYmIGRhdGEpIHtcbiAgICAgIGNvbnN0IGZlYXR1cmVzID0gKGRhdGEgYXMge2ZlYXR1cmVzOiBGZWF0dXJlW119KS5mZWF0dXJlcyB8fCAoZGF0YSBhcyBGZWF0dXJlW10pO1xuICAgICAgY29uc3QgbGFiZWxEYXRhID0gKGZlYXR1cmVzIHx8IFtdKS5mbGF0TWFwKChmZWF0dXJlLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBsYWJlbEFuY2hvcnMgPSB0aGlzLmdldExhYmVsQW5jaG9ycyhmZWF0dXJlKTtcbiAgICAgICAgcmV0dXJuIGxhYmVsQW5jaG9ycy5tYXAocCA9PiB0aGlzLmdldFN1YkxheWVyUm93KHtwb3NpdGlvbjogcH0sIGZlYXR1cmUsIGluZGV4KSk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5zZXRTdGF0ZSh7bGFiZWxEYXRhfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyTGF5ZXJzKCk6IExheWVyW10ge1xuICAgIGNvbnN0IHtjb25maWcsIGxhYmVsU2l6ZVVuaXRzLCBsYWJlbEJhY2tncm91bmQsIGJpbGxib2FyZH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IGxheWVyczogTGF5ZXJbXSA9IFtdO1xuXG4gICAgLy8gYWRtaW4gbGluZXMgYW5kIHdhdGVyXG4gICAgbGF5ZXJzLnB1c2goXG4gICAgICBuZXcgR2VvSnNvbkxheWVyKHRoaXMucHJvcHMgYXMgYW55LCB0aGlzLmdldFN1YkxheWVyUHJvcHMoe2lkOiAnZ2VvanNvbid9KSwge1xuICAgICAgICBkYXRhOiB0aGlzLnByb3BzLmRhdGEgYXMgYW55LFxuICAgICAgICB1cGRhdGVUcmlnZ2Vyczoge1xuICAgICAgICAgIGdldEZpbGxDb2xvcjoge1xuICAgICAgICAgICAgd2F0ZXI6IGNvbmZpZy53YXRlcixcbiAgICAgICAgICAgIHdhdGVyQ29sb3I6IGNvbmZpZy53YXRlckNvbG9yXG4gICAgICAgICAgfSxcbiAgICAgICAgICBnZXRMaW5lQ29sb3I6IHtcbiAgICAgICAgICAgIGFkbWluTGluZXM6IGNvbmZpZy5hZG1pbkxpbmVzLFxuICAgICAgICAgICAgYWRtaW5MaW5lc0NvbG9yOiBjb25maWcuYWRtaW5MaW5lc0NvbG9yXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG5cbiAgICAvLyBsYWJlbHNcbiAgICBpZiAoY29uZmlnLmxhYmVscykge1xuICAgICAgbGF5ZXJzLnB1c2goXG4gICAgICAgIG5ldyBUZXh0TGF5ZXIodGhpcy5nZXRTdWJMYXllclByb3BzKHtpZDogJ3RleHQnfSksIHtcbiAgICAgICAgICBkYXRhOiB0aGlzLnN0YXRlLmxhYmVsRGF0YSBhcyBhbnksXG4gICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgLy8gR2xvYmUgbW9kZSBzZXRzIGEgZ2xvYmFsIGBjdWxsOiB0cnVlYCAodG8gYmFja2ZhY2UtY3VsbCB0aGUgc3BoZXJlXG4gICAgICAgICAgICAvLyBzdXJmYWNlKS4gVGhhdCBhbHNvIGJhY2tmYWNlLWN1bGxzIHRoZSBnbHlwaCBxdWFkcywgaGlkaW5nIGFsbCBsYWJlbHMsXG4gICAgICAgICAgICAvLyBzbyBleHBsaWNpdGx5IGRpc2FibGUgY3VsbGluZyBoZXJlLiBkZXB0aFRlc3Qgb2ZmIGtlZXBzIGxhYmVscyBvbiB0b3Agb2ZcbiAgICAgICAgICAgIC8vIHRoZSBnbG9iZSBzdXJmYWNlIHJhdGhlciB0aGFuIGNsaXBwaW5nIGludG8gaXQuXG4gICAgICAgICAgICBjdWxsOiBmYWxzZSxcbiAgICAgICAgICAgIGRlcHRoVGVzdDogZmFsc2UsXG4gICAgICAgICAgICBkZXB0aE1hc2s6IGZhbHNlXG4gICAgICAgICAgfSxcbiAgICAgICAgICBiaWxsYm9hcmQsXG4gICAgICAgICAgc2l6ZVVuaXRzOiBsYWJlbFNpemVVbml0cyxcbiAgICAgICAgICAvLyBCdWlsZCB0aGUgZm9udCBhdGxhcyBmcm9tIHRoZSBhY3R1YWwgbGFiZWxzIHNvIGFjY2VudGVkIC8gbm9uLUFTQ0lJXG4gICAgICAgICAgLy8gY2hhcmFjdGVycyAow7wsIMOzLCBldGMuIGluIGNvdW50cnkgbmFtZXMpIGFyZW4ndCBkcm9wcGVkIGFzIFwibWlzc2luZ1wiLlxuICAgICAgICAgIGNoYXJhY3RlclNldDogJ2F1dG8nLFxuICAgICAgICAgIGZvbnRGYW1pbHk6ICdNb25hY28sIG1vbm9zcGFjZScsXG4gICAgICAgICAgYmFja2dyb3VuZDogQm9vbGVhbihsYWJlbEJhY2tncm91bmQpLFxuICAgICAgICAgIGdldEJhY2tncm91bmRDb2xvcjogKCkgPT4gKGxhYmVsQmFja2dyb3VuZCB8fCBbMCwgMCwgMCwgMF0pIGFzIENvbG9yLFxuICAgICAgICAgIGdldFBvc2l0aW9uOiAoZDogYW55KSA9PiBkLnBvc2l0aW9uLFxuICAgICAgICAgIGdldFRleHQ6IHRoaXMuZ2V0U3ViTGF5ZXJBY2Nlc3Nvcih0aGlzLmdldExhYmVsKSBhcyBBY2Nlc3NvckZ1bmN0aW9uPEZlYXR1cmUsIHN0cmluZz4sXG4gICAgICAgICAgZ2V0U2l6ZTogdGhpcy5nZXRTdWJMYXllckFjY2Vzc29yKHRoaXMuZ2V0TGFiZWxTaXplKSxcbiAgICAgICAgICBnZXRDb2xvcjogKCkgPT4gY29uZmlnLmxhYmVsc0NvbG9yIGFzIENvbG9yLFxuICAgICAgICAgIF9zdWJMYXllclByb3BzOiB7XG4gICAgICAgICAgICBjaGFyYWN0ZXJzOiB7XG4gICAgICAgICAgICAgIHR5cGU6IEVuaGFuY2VkTXVsdGlJY29uTGF5ZXJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGFzIGFueSxcbiAgICAgICAgICB1cGRhdGVUcmlnZ2Vyczoge1xuICAgICAgICAgICAgZ2V0Q29sb3I6IGNvbmZpZy5sYWJlbHNDb2xvclxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxheWVycztcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFDQTs7QUFFQSxTQUFRQSxjQUFjLFFBQXlELGVBQWU7QUFDOUYsU0FBUUMsWUFBWSxFQUFFQyxTQUFTLFFBQU8saUJBQWlCO0FBS3ZELE9BQU9DLHNCQUFzQixNQUFNLDZCQUE2Qjs7QUFFaEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBVUEsV0FBYUMsYUFBYSwwQkFBQUMsZUFBQTtFQUFBLFNBQUFELGNBQUE7SUFBQUUsZUFBQSxPQUFBRixhQUFBO0lBQUEsT0FBQUcsVUFBQSxPQUFBSCxhQUFBLEVBQUFJLFNBQUE7RUFBQTtFQUFBQyxTQUFBLENBQUFMLGFBQUEsRUFBQUMsZUFBQTtFQUFBLE9BQUFLLFlBQUEsQ0FBQU4sYUFBQTtJQUFBTyxHQUFBO0lBQUFDLEtBQUEsRUFVeEIsU0FBQUMsUUFBUUEsQ0FBQ0MsT0FBZ0IsRUFBVTtNQUNqQyxJQUFPQyxVQUFVLEdBQUlELE9BQU8sQ0FBckJDLFVBQVU7TUFFakIsUUFBUUEsVUFBVSxhQUFWQSxVQUFVLHVCQUFWQSxVQUFVLENBQUVDLFNBQVM7UUFDM0I7UUFDQSxLQUFLLGFBQWE7VUFDaEIsUUFBUUQsVUFBVSxTQUFNO1lBQ3RCLEtBQUssU0FBUztjQUNaLE9BQU9BLFVBQVUsQ0FBQ0UsT0FBTyxJQUFJRixVQUFVLENBQUNHLElBQUksSUFBSSxFQUFFO1lBQ3BEO2NBQ0UsT0FBTyxFQUFFO1VBQ2I7UUFDRjtRQUNBLEtBQUssT0FBTztVQUNWLFFBQVFILFVBQVUsU0FBTTtZQUN0QixLQUFLLFNBQVM7Y0FDWixPQUFPQSxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUlBLFVBQVUsQ0FB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
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
4
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
5
|
+
import _get from "@babel/runtime/helpers/esm/get";
|
|
6
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
7
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
8
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
9
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
10
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
11
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
12
|
+
function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
|
|
13
|
+
// SPDX-License-Identifier: MIT
|
|
14
|
+
// Copyright contributors to the kepler.gl project
|
|
15
|
+
|
|
16
|
+
import { GridLayer } from '@deck.gl/aggregation-layers';
|
|
17
|
+
import { enrichedAggregationUpdate, enrichedRenderLayers } from '../layer-utils/aggregation-utils';
|
|
18
|
+
import { makeGlobeCellLayerClass, runBinOptionsWithMercatorViewport } from '../layer-utils/globe-cell-utils';
|
|
19
|
+
/**
|
|
20
|
+
* In deck.gl 9, GridLayer natively supports CPU aggregation via gpuAggregation: false,
|
|
21
|
+
* custom getColorValue/getElevationValue accessors, percentile filtering, and scale types.
|
|
22
|
+
* The custom CPUAggregator override from deck.gl 8 is no longer needed.
|
|
23
|
+
*
|
|
24
|
+
* We override getPickingInfo to add `cellOutline` — an array of [lng, lat] coordinates
|
|
25
|
+
* computed in common space so the outline aligns with rendered cells at all latitudes.
|
|
26
|
+
*
|
|
27
|
+
* We also override _onAggregationUpdate to send per-bin aggregated values through
|
|
28
|
+
* onSetColorDomain so the legend can compute proper quantile/custom breaks.
|
|
29
|
+
*/
|
|
30
|
+
// @ts-expect-error -- overriding private _onAggregationUpdate to enrich the onSetColorDomain callback
|
|
31
|
+
var ScaleEnhancedGridLayer = /*#__PURE__*/function (_GridLayer) {
|
|
32
|
+
function ScaleEnhancedGridLayer() {
|
|
33
|
+
_classCallCheck(this, ScaleEnhancedGridLayer);
|
|
34
|
+
return _callSuper(this, ScaleEnhancedGridLayer, arguments);
|
|
35
|
+
}
|
|
36
|
+
_inherits(ScaleEnhancedGridLayer, _GridLayer);
|
|
37
|
+
return _createClass(ScaleEnhancedGridLayer, [{
|
|
38
|
+
key: "_onAggregationUpdate",
|
|
39
|
+
value:
|
|
40
|
+
// HACK: deck.gl 9's _onAggregationUpdate is private and its onSetColorDomain
|
|
41
|
+
// callback only provides [min, max]. That is sufficient for quantize/linear
|
|
42
|
+
// scales but d3.scaleQuantile needs the *full sorted array* of bin values to
|
|
43
|
+
// compute correct break points — without it the legend labels are wrong
|
|
44
|
+
function _onAggregationUpdate(_ref) {
|
|
45
|
+
var channel = _ref.channel;
|
|
46
|
+
enrichedAggregationUpdate(this, GridLayer, channel);
|
|
47
|
+
}
|
|
48
|
+
}, {
|
|
49
|
+
key: "renderLayers",
|
|
50
|
+
value: function renderLayers() {
|
|
51
|
+
return enrichedRenderLayers(this, GridLayer);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// In globe mode, run deck.gl's bin/common-space setup under a WebMercatorViewport
|
|
55
|
+
// so binning and the cell shader's flat common space are genuine Web Mercator, which
|
|
56
|
+
// the globe cell subclass then remaps onto the sphere surface. No-op in 2D/3D mode.
|
|
57
|
+
}, {
|
|
58
|
+
key: "_updateBinOptions",
|
|
59
|
+
value: function _updateBinOptions() {
|
|
60
|
+
var _this = this;
|
|
61
|
+
runBinOptionsWithMercatorViewport(this, function () {
|
|
62
|
+
return GridLayer.prototype._updateBinOptions.call(_this);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// deck.gl's GridCellLayer positions cells in flat common space, which lands them
|
|
67
|
+
// on the XY plane through the globe center. Swap in a globe-aware subclass that
|
|
68
|
+
// curves cells onto the sphere surface (no-op in 2D/3D mode).
|
|
69
|
+
}, {
|
|
70
|
+
key: "getSubLayerClass",
|
|
71
|
+
value: function getSubLayerClass(subLayerId, DefaultLayerClass) {
|
|
72
|
+
var resolved = _superPropGet(ScaleEnhancedGridLayer, "getSubLayerClass", this, 3)([subLayerId, DefaultLayerClass]);
|
|
73
|
+
if (subLayerId === 'cells') {
|
|
74
|
+
return makeGlobeCellLayerClass(resolved, 'grid');
|
|
75
|
+
}
|
|
76
|
+
return resolved;
|
|
77
|
+
}
|
|
78
|
+
}, {
|
|
79
|
+
key: "getPickingInfo",
|
|
80
|
+
value: function getPickingInfo(params) {
|
|
81
|
+
var info = _superPropGet(ScaleEnhancedGridLayer, "getPickingInfo", this, 3)([params]);
|
|
82
|
+
if (info.object) {
|
|
83
|
+
var _this$props$coverage;
|
|
84
|
+
var _ref2 = this.state,
|
|
85
|
+
cellOriginCommon = _ref2.cellOriginCommon,
|
|
86
|
+
cellSizeCommon = _ref2.cellSizeCommon,
|
|
87
|
+
aggregatorViewport = _ref2.aggregatorViewport;
|
|
88
|
+
var coverage = (_this$props$coverage = this.props.coverage) !== null && _this$props$coverage !== void 0 ? _this$props$coverage : 1;
|
|
89
|
+
if (!cellOriginCommon || !cellSizeCommon || !aggregatorViewport) {
|
|
90
|
+
console.error('ScaleEnhancedGridLayer: expected internal state properties ' + '(cellOriginCommon, cellSizeCommon, aggregatorViewport) are missing. ' + 'Hover outline will not be shown. This may indicate a deck.gl version change.');
|
|
91
|
+
return info;
|
|
92
|
+
}
|
|
93
|
+
var _ref3 = info.object,
|
|
94
|
+
col = _ref3.col,
|
|
95
|
+
row = _ref3.row;
|
|
96
|
+
if (typeof col !== 'number' || typeof row !== 'number') return info;
|
|
97
|
+
var cx = (col + 0.5) * cellSizeCommon[0] + cellOriginCommon[0];
|
|
98
|
+
var cy = (row + 0.5) * cellSizeCommon[1] + cellOriginCommon[1];
|
|
99
|
+
var hw = 0.5 * coverage * cellSizeCommon[0];
|
|
100
|
+
var hh = 0.5 * coverage * cellSizeCommon[1];
|
|
101
|
+
info.object.cellOutline = [aggregatorViewport.unprojectFlat([cx - hw, cy - hh]), aggregatorViewport.unprojectFlat([cx + hw, cy - hh]), aggregatorViewport.unprojectFlat([cx + hw, cy + hh]), aggregatorViewport.unprojectFlat([cx - hw, cy + hh]), aggregatorViewport.unprojectFlat([cx - hw, cy - hh])];
|
|
102
|
+
}
|
|
103
|
+
return info;
|
|
104
|
+
}
|
|
105
|
+
}]);
|
|
106
|
+
}(GridLayer);
|
|
107
|
+
_defineProperty(ScaleEnhancedGridLayer, "defaultProps", _objectSpread(_objectSpread({}, GridLayer.defaultProps), {}, {
|
|
108
|
+
gpuAggregation: false
|
|
109
|
+
}));
|
|
110
|
+
export { ScaleEnhancedGridLayer as default };
|
|
111
|
+
ScaleEnhancedGridLayer.layerName = 'ScaleEnhancedGridLayer';
|
|
112
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJHcmlkTGF5ZXIiLCJlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlIiwiZW5yaWNoZWRSZW5kZXJMYXllcnMiLCJtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyIsInJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCIsIlNjYWxlRW5oYW5jZWRHcmlkTGF5ZXIiLCJfR3JpZExheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwiX29uQWdncmVnYXRpb25VcGRhdGUiLCJfcmVmIiwiY2hhbm5lbCIsInJlbmRlckxheWVycyIsIl91cGRhdGVCaW5PcHRpb25zIiwiX3RoaXMiLCJwcm90b3R5cGUiLCJjYWxsIiwiZ2V0U3ViTGF5ZXJDbGFzcyIsInN1YkxheWVySWQiLCJEZWZhdWx0TGF5ZXJDbGFzcyIsInJlc29sdmVkIiwiX3N1cGVyUHJvcEdldCIsImdldFBpY2tpbmdJbmZvIiwicGFyYW1zIiwiaW5mbyIsIm9iamVjdCIsIl90aGlzJHByb3BzJGNvdmVyYWdlIiwiX3JlZjIiLCJzdGF0ZSIsImNlbGxPcmlnaW5Db21tb24iLCJjZWxsU2l6ZUNvbW1vbiIsImFnZ3JlZ2F0b3JWaWV3cG9ydCIsImNvdmVyYWdlIiwicHJvcHMiLCJjb25zb2xlIiwiZXJyb3IiLCJfcmVmMyIsImNvbCIsInJvdyIsImN4IiwiY3kiLCJodyIsImhoIiwiY2VsbE91dGxpbmUiLCJ1bnByb2plY3RGbGF0IiwiX2RlZmluZVByb3BlcnR5IiwiX29iamVjdFNwcmVhZCIsImRlZmF1bHRQcm9wcyIsImdwdUFnZ3JlZ2F0aW9uIiwiZGVmYXVsdCIsImxheWVyTmFtZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ncmlkLWxheWVyL2VuaGFuY2VkLWNwdS1ncmlkLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7R3JpZExheWVyLCBHcmlkTGF5ZXJQaWNraW5nSW5mb30gZnJvbSAnQGRlY2suZ2wvYWdncmVnYXRpb24tbGF5ZXJzJztcbmltcG9ydCB7R2V0UGlja2luZ0luZm9QYXJhbXMsIExheWVyLCBQaWNraW5nSW5mbywgVmlld3BvcnR9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlLCBlbnJpY2hlZFJlbmRlckxheWVyc30gZnJvbSAnLi4vbGF5ZXItdXRpbHMvYWdncmVnYXRpb24tdXRpbHMnO1xuaW1wb3J0IHtcbiAgbWFrZUdsb2JlQ2VsbExheWVyQ2xhc3MsXG4gIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydFxufSBmcm9tICcuLi9sYXllci11dGlscy9nbG9iZS1jZWxsLXV0aWxzJztcblxuaW50ZXJmYWNlIEdyaWRJbnRlcm5hbFN0YXRlIHtcbiAgY2VsbE9yaWdpbkNvbW1vbj86IFtudW1iZXIsIG51bWJlcl07XG4gIGNlbGxTaXplQ29tbW9uPzogW251bWJlciwgbnVtYmVyXTtcbiAgYWdncmVnYXRvclZpZXdwb3J0PzogVmlld3BvcnQgJiB7dW5wcm9qZWN0RmxhdCh4eTogbnVtYmVyW10pOiBudW1iZXJbXX07XG59XG5cbmludGVyZmFjZSBHcmlkUGlja2luZ09iamVjdCB7XG4gIGNvbDogbnVtYmVyO1xuICByb3c6IG51bWJlcjtcbiAgY2VsbE91dGxpbmU/OiBudW1iZXJbXVtdO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEluIGRlY2suZ2wgOSwgR3JpZExheWVyIG5hdGl2ZWx5IHN1cHBvcnRzIENQVSBhZ2dyZWdhdGlvbiB2aWEgZ3B1QWdncmVnYXRpb246IGZhbHNlLFxuICogY3VzdG9tIGdldENvbG9yVmFsdWUvZ2V0RWxldmF0aW9uVmFsdWUgYWNjZXNzb3JzLCBwZXJjZW50aWxlIGZpbHRlcmluZywgYW5kIHNjYWxlIHR5cGVzLlxuICogVGhlIGN1c3RvbSBDUFVBZ2dyZWdhdG9yIG92ZXJyaWRlIGZyb20gZGVjay5nbCA4IGlzIG5vIGxvbmdlciBuZWVkZWQuXG4gKlxuICogV2Ugb3ZlcnJpZGUgZ2V0UGlja2luZ0luZm8gdG8gYWRkIGBjZWxsT3V0bGluZWAg4oCUIGFuIGFycmF5IG9mIFtsbmcsIGxhdF0gY29vcmRpbmF0ZXNcbiAqIGNvbXB1dGVkIGluIGNvbW1vbiBzcGFjZSBzbyB0aGUgb3V0bGluZSBhbGlnbnMgd2l0aCByZW5kZXJlZCBjZWxscyBhdCBhbGwgbGF0aXR1ZGVzLlxuICpcbiAqIFdlIGFsc28gb3ZlcnJpZGUgX29uQWdncmVnYXRpb25VcGRhdGUgdG8gc2VuZCBwZXItYmluIGFnZ3JlZ2F0ZWQgdmFsdWVzIHRocm91Z2hcbiAqIG9uU2V0Q29sb3JEb21haW4gc28gdGhlIGxlZ2VuZCBjYW4gY29tcHV0ZSBwcm9wZXIgcXVhbnRpbGUvY3VzdG9tIGJyZWFrcy5cbiAqL1xuLy8gQHRzLWV4cGVjdC1lcnJvciAtLSBvdmVycmlkaW5nIHByaXZhdGUgX29uQWdncmVnYXRpb25VcGRhdGUgdG8gZW5yaWNoIHRoZSBvblNldENvbG9yRG9tYWluIGNhbGxiYWNrXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTY2FsZUVuaGFuY2VkR3JpZExheWVyIGV4dGVuZHMgR3JpZExheWVyPGFueT4ge1xuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIC4uLkdyaWRMYXllci5kZWZhdWx0UHJvcHMsXG4gICAgZ3B1QWdncmVnYXRpb246IGZhbHNlXG4gIH07XG5cbiAgLy8gSEFDSzogZGVjay5nbCA5J3MgX29uQWdncmVnYXRpb25VcGRhdGUgaXMgcHJpdmF0ZSBhbmQgaXRzIG9uU2V0Q29sb3JEb21haW5cbiAgLy8gY2FsbGJhY2sgb25seSBwcm92aWRlcyBbbWluLCBtYXhdLiAgVGhhdCBpcyBzdWZmaWNpZW50IGZvciBxdWFudGl6ZS9saW5lYXJcbiAgLy8gc2NhbGVzIGJ1dCBkMy5zY2FsZVF1YW50aWxlIG5lZWRzIHRoZSAqZnVsbCBzb3J0ZWQgYXJyYXkqIG9mIGJpbiB2YWx1ZXMgdG9cbiAgLy8gY29tcHV0ZSBjb3JyZWN0IGJyZWFrIHBvaW50cyDigJQgd2l0aG91dCBpdCB0aGUgbGVnZW5kIGxhYmVscyBhcmUgd3JvbmdcbiAgX29uQWdncmVnYXRpb25VcGRhdGUoe2NoYW5uZWx9OiB7Y2hhbm5lbDogbnVtYmVyfSkge1xuICAgIGVucmljaGVkQWdncmVnYXRpb25VcGRhdGUodGhpcywgR3JpZExheWVyLCBjaGFubmVsKTtcbiAgfVxuXG4gIHJlbmRlckxheWVycygpIHtcbiAgICByZXR1cm4gZW5yaWNoZWRSZW5kZXJMYXllcnModGhpcywgR3JpZExheWVyKTtcbiAgfVxuXG4gIC8vIEluIGdsb2JlIG1vZGUsIHJ1biBkZWNrLmdsJ3MgYmluL2NvbW1vbi1zcGFjZSBzZXR1cCB1bmRlciBhIFdlYk1lcmNhdG9yVmlld3BvcnRcbiAgLy8gc28gYmlubmluZyBhbmQgdGhlIGNlbGwgc2hhZGVyJ3MgZmxhdCBjb21tb24gc3BhY2UgYXJlIGdlbnVpbmUgV2ViIE1lcmNhdG9yLCB3aGljaFxuICAvLyB0aGUgZ2xvYmUgY2VsbCBzdWJjbGFzcyB0aGVuIHJlbWFwcyBvbnRvIHRoZSBzcGhlcmUgc3VyZmFjZS4gTm8tb3AgaW4gMkQvM0QgbW9kZS5cbiAgX3VwZGF0ZUJpbk9wdGlvbnMoKSB7XG4gICAgcnVuQmluT3B0aW9uc1dpdGhNZXJjYXRvclZpZXdwb3J0KHRoaXMsICgpID0+XG4gICAgICAoR3JpZExheWVyLnByb3RvdHlwZSBhcyBhbnkpLl91cGRhdGVCaW5PcHRpb25zLmNhbGwodGhpcylcbiAgICApO1xuICB9XG5cbiAgLy8gZGVjay5nbCdzIEdyaWRDZWxsTGF5ZXIgcG9zaXRpb25zIGNlbGxzIGluIGZsYXQgY29tbW9uIHNwYWNlLCB3aGljaCBsYW5kcyB0aGVtXG4gIC8vIG9uIHRoZSBYWSBwbGFuZSB0aHJvdWdoIHRoZSBnbG9iZSBjZW50ZXIuIFN3YXAgaW4gYSBnbG9iZS1hd2FyZSBzdWJjbGFzcyB0aGF0XG4gIC8vIGN1cnZlcyBjZWxscyBvbnRvIHRoZSBzcGhlcmUgc3VyZmFjZSAobm8tb3AgaW4gMkQvM0QgbW9kZSkuXG4gIGdldFN1YkxheWVyQ2xhc3M8VCBleHRlbmRzIExheWVyPihzdWJMYXllcklkOiBzdHJpbmcsIERlZmF1bHRMYXllckNsYXNzOiB7bmV3ICguLi5hcmdzOiBhbnlbXSk6IFR9KSB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSBzdXBlci5nZXRTdWJMYXllckNsYXNzKHN1YkxheWVySWQsIERlZmF1bHRMYXllckNsYXNzKTtcbiAgICBpZiAoc3ViTGF5ZXJJZCA9PT0gJ2NlbGxzJykge1xuICAgICAgcmV0dXJuIG1ha2VHbG9iZUNlbGxMYXllckNsYXNzKFxuICAgICAgICByZXNvbHZlZCBhcyB1bmtub3duIGFzIHtuZXcgKC4uLmFyZ3M6IGFueVtdKTogVH0sXG4gICAgICAgICdncmlkJ1xuICAgICAgKSBhcyB1bmtub3duIGFzIHtcbiAgICAgICAgbmV3ICguLi5hcmdzOiBhbnlbXSk6IFQ7XG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gcmVzb2x2ZWQ7XG4gIH1cblxuICBnZXRQaWNraW5nSW5mbyhwYXJhbXM6IEdldFBpY2tpbmdJbmZvUGFyYW1zKTogUGlja2luZ0luZm8ge1xuICAgIGNvbnN0IGluZm8gPSBzdXBlci5nZXRQaWNraW5nSW5mbyhwYXJhbXMpIGFzIEdyaWRMYXllclBpY2tpbmdJbmZvPFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcbiAgICBpZiAoaW5mby5vYmplY3QpIHtcbiAgICAgIGNvbnN0IHtjZWxsT3JpZ2luQ29tbW9uLCBjZWxsU2l6ZUNvbW1vbiwgYWdncmVnYXRvclZpZXdwb3J0fSA9IHRoaXNcbiAgICAgICAgLnN0YXRlIGFzIHVua25vd24gYXMgR3JpZEludGVybmFsU3RhdGU7XG4gICAgICBjb25zdCBjb3ZlcmFnZSA9IHRoaXMucHJvcHMuY292ZXJhZ2UgPz8gMTtcbiAgICAgIGlmICghY2VsbE9yaWdpbkNvbW1vbiB8fCAhY2VsbFNpemVDb21tb24gfHwgIWFnZ3JlZ2F0b3JWaWV3cG9ydCkge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICdTY2FsZUVuaGFuY2VkR3JpZExheWVyOiBleHBlY3RlZCBpbnRlcm5hbCBzdGF0ZSBwcm9wZXJ0aWVzICcgK1xuICAgICAgICAgICAgJyhjZWxsT3JpZ2luQ29tbW9uLCBjZWxsU2l6ZUNvbW1vbiwgYWdncmVnYXRvclZpZXdwb3J0KSBhcmUgbWlzc2luZy4gJyArXG4gICAgICAgICAgICAnSG92ZXIgb3V0bGluZSB3aWxsIG5vdCBiZSBzaG93bi4gVGhpcyBtYXkgaW5kaWNhdGUgYSBkZWNrLmdsIHZlcnNpb24gY2hhbmdlLidcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIGluZm87XG4gICAgICB9XG4gICAgICBjb25zdCB7Y29sLCByb3d9ID0gaW5mby5vYmplY3QgYXMgR3JpZFBpY2tpbmdPYmplY3Q7XG4gICAgICBpZiAodHlwZW9mIGNvbCAhPT0gJ251bWJlcicgfHwgdHlwZW9mIHJvdyAhPT0gJ251bWJlcicpIHJldHVybiBpbmZvO1xuICAgICAgY29uc3QgY3ggPSAoY29sICsgMC41KSAqIGNlbGxTaXplQ29tbW9uWzBdICsgY2VsbE9yaWdpbkNvbW1vblswXTtcbiAgICAgIGNvbnN0IGN5ID0gKHJvdyArIDAuNSkgKiBjZWxsU2l6ZUNvbW1vblsxXSArIGNlbGxPcmlnaW5Db21tb25bMV07XG4gICAgICBjb25zdCBodyA9IDAuNSAqIGNvdmVyYWdlICogY2VsbFNpemVDb21tb25bMF07XG4gICAgICBjb25zdCBoaCA9IDAuNSAqIGNvdmVyYWdlICogY2VsbFNpemVDb21tb25bMV07XG5cbiAgICAgIChpbmZvLm9iamVjdCBhcyBHcmlkUGlja2luZ09iamVjdCkuY2VsbE91dGxpbmUgPSBbXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCAtIGh3LCBjeSAtIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCArIGh3LCBjeSAtIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCArIGh3LCBjeSArIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCAtIGh3LCBjeSArIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCAtIGh3LCBjeSAtIGhoXSlcbiAgICAgIF07XG4gICAgfVxuICAgIHJldHVybiBpbmZvO1xuICB9XG59XG5cblNjYWxlRW5oYW5jZWRHcmlkTGF5ZXIubGF5ZXJOYW1lID0gJ1NjYWxlRW5oYW5jZWRHcmlkTGF5ZXInO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTtBQUNBOztBQUVBLFNBQVFBLFNBQVMsUUFBNkIsNkJBQTZCO0FBRTNFLFNBQVFDLHlCQUF5QixFQUFFQyxvQkFBb0IsUUFBTyxrQ0FBa0M7QUFDaEcsU0FDRUMsdUJBQXVCLEVBQ3ZCQyxpQ0FBaUMsUUFDNUIsaUNBQWlDO0FBZXhDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBLElBQ3FCQyxzQkFBc0IsMEJBQUFDLFVBQUE7RUFBQSxTQUFBRCx1QkFBQTtJQUFBRSxlQUFBLE9BQUFGLHNCQUFBO0lBQUEsT0FBQUcsVUFBQSxPQUFBSCxzQkFBQSxFQUFBSSxTQUFBO0VBQUE7RUFBQUMsU0FBQSxDQUFBTCxzQkFBQSxFQUFBQyxVQUFBO0VBQUEsT0FBQUssWUFBQSxDQUFBTixzQkFBQTtJQUFBTyxHQUFBO0lBQUFDLEtBQUE7SUFNekM7SUFDQTtJQUNBO0lBQ0E7SUFDQSxTQUFBQyxvQkFBb0JBLENBQUFDLElBQUEsRUFBK0I7TUFBQSxJQUE3QkMsT0FBTyxHQUFBRCxJQUFBLENBQVBDLE9BQU87TUFDM0JmLHlCQUF5QixDQUFDLElB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
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
4
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
5
|
+
import _get from "@babel/runtime/helpers/esm/get";
|
|
6
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
7
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
8
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
9
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
10
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
11
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
12
|
+
function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
|
|
13
|
+
// SPDX-License-Identifier: MIT
|
|
14
|
+
// Copyright contributors to the kepler.gl project
|
|
15
|
+
|
|
16
|
+
import { HexagonLayer } from '@deck.gl/aggregation-layers';
|
|
17
|
+
import { enrichedAggregationUpdate, enrichedRenderLayers } from '../layer-utils/aggregation-utils';
|
|
18
|
+
import { makeGlobeCellLayerClass, runBinOptionsWithMercatorViewport } from '../layer-utils/globe-cell-utils';
|
|
19
|
+
var THIRD_PI = Math.PI / 3;
|
|
20
|
+
var HexbinVertices = Array.from({
|
|
21
|
+
length: 6
|
|
22
|
+
}, function (_, i) {
|
|
23
|
+
var angle = i * THIRD_PI;
|
|
24
|
+
return [Math.sin(angle), -Math.cos(angle)];
|
|
25
|
+
});
|
|
26
|
+
function getHexbinCentroid(id, radius) {
|
|
27
|
+
var DIST_X = 2 * Math.sin(THIRD_PI);
|
|
28
|
+
var DIST_Y = 1.5;
|
|
29
|
+
return [(id[0] + (id[1] & 1) / 2) * radius * DIST_X, id[1] * radius * DIST_Y];
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* In deck.gl 9, HexagonLayer natively supports CPU aggregation via gpuAggregation: false,
|
|
33
|
+
* custom getColorValue/getElevationValue accessors, percentile filtering, and scale types.
|
|
34
|
+
*
|
|
35
|
+
* We override getPickingInfo to add `cellOutline` — an array of [lng, lat] coordinates
|
|
36
|
+
* computed in common space so the outline aligns with rendered cells at all latitudes.
|
|
37
|
+
*
|
|
38
|
+
* We also override _onAggregationUpdate to send per-bin aggregated values through
|
|
39
|
+
* onSetColorDomain so the legend can compute proper quantile/custom breaks.
|
|
40
|
+
*/
|
|
41
|
+
// @ts-expect-error -- overriding private _onAggregationUpdate to enrich the onSetColorDomain callback
|
|
42
|
+
var ScaleEnhancedHexagonLayer = /*#__PURE__*/function (_HexagonLayer) {
|
|
43
|
+
function ScaleEnhancedHexagonLayer() {
|
|
44
|
+
_classCallCheck(this, ScaleEnhancedHexagonLayer);
|
|
45
|
+
return _callSuper(this, ScaleEnhancedHexagonLayer, arguments);
|
|
46
|
+
}
|
|
47
|
+
_inherits(ScaleEnhancedHexagonLayer, _HexagonLayer);
|
|
48
|
+
return _createClass(ScaleEnhancedHexagonLayer, [{
|
|
49
|
+
key: "_onAggregationUpdate",
|
|
50
|
+
value:
|
|
51
|
+
// HACK: deck.gl 9's _onAggregationUpdate is private and its onSetColorDomain
|
|
52
|
+
// callback only provides [min, max]. That is sufficient for quantize/linear
|
|
53
|
+
// scales but d3.scaleQuantile needs the *full sorted array* of bin values to
|
|
54
|
+
// compute correct break points — without it the legend labels are wrong
|
|
55
|
+
function _onAggregationUpdate(_ref) {
|
|
56
|
+
var channel = _ref.channel;
|
|
57
|
+
enrichedAggregationUpdate(this, HexagonLayer, channel);
|
|
58
|
+
}
|
|
59
|
+
}, {
|
|
60
|
+
key: "renderLayers",
|
|
61
|
+
value: function renderLayers() {
|
|
62
|
+
return enrichedRenderLayers(this, HexagonLayer);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// In globe mode, run deck.gl's bin/common-space setup under a WebMercatorViewport
|
|
66
|
+
// so binning and the cell shader's flat common space are genuine Web Mercator, which
|
|
67
|
+
// the globe cell subclass then remaps onto the sphere surface. No-op in 2D/3D mode.
|
|
68
|
+
}, {
|
|
69
|
+
key: "_updateBinOptions",
|
|
70
|
+
value: function _updateBinOptions() {
|
|
71
|
+
var _this = this;
|
|
72
|
+
runBinOptionsWithMercatorViewport(this, function () {
|
|
73
|
+
return HexagonLayer.prototype._updateBinOptions.call(_this);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// deck.gl's HexagonCellLayer positions cells in flat common space, which lands
|
|
78
|
+
// them on the XY plane through the globe center. Swap in a globe-aware subclass
|
|
79
|
+
// that curves cells onto the sphere surface (no-op in 2D/3D mode).
|
|
80
|
+
}, {
|
|
81
|
+
key: "getSubLayerClass",
|
|
82
|
+
value: function getSubLayerClass(subLayerId, DefaultLayerClass) {
|
|
83
|
+
var resolved = _superPropGet(ScaleEnhancedHexagonLayer, "getSubLayerClass", this, 3)([subLayerId, DefaultLayerClass]);
|
|
84
|
+
if (subLayerId === 'cells') {
|
|
85
|
+
return makeGlobeCellLayerClass(resolved, 'hexagon');
|
|
86
|
+
}
|
|
87
|
+
return resolved;
|
|
88
|
+
}
|
|
89
|
+
}, {
|
|
90
|
+
key: "getPickingInfo",
|
|
91
|
+
value: function getPickingInfo(params) {
|
|
92
|
+
var info = _superPropGet(ScaleEnhancedHexagonLayer, "getPickingInfo", this, 3)([params]);
|
|
93
|
+
if (info.object) {
|
|
94
|
+
var _this$props$coverage, _hexOriginCommon$, _hexOriginCommon$2;
|
|
95
|
+
var _ref2 = this.state,
|
|
96
|
+
radiusCommon = _ref2.radiusCommon,
|
|
97
|
+
hexOriginCommon = _ref2.hexOriginCommon,
|
|
98
|
+
aggregatorViewport = _ref2.aggregatorViewport;
|
|
99
|
+
var coverage = (_this$props$coverage = this.props.coverage) !== null && _this$props$coverage !== void 0 ? _this$props$coverage : 1;
|
|
100
|
+
if (!radiusCommon || !aggregatorViewport) {
|
|
101
|
+
console.error('ScaleEnhancedHexagonLayer: expected internal state properties ' + '(radiusCommon, aggregatorViewport) are missing. ' + 'Hover outline will not be shown. This may indicate a deck.gl version change.');
|
|
102
|
+
return info;
|
|
103
|
+
}
|
|
104
|
+
var _ref3 = info.object,
|
|
105
|
+
col = _ref3.col,
|
|
106
|
+
row = _ref3.row;
|
|
107
|
+
if (typeof col !== 'number' || typeof row !== 'number') return info;
|
|
108
|
+
var centroid = getHexbinCentroid([col, row], radiusCommon);
|
|
109
|
+
var ox = (_hexOriginCommon$ = hexOriginCommon === null || hexOriginCommon === void 0 ? void 0 : hexOriginCommon[0]) !== null && _hexOriginCommon$ !== void 0 ? _hexOriginCommon$ : 0;
|
|
110
|
+
var oy = (_hexOriginCommon$2 = hexOriginCommon === null || hexOriginCommon === void 0 ? void 0 : hexOriginCommon[1]) !== null && _hexOriginCommon$2 !== void 0 ? _hexOriginCommon$2 : 0;
|
|
111
|
+
var r = radiusCommon * coverage;
|
|
112
|
+
var outline = [];
|
|
113
|
+
for (var i = 0; i < 6; i++) {
|
|
114
|
+
var vx = centroid[0] + r * HexbinVertices[i][0] + ox;
|
|
115
|
+
var vy = centroid[1] + r * HexbinVertices[i][1] + oy;
|
|
116
|
+
outline.push(aggregatorViewport.unprojectFlat([vx, vy]));
|
|
117
|
+
}
|
|
118
|
+
outline.push(outline[0]);
|
|
119
|
+
info.object.cellOutline = outline;
|
|
120
|
+
}
|
|
121
|
+
return info;
|
|
122
|
+
}
|
|
123
|
+
}]);
|
|
124
|
+
}(HexagonLayer);
|
|
125
|
+
_defineProperty(ScaleEnhancedHexagonLayer, "defaultProps", _objectSpread(_objectSpread({}, HexagonLayer.defaultProps), {}, {
|
|
126
|
+
gpuAggregation: false
|
|
127
|
+
}));
|
|
128
|
+
export { ScaleEnhancedHexagonLayer as default };
|
|
129
|
+
ScaleEnhancedHexagonLayer.layerName = 'ScaleEnhancedHexagonLayer';
|
|
130
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJIZXhhZ29uTGF5ZXIiLCJlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlIiwiZW5yaWNoZWRSZW5kZXJMYXllcnMiLCJtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyIsInJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCIsIlRISVJEX1BJIiwiTWF0aCIsIlBJIiwiSGV4YmluVmVydGljZXMiLCJBcnJheSIsImZyb20iLCJsZW5ndGgiLCJfIiwiaSIsImFuZ2xlIiwic2luIiwiY29zIiwiZ2V0SGV4YmluQ2VudHJvaWQiLCJpZCIsInJhZGl1cyIsIkRJU1RfWCIsIkRJU1RfWSIsIlNjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXIiLCJfSGV4YWdvbkxheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwiX29uQWdncmVnYXRpb25VcGRhdGUiLCJfcmVmIiwiY2hhbm5lbCIsInJlbmRlckxheWVycyIsIl91cGRhdGVCaW5PcHRpb25zIiwiX3RoaXMiLCJwcm90b3R5cGUiLCJjYWxsIiwiZ2V0U3ViTGF5ZXJDbGFzcyIsInN1YkxheWVySWQiLCJEZWZhdWx0TGF5ZXJDbGFzcyIsInJlc29sdmVkIiwiX3N1cGVyUHJvcEdldCIsImdldFBpY2tpbmdJbmZvIiwicGFyYW1zIiwiaW5mbyIsIm9iamVjdCIsIl90aGlzJHByb3BzJGNvdmVyYWdlIiwiX2hleE9yaWdpbkNvbW1vbiQiLCJfaGV4T3JpZ2luQ29tbW9uJDIiLCJfcmVmMiIsInN0YXRlIiwicmFkaXVzQ29tbW9uIiwiaGV4T3JpZ2luQ29tbW9uIiwiYWdncmVnYXRvclZpZXdwb3J0IiwiY292ZXJhZ2UiLCJwcm9wcyIsImNvbnNvbGUiLCJlcnJvciIsIl9yZWYzIiwiY29sIiwicm93IiwiY2VudHJvaWQiLCJveCIsIm95IiwiciIsIm91dGxpbmUiLCJ2eCIsInZ5IiwicHVzaCIsInVucHJvamVjdEZsYXQiLCJjZWxsT3V0bGluZSIsIl9kZWZpbmVQcm9wZXJ0eSIsIl9vYmplY3RTcHJlYWQiLCJkZWZhdWx0UHJvcHMiLCJncHVBZ2dyZWdhdGlvbiIsImRlZmF1bHQiLCJsYXllck5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaGV4YWdvbi1sYXllci9lbmhhbmNlZC1oZXhhZ29uLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7SGV4YWdvbkxheWVyLCBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mb30gZnJvbSAnQGRlY2suZ2wvYWdncmVnYXRpb24tbGF5ZXJzJztcbmltcG9ydCB7R2V0UGlja2luZ0luZm9QYXJhbXMsIExheWVyLCBQaWNraW5nSW5mbywgVmlld3BvcnR9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlLCBlbnJpY2hlZFJlbmRlckxheWVyc30gZnJvbSAnLi4vbGF5ZXItdXRpbHMvYWdncmVnYXRpb24tdXRpbHMnO1xuaW1wb3J0IHtcbiAgbWFrZUdsb2JlQ2VsbExheWVyQ2xhc3MsXG4gIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydFxufSBmcm9tICcuLi9sYXllci11dGlscy9nbG9iZS1jZWxsLXV0aWxzJztcblxuY29uc3QgVEhJUkRfUEkgPSBNYXRoLlBJIC8gMztcbmNvbnN0IEhleGJpblZlcnRpY2VzID0gQXJyYXkuZnJvbSh7bGVuZ3RoOiA2fSwgKF8sIGkpID0+IHtcbiAgY29uc3QgYW5nbGUgPSBpICogVEhJUkRfUEk7XG4gIHJldHVybiBbTWF0aC5zaW4oYW5nbGUpLCAtTWF0aC5jb3MoYW5nbGUpXTtcbn0pO1xuXG5mdW5jdGlvbiBnZXRIZXhiaW5DZW50cm9pZChpZDogW251bWJlciwgbnVtYmVyXSwgcmFkaXVzOiBudW1iZXIpOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgRElTVF9YID0gMiAqIE1hdGguc2luKFRISVJEX1BJKTtcbiAgY29uc3QgRElTVF9ZID0gMS41O1xuICByZXR1cm4gWyhpZFswXSArIChpZFsxXSAmIDEpIC8gMikgKiByYWRpdXMgKiBESVNUX1gsIGlkWzFdICogcmFkaXVzICogRElTVF9ZXTtcbn1cblxuaW50ZXJmYWNlIEhleEludGVybmFsU3RhdGUge1xuICByYWRpdXNDb21tb24/OiBudW1iZXI7XG4gIGhleE9yaWdpbkNvbW1vbj86IFtudW1iZXIsIG51bWJlcl07XG4gIGFnZ3JlZ2F0b3JWaWV3cG9ydD86IFZpZXdwb3J0ICYge3VucHJvamVjdEZsYXQoeHk6IG51bWJlcltdKTogbnVtYmVyW119O1xufVxuXG5pbnRlcmZhY2UgSGV4UGlja2luZ09iamVjdCB7XG4gIGNvbDogbnVtYmVyO1xuICByb3c6IG51bWJlcjtcbiAgY2VsbE91dGxpbmU/OiBudW1iZXJbXVtdO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEluIGRlY2suZ2wgOSwgSGV4YWdvbkxheWVyIG5hdGl2ZWx5IHN1cHBvcnRzIENQVSBhZ2dyZWdhdGlvbiB2aWEgZ3B1QWdncmVnYXRpb246IGZhbHNlLFxuICogY3VzdG9tIGdldENvbG9yVmFsdWUvZ2V0RWxldmF0aW9uVmFsdWUgYWNjZXNzb3JzLCBwZXJjZW50aWxlIGZpbHRlcmluZywgYW5kIHNjYWxlIHR5cGVzLlxuICpcbiAqIFdlIG92ZXJyaWRlIGdldFBpY2tpbmdJbmZvIHRvIGFkZCBgY2VsbE91dGxpbmVgIOKAlCBhbiBhcnJheSBvZiBbbG5nLCBsYXRdIGNvb3JkaW5hdGVzXG4gKiBjb21wdXRlZCBpbiBjb21tb24gc3BhY2Ugc28gdGhlIG91dGxpbmUgYWxpZ25zIHdpdGggcmVuZGVyZWQgY2VsbHMgYXQgYWxsIGxhdGl0dWRlcy5cbiAqXG4gKiBXZSBhbHNvIG92ZXJyaWRlIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIHRvIHNlbmQgcGVyLWJpbiBhZ2dyZWdhdGVkIHZhbHVlcyB0aHJvdWdoXG4gKiBvblNldENvbG9yRG9tYWluIHNvIHRoZSBsZWdlbmQgY2FuIGNvbXB1dGUgcHJvcGVyIHF1YW50aWxlL2N1c3RvbSBicmVha3MuXG4gKi9cbi8vIEB0cy1leHBlY3QtZXJyb3IgLS0gb3ZlcnJpZGluZyBwcml2YXRlIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIHRvIGVucmljaCB0aGUgb25TZXRDb2xvckRvbWFpbiBjYWxsYmFja1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2NhbGVFbmhhbmNlZEhleGFnb25MYXllciBleHRlbmRzIEhleGFnb25MYXllcjxhbnk+IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAuLi5IZXhhZ29uTGF5ZXIuZGVmYXVsdFByb3BzLFxuICAgIGdwdUFnZ3JlZ2F0aW9uOiBmYWxzZVxuICB9O1xuXG4gIC8vIEhBQ0s6IGRlY2suZ2wgOSdzIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIGlzIHByaXZhdGUgYW5kIGl0cyBvblNldENvbG9yRG9tYWluXG4gIC8vIGNhbGxiYWNrIG9ubHkgcHJvdmlkZXMgW21pbiwgbWF4XS4gIFRoYXQgaXMgc3VmZmljaWVudCBmb3IgcXVhbnRpemUvbGluZWFyXG4gIC8vIHNjYWxlcyBidXQgZDMuc2NhbGVRdWFudGlsZSBuZWVkcyB0aGUgKmZ1bGwgc29ydGVkIGFycmF5KiBvZiBiaW4gdmFsdWVzIHRvXG4gIC8vIGNvbXB1dGUgY29ycmVjdCBicmVhayBwb2ludHMg4oCUIHdpdGhvdXQgaXQgdGhlIGxlZ2VuZCBsYWJlbHMgYXJlIHdyb25nXG4gIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlKHtjaGFubmVsfToge2NoYW5uZWw6IG51bWJlcn0pIHtcbiAgICBlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlKHRoaXMsIEhleGFnb25MYXllciwgY2hhbm5lbCk7XG4gIH1cblxuICByZW5kZXJMYXllcnMoKSB7XG4gICAgcmV0dXJuIGVucmljaGVkUmVuZGVyTGF5ZXJzKHRoaXMsIEhleGFnb25MYXllcik7XG4gIH1cblxuICAvLyBJbiBnbG9iZSBtb2RlLCBydW4gZGVjay5nbCdzIGJpbi9jb21tb24tc3BhY2Ugc2V0dXAgdW5kZXIgYSBXZWJNZXJjYXRvclZpZXdwb3J0XG4gIC8vIHNvIGJpbm5pbmcgYW5kIHRoZSBjZWxsIHNoYWRlcidzIGZsYXQgY29tbW9uIHNwYWNlIGFyZSBnZW51aW5lIFdlYiBNZXJjYXRvciwgd2hpY2hcbiAgLy8gdGhlIGdsb2JlIGNlbGwgc3ViY2xhc3MgdGhlbiByZW1hcHMgb250byB0aGUgc3BoZXJlIHN1cmZhY2UuIE5vLW9wIGluIDJELzNEIG1vZGUuXG4gIF91cGRhdGVCaW5PcHRpb25zKCkge1xuICAgIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCh0aGlzLCAoKSA9PlxuICAgICAgKEhleGFnb25MYXllci5wcm90b3R5cGUgYXMgYW55KS5fdXBkYXRlQmluT3B0aW9ucy5jYWxsKHRoaXMpXG4gICAgKTtcbiAgfVxuXG4gIC8vIGRlY2suZ2wncyBIZXhhZ29uQ2VsbExheWVyIHBvc2l0aW9ucyBjZWxscyBpbiBmbGF0IGNvbW1vbiBzcGFjZSwgd2hpY2ggbGFuZHNcbiAgLy8gdGhlbSBvbiB0aGUgWFkgcGxhbmUgdGhyb3VnaCB0aGUgZ2xvYmUgY2VudGVyLiBTd2FwIGluIGEgZ2xvYmUtYXdhcmUgc3ViY2xhc3NcbiAgLy8gdGhhdCBjdXJ2ZXMgY2VsbHMgb250byB0aGUgc3BoZXJlIHN1cmZhY2UgKG5vLW9wIGluIDJELzNEIG1vZGUpLlxuICBnZXRTdWJMYXllckNsYXNzPFQgZXh0ZW5kcyBMYXllcj4oc3ViTGF5ZXJJZDogc3RyaW5nLCBEZWZhdWx0TGF5ZXJDbGFzczoge25ldyAoLi4uYXJnczogYW55W10pOiBUfSkge1xuICAgIGNvbnN0IHJlc29sdmVkID0gc3VwZXIuZ2V0U3ViTGF5ZXJDbGFzcyhzdWJMYXllcklkLCBEZWZhdWx0TGF5ZXJDbGFzcyk7XG4gICAgaWYgKHN1YkxheWVySWQgPT09ICdjZWxscycpIHtcbiAgICAgIHJldHVybiBtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyhcbiAgICAgICAgcmVzb2x2ZWQgYXMgdW5rbm93biBhcyB7bmV3ICguLi5hcmdzOiBhbnlbXSk6IFR9LFxuICAgICAgICAnaGV4YWdvbidcbiAgICAgICkgYXMgdW5rbm93biBhcyB7XG4gICAgICAgIG5ldyAoLi4uYXJnczogYW55W10pOiBUO1xuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVkO1xuICB9XG5cbiAgZ2V0UGlja2luZ0luZm8ocGFyYW1zOiBHZXRQaWNraW5nSW5mb1BhcmFtcyk6IFBpY2tpbmdJbmZvIHtcbiAgICBjb25zdCBpbmZvID0gc3VwZXIuZ2V0UGlja2luZ0luZm8ocGFyYW1zKSBhcyBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mbzxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gICAgaWYgKGluZm8ub2JqZWN0KSB7XG4gICAgICBjb25zdCB7cmFkaXVzQ29tbW9uLCBoZXhPcmlnaW5Db21tb24sIGFnZ3JlZ2F0b3JWaWV3cG9ydH0gPSB0aGlzXG4gICAgICAgIC5zdGF0ZSBhcyB1bmtub3duIGFzIEhleEludGVybmFsU3RhdGU7XG4gICAgICBjb25zdCBjb3ZlcmFnZSA9IHRoaXMucHJvcHMuY292ZXJhZ2UgPz8gMTtcbiAgICAgIGlmICghcmFkaXVzQ29tbW9uIHx8ICFhZ2dyZWdhdG9yVmlld3BvcnQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcjogZXhwZWN0ZWQgaW50ZXJuYWwgc3RhdGUgcHJvcGVydGllcyAnICtcbiAgICAgICAgICAgICcocmFkaXVzQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnQpIGFyZSBtaXNzaW5nLiAnICtcbiAgICAgICAgICAgICdIb3ZlciBvdXRsaW5lIHdpbGwgbm90IGJlIHNob3duLiBUaGlzIG1heSBpbmRpY2F0ZSBhIGRlY2suZ2wgdmVyc2lvbiBjaGFuZ2UuJ1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4gaW5mbztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHtjb2wsIHJvd30gPSBpbmZvLm9iamVjdCBhcyBIZXhQaWNraW5nT2JqZWN0O1xuICAgICAgaWYgKHR5cGVvZiBjb2wgIT09ICdudW1iZXInIHx8IHR5cGVvZiByb3cgIT09ICdudW1iZXInKSByZXR1cm4gaW5mbztcbiAgICAgIGNvbnN0IGNlbnRyb2lkID0gZ2V0SGV4YmluQ2VudHJvaWQoW2NvbCwgcm93XSwgcmFkaXVzQ29tbW9uKTtcbiAgICAgIGNvbnN0IG94ID0gaGV4T3JpZ2luQ29tbW9uPy5bMF0gPz8gMDtcbiAgICAgIGNvbnN0IG95ID0gaGV4T3JpZ2luQ29tbW9uPy5bMV0gPz8gMDtcbiAgICAgIGNvbnN0IHIgPSByYWRpdXNDb21tb24gKiBjb3ZlcmFnZTtcblxuICAgICAgY29uc3Qgb3V0bGluZTogbnVtYmVyW11bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA2OyBpKyspIHtcbiAgICAgICAgY29uc3QgdnggPSBjZW50cm9pZFswXSArIHIgKiBIZXhiaW5WZXJ0aWNlc1tpXVswXSArIG94O1xuICAgICAgICBjb25zdCB2eSA9IGNlbnRyb2lkWzFdICsgciAqIEhleGJpblZlcnRpY2VzW2ldWzFdICsgb3k7XG4gICAgICAgIG91dGxpbmUucHVzaChhZ2dyZWdhdG9yVmlld3BvcnQudW5wcm9qZWN0RmxhdChbdngsIHZ5XSkpO1xuICAgICAgfVxuICAgICAgb3V0bGluZS5wdXNoKG91dGxpbmVbMF0pO1xuICAgICAgKGluZm8ub2JqZWN0IGFzIEhleFBpY2tpbmdPYmplY3QpLmNlbGxPdXRsaW5lID0gb3V0bGluZTtcbiAgICB9XG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cblxuU2NhbGVFbmhhbmNlZEhleGFnb25MYXllci5sYXllck5hbWUgPSAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcic7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7O0FBRUEs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
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
// Copyright contributors to the kepler.gl project
|
|
3
|
+
|
|
4
|
+
export { default as ThreeDBuildingLayer } from './3d-building-layer/3d-building-layer';
|
|
5
|
+
export { default as DeckGLClusterLayer } from './cluster-layer/cluster-layer';
|
|
6
|
+
export { default as EnhancedColumnLayer } from './column-layer/enhanced-column-layer';
|
|
7
|
+
export { default as EnhancedGridLayer } from './grid-layer/enhanced-cpu-grid-layer';
|
|
8
|
+
export { default as EnhancedHexagonLayer } from './hexagon-layer/enhanced-hexagon-layer';
|
|
9
|
+
export { default as EnhancedLineLayer } from './line-layer/line-layer';
|
|
10
|
+
export { default as SvgIconLayer } from './svg-icon-layer/svg-icon-layer';
|
|
11
|
+
export { default as FilterArrowExtension } from './deckgl-extensions/filter-arrow-layer';
|
|
12
|
+
export { default as RasterLayer } from './raster/raster-layer/raster-layer';
|
|
13
|
+
export { default as RasterMeshLayer } from './raster/raster-mesh-layer/raster-mesh-layer';
|
|
14
|
+
import * as _RasterWebGL from './raster/webgl';
|
|
15
|
+
export { _RasterWebGL as RasterWebGL };
|
|
16
|
+
export { default as WMSLayer } from './wms/wms-layer';
|
|
17
|
+
export * from './layer-utils/shader-utils';
|
|
18
|
+
export * from './layer-utils/aggregation-utils';
|
|
19
|
+
export * from './3d-building-layer/types';
|
|
20
|
+
export * from './3d-building-layer/3d-building-utils';
|
|
21
|
+
export * from './globe';
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwiVGhyZWVEQnVpbGRpbmdMYXllciIsIkRlY2tHTENsdXN0ZXJMYXllciIsIkVuaGFuY2VkQ29sdW1uTGF5ZXIiLCJFbmhhbmNlZEdyaWRMYXllciIsIkVuaGFuY2VkSGV4YWdvbkxheWVyIiwiRW5oYW5jZWRMaW5lTGF5ZXIiLCJTdmdJY29uTGF5ZXIiLCJGaWx0ZXJBcnJvd0V4dGVuc2lvbiIsIlJhc3RlckxheWVyIiwiUmFzdGVyTWVzaExheWVyIiwiX1Jhc3RlcldlYkdMIiwiUmFzdGVyV2ViR0wiLCJXTVNMYXllciJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5leHBvcnQge2RlZmF1bHQgYXMgVGhyZWVEQnVpbGRpbmdMYXllcn0gZnJvbSAnLi8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBEZWNrR0xDbHVzdGVyTGF5ZXJ9IGZyb20gJy4vY2x1c3Rlci1sYXllci9jbHVzdGVyLWxheWVyJztcblxuZXhwb3J0IHtkZWZhdWx0IGFzIEVuaGFuY2VkQ29sdW1uTGF5ZXJ9IGZyb20gJy4vY29sdW1uLWxheWVyL2VuaGFuY2VkLWNvbHVtbi1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBFbmhhbmNlZEdyaWRMYXllcn0gZnJvbSAnLi9ncmlkLWxheWVyL2VuaGFuY2VkLWNwdS1ncmlkLWxheWVyJztcblxuZXhwb3J0IHtkZWZhdWx0IGFzIEVuaGFuY2VkSGV4YWdvbkxheWVyfSBmcm9tICcuL2hleGFnb24tbGF5ZXIvZW5oYW5jZWQtaGV4YWdvbi1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgRW5oYW5jZWRMaW5lTGF5ZXJ9IGZyb20gJy4vbGluZS1sYXllci9saW5lLWxheWVyJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBTdmdJY29uTGF5ZXJ9IGZyb20gJy4vc3ZnLWljb24tbGF5ZXIvc3ZnLWljb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEZpbHRlckFycm93RXh0ZW5zaW9ufSBmcm9tICcuL2RlY2tnbC1leHRlbnNpb25zL2ZpbHRlci1hcnJvdy1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBSYXN0ZXJMYXllcn0gZnJvbSAnLi9yYXN0ZXIvcmFzdGVyLWxheWVyL3Jhc3Rlci1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgUmFzdGVyTWVzaExheWVyfSBmcm9tICcuL3Jhc3Rlci9yYXN0ZXItbWVzaC1sYXllci9yYXN0ZXItbWVzaC1sYXllcic7XG5leHBvcnQgKiBhcyBSYXN0ZXJXZWJHTCBmcm9tICcuL3Jhc3Rlci93ZWJnbCc7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBXTVNMYXllcn0gZnJvbSAnLi93bXMvd21zLWxheWVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9sYXllci11dGlscy9zaGFkZXItdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXllci11dGlscy9hZ2dyZWdhdGlvbi11dGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vM2QtYnVpbGRpbmctbGF5ZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy11dGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2xvYmUnO1xuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBOztBQUVBLFNBQVFBLE9BQU8sSUFBSUMsbUJBQW1CLFFBQU8sdUNBQXVDO0FBRXBGLFNBQVFELE9BQU8sSUFBSUUsa0JBQWtCLFFBQU8sK0JBQStCO0FBRTNFLFNBQVFGLE9BQU8sSUFBSUcsbUJBQW1CLFFBQU8sc0NBQXNDO0FBRW5GLFNBQVFILE9BQU8sSUFBSUksaUJBQWlCLFFBQU8sc0NBQXNDO0FBRWpGLFNBQVFKLE9BQU8sSUFBSUssb0JBQW9CLFFBQU8sd0NBQXdDO0FBQ3RGLFNBQVFMLE9BQU8sSUFBSU0saUJBQWlCLFFBQU8seUJBQXlCO0FBQ3BFLFNBQVFOLE9BQU8sSUFBSU8sWUFBWSxRQUFPLGlDQUFpQztBQUN2RSxTQUFRUCxPQUFPLElBQUlRLG9CQUFvQixRQUFPLHdDQUF3QztBQUV0RixTQUFRUixPQUFPLElBQUlTLFdBQVcsUUFBTyxvQ0FBb0M7QUFDekUsU0FBUVQsT0FBTyxJQUFJVSxlQUFlLFFBQU8sOENBQThDO0FBQUMsWUFBQUMsWUFBQSxNQUMzRCxnQkFBZ0I7QUFBQSxTQUFBQSxZQUFBLElBQWpDQyxXQUFXO0FBRXZCLFNBQVFaLE9BQU8sSUFBSWEsUUFBUSxRQUFPLGlCQUFpQjtBQUVuRCxjQUFjLDRCQUE0QjtBQUMxQyxjQUFjLGlDQUFpQztBQUUvQyxjQUFjLDJCQUEyQjtBQUN6QyxjQUFjLHVDQUF1QztBQUVyRCxjQUFjLFNBQVMiLCJpZ25vcmVMaXN0IjpbXX0=
|