@deck.gl/carto 9.0.10 → 9.0.12

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/index.cjs CHANGED
@@ -31,6 +31,7 @@ __export(dist_exports, {
31
31
  CARTO_SOURCES: () => CARTO_SOURCES,
32
32
  CartoAPIError: () => CartoAPIError,
33
33
  H3TileLayer: () => H3TileLayer,
34
+ QuadbinHeatmapTileLayer: () => quadbin_heatmap_tile_layer_default,
34
35
  QuadbinTileLayer: () => QuadbinTileLayer,
35
36
  RasterTileLayer: () => RasterTileLayer,
36
37
  SOURCE_DEFAULTS: () => SOURCE_DEFAULTS,
@@ -264,7 +265,7 @@ function scaleIdentity() {
264
265
  }
265
266
 
266
267
  // dist/layers/schema/carto-raster-tile-loader.js
267
- var VERSION = true ? "9.0.10" : "latest";
268
+ var VERSION = true ? "9.0.12" : "latest";
268
269
  var id = "cartoRasterTile";
269
270
  var DEFAULT_OPTIONS = {
270
271
  cartoRasterTile: {
@@ -535,7 +536,7 @@ function binaryToSpatialjson(binary) {
535
536
  }
536
537
 
537
538
  // dist/layers/schema/carto-spatial-tile-loader.js
538
- var VERSION2 = true ? "9.0.10" : "latest";
539
+ var VERSION2 = true ? "9.0.12" : "latest";
539
540
  var id2 = "cartoSpatialTile";
540
541
  var DEFAULT_OPTIONS2 = {
541
542
  cartoSpatialTile: {
@@ -1033,12 +1034,343 @@ var QuadbinTileLayer = _QuadbinTileLayer;
1033
1034
  _QuadbinTileLayer.defaultProps = defaultProps5;
1034
1035
  })();
1035
1036
 
1036
- // dist/layers/raster-tile-layer.js
1037
+ // dist/layers/quadbin-heatmap-tile-layer.js
1038
+ var import_quadbin5 = require("quadbin");
1037
1039
  var import_core9 = require("@deck.gl/core");
1040
+ var import_layers2 = require("@deck.gl/layers");
1038
1041
 
1039
- // dist/layers/raster-layer.js
1042
+ // dist/layers/heatmap.js
1043
+ var import_shadertools = require("@luma.gl/shadertools");
1044
+ var fs = `uniform heatmapUniforms {
1045
+ float radiusPixels;
1046
+ vec2 colorDomain;
1047
+ vec3 color1;
1048
+ vec3 color2;
1049
+ vec3 color3;
1050
+ vec3 color4;
1051
+ vec3 color5;
1052
+ vec3 color6;
1053
+ float opacity;
1054
+ } heatmap;
1055
+ const float SUPPORT = 8.0;
1056
+ const vec4 STOPS = vec4(0.2, 0.4, 0.6, 0.8);
1057
+ vec3 colorGradient(float value) {
1058
+ vec3 c1;
1059
+ vec3 c2;
1060
+ vec2 range;
1061
+ if (value < STOPS.x) {
1062
+ range = vec2(0.0, STOPS.x);
1063
+ c1 = heatmap.color1; c2 = heatmap.color2;
1064
+ } else if (value < STOPS.y) {
1065
+ range = STOPS.xy;
1066
+ c1 = heatmap.color2; c2 = heatmap.color3;
1067
+ } else if (value < STOPS.z) {
1068
+ range = STOPS.yz;
1069
+ c1 = heatmap.color3; c2 = heatmap.color4;
1070
+ } else if (value < STOPS.w) {
1071
+ range = STOPS.zw;
1072
+ c1 = heatmap.color4; c2 = heatmap.color5;
1073
+ } else if (value < 1.0 ) {
1074
+ range = vec2(STOPS.w, 1.0);
1075
+ c1 = heatmap.color5; c2 = heatmap.color6;
1076
+ } else {
1077
+ range = vec2(1.0, 10.0);
1078
+ c1 = heatmap.color6; c2 = vec3(255.0);
1079
+ }
1080
+ float f = (value - range.x) / (range.y - range.x);
1081
+ return mix(c1, c2, f) / 255.0;
1082
+ }
1083
+ const vec3 SHIFT = vec3(1.0, 256.0, 256.0 * 256.0);
1084
+ float unpack(vec3 color) {
1085
+ return 255.0 * dot(color, SHIFT);
1086
+ }
1087
+ vec4 heatmap_sampleColor(sampler2D source, vec2 texSize, vec2 texCoord) {
1088
+ float accumulator = 0.0;
1089
+ float offset = 0.5 * random(vec3(12.9898, 78.233, 151.7182), 0.0);
1090
+ const float sigma = SUPPORT / 3.0;
1091
+ const float a = -0.5 / (sigma * sigma);
1092
+ const float w0 = 1.0 / (2.0 * 3.141592653589793 * sigma * sigma);
1093
+ for (float t = -SUPPORT; t <= SUPPORT; t++) {
1094
+ for (float s = -SUPPORT; s <= SUPPORT; s++) {
1095
+ vec2 percent = (vec2(s, t) + offset - 0.5) / SUPPORT;
1096
+ vec2 delta = percent * heatmap.radiusPixels / texSize;
1097
+ vec4 offsetColor = texture(source, texCoord + delta);
1098
+ float value = unpack(offsetColor.rgb);
1099
+ float weight = w0 * exp(a * (s * s + t * t));
1100
+ accumulator += value * weight;
1101
+ }
1102
+ }
1103
+ float f = (accumulator - heatmap.colorDomain[0]) / (heatmap.colorDomain[1] - heatmap.colorDomain[0]);
1104
+ vec4 color = vec4(0.0);
1105
+ color.rgb = colorGradient(f);
1106
+ color.a = smoothstep(0.0, 0.1, f);
1107
+ color.a = pow(color.a, 1.0 / 2.2);
1108
+ color.a *= heatmap.opacity;
1109
+ return color;
1110
+ }
1111
+ `;
1112
+ var defaultColorRange = [
1113
+ [255, 255, 178],
1114
+ [254, 217, 118],
1115
+ [254, 178, 76],
1116
+ [253, 141, 60],
1117
+ [240, 59, 32],
1118
+ [189, 0, 38]
1119
+ ];
1120
+ var heatmap = {
1121
+ name: "heatmap",
1122
+ uniformPropTypes: {
1123
+ radiusPixels: { value: 20, min: 0, softMax: 100 },
1124
+ colorDomain: { value: [0, 1] },
1125
+ color1: { value: [0, 0, 0] },
1126
+ color2: { value: [0, 0, 0] },
1127
+ color3: { value: [0, 0, 0] },
1128
+ color4: { value: [0, 0, 0] },
1129
+ color5: { value: [0, 0, 0] },
1130
+ color6: { value: [0, 0, 0] },
1131
+ opacity: { value: 1, min: 0, max: 1 }
1132
+ },
1133
+ uniformTypes: {
1134
+ radiusPixels: "f32",
1135
+ colorDomain: "vec2<f32>",
1136
+ color1: "vec3<f32>",
1137
+ color2: "vec3<f32>",
1138
+ color3: "vec3<f32>",
1139
+ color4: "vec3<f32>",
1140
+ color5: "vec3<f32>",
1141
+ color6: "vec3<f32>",
1142
+ opacity: "f32"
1143
+ },
1144
+ getUniforms: (opts) => {
1145
+ const { colorRange = defaultColorRange, radiusPixels = 20, colorDomain = [0, 1], opacity = 1 } = opts;
1146
+ const [color1, color2, color3, color4, color5, color6] = colorRange;
1147
+ return {
1148
+ color1,
1149
+ color2,
1150
+ color3,
1151
+ color4,
1152
+ color5,
1153
+ color6,
1154
+ radiusPixels,
1155
+ colorDomain,
1156
+ opacity
1157
+ };
1158
+ },
1159
+ dependencies: [import_shadertools.random],
1160
+ fs,
1161
+ passes: [{ sampler: true }]
1162
+ };
1163
+
1164
+ // dist/layers/post-process-utils.js
1040
1165
  var import_core8 = require("@deck.gl/core");
1041
- var import_layers2 = require("@deck.gl/layers");
1166
+ var TEXTURE_PROPS = {
1167
+ format: "rgba8unorm",
1168
+ mipmaps: false,
1169
+ sampler: {
1170
+ minFilter: "linear",
1171
+ magFilter: "linear",
1172
+ addressModeU: "clamp-to-edge",
1173
+ addressModeV: "clamp-to-edge"
1174
+ }
1175
+ };
1176
+ function getPostProcessLayer(layer) {
1177
+ while (layer.parent && !layer.applyPostProcess) {
1178
+ layer = layer.parent;
1179
+ }
1180
+ return layer;
1181
+ }
1182
+ var _DrawCallbackLayer = class extends import_core8.Layer {
1183
+ initializeState() {
1184
+ this.id = `draw-callback-${getPostProcessLayer(this).props.id}`;
1185
+ }
1186
+ _drawLayer() {
1187
+ getPostProcessLayer(this).applyPostProcess();
1188
+ }
1189
+ };
1190
+ var DrawCallbackLayer = _DrawCallbackLayer;
1191
+ (() => {
1192
+ _DrawCallbackLayer.layerName = "DrawCallbackLayer";
1193
+ })();
1194
+ function RTTModifier(BaseLayer) {
1195
+ var _a;
1196
+ return _a = class extends BaseLayer {
1197
+ draw(opts) {
1198
+ const { moduleParameters } = opts;
1199
+ const { picking } = moduleParameters;
1200
+ const postProcessLayer = getPostProcessLayer(this);
1201
+ if (!picking.isActive) {
1202
+ postProcessLayer.enableRTT(opts);
1203
+ }
1204
+ super.draw(opts);
1205
+ if (!picking.isActive) {
1206
+ postProcessLayer.disableRTT();
1207
+ }
1208
+ }
1209
+ }, (() => {
1210
+ _a.layerName = `RTT-${BaseLayer.layerName}`;
1211
+ })(), _a;
1212
+ }
1213
+ function PostProcessModifier(BaseLayer, effect) {
1214
+ var _a;
1215
+ return _a = class extends BaseLayer {
1216
+ initializeState(context) {
1217
+ super.initializeState(context);
1218
+ this._createTextures();
1219
+ this.internalState.postProcess = new import_core8.PostProcessEffect(effect, this.props);
1220
+ this.internalState.postProcess.setup(context);
1221
+ }
1222
+ updateState(params) {
1223
+ super.updateState(params);
1224
+ this.internalState.postProcess.setProps(this.props);
1225
+ }
1226
+ renderLayers() {
1227
+ let subLayers = super.renderLayers();
1228
+ if (!subLayers) {
1229
+ return null;
1230
+ }
1231
+ subLayers = Array.isArray(subLayers) ? subLayers : [subLayers];
1232
+ return [...subLayers, new DrawCallbackLayer()];
1233
+ }
1234
+ _createTextures() {
1235
+ const { device } = this.context;
1236
+ this.internalState.renderBuffers = [0, 1].map((i) => {
1237
+ return device.createFramebuffer({
1238
+ id: `layer-fbo-${i}`,
1239
+ colorAttachments: [device.createTexture(TEXTURE_PROPS)],
1240
+ depthStencilAttachment: "depth16unorm"
1241
+ });
1242
+ });
1243
+ }
1244
+ _resizeBuffers(opts) {
1245
+ const { moduleParameters } = opts;
1246
+ const { viewport } = this.context;
1247
+ const width = moduleParameters.devicePixelRatio * viewport.width;
1248
+ const height = moduleParameters.devicePixelRatio * viewport.height;
1249
+ this.internalState.renderBuffers.forEach((fbo) => fbo.resize({ width, height }));
1250
+ }
1251
+ enableRTT(opts) {
1252
+ this._resizeBuffers(opts);
1253
+ this.internalState.originalRenderPass = this.context.renderPass;
1254
+ const [framebuffer] = this.internalState.renderBuffers;
1255
+ this.internalState.internalRenderPass = this.context.device.beginRenderPass({
1256
+ framebuffer,
1257
+ parameters: { viewport: [0, 0, framebuffer.width, framebuffer.height] },
1258
+ clearColor: this.internalState.renderInProgress ? false : [0, 0, 0, 0]
1259
+ });
1260
+ this.internalState.renderInProgress = true;
1261
+ this.context.renderPass = this.internalState.internalRenderPass;
1262
+ }
1263
+ disableRTT() {
1264
+ this.internalState.internalRenderPass.end();
1265
+ this.context.renderPass = this.internalState.originalRenderPass;
1266
+ }
1267
+ applyPostProcess() {
1268
+ if (!this.internalState.renderInProgress) {
1269
+ return;
1270
+ }
1271
+ const [inputBuffer, swapBuffer] = this.internalState.renderBuffers;
1272
+ const { framebuffer: target } = this.context.renderPass.props;
1273
+ this.internalState.postProcess.postRender({
1274
+ inputBuffer,
1275
+ swapBuffer,
1276
+ target
1277
+ });
1278
+ this.internalState.renderInProgress = false;
1279
+ }
1280
+ }, (() => {
1281
+ _a.layerName = `PostProcess${BaseLayer.layerName}`;
1282
+ })(), _a;
1283
+ }
1284
+
1285
+ // dist/layers/quadbin-heatmap-tile-layer.js
1286
+ var _RTTSolidPolygonLayer = class extends RTTModifier(import_layers2.SolidPolygonLayer) {
1287
+ getShaders(type) {
1288
+ const shaders = super.getShaders(type);
1289
+ shaders.inject = {
1290
+ "vs:#decl": "uniform float cellResolution;",
1291
+ "vs:DECKGL_FILTER_COLOR": `
1292
+ const vec3 SHIFT = vec3(1.0, 256.0, 256.0 * 256.0);
1293
+ float value = 255.0 * dot(SHIFT, color.rgb);
1294
+
1295
+ // Keep "power" delivered to screen constant when tiles update
1296
+ float relativeZoom = log2(project_uScale) - cellResolution + 3.5; // range 0-1
1297
+ float relativeArea = pow(2.0, -2.0 * relativeZoom); // range 0.25-1
1298
+ value *= relativeArea;
1299
+
1300
+ // Pack float into 3 channels to pass to heatmap shader
1301
+ color = vec4(mod(vec3(value, floor(value / SHIFT.yz)), 256.0), 255.0) / 255.0;
1302
+ `
1303
+ };
1304
+ return shaders;
1305
+ }
1306
+ draw(opts) {
1307
+ const cell0 = this.props.data[0];
1308
+ const cellResolution = Number((0, import_quadbin5.getResolution)(cell0.id));
1309
+ for (const model of this.state.models) {
1310
+ model.setUniforms({ cellResolution });
1311
+ }
1312
+ super.draw(opts);
1313
+ }
1314
+ };
1315
+ var RTTSolidPolygonLayer = _RTTSolidPolygonLayer;
1316
+ (() => {
1317
+ _RTTSolidPolygonLayer.layerName = "RTTSolidPolygonLayer";
1318
+ })();
1319
+ var PostProcessQuadbinTileLayer = PostProcessModifier(QuadbinTileLayer, heatmap);
1320
+ function encodeWeight(w) {
1321
+ return [w % 256, Math.floor(w / 256), Math.floor(w / (256 * 256))];
1322
+ }
1323
+ var defaultProps6 = {
1324
+ ...QuadbinTileLayer.defaultProps,
1325
+ getWeight: { type: "accessor", value: 1 }
1326
+ };
1327
+ var _QuadbinHeatmapTileLayer = class extends import_core9.CompositeLayer {
1328
+ renderLayers() {
1329
+ var _a, _b, _c;
1330
+ const { getWeight, colorDomain, colorRange, radiusPixels, _subLayerProps } = this.props;
1331
+ const subLayerProps = {
1332
+ ..._subLayerProps,
1333
+ cell: {
1334
+ ..._subLayerProps == null ? void 0 : _subLayerProps.cell,
1335
+ _subLayerProps: {
1336
+ ...(_a = _subLayerProps == null ? void 0 : _subLayerProps.cell) == null ? void 0 : _a._subLayerProps,
1337
+ fill: {
1338
+ ...(_c = (_b = _subLayerProps == null ? void 0 : _subLayerProps.cell) == null ? void 0 : _b._subLayerProps) == null ? void 0 : _c.fill,
1339
+ type: RTTSolidPolygonLayer
1340
+ }
1341
+ }
1342
+ }
1343
+ };
1344
+ const getFillColor = typeof getWeight === "function" ? (d, info) => encodeWeight(getWeight(d, info)) : encodeWeight(getWeight);
1345
+ return new PostProcessQuadbinTileLayer(this.getSubLayerProps({
1346
+ id: "heatmap",
1347
+ data: this.props.data,
1348
+ getFillColor,
1349
+ colorDomain,
1350
+ colorRange,
1351
+ radiusPixels,
1352
+ _subLayerProps: subLayerProps,
1353
+ updateTriggers: {
1354
+ getPosition: this.props.updateTriggers.getWeight
1355
+ }
1356
+ }));
1357
+ }
1358
+ };
1359
+ var QuadbinHeatmapTileLayer = _QuadbinHeatmapTileLayer;
1360
+ (() => {
1361
+ _QuadbinHeatmapTileLayer.layerName = "QuadbinHeatmapTileLayer";
1362
+ })();
1363
+ (() => {
1364
+ _QuadbinHeatmapTileLayer.defaultProps = defaultProps6;
1365
+ })();
1366
+ var quadbin_heatmap_tile_layer_default = QuadbinHeatmapTileLayer;
1367
+
1368
+ // dist/layers/raster-tile-layer.js
1369
+ var import_core11 = require("@deck.gl/core");
1370
+
1371
+ // dist/layers/raster-layer.js
1372
+ var import_core10 = require("@deck.gl/core");
1373
+ var import_layers3 = require("@deck.gl/layers");
1042
1374
 
1043
1375
  // dist/layers/raster-layer-vertex.glsl.js
1044
1376
  var raster_layer_vertex_glsl_default = `#version 300 es
@@ -1110,8 +1442,8 @@ DECKGL_FILTER_COLOR(vColor, geometry);
1110
1442
  `;
1111
1443
 
1112
1444
  // dist/layers/raster-layer.js
1113
- var defaultProps6 = {
1114
- ...import_layers2.ColumnLayer.defaultProps,
1445
+ var defaultProps7 = {
1446
+ ...import_layers3.ColumnLayer.defaultProps,
1115
1447
  extruded: false,
1116
1448
  diskResolution: 4,
1117
1449
  vertices: [
@@ -1121,7 +1453,7 @@ var defaultProps6 = {
1121
1453
  [-0.5, 0.5]
1122
1454
  ]
1123
1455
  };
1124
- var _RasterColumnLayer = class extends import_layers2.ColumnLayer {
1456
+ var _RasterColumnLayer = class extends import_layers3.ColumnLayer {
1125
1457
  getShaders() {
1126
1458
  const shaders = super.getShaders();
1127
1459
  const data = this.props.data;
@@ -1157,7 +1489,7 @@ var RasterColumnLayer = _RasterColumnLayer;
1157
1489
  (() => {
1158
1490
  _RasterColumnLayer.layerName = "RasterColumnLayer";
1159
1491
  })();
1160
- var _RasterLayer = class extends import_core8.CompositeLayer {
1492
+ var _RasterLayer = class extends import_core10.CompositeLayer {
1161
1493
  renderLayers() {
1162
1494
  const { data, getElevation, getFillColor, getLineColor, getLineWidth, tileIndex, updateTriggers } = this.props;
1163
1495
  if (!data || !tileIndex)
@@ -1198,7 +1530,7 @@ var RasterLayer = _RasterLayer;
1198
1530
  _RasterLayer.layerName = "RasterLayer";
1199
1531
  })();
1200
1532
  (() => {
1201
- _RasterLayer.defaultProps = defaultProps6;
1533
+ _RasterLayer.defaultProps = defaultProps7;
1202
1534
  })();
1203
1535
 
1204
1536
  // dist/layers/raster-tile-layer.js
@@ -1209,11 +1541,11 @@ var renderSubLayers3 = (props) => {
1209
1541
  return null;
1210
1542
  return new RasterLayer(props, { tileIndex });
1211
1543
  };
1212
- var defaultProps7 = {
1544
+ var defaultProps8 = {
1213
1545
  data: TilejsonPropType,
1214
1546
  tileSize: DEFAULT_TILE_SIZE
1215
1547
  };
1216
- var _RasterTileLayer = class extends import_core9.CompositeLayer {
1548
+ var _RasterTileLayer = class extends import_core11.CompositeLayer {
1217
1549
  getLoadOptions() {
1218
1550
  const loadOptions = super.getLoadOptions() || {};
1219
1551
  const tileJSON = this.props.data;
@@ -1243,11 +1575,11 @@ var RasterTileLayer = _RasterTileLayer;
1243
1575
  _RasterTileLayer.layerName = "RasterTileLayer";
1244
1576
  })();
1245
1577
  (() => {
1246
- _RasterTileLayer.defaultProps = defaultProps7;
1578
+ _RasterTileLayer.defaultProps = defaultProps8;
1247
1579
  })();
1248
1580
 
1249
1581
  // dist/layers/vector-tile-layer.js
1250
- var import_core10 = require("@loaders.gl/core");
1582
+ var import_core12 = require("@loaders.gl/core");
1251
1583
 
1252
1584
  // dist/layers/schema/carto-properties-tile.js
1253
1585
  var TileReader4 = class {
@@ -1287,7 +1619,7 @@ var carto_properties_tile_loader_default = CartoPropertiesTileLoader;
1287
1619
 
1288
1620
  // dist/layers/schema/carto-vector-tile-loader.js
1289
1621
  var import_earcut = __toESM(require("earcut"), 1);
1290
- var VERSION3 = true ? "9.0.10" : "latest";
1622
+ var VERSION3 = true ? "9.0.12" : "latest";
1291
1623
  var id3 = "cartoVectorTile";
1292
1624
  var DEFAULT_OPTIONS3 = {
1293
1625
  cartoVectorTile: {
@@ -1346,10 +1678,10 @@ var carto_vector_tile_loader_default = CartoVectorTileLoader;
1346
1678
  // dist/layers/vector-tile-layer.js
1347
1679
  var import_extensions = require("@deck.gl/extensions");
1348
1680
  var import_geo_layers6 = require("@deck.gl/geo-layers");
1349
- var import_layers3 = require("@deck.gl/layers");
1681
+ var import_layers4 = require("@deck.gl/layers");
1350
1682
  var import_gis = require("@loaders.gl/gis");
1351
- (0, import_core10.registerLoaders)([carto_properties_tile_loader_default, carto_vector_tile_loader_default]);
1352
- var defaultProps8 = {
1683
+ (0, import_core12.registerLoaders)([carto_properties_tile_loader_default, carto_vector_tile_loader_default]);
1684
+ var defaultProps9 = {
1353
1685
  ...import_geo_layers6.MVTLayer.defaultProps,
1354
1686
  data: TilejsonPropType,
1355
1687
  dataComparator: TilejsonPropType.equal,
@@ -1423,7 +1755,7 @@ var _VectorTileLayer = class extends import_geo_layers6.MVTLayer {
1423
1755
  extensions: [new import_extensions.ClipExtension(), ...props.extensions || []],
1424
1756
  clipBounds: [west, south, east, north]
1425
1757
  };
1426
- const subLayer = new import_layers3.GeoJsonLayer(subLayerProps);
1758
+ const subLayer = new import_layers4.GeoJsonLayer(subLayerProps);
1427
1759
  return subLayer;
1428
1760
  }
1429
1761
  getPickingInfo(params) {
@@ -1442,7 +1774,7 @@ var VectorTileLayer = _VectorTileLayer;
1442
1774
  _VectorTileLayer.layerName = "VectorTileLayer";
1443
1775
  })();
1444
1776
  (() => {
1445
- _VectorTileLayer.defaultProps = defaultProps8;
1777
+ _VectorTileLayer.defaultProps = defaultProps9;
1446
1778
  })();
1447
1779
 
1448
1780
  // dist/basemap.js
@@ -1604,14 +1936,14 @@ function formatErrorKey(key) {
1604
1936
  }
1605
1937
 
1606
1938
  // dist/api/common.js
1607
- var import_core11 = require("@deck.gl/core");
1939
+ var import_core13 = require("@deck.gl/core");
1608
1940
  var DEFAULT_API_BASE_URL = "https://gcp-us-east1.api.carto.com";
1609
1941
  var DEFAULT_CLIENT = "deck-gl-carto";
1610
1942
  var V3_MINOR_VERSION = "3.4";
1611
1943
  var MAX_GET_LENGTH = 8192;
1612
1944
  var DEFAULT_PARAMETERS = {
1613
1945
  v: V3_MINOR_VERSION,
1614
- deckglVersion: import_core11.VERSION
1946
+ deckglVersion: import_core13.VERSION
1615
1947
  };
1616
1948
  var DEFAULT_HEADERS = {
1617
1949
  Accept: "application/json",
@@ -1908,7 +2240,7 @@ var vectorTilesetSource = async function(options) {
1908
2240
 
1909
2241
  // dist/api/parse-map.js
1910
2242
  var import_constants12 = require("@luma.gl/constants");
1911
- var import_core12 = require("@deck.gl/core");
2243
+ var import_core14 = require("@deck.gl/core");
1912
2244
 
1913
2245
  // dist/api/layer-map.js
1914
2246
  var import_d3_array = require("d3-array");
@@ -1917,7 +2249,7 @@ var import_d3_scale3 = require("d3-scale");
1917
2249
  var import_d3_format = require("d3-format");
1918
2250
  var import_moment_timezone = __toESM(require("moment-timezone"), 1);
1919
2251
  var import_aggregation_layers = require("@deck.gl/aggregation-layers");
1920
- var import_layers4 = require("@deck.gl/layers");
2252
+ var import_layers5 = require("@deck.gl/layers");
1921
2253
  var import_geo_layers7 = require("@deck.gl/geo-layers");
1922
2254
  var SCALE_FUNCS = {
1923
2255
  linear: import_d3_scale3.scaleLinear,
@@ -1990,7 +2322,7 @@ var aggregationVisConfig = {
1990
2322
  elevationPercentile: ["elevationLowerPercentile", "elevationUpperPercentile"],
1991
2323
  percentile: ["lowerPercentile", "upperPercentile"]
1992
2324
  };
1993
- var defaultProps9 = {
2325
+ var defaultProps10 = {
1994
2326
  lineMiterLimit: 2,
1995
2327
  lineWidthUnits: "pixels",
1996
2328
  pointRadiusUnits: "pixels",
@@ -2014,7 +2346,7 @@ function getLayer(type, config, dataset) {
2014
2346
  const hexagonId = (_b = config.columns) == null ? void 0 : _b.hex_id;
2015
2347
  const layerTypeDefs = {
2016
2348
  point: {
2017
- Layer: import_layers4.GeoJsonLayer,
2349
+ Layer: import_layers5.GeoJsonLayer,
2018
2350
  propMap: {
2019
2351
  columns: {
2020
2352
  altitude: (x) => ({ parameters: { depthTest: Boolean(x) } })
@@ -2023,7 +2355,7 @@ function getLayer(type, config, dataset) {
2023
2355
  }
2024
2356
  },
2025
2357
  geojson: {
2026
- Layer: import_layers4.GeoJsonLayer
2358
+ Layer: import_layers5.GeoJsonLayer
2027
2359
  },
2028
2360
  grid: {
2029
2361
  Layer: import_aggregation_layers.CPUGridLayer,
@@ -2051,7 +2383,7 @@ function getLayer(type, config, dataset) {
2051
2383
  return {
2052
2384
  ...layer,
2053
2385
  propMap: mergePropMaps(basePropMap, layer.propMap),
2054
- defaultProps: { ...defaultProps9, ...layer.defaultProps }
2386
+ defaultProps: { ...defaultProps10, ...layer.defaultProps }
2055
2387
  };
2056
2388
  }
2057
2389
  function layerFromTileDataset(scheme, type) {
@@ -2072,7 +2404,7 @@ function getTileLayer(dataset, basePropMap) {
2072
2404
  Layer: layerFromTileDataset(scheme),
2073
2405
  propMap: basePropMap,
2074
2406
  defaultProps: {
2075
- ...defaultProps9,
2407
+ ...defaultProps10,
2076
2408
  ...aggregationExp && { aggregationExp },
2077
2409
  ...aggregationResLevel && { aggregationResLevel },
2078
2410
  uniqueIdProperty: "geoid"
@@ -2286,12 +2618,12 @@ function parseMap(json) {
2286
2618
  assert(dataset, `No dataset matching dataId: ${dataId}`);
2287
2619
  const { data } = dataset;
2288
2620
  assert(data, `No data loaded for dataId: ${dataId}`);
2289
- const { Layer, propMap, defaultProps: defaultProps10 } = getLayer(type, config, dataset);
2621
+ const { Layer: Layer2, propMap, defaultProps: defaultProps11 } = getLayer(type, config, dataset);
2290
2622
  const styleProps = createStyleProps(config, propMap);
2291
- return new Layer({
2623
+ return new Layer2({
2292
2624
  id: id4,
2293
2625
  data,
2294
- ...defaultProps10,
2626
+ ...defaultProps11,
2295
2627
  ...createInteractionProps(interactionConfig),
2296
2628
  ...styleProps,
2297
2629
  ...createChannelProps(id4, type, config, visualChannels, data),
@@ -2299,7 +2631,7 @@ function parseMap(json) {
2299
2631
  ...createLoadOptions(token)
2300
2632
  });
2301
2633
  } catch (e) {
2302
- import_core12.log.error(e.message)();
2634
+ import_core14.log.error(e.message)();
2303
2635
  return void 0;
2304
2636
  }
2305
2637
  })
@@ -2701,6 +3033,7 @@ var CARTO_LAYERS = {
2701
3033
  H3TileLayer,
2702
3034
  _PointLabelLayer: PointLabelLayer,
2703
3035
  QuadbinTileLayer,
3036
+ QuadbinHeatmapTileLayer: quadbin_heatmap_tile_layer_default,
2704
3037
  RasterTileLayer,
2705
3038
  VectorTileLayer
2706
3039
  };