@kepler.gl/deckgl-layers 3.3.0-alpha.0 → 3.3.0-alpha.1

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.
@@ -233,7 +233,6 @@ var ClusterLayer = exports["default"] = /*#__PURE__*/function (_CompositeLayer)
233
233
  info: info
234
234
  }, this.props);
235
235
  if (obj !== null && obj !== void 0 && obj.object) {
236
- // @ts-expect-error
237
236
  var distanceScale = (0, _viewportMercatorProject.getDistanceScales)(this.context.viewport);
238
237
  var metersPerPixel = distanceScale.metersPerPixel[0];
239
238
  obj.object.scaledRadiusValue = obj.object.scaledRadiusValue * metersPerPixel;
@@ -268,8 +267,6 @@ var ClusterLayer = exports["default"] = /*#__PURE__*/function (_CompositeLayer)
268
267
  cpuAggregator = _ref6.cpuAggregator;
269
268
  var updateTriggers = this._getSublayerUpdateTriggers();
270
269
  var accessors = this._getSubLayerAccessors();
271
-
272
- // @ts-expect-error
273
270
  var distanceScale = (0, _viewportMercatorProject.getDistanceScales)(this.context.viewport);
274
271
  var metersPerPixel = distanceScale.metersPerPixel[0];
275
272
 
@@ -293,4 +290,4 @@ var ClusterLayer = exports["default"] = /*#__PURE__*/function (_CompositeLayer)
293
290
  }(_core.CompositeLayer);
294
291
  ClusterLayer.layerName = 'ClusterLayer';
295
292
  ClusterLayer.defaultProps = defaultProps;
296
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJfbGF5ZXJzIiwiX2dlb1ZpZXdwb3J0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9jcHVBZ2dyZWdhdG9yIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfdmlld3BvcnRNZXJjYXRvclByb2plY3QiLCJfZDNBcnJheSIsIl9jb25zdGFudHMiLCJfY2x1c3RlclV0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX2NhbGxTdXBlciIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJkZWZhdWx0UmFkaXVzIiwiTEFZRVJfVklTX0NPTkZJR1MiLCJjbHVzdGVyUmFkaXVzIiwiZGVmYXVsdFZhbHVlIiwiZGVmYXVsdFJhZGl1c1JhbmdlIiwiY2x1c3RlclJhZGl1c1JhbmdlIiwiZGVmYXVsdEdldENvbG9yVmFsdWUiLCJwb2ludHMiLCJkZWZhdWx0R2V0UmFkaXVzVmFsdWUiLCJjZWxsIiwiZmlsdGVyZWRQb2ludHMiLCJwcm9jZXNzR2VvSlNPTiIsInN0ZXAiLCJwcm9wcyIsImFnZ3JlZ2F0aW9uIiwiX3JlZiIsInZpZXdwb3J0IiwiZGF0YSIsImdldFBvc2l0aW9uIiwiZmlsdGVyRGF0YSIsImdlb0pTT04iLCJnZXRHZW9KU09OIiwiY2x1c3RlckJ1aWxkZXIiLCJDbHVzdGVyQnVpbGRlciIsInNldFN0YXRlIiwiZ2V0Q2x1c3RlcnMiLCJfcmVmMiIsIl9jbHVzdGVyQnVpbGRlciRjbHVzdCIsIl90aGlzJHN0YXRlIiwic3RhdGUiLCJ6b29tIiwid2lkdGgiLCJoZWlnaHQiLCJsb25naXR1ZGUiLCJsYXRpdHVkZSIsImJib3giLCJnZW9WaWV3cG9ydCIsImJvdW5kcyIsImNsdXN0ZXJzIiwiY2x1c3RlcnNBdFpvb20iLCJsYXllckRhdGEiLCJnZXRTdWJMYXllclJhZGl1cyIsImRpbWVuc2lvblN0YXRlIiwiZGltZW5zaW9uIiwibGF5ZXJQcm9wcyIsImdldFJhZGl1c1ZhbHVlIiwic2NhbGVGdW5jIiwiY2x1c3RlckFnZ3JlZ2F0aW9uIiwiZXhwb3J0cyIsImtleSIsInVwZGF0ZVN0ZXBzIiwidHJpZ2dlcnMiLCJwb3NpdGlvbiIsInByb3AiLCJ1cGRhdGVUcmlnZ2VyIiwidXBkYXRlciIsImdldFJhZGl1c1ZhbHVlRG9tYWluIiwiZGltZW5zaW9uVXBkYXRlciIsInZhbHVlRG9tYWluIiwibWF4IiwiX3NldERpbWVuc2lvblN0YXRlIiwiY2x1c3RlckxheWVyRGltZW5zaW9ucyIsImRlZmF1bHRDb2xvckRpbWVuc2lvbiIsImFjY2Vzc29yIiwibnVsbFZhbHVlIiwidmFsdWUiLCJkb21haW4iLCJyYW5nZSIsInNjYWxlVHlwZSIsImdldERpbWVuc2lvblNjYWxlIiwiZ2V0U3ViTGF5ZXJBY2Nlc3NvciIsImdldFBpY2tpbmdJbmZvIiwicmFkaXVzVmFsdWUiLCJzY2FsZWRSYWRpdXNWYWx1ZSIsImRlZmF1bHRQcm9wcyIsImNvbG9yRG9tYWluIiwiY29sb3JSYW5nZSIsIkRFRkFVTFRfQ09MT1JfUkFOR0UiLCJjb2xvclNjYWxlVHlwZSIsIlNDQUxFX1RZUEVTIiwicXVhbnRpemUiLCJyYWRpdXNTY2FsZVR5cGUiLCJzcXJ0IiwicmFkaXVzUmFuZ2UiLCJ0eXBlIiwieCIsImdldENvbG9yVmFsdWUiLCJDbHVzdGVyTGF5ZXIiLCJfQ29tcG9zaXRlTGF5ZXIiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJpbml0aWFsaXplU3RhdGUiLCJjcHVBZ2dyZWdhdG9yIiwiQ1BVQWdncmVnYXRvciIsImRpbWVuc2lvbnMiLCJhZ2dyZWdhdG9yU3RhdGUiLCJ1cGRhdGVTdGF0ZSIsIl9yZWYzIiwib2xkUHJvcHMiLCJjaGFuZ2VGbGFncyIsImNvbnRleHQiLCJudW1JbnN0YW5jZXMiLCJnZXROdW1JbnN0YW5jZXMiLCJfcmVmNCIsImluZm8iLCJvYmoiLCJvYmplY3QiLCJkaXN0YW5jZVNjYWxlIiwiZ2V0RGlzdGFuY2VTY2FsZXMiLCJtZXRlcnNQZXJQaXhlbCIsIl9nZXRTdWJsYXllclVwZGF0ZVRyaWdnZXJzIiwiZ2V0VXBkYXRlVHJpZ2dlcnMiLCJfZ2V0U3ViTGF5ZXJBY2Nlc3NvcnMiLCJnZXRSYWRpdXMiLCJnZXRBY2Nlc3NvciIsImdldEZpbGxDb2xvciIsInJlbmRlckxheWVycyIsIl9yZWY1IiwiaWQiLCJyYWRpdXNTY2FsZSIsInZpc2libGUiLCJvcGFjaXR5IiwicGlja2FibGUiLCJhdXRvSGlnaGxpZ2h0IiwiaGlnaGxpZ2h0Q29sb3IiLCJfcmVmNiIsInVwZGF0ZVRyaWdnZXJzIiwiYWNjZXNzb3JzIiwiU2NhdHRlcnBsb3RMYXllciIsImNvbmNhdCIsInBhcmFtZXRlcnMiLCJkZXB0aE1hc2siLCJDb21wb3NpdGVMYXllciIsImxheWVyTmFtZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbHVzdGVyLWxheWVyL2NsdXN0ZXItbGF5ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtDb21wb3NpdGVMYXllciwgR2V0UGlja2luZ0luZm9QYXJhbXMsIFBpY2tpbmdJbmZvfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7U2NhdHRlcnBsb3RMYXllcn0gZnJvbSAnQGRlY2suZ2wvbGF5ZXJzJztcblxuaW1wb3J0IGdlb1ZpZXdwb3J0IGZyb20gJ0BtYXBib3gvZ2VvLXZpZXdwb3J0JztcbmltcG9ydCBDUFVBZ2dyZWdhdG9yLCB7XG4gIEFnZ3JlZ2F0aW9uVHlwZSxcbiAgZGVmYXVsdENvbG9yRGltZW5zaW9uLFxuICBEaW1lbnNpb25UeXBlLFxuICBnZXREaW1lbnNpb25TY2FsZVxufSBmcm9tICcuLi9sYXllci11dGlscy9jcHUtYWdncmVnYXRvcic7XG5pbXBvcnQge2dldERpc3RhbmNlU2NhbGVzfSBmcm9tICd2aWV3cG9ydC1tZXJjYXRvci1wcm9qZWN0JztcbmltcG9ydCB7bWF4fSBmcm9tICdkMy1hcnJheSc7XG5cbmltcG9ydCB7U0NBTEVfVFlQRVMsIERFRkFVTFRfQ09MT1JfUkFOR0UsIExBWUVSX1ZJU19DT05GSUdTfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQgQ2x1c3RlckJ1aWxkZXIsIHtnZXRHZW9KU09OfSBmcm9tICcuLi9sYXllci11dGlscy9jbHVzdGVyLXV0aWxzJztcbmltcG9ydCB7UkdCQUNvbG9yfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuY29uc3QgZGVmYXVsdFJhZGl1cyA9IExBWUVSX1ZJU19DT05GSUdTLmNsdXN0ZXJSYWRpdXMuZGVmYXVsdFZhbHVlO1xuY29uc3QgZGVmYXVsdFJhZGl1c1JhbmdlID0gTEFZRVJfVklTX0NPTkZJR1MuY2x1c3RlclJhZGl1c1JhbmdlLmRlZmF1bHRWYWx1ZTtcblxuY29uc3QgZGVmYXVsdEdldENvbG9yVmFsdWUgPSAocG9pbnRzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdKSA9PiBwb2ludHMubGVuZ3RoO1xuY29uc3QgZGVmYXVsdEdldFJhZGl1c1ZhbHVlID0gKGNlbGw6IHtmaWx0ZXJlZFBvaW50cz86IHVua25vd25bXTsgcG9pbnRzOiB1bmtub3duW119KSA9PlxuICBjZWxsLmZpbHRlcmVkUG9pbnRzID8gY2VsbC5maWx0ZXJlZFBvaW50cy5sZW5ndGggOiBjZWxsLnBvaW50cy5sZW5ndGg7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbmZ1bmN0aW9uIHByb2Nlc3NHZW9KU09OKHRoaXM6IENQVUFnZ3JlZ2F0b3IsIHN0ZXAsIHByb3BzLCBhZ2dyZWdhdGlvbiwge3ZpZXdwb3J0fSkge1xuICBjb25zdCB7ZGF0YSwgZ2V0UG9zaXRpb24sIGZpbHRlckRhdGF9ID0gcHJvcHM7XG4gIGNvbnN0IGdlb0pTT04gPSBnZXRHZW9KU09OKGRhdGEsIGdldFBvc2l0aW9uLCBmaWx0ZXJEYXRhKTtcbiAgY29uc3QgY2x1c3RlckJ1aWxkZXIgPSBuZXcgQ2x1c3RlckJ1aWxkZXIoKTtcblxuICB0aGlzLnNldFN0YXRlKHtnZW9KU09OLCBjbHVzdGVyQnVpbGRlcn0pO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5mdW5jdGlvbiBnZXRDbHVzdGVycyh0aGlzOiBDUFVBZ2dyZWdhdG9yLCBzdGVwLCBwcm9wcywgYWdncmVnYXRpb24sIHt2aWV3cG9ydH0pIHtcbiAgY29uc3Qge2dlb0pTT04sIGNsdXN0ZXJCdWlsZGVyfSA9IHRoaXMuc3RhdGU7XG4gIGNvbnN0IHtjbHVzdGVyUmFkaXVzLCB6b29tLCB3aWR0aCwgaGVpZ2h0fSA9IHByb3BzO1xuICBjb25zdCB7bG9uZ2l0dWRlLCBsYXRpdHVkZX0gPSB2aWV3cG9ydDtcblxuICAvLyB6b29tIG5lZWRzIHRvIGJlIGFuIGludGVnZXIgZm9yIHRoZSBkaWZmZXJlbnQgbWFwIHV0aWxzLiBBbHNvIGhlbHBzIHdpdGggY2FjaGUga2V5LlxuICBjb25zdCBiYm94ID0gZ2VvVmlld3BvcnQuYm91bmRzKFtsb25naXR1ZGUsIGxhdGl0dWRlXSwgem9vbSwgW3dpZHRoLCBoZWlnaHRdKTtcbiAgY29uc3QgY2x1c3RlcnMgPSBjbHVzdGVyQnVpbGRlcj8uY2x1c3RlcnNBdFpvb20oe2Jib3gsIGNsdXN0ZXJSYWRpdXMsIGdlb0pTT04sIHpvb219KSA/PyBbXTtcblxuICB0aGlzLnNldFN0YXRlKHtcbiAgICBsYXllckRhdGE6IHtkYXRhOiBjbHVzdGVyc31cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFN1YkxheWVyUmFkaXVzKFxuICBkaW1lbnNpb25TdGF0ZToge3NjYWxlRnVuYzogKHY6IG51bWJlcikgPT4gbnVtYmVyfSxcbiAgZGltZW5zaW9uOiBEaW1lbnNpb25UeXBlLFxuICBsYXllclByb3BzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4pIHtcbiAgcmV0dXJuIChjZWxsOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IG51bWJlciA9PiB7XG4gICAgY29uc3Qge2dldFJhZGl1c1ZhbHVlfSA9IGxheWVyUHJvcHM7XG4gICAgY29uc3Qge3NjYWxlRnVuY30gPSBkaW1lbnNpb25TdGF0ZTtcbiAgICByZXR1cm4gc2NhbGVGdW5jKGdldFJhZGl1c1ZhbHVlKGNlbGwpKTtcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IGNsdXN0ZXJBZ2dyZWdhdGlvbjogQWdncmVnYXRpb25UeXBlID0ge1xuICBrZXk6ICdwb3NpdGlvbicsXG4gIHVwZGF0ZVN0ZXBzOiBbXG4gICAge1xuICAgICAga2V5OiAnZ2VvanNvbicsXG4gICAgICB0cmlnZ2Vyczoge1xuICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgIHByb3A6ICdnZXRQb3NpdGlvbicsXG4gICAgICAgICAgdXBkYXRlVHJpZ2dlcjogJ2dldFBvc2l0aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBmaWx0ZXJEYXRhOiB7XG4gICAgICAgICAgcHJvcDogJ2ZpbHRlckRhdGEnLFxuICAgICAgICAgIHVwZGF0ZVRyaWdnZXI6ICdmaWx0ZXJEYXRhJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXBkYXRlcjogcHJvY2Vzc0dlb0pTT05cbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ2NsdXN0ZXJpbmcnLFxuICAgICAgdHJpZ2dlcnM6IHtcbiAgICAgICAgY2x1c3RlclJhZGl1czoge1xuICAgICAgICAgIHByb3A6ICdjbHVzdGVyUmFkaXVzJ1xuICAgICAgICB9LFxuICAgICAgICB6b29tOiB7XG4gICAgICAgICAgcHJvcDogJ3pvb20nXG4gICAgICAgIH0sXG4gICAgICAgIHdpZHRoOiB7XG4gICAgICAgICAgcHJvcDogJ3dpZHRoJ1xuICAgICAgICB9LFxuICAgICAgICBoZWlnaHQ6IHtcbiAgICAgICAgICBwcm9wOiAnaGVpZ2h0J1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXBkYXRlcjogZ2V0Q2x1c3RlcnNcbiAgICB9XG4gIF1cbn07XG5cbmZ1bmN0aW9uIGdldFJhZGl1c1ZhbHVlRG9tYWluKHRoaXM6IENQVUFnZ3JlZ2F0b3IsIHN0ZXAsIHByb3BzLCBkaW1lbnNpb25VcGRhdGVyKSB7XG4gIGNvbnN0IHtrZXl9ID0gZGltZW5zaW9uVXBkYXRlcjtcbiAgY29uc3Qge2dldFJhZGl1c1ZhbHVlfSA9IHByb3BzO1xuICBjb25zdCB7bGF5ZXJEYXRhfSA9IHRoaXMuc3RhdGU7XG5cbiAgY29uc3QgdmFsdWVEb21haW4gPSBbMCwgbWF4KGxheWVyRGF0YS5kYXRhIGFzIHVua25vd24gYXMgbnVtYmVyW10sIGdldFJhZGl1c1ZhbHVlKV07XG4gIHRoaXMuX3NldERpbWVuc2lvblN0YXRlKGtleSwge3ZhbHVlRG9tYWlufSk7XG59XG5cbmNvbnN0IGNsdXN0ZXJMYXllckRpbWVuc2lvbnM6IFtEaW1lbnNpb25UeXBlPFJHQkFDb2xvcj4sIERpbWVuc2lvblR5cGU8bnVtYmVyPl0gPSBbXG4gIGRlZmF1bHRDb2xvckRpbWVuc2lvbixcbiAge1xuICAgIGtleTogJ3JhZGl1cycsXG4gICAgYWNjZXNzb3I6ICdnZXRSYWRpdXMnLFxuICAgIG51bGxWYWx1ZTogMCxcbiAgICB1cGRhdGVTdGVwczogW1xuICAgICAge1xuICAgICAgICBrZXk6ICdnZXREb21haW4nLFxuICAgICAgICB0cmlnZ2Vyczoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBwcm9wOiAnZ2V0UmFkaXVzVmFsdWUnLFxuICAgICAgICAgICAgdXBkYXRlVHJpZ2dlcjogJ2dldFJhZGl1c1ZhbHVlJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlcjogZ2V0UmFkaXVzVmFsdWVEb21haW5cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2dldFNjYWxlRnVuYycsXG4gICAgICAgIHRyaWdnZXJzOiB7XG4gICAgICAgICAgZG9tYWluOiB7cHJvcDogJ3JhZGl1c0RvbWFpbid9LFxuICAgICAgICAgIHJhbmdlOiB7cHJvcDogJ3JhZGl1c1JhbmdlJ30sXG4gICAgICAgICAgc2NhbGVUeXBlOiB7cHJvcDogJ3JhZGl1c1NjYWxlVHlwZSd9XG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZXI6IGdldERpbWVuc2lvblNjYWxlXG4gICAgICB9XG4gICAgXSxcbiAgICBnZXRTdWJMYXllckFjY2Vzc29yOiBnZXRTdWJMYXllclJhZGl1cyxcbiAgICBnZXRQaWNraW5nSW5mbzogKGRpbWVuc2lvblN0YXRlLCBjZWxsLCBsYXllclByb3BzKSA9PiB7XG4gICAgICBjb25zdCByYWRpdXNWYWx1ZSA9IGxheWVyUHJvcHMuZ2V0UmFkaXVzVmFsdWUoY2VsbCk7XG4gICAgICBjb25zdCB7c2NhbGVGdW5jfSA9IGRpbWVuc2lvblN0YXRlO1xuICAgICAgY29uc3Qgc2NhbGVkUmFkaXVzVmFsdWUgPSBzY2FsZUZ1bmMgPyBzY2FsZUZ1bmMocmFkaXVzVmFsdWUpIDogcmFkaXVzVmFsdWU7XG5cbiAgICAgIHJldHVybiB7cmFkaXVzVmFsdWUsIHNjYWxlZFJhZGl1c1ZhbHVlfTtcbiAgICB9XG4gIH1cbl07XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgY2x1c3RlclJhZGl1czogZGVmYXVsdFJhZGl1cyxcbiAgY29sb3JEb21haW46IG51bGwsXG4gIGNvbG9yUmFuZ2U6IERFRkFVTFRfQ09MT1JfUkFOR0UsXG4gIGNvbG9yU2NhbGVUeXBlOiBTQ0FMRV9UWVBFUy5xdWFudGl6ZSxcbiAgcmFkaXVzU2NhbGVUeXBlOiBTQ0FMRV9UWVBFUy5zcXJ0LFxuICByYWRpdXNSYW5nZTogZGVmYXVsdFJhZGl1c1JhbmdlLFxuICBnZXRQb3NpdGlvbjoge3R5cGU6ICdhY2Nlc3NvcicsIHZhbHVlOiB4ID0+IHgucG9zaXRpb259LFxuICBnZXRDb2xvclZhbHVlOiB7dHlwZTogJ2FjY2Vzc29yJywgdmFsdWU6IGRlZmF1bHRHZXRDb2xvclZhbHVlfSxcbiAgZ2V0UmFkaXVzVmFsdWU6IHt0eXBlOiAnYWNjZXNzb3InLCB2YWx1ZTogZGVmYXVsdEdldFJhZGl1c1ZhbHVlfVxufTtcblxuaW50ZXJmYWNlIENsdXN0ZXJMYXllclN0YXRlIHtcbiAgY3B1QWdncmVnYXRvcjogQ1BVQWdncmVnYXRvcjtcbiAgYWdncmVnYXRvclN0YXRlOiBDUFVBZ2dyZWdhdG9yWydzdGF0ZSddO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDbHVzdGVyTGF5ZXIgZXh0ZW5kcyBDb21wb3NpdGVMYXllciB7XG4gIGluaXRpYWxpemVTdGF0ZSgpIHtcbiAgICBjb25zdCBjcHVBZ2dyZWdhdG9yID0gbmV3IENQVUFnZ3JlZ2F0b3Ioe1xuICAgICAgYWdncmVnYXRpb246IGNsdXN0ZXJBZ2dyZWdhdGlvbixcbiAgICAgIGRpbWVuc2lvbnM6IGNsdXN0ZXJMYXllckRpbWVuc2lvbnNcbiAgICB9KTtcblxuICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICBjcHVBZ2dyZWdhdG9yLFxuICAgICAgYWdncmVnYXRvclN0YXRlOiBjcHVBZ2dyZWdhdG9yLnN0YXRlXG4gICAgfTtcbiAgfVxuXG4gIHVwZGF0ZVN0YXRlKHtcbiAgICBvbGRQcm9wcyxcbiAgICBwcm9wcyxcbiAgICBjaGFuZ2VGbGFnc1xuICB9OiB7XG4gICAgb2xkUHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgY2hhbmdlRmxhZ3M6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIH0pIHtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGFnZ3JlZ2F0b3JTdGF0ZTogKHRoaXMuc3RhdGUgYXMgdW5rbm93biBhcyBDbHVzdGVyTGF5ZXJTdGF0ZSkuY3B1QWdncmVnYXRvci51cGRhdGVTdGF0ZShcbiAgICAgICAge29sZFByb3BzLCBwcm9wcywgY2hhbmdlRmxhZ3N9LFxuICAgICAgICB7XG4gICAgICAgICAgdmlld3BvcnQ6IHRoaXMuY29udGV4dC52aWV3cG9ydCxcbiAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHByb3BzIHBhc3NlZCBmb3IgaW50ZXJuYWwgY2FsY3VsYXRpb25cbiAgICAgICAgICBudW1JbnN0YW5jZXM6IHRoaXMuZ2V0TnVtSW5zdGFuY2VzKHByb3BzKVxuICAgICAgICB9XG4gICAgICApXG4gICAgfSk7XG4gIH1cblxuICBnZXRQaWNraW5nSW5mbyh7aW5mb306IEdldFBpY2tpbmdJbmZvUGFyYW1zKTogUGlja2luZ0luZm8ge1xuICAgIGNvbnN0IG9iaiA9ICh0aGlzLnN0YXRlIGFzIHVua25vd24gYXMgQ2x1c3RlckxheWVyU3RhdGUpLmNwdUFnZ3JlZ2F0b3IuZ2V0UGlja2luZ0luZm8oXG4gICAgICB7aW5mb30sXG4gICAgICB0aGlzLnByb3BzXG4gICAgKTtcbiAgICBpZiAob2JqPy5vYmplY3QpIHtcbiAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgICAgIGNvbnN0IGRpc3RhbmNlU2NhbGUgPSBnZXREaXN0YW5jZVNjYWxlcyh0aGlzLmNvbnRleHQudmlld3BvcnQpO1xuICAgICAgY29uc3QgbWV0ZXJzUGVyUGl4ZWwgPSBkaXN0YW5jZVNjYWxlLm1ldGVyc1BlclBpeGVsWzBdO1xuICAgICAgb2JqLm9iamVjdC5zY2FsZWRSYWRpdXNWYWx1ZSA9IG9iai5vYmplY3Quc2NhbGVkUmFkaXVzVmFsdWUgKiBtZXRlcnNQZXJQaXhlbDtcbiAgICB9XG5cbiAgICByZXR1cm4gb2JqIGFzIFBpY2tpbmdJbmZvO1xuICB9XG5cbiAgX2dldFN1YmxheWVyVXBkYXRlVHJpZ2dlcnMoKSB7XG4gICAgcmV0dXJuICh0aGlzLnN0YXRlIGFzIHVua25vd24gYXMgQ2x1c3RlckxheWVyU3RhdGUpLmNwdUFnZ3JlZ2F0b3IuZ2V0VXBkYXRlVHJpZ2dlcnModGhpcy5wcm9wcyk7XG4gIH1cblxuICBfZ2V0U3ViTGF5ZXJBY2Nlc3NvcnMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldFJhZGl1czogKHRoaXMuc3RhdGUgYXMgdW5rbm93biBhcyBDbHVzdGVyTGF5ZXJTdGF0ZSkuY3B1QWdncmVnYXRvci5nZXRBY2Nlc3NvcihcbiAgICAgICAgJ3JhZGl1cycsXG4gICAgICAgIHRoaXMucHJvcHNcbiAgICAgICksXG4gICAgICBnZXRGaWxsQ29sb3I6ICh0aGlzLnN0YXRlIGFzIHVua25vd24gYXMgQ2x1c3RlckxheWVyU3RhdGUpLmNwdUFnZ3JlZ2F0b3IuZ2V0QWNjZXNzb3IoXG4gICAgICAgICdmaWxsQ29sb3InLFxuICAgICAgICB0aGlzLnByb3BzXG4gICAgICApXG4gICAgfTtcbiAgfVxuXG4gIHJlbmRlckxheWVycygpIHtcbiAgICBjb25zdCB7aWQsIHJhZGl1c1NjYWxlLCB2aXNpYmxlLCBvcGFjaXR5LCBwaWNrYWJsZSwgYXV0b0hpZ2hsaWdodCwgaGlnaGxpZ2h0Q29sb3J9ID0gdGhpc1xuICAgICAgLnByb3BzIGFzIFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgY29uc3Qge2NwdUFnZ3JlZ2F0b3J9ID0gdGhpcy5zdGF0ZSBhcyB1bmtub3duIGFzIENsdXN0ZXJMYXllclN0YXRlO1xuICAgIGNvbnN0IHVwZGF0ZVRyaWdnZXJzID0gdGhpcy5fZ2V0U3VibGF5ZXJVcGRhdGVUcmlnZ2VycygpO1xuICAgIGNvbnN0IGFjY2Vzc29ycyA9IHRoaXMuX2dldFN1YkxheWVyQWNjZXNzb3JzKCk7XG5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgY29uc3QgZGlzdGFuY2VTY2FsZSA9IGdldERpc3RhbmNlU2NhbGVzKHRoaXMuY29udGV4dC52aWV3cG9ydCk7XG4gICAgY29uc3QgbWV0ZXJzUGVyUGl4ZWwgPSBkaXN0YW5jZVNjYWxlLm1ldGVyc1BlclBpeGVsWzBdO1xuXG4gICAgLy8gcmV0dXJuIHByb3BzIHRvIHRoZSBzdWJsYXllciBjb25zdHJ1Y3RvclxuICAgIHJldHVybiBuZXcgU2NhdHRlcnBsb3RMYXllcih7XG4gICAgICBpZDogYCR7aWR9LWNsdXN0ZXJgLFxuICAgICAgZGF0YTogY3B1QWdncmVnYXRvci5zdGF0ZS5sYXllckRhdGEuZGF0YSxcbiAgICAgIHJhZGl1c1NjYWxlOiBtZXRlcnNQZXJQaXhlbCAqIHJhZGl1c1NjYWxlLFxuICAgICAgdmlzaWJsZSxcbiAgICAgIG9wYWNpdHksXG4gICAgICBwaWNrYWJsZSxcbiAgICAgIGF1dG9IaWdobGlnaHQsXG4gICAgICBoaWdobGlnaHRDb2xvcixcbiAgICAgIHVwZGF0ZVRyaWdnZXJzLFxuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBkZXB0aE1hc2s6IGZhbHNlXG4gICAgICB9LFxuICAgICAgLi4uYWNjZXNzb3JzXG4gICAgfSk7XG4gIH1cbn1cblxuQ2x1c3RlckxheWVyLmxheWVyTmFtZSA9ICdDbHVzdGVyTGF5ZXInO1xuQ2x1c3RlckxheWVyLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxLQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7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
293
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29yZSIsInJlcXVpcmUiLCJfbGF5ZXJzIiwiX2dlb1ZpZXdwb3J0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9jcHVBZ2dyZWdhdG9yIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfdmlld3BvcnRNZXJjYXRvclByb2plY3QiLCJfZDNBcnJheSIsIl9jb25zdGFudHMiLCJfY2x1c3RlclV0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiX2NhbGxTdXBlciIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJkZWZhdWx0UmFkaXVzIiwiTEFZRVJfVklTX0NPTkZJR1MiLCJjbHVzdGVyUmFkaXVzIiwiZGVmYXVsdFZhbHVlIiwiZGVmYXVsdFJhZGl1c1JhbmdlIiwiY2x1c3RlclJhZGl1c1JhbmdlIiwiZGVmYXVsdEdldENvbG9yVmFsdWUiLCJwb2ludHMiLCJkZWZhdWx0R2V0UmFkaXVzVmFsdWUiLCJjZWxsIiwiZmlsdGVyZWRQb2ludHMiLCJwcm9jZXNzR2VvSlNPTiIsInN0ZXAiLCJwcm9wcyIsImFnZ3JlZ2F0aW9uIiwiX3JlZiIsInZpZXdwb3J0IiwiZGF0YSIsImdldFBvc2l0aW9uIiwiZmlsdGVyRGF0YSIsImdlb0pTT04iLCJnZXRHZW9KU09OIiwiY2x1c3RlckJ1aWxkZXIiLCJDbHVzdGVyQnVpbGRlciIsInNldFN0YXRlIiwiZ2V0Q2x1c3RlcnMiLCJfcmVmMiIsIl9jbHVzdGVyQnVpbGRlciRjbHVzdCIsIl90aGlzJHN0YXRlIiwic3RhdGUiLCJ6b29tIiwid2lkdGgiLCJoZWlnaHQiLCJsb25naXR1ZGUiLCJsYXRpdHVkZSIsImJib3giLCJnZW9WaWV3cG9ydCIsImJvdW5kcyIsImNsdXN0ZXJzIiwiY2x1c3RlcnNBdFpvb20iLCJsYXllckRhdGEiLCJnZXRTdWJMYXllclJhZGl1cyIsImRpbWVuc2lvblN0YXRlIiwiZGltZW5zaW9uIiwibGF5ZXJQcm9wcyIsImdldFJhZGl1c1ZhbHVlIiwic2NhbGVGdW5jIiwiY2x1c3RlckFnZ3JlZ2F0aW9uIiwiZXhwb3J0cyIsImtleSIsInVwZGF0ZVN0ZXBzIiwidHJpZ2dlcnMiLCJwb3NpdGlvbiIsInByb3AiLCJ1cGRhdGVUcmlnZ2VyIiwidXBkYXRlciIsImdldFJhZGl1c1ZhbHVlRG9tYWluIiwiZGltZW5zaW9uVXBkYXRlciIsInZhbHVlRG9tYWluIiwibWF4IiwiX3NldERpbWVuc2lvblN0YXRlIiwiY2x1c3RlckxheWVyRGltZW5zaW9ucyIsImRlZmF1bHRDb2xvckRpbWVuc2lvbiIsImFjY2Vzc29yIiwibnVsbFZhbHVlIiwidmFsdWUiLCJkb21haW4iLCJyYW5nZSIsInNjYWxlVHlwZSIsImdldERpbWVuc2lvblNjYWxlIiwiZ2V0U3ViTGF5ZXJBY2Nlc3NvciIsImdldFBpY2tpbmdJbmZvIiwicmFkaXVzVmFsdWUiLCJzY2FsZWRSYWRpdXNWYWx1ZSIsImRlZmF1bHRQcm9wcyIsImNvbG9yRG9tYWluIiwiY29sb3JSYW5nZSIsIkRFRkFVTFRfQ09MT1JfUkFOR0UiLCJjb2xvclNjYWxlVHlwZSIsIlNDQUxFX1RZUEVTIiwicXVhbnRpemUiLCJyYWRpdXNTY2FsZVR5cGUiLCJzcXJ0IiwicmFkaXVzUmFuZ2UiLCJ0eXBlIiwieCIsImdldENvbG9yVmFsdWUiLCJDbHVzdGVyTGF5ZXIiLCJfQ29tcG9zaXRlTGF5ZXIiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJpbml0aWFsaXplU3RhdGUiLCJjcHVBZ2dyZWdhdG9yIiwiQ1BVQWdncmVnYXRvciIsImRpbWVuc2lvbnMiLCJhZ2dyZWdhdG9yU3RhdGUiLCJ1cGRhdGVTdGF0ZSIsIl9yZWYzIiwib2xkUHJvcHMiLCJjaGFuZ2VGbGFncyIsImNvbnRleHQiLCJudW1JbnN0YW5jZXMiLCJnZXROdW1JbnN0YW5jZXMiLCJfcmVmNCIsImluZm8iLCJvYmoiLCJvYmplY3QiLCJkaXN0YW5jZVNjYWxlIiwiZ2V0RGlzdGFuY2VTY2FsZXMiLCJtZXRlcnNQZXJQaXhlbCIsIl9nZXRTdWJsYXllclVwZGF0ZVRyaWdnZXJzIiwiZ2V0VXBkYXRlVHJpZ2dlcnMiLCJfZ2V0U3ViTGF5ZXJBY2Nlc3NvcnMiLCJnZXRSYWRpdXMiLCJnZXRBY2Nlc3NvciIsImdldEZpbGxDb2xvciIsInJlbmRlckxheWVycyIsIl9yZWY1IiwiaWQiLCJyYWRpdXNTY2FsZSIsInZpc2libGUiLCJvcGFjaXR5IiwicGlja2FibGUiLCJhdXRvSGlnaGxpZ2h0IiwiaGlnaGxpZ2h0Q29sb3IiLCJfcmVmNiIsInVwZGF0ZVRyaWdnZXJzIiwiYWNjZXNzb3JzIiwiU2NhdHRlcnBsb3RMYXllciIsImNvbmNhdCIsInBhcmFtZXRlcnMiLCJkZXB0aE1hc2siLCJDb21wb3NpdGVMYXllciIsImxheWVyTmFtZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbHVzdGVyLWxheWVyL2NsdXN0ZXItbGF5ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtDb21wb3NpdGVMYXllciwgR2V0UGlja2luZ0luZm9QYXJhbXMsIFBpY2tpbmdJbmZvfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7U2NhdHRlcnBsb3RMYXllcn0gZnJvbSAnQGRlY2suZ2wvbGF5ZXJzJztcblxuaW1wb3J0IGdlb1ZpZXdwb3J0IGZyb20gJ0BtYXBib3gvZ2VvLXZpZXdwb3J0JztcbmltcG9ydCBDUFVBZ2dyZWdhdG9yLCB7XG4gIEFnZ3JlZ2F0aW9uVHlwZSxcbiAgZGVmYXVsdENvbG9yRGltZW5zaW9uLFxuICBEaW1lbnNpb25UeXBlLFxuICBnZXREaW1lbnNpb25TY2FsZVxufSBmcm9tICcuLi9sYXllci11dGlscy9jcHUtYWdncmVnYXRvcic7XG5pbXBvcnQge2dldERpc3RhbmNlU2NhbGVzfSBmcm9tICd2aWV3cG9ydC1tZXJjYXRvci1wcm9qZWN0JztcbmltcG9ydCB7bWF4fSBmcm9tICdkMy1hcnJheSc7XG5cbmltcG9ydCB7U0NBTEVfVFlQRVMsIERFRkFVTFRfQ09MT1JfUkFOR0UsIExBWUVSX1ZJU19DT05GSUdTfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQgQ2x1c3RlckJ1aWxkZXIsIHtnZXRHZW9KU09OfSBmcm9tICcuLi9sYXllci11dGlscy9jbHVzdGVyLXV0aWxzJztcbmltcG9ydCB7UkdCQUNvbG9yfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuY29uc3QgZGVmYXVsdFJhZGl1cyA9IExBWUVSX1ZJU19DT05GSUdTLmNsdXN0ZXJSYWRpdXMuZGVmYXVsdFZhbHVlO1xuY29uc3QgZGVmYXVsdFJhZGl1c1JhbmdlID0gTEFZRVJfVklTX0NPTkZJR1MuY2x1c3RlclJhZGl1c1JhbmdlLmRlZmF1bHRWYWx1ZTtcblxuY29uc3QgZGVmYXVsdEdldENvbG9yVmFsdWUgPSAocG9pbnRzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdKSA9PiBwb2ludHMubGVuZ3RoO1xuY29uc3QgZGVmYXVsdEdldFJhZGl1c1ZhbHVlID0gKGNlbGw6IHtmaWx0ZXJlZFBvaW50cz86IHVua25vd25bXTsgcG9pbnRzOiB1bmtub3duW119KSA9PlxuICBjZWxsLmZpbHRlcmVkUG9pbnRzID8gY2VsbC5maWx0ZXJlZFBvaW50cy5sZW5ndGggOiBjZWxsLnBvaW50cy5sZW5ndGg7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbmZ1bmN0aW9uIHByb2Nlc3NHZW9KU09OKHRoaXM6IENQVUFnZ3JlZ2F0b3IsIHN0ZXAsIHByb3BzLCBhZ2dyZWdhdGlvbiwge3ZpZXdwb3J0fSkge1xuICBjb25zdCB7ZGF0YSwgZ2V0UG9zaXRpb24sIGZpbHRlckRhdGF9ID0gcHJvcHM7XG4gIGNvbnN0IGdlb0pTT04gPSBnZXRHZW9KU09OKGRhdGEsIGdldFBvc2l0aW9uLCBmaWx0ZXJEYXRhKTtcbiAgY29uc3QgY2x1c3RlckJ1aWxkZXIgPSBuZXcgQ2x1c3RlckJ1aWxkZXIoKTtcblxuICB0aGlzLnNldFN0YXRlKHtnZW9KU09OLCBjbHVzdGVyQnVpbGRlcn0pO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5mdW5jdGlvbiBnZXRDbHVzdGVycyh0aGlzOiBDUFVBZ2dyZWdhdG9yLCBzdGVwLCBwcm9wcywgYWdncmVnYXRpb24sIHt2aWV3cG9ydH0pIHtcbiAgY29uc3Qge2dlb0pTT04sIGNsdXN0ZXJCdWlsZGVyfSA9IHRoaXMuc3RhdGU7XG4gIGNvbnN0IHtjbHVzdGVyUmFkaXVzLCB6b29tLCB3aWR0aCwgaGVpZ2h0fSA9IHByb3BzO1xuICBjb25zdCB7bG9uZ2l0dWRlLCBsYXRpdHVkZX0gPSB2aWV3cG9ydDtcblxuICAvLyB6b29tIG5lZWRzIHRvIGJlIGFuIGludGVnZXIgZm9yIHRoZSBkaWZmZXJlbnQgbWFwIHV0aWxzLiBBbHNvIGhlbHBzIHdpdGggY2FjaGUga2V5LlxuICBjb25zdCBiYm94ID0gZ2VvVmlld3BvcnQuYm91bmRzKFtsb25naXR1ZGUsIGxhdGl0dWRlXSwgem9vbSwgW3dpZHRoLCBoZWlnaHRdKTtcbiAgY29uc3QgY2x1c3RlcnMgPSBjbHVzdGVyQnVpbGRlcj8uY2x1c3RlcnNBdFpvb20oe2Jib3gsIGNsdXN0ZXJSYWRpdXMsIGdlb0pTT04sIHpvb219KSA/PyBbXTtcblxuICB0aGlzLnNldFN0YXRlKHtcbiAgICBsYXllckRhdGE6IHtkYXRhOiBjbHVzdGVyc31cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFN1YkxheWVyUmFkaXVzKFxuICBkaW1lbnNpb25TdGF0ZToge3NjYWxlRnVuYzogKHY6IG51bWJlcikgPT4gbnVtYmVyfSxcbiAgZGltZW5zaW9uOiBEaW1lbnNpb25UeXBlLFxuICBsYXllclByb3BzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4pIHtcbiAgcmV0dXJuIChjZWxsOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IG51bWJlciA9PiB7XG4gICAgY29uc3Qge2dldFJhZGl1c1ZhbHVlfSA9IGxheWVyUHJvcHM7XG4gICAgY29uc3Qge3NjYWxlRnVuY30gPSBkaW1lbnNpb25TdGF0ZTtcbiAgICByZXR1cm4gc2NhbGVGdW5jKGdldFJhZGl1c1ZhbHVlKGNlbGwpKTtcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IGNsdXN0ZXJBZ2dyZWdhdGlvbjogQWdncmVnYXRpb25UeXBlID0ge1xuICBrZXk6ICdwb3NpdGlvbicsXG4gIHVwZGF0ZVN0ZXBzOiBbXG4gICAge1xuICAgICAga2V5OiAnZ2VvanNvbicsXG4gICAgICB0cmlnZ2Vyczoge1xuICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgIHByb3A6ICdnZXRQb3NpdGlvbicsXG4gICAgICAgICAgdXBkYXRlVHJpZ2dlcjogJ2dldFBvc2l0aW9uJ1xuICAgICAgICB9LFxuICAgICAgICBmaWx0ZXJEYXRhOiB7XG4gICAgICAgICAgcHJvcDogJ2ZpbHRlckRhdGEnLFxuICAgICAgICAgIHVwZGF0ZVRyaWdnZXI6ICdmaWx0ZXJEYXRhJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXBkYXRlcjogcHJvY2Vzc0dlb0pTT05cbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ2NsdXN0ZXJpbmcnLFxuICAgICAgdHJpZ2dlcnM6IHtcbiAgICAgICAgY2x1c3RlclJhZGl1czoge1xuICAgICAgICAgIHByb3A6ICdjbHVzdGVyUmFkaXVzJ1xuICAgICAgICB9LFxuICAgICAgICB6b29tOiB7XG4gICAgICAgICAgcHJvcDogJ3pvb20nXG4gICAgICAgIH0sXG4gICAgICAgIHdpZHRoOiB7XG4gICAgICAgICAgcHJvcDogJ3dpZHRoJ1xuICAgICAgICB9LFxuICAgICAgICBoZWlnaHQ6IHtcbiAgICAgICAgICBwcm9wOiAnaGVpZ2h0J1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXBkYXRlcjogZ2V0Q2x1c3RlcnNcbiAgICB9XG4gIF1cbn07XG5cbmZ1bmN0aW9uIGdldFJhZGl1c1ZhbHVlRG9tYWluKHRoaXM6IENQVUFnZ3JlZ2F0b3IsIHN0ZXAsIHByb3BzLCBkaW1lbnNpb25VcGRhdGVyKSB7XG4gIGNvbnN0IHtrZXl9ID0gZGltZW5zaW9uVXBkYXRlcjtcbiAgY29uc3Qge2dldFJhZGl1c1ZhbHVlfSA9IHByb3BzO1xuICBjb25zdCB7bGF5ZXJEYXRhfSA9IHRoaXMuc3RhdGU7XG5cbiAgY29uc3QgdmFsdWVEb21haW4gPSBbMCwgbWF4KGxheWVyRGF0YS5kYXRhIGFzIHVua25vd24gYXMgbnVtYmVyW10sIGdldFJhZGl1c1ZhbHVlKV07XG4gIHRoaXMuX3NldERpbWVuc2lvblN0YXRlKGtleSwge3ZhbHVlRG9tYWlufSk7XG59XG5cbmNvbnN0IGNsdXN0ZXJMYXllckRpbWVuc2lvbnM6IFtEaW1lbnNpb25UeXBlPFJHQkFDb2xvcj4sIERpbWVuc2lvblR5cGU8bnVtYmVyPl0gPSBbXG4gIGRlZmF1bHRDb2xvckRpbWVuc2lvbixcbiAge1xuICAgIGtleTogJ3JhZGl1cycsXG4gICAgYWNjZXNzb3I6ICdnZXRSYWRpdXMnLFxuICAgIG51bGxWYWx1ZTogMCxcbiAgICB1cGRhdGVTdGVwczogW1xuICAgICAge1xuICAgICAgICBrZXk6ICdnZXREb21haW4nLFxuICAgICAgICB0cmlnZ2Vyczoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBwcm9wOiAnZ2V0UmFkaXVzVmFsdWUnLFxuICAgICAgICAgICAgdXBkYXRlVHJpZ2dlcjogJ2dldFJhZGl1c1ZhbHVlJ1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgdXBkYXRlcjogZ2V0UmFkaXVzVmFsdWVEb21haW5cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ2dldFNjYWxlRnVuYycsXG4gICAgICAgIHRyaWdnZXJzOiB7XG4gICAgICAgICAgZG9tYWluOiB7cHJvcDogJ3JhZGl1c0RvbWFpbid9LFxuICAgICAgICAgIHJhbmdlOiB7cHJvcDogJ3JhZGl1c1JhbmdlJ30sXG4gICAgICAgICAgc2NhbGVUeXBlOiB7cHJvcDogJ3JhZGl1c1NjYWxlVHlwZSd9XG4gICAgICAgIH0sXG4gICAgICAgIHVwZGF0ZXI6IGdldERpbWVuc2lvblNjYWxlXG4gICAgICB9XG4gICAgXSxcbiAgICBnZXRTdWJMYXllckFjY2Vzc29yOiBnZXRTdWJMYXllclJhZGl1cyxcbiAgICBnZXRQaWNraW5nSW5mbzogKGRpbWVuc2lvblN0YXRlLCBjZWxsLCBsYXllclByb3BzKSA9PiB7XG4gICAgICBjb25zdCByYWRpdXNWYWx1ZSA9IGxheWVyUHJvcHMuZ2V0UmFkaXVzVmFsdWUoY2VsbCk7XG4gICAgICBjb25zdCB7c2NhbGVGdW5jfSA9IGRpbWVuc2lvblN0YXRlO1xuICAgICAgY29uc3Qgc2NhbGVkUmFkaXVzVmFsdWUgPSBzY2FsZUZ1bmMgPyBzY2FsZUZ1bmMocmFkaXVzVmFsdWUpIDogcmFkaXVzVmFsdWU7XG5cbiAgICAgIHJldHVybiB7cmFkaXVzVmFsdWUsIHNjYWxlZFJhZGl1c1ZhbHVlfTtcbiAgICB9XG4gIH1cbl07XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgY2x1c3RlclJhZGl1czogZGVmYXVsdFJhZGl1cyxcbiAgY29sb3JEb21haW46IG51bGwsXG4gIGNvbG9yUmFuZ2U6IERFRkFVTFRfQ09MT1JfUkFOR0UsXG4gIGNvbG9yU2NhbGVUeXBlOiBTQ0FMRV9UWVBFUy5xdWFudGl6ZSxcbiAgcmFkaXVzU2NhbGVUeXBlOiBTQ0FMRV9UWVBFUy5zcXJ0LFxuICByYWRpdXNSYW5nZTogZGVmYXVsdFJhZGl1c1JhbmdlLFxuICBnZXRQb3NpdGlvbjoge3R5cGU6ICdhY2Nlc3NvcicsIHZhbHVlOiB4ID0+IHgucG9zaXRpb259LFxuICBnZXRDb2xvclZhbHVlOiB7dHlwZTogJ2FjY2Vzc29yJywgdmFsdWU6IGRlZmF1bHRHZXRDb2xvclZhbHVlfSxcbiAgZ2V0UmFkaXVzVmFsdWU6IHt0eXBlOiAnYWNjZXNzb3InLCB2YWx1ZTogZGVmYXVsdEdldFJhZGl1c1ZhbHVlfVxufTtcblxuaW50ZXJmYWNlIENsdXN0ZXJMYXllclN0YXRlIHtcbiAgY3B1QWdncmVnYXRvcjogQ1BVQWdncmVnYXRvcjtcbiAgYWdncmVnYXRvclN0YXRlOiBDUFVBZ2dyZWdhdG9yWydzdGF0ZSddO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDbHVzdGVyTGF5ZXIgZXh0ZW5kcyBDb21wb3NpdGVMYXllciB7XG4gIGluaXRpYWxpemVTdGF0ZSgpIHtcbiAgICBjb25zdCBjcHVBZ2dyZWdhdG9yID0gbmV3IENQVUFnZ3JlZ2F0b3Ioe1xuICAgICAgYWdncmVnYXRpb246IGNsdXN0ZXJBZ2dyZWdhdGlvbixcbiAgICAgIGRpbWVuc2lvbnM6IGNsdXN0ZXJMYXllckRpbWVuc2lvbnNcbiAgICB9KTtcblxuICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICBjcHVBZ2dyZWdhdG9yLFxuICAgICAgYWdncmVnYXRvclN0YXRlOiBjcHVBZ2dyZWdhdG9yLnN0YXRlXG4gICAgfTtcbiAgfVxuXG4gIHVwZGF0ZVN0YXRlKHtcbiAgICBvbGRQcm9wcyxcbiAgICBwcm9wcyxcbiAgICBjaGFuZ2VGbGFnc1xuICB9OiB7XG4gICAgb2xkUHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgY2hhbmdlRmxhZ3M6IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIH0pIHtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGFnZ3JlZ2F0b3JTdGF0ZTogKHRoaXMuc3RhdGUgYXMgdW5rbm93biBhcyBDbHVzdGVyTGF5ZXJTdGF0ZSkuY3B1QWdncmVnYXRvci51cGRhdGVTdGF0ZShcbiAgICAgICAge29sZFByb3BzLCBwcm9wcywgY2hhbmdlRmxhZ3N9LFxuICAgICAgICB7XG4gICAgICAgICAgdmlld3BvcnQ6IHRoaXMuY29udGV4dC52aWV3cG9ydCxcbiAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHByb3BzIHBhc3NlZCBmb3IgaW50ZXJuYWwgY2FsY3VsYXRpb25cbiAgICAgICAgICBudW1JbnN0YW5jZXM6IHRoaXMuZ2V0TnVtSW5zdGFuY2VzKHByb3BzKVxuICAgICAgICB9XG4gICAgICApXG4gICAgfSk7XG4gIH1cblxuICBnZXRQaWNraW5nSW5mbyh7aW5mb306IEdldFBpY2tpbmdJbmZvUGFyYW1zKTogUGlja2luZ0luZm8ge1xuICAgIGNvbnN0IG9iaiA9ICh0aGlzLnN0YXRlIGFzIHVua25vd24gYXMgQ2x1c3RlckxheWVyU3RhdGUpLmNwdUFnZ3JlZ2F0b3IuZ2V0UGlja2luZ0luZm8oXG4gICAgICB7aW5mb30sXG4gICAgICB0aGlzLnByb3BzXG4gICAgKTtcbiAgICBpZiAob2JqPy5vYmplY3QpIHtcbiAgICAgIGNvbnN0IGRpc3RhbmNlU2NhbGUgPSBnZXREaXN0YW5jZVNjYWxlcyh0aGlzLmNvbnRleHQudmlld3BvcnQpO1xuICAgICAgY29uc3QgbWV0ZXJzUGVyUGl4ZWwgPSBkaXN0YW5jZVNjYWxlLm1ldGVyc1BlclBpeGVsWzBdO1xuICAgICAgb2JqLm9iamVjdC5zY2FsZWRSYWRpdXNWYWx1ZSA9IG9iai5vYmplY3Quc2NhbGVkUmFkaXVzVmFsdWUgKiBtZXRlcnNQZXJQaXhlbDtcbiAgICB9XG5cbiAgICByZXR1cm4gb2JqIGFzIFBpY2tpbmdJbmZvO1xuICB9XG5cbiAgX2dldFN1YmxheWVyVXBkYXRlVHJpZ2dlcnMoKSB7XG4gICAgcmV0dXJuICh0aGlzLnN0YXRlIGFzIHVua25vd24gYXMgQ2x1c3RlckxheWVyU3RhdGUpLmNwdUFnZ3JlZ2F0b3IuZ2V0VXBkYXRlVHJpZ2dlcnModGhpcy5wcm9wcyk7XG4gIH1cblxuICBfZ2V0U3ViTGF5ZXJBY2Nlc3NvcnMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldFJhZGl1czogKHRoaXMuc3RhdGUgYXMgdW5rbm93biBhcyBDbHVzdGVyTGF5ZXJTdGF0ZSkuY3B1QWdncmVnYXRvci5nZXRBY2Nlc3NvcihcbiAgICAgICAgJ3JhZGl1cycsXG4gICAgICAgIHRoaXMucHJvcHNcbiAgICAgICksXG4gICAgICBnZXRGaWxsQ29sb3I6ICh0aGlzLnN0YXRlIGFzIHVua25vd24gYXMgQ2x1c3RlckxheWVyU3RhdGUpLmNwdUFnZ3JlZ2F0b3IuZ2V0QWNjZXNzb3IoXG4gICAgICAgICdmaWxsQ29sb3InLFxuICAgICAgICB0aGlzLnByb3BzXG4gICAgICApXG4gICAgfTtcbiAgfVxuXG4gIHJlbmRlckxheWVycygpIHtcbiAgICBjb25zdCB7aWQsIHJhZGl1c1NjYWxlLCB2aXNpYmxlLCBvcGFjaXR5LCBwaWNrYWJsZSwgYXV0b0hpZ2hsaWdodCwgaGlnaGxpZ2h0Q29sb3J9ID0gdGhpc1xuICAgICAgLnByb3BzIGFzIFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgY29uc3Qge2NwdUFnZ3JlZ2F0b3J9ID0gdGhpcy5zdGF0ZSBhcyB1bmtub3duIGFzIENsdXN0ZXJMYXllclN0YXRlO1xuICAgIGNvbnN0IHVwZGF0ZVRyaWdnZXJzID0gdGhpcy5fZ2V0U3VibGF5ZXJVcGRhdGVUcmlnZ2VycygpO1xuICAgIGNvbnN0IGFjY2Vzc29ycyA9IHRoaXMuX2dldFN1YkxheWVyQWNjZXNzb3JzKCk7XG5cbiAgICBjb25zdCBkaXN0YW5jZVNjYWxlID0gZ2V0RGlzdGFuY2VTY2FsZXModGhpcy5jb250ZXh0LnZpZXdwb3J0KTtcbiAgICBjb25zdCBtZXRlcnNQZXJQaXhlbCA9IGRpc3RhbmNlU2NhbGUubWV0ZXJzUGVyUGl4ZWxbMF07XG5cbiAgICAvLyByZXR1cm4gcHJvcHMgdG8gdGhlIHN1YmxheWVyIGNvbnN0cnVjdG9yXG4gICAgcmV0dXJuIG5ldyBTY2F0dGVycGxvdExheWVyKHtcbiAgICAgIGlkOiBgJHtpZH0tY2x1c3RlcmAsXG4gICAgICBkYXRhOiBjcHVBZ2dyZWdhdG9yLnN0YXRlLmxheWVyRGF0YS5kYXRhLFxuICAgICAgcmFkaXVzU2NhbGU6IG1ldGVyc1BlclBpeGVsICogcmFkaXVzU2NhbGUsXG4gICAgICB2aXNpYmxlLFxuICAgICAgb3BhY2l0eSxcbiAgICAgIHBpY2thYmxlLFxuICAgICAgYXV0b0hpZ2hsaWdodCxcbiAgICAgIGhpZ2hsaWdodENvbG9yLFxuICAgICAgdXBkYXRlVHJpZ2dlcnMsXG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIGRlcHRoTWFzazogZmFsc2VcbiAgICAgIH0sXG4gICAgICAuLi5hY2Nlc3NvcnNcbiAgICB9KTtcbiAgfVxufVxuXG5DbHVzdGVyTGF5ZXIubGF5ZXJOYW1lID0gJ0NsdXN0ZXJMYXllcic7XG5DbHVzdGVyTGF5ZXIuZGVmYXVsdFByb3BzID0gZGVmYXVsdFByb3BzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLEtBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGNB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
@@ -7,6 +7,9 @@ import { GetPickingInfoParams, PickingInfo } from '@deck.gl/core';
7
7
  *
8
8
  * We override getPickingInfo to add `cellOutline` — an array of [lng, lat] coordinates
9
9
  * computed in common space so the outline aligns with rendered cells at all latitudes.
10
+ *
11
+ * We also override _onAggregationUpdate to send per-bin aggregated values through
12
+ * onSetColorDomain so the legend can compute proper quantile/custom breaks.
10
13
  */
11
14
  export default class ScaleEnhancedGridLayer extends GridLayer<any> {
12
15
  static defaultProps: {
@@ -4903,5 +4906,9 @@ export default class ScaleEnhancedGridLayer extends GridLayer<any> {
4903
4906
  ignore?: boolean;
4904
4907
  }) | null) | undefined;
4905
4908
  };
4909
+ _onAggregationUpdate({ channel }: {
4910
+ channel: number;
4911
+ }): void;
4912
+ renderLayers(): any;
4906
4913
  getPickingInfo(params: GetPickingInfoParams): PickingInfo;
4907
4914
  }
@@ -13,6 +13,7 @@ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
13
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
15
  var _aggregationLayers = require("@deck.gl/aggregation-layers");
16
+ var _aggregationUtils = require("../layer-utils/aggregation-utils");
16
17
  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; }
17
18
  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) { (0, _defineProperty2["default"])(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; }
18
19
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
@@ -26,7 +27,11 @@ function _superPropGet(t, e, r, o) { var p = (0, _get2["default"])((0, _getProto
26
27
  *
27
28
  * We override getPickingInfo to add `cellOutline` — an array of [lng, lat] coordinates
28
29
  * computed in common space so the outline aligns with rendered cells at all latitudes.
30
+ *
31
+ * We also override _onAggregationUpdate to send per-bin aggregated values through
32
+ * onSetColorDomain so the legend can compute proper quantile/custom breaks.
29
33
  */
34
+ // @ts-expect-error -- overriding private _onAggregationUpdate to enrich the onSetColorDomain callback
30
35
  var ScaleEnhancedGridLayer = exports["default"] = /*#__PURE__*/function (_GridLayer) {
31
36
  function ScaleEnhancedGridLayer() {
32
37
  (0, _classCallCheck2["default"])(this, ScaleEnhancedGridLayer);
@@ -34,23 +39,39 @@ var ScaleEnhancedGridLayer = exports["default"] = /*#__PURE__*/function (_GridLa
34
39
  }
35
40
  (0, _inherits2["default"])(ScaleEnhancedGridLayer, _GridLayer);
36
41
  return (0, _createClass2["default"])(ScaleEnhancedGridLayer, [{
42
+ key: "_onAggregationUpdate",
43
+ value:
44
+ // HACK: deck.gl 9's _onAggregationUpdate is private and its onSetColorDomain
45
+ // callback only provides [min, max]. That is sufficient for quantize/linear
46
+ // scales but d3.scaleQuantile needs the *full sorted array* of bin values to
47
+ // compute correct break points — without it the legend labels are wrong
48
+ function _onAggregationUpdate(_ref) {
49
+ var channel = _ref.channel;
50
+ (0, _aggregationUtils.enrichedAggregationUpdate)(this, _aggregationLayers.GridLayer, channel);
51
+ }
52
+ }, {
53
+ key: "renderLayers",
54
+ value: function renderLayers() {
55
+ return (0, _aggregationUtils.enrichedRenderLayers)(this, _aggregationLayers.GridLayer);
56
+ }
57
+ }, {
37
58
  key: "getPickingInfo",
38
59
  value: function getPickingInfo(params) {
39
60
  var info = _superPropGet(ScaleEnhancedGridLayer, "getPickingInfo", this, 3)([params]);
40
61
  if (info.object) {
41
62
  var _this$props$coverage;
42
- var _ref = this.state,
43
- cellOriginCommon = _ref.cellOriginCommon,
44
- cellSizeCommon = _ref.cellSizeCommon,
45
- aggregatorViewport = _ref.aggregatorViewport;
63
+ var _ref2 = this.state,
64
+ cellOriginCommon = _ref2.cellOriginCommon,
65
+ cellSizeCommon = _ref2.cellSizeCommon,
66
+ aggregatorViewport = _ref2.aggregatorViewport;
46
67
  var coverage = (_this$props$coverage = this.props.coverage) !== null && _this$props$coverage !== void 0 ? _this$props$coverage : 1;
47
68
  if (!cellOriginCommon || !cellSizeCommon || !aggregatorViewport) {
48
69
  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.');
49
70
  return info;
50
71
  }
51
- var _ref2 = info.object,
52
- col = _ref2.col,
53
- row = _ref2.row;
72
+ var _ref3 = info.object,
73
+ col = _ref3.col,
74
+ row = _ref3.row;
54
75
  if (typeof col !== 'number' || typeof row !== 'number') return info;
55
76
  var cx = (col + 0.5) * cellSizeCommon[0] + cellOriginCommon[0];
56
77
  var cy = (row + 0.5) * cellSizeCommon[1] + cellOriginCommon[1];
@@ -66,4 +87,4 @@ var ScaleEnhancedGridLayer = exports["default"] = /*#__PURE__*/function (_GridLa
66
87
  gpuAggregation: false
67
88
  }));
68
89
  ScaleEnhancedGridLayer.layerName = 'ScaleEnhancedGridLayer';
69
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYWdncmVnYXRpb25MYXllcnMiLCJyZXF1aXJlIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJfc3VwZXJQcm9wR2V0IiwicCIsIl9nZXQyIiwiU2NhbGVFbmhhbmNlZEdyaWRMYXllciIsImV4cG9ydHMiLCJfR3JpZExheWVyIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwidmFsdWUiLCJnZXRQaWNraW5nSW5mbyIsInBhcmFtcyIsImluZm8iLCJvYmplY3QiLCJfdGhpcyRwcm9wcyRjb3ZlcmFnZSIsIl9yZWYiLCJzdGF0ZSIsImNlbGxPcmlnaW5Db21tb24iLCJjZWxsU2l6ZUNvbW1vbiIsImFnZ3JlZ2F0b3JWaWV3cG9ydCIsImNvdmVyYWdlIiwicHJvcHMiLCJjb25zb2xlIiwiZXJyb3IiLCJfcmVmMiIsImNvbCIsInJvdyIsImN4IiwiY3kiLCJodyIsImhoIiwiY2VsbE91dGxpbmUiLCJ1bnByb2plY3RGbGF0IiwiR3JpZExheWVyIiwiZGVmYXVsdFByb3BzIiwiZ3B1QWdncmVnYXRpb24iLCJsYXllck5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZ3JpZC1sYXllci9lbmhhbmNlZC1jcHUtZ3JpZC1sYXllci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge0dyaWRMYXllciwgR3JpZExheWVyUGlja2luZ0luZm99IGZyb20gJ0BkZWNrLmdsL2FnZ3JlZ2F0aW9uLWxheWVycyc7XG5pbXBvcnQge0dldFBpY2tpbmdJbmZvUGFyYW1zLCBQaWNraW5nSW5mbywgVmlld3BvcnR9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuXG5pbnRlcmZhY2UgR3JpZEludGVybmFsU3RhdGUge1xuICBjZWxsT3JpZ2luQ29tbW9uPzogW251bWJlciwgbnVtYmVyXTtcbiAgY2VsbFNpemVDb21tb24/OiBbbnVtYmVyLCBudW1iZXJdO1xuICBhZ2dyZWdhdG9yVmlld3BvcnQ/OiBWaWV3cG9ydCAmIHt1bnByb2plY3RGbGF0KHh5OiBudW1iZXJbXSk6IG51bWJlcltdfTtcbn1cblxuaW50ZXJmYWNlIEdyaWRQaWNraW5nT2JqZWN0IHtcbiAgY29sOiBudW1iZXI7XG4gIHJvdzogbnVtYmVyO1xuICBjZWxsT3V0bGluZT86IG51bWJlcltdW107XG4gIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG5cbi8qKlxuICogSW4gZGVjay5nbCA5LCBHcmlkTGF5ZXIgbmF0aXZlbHkgc3VwcG9ydHMgQ1BVIGFnZ3JlZ2F0aW9uIHZpYSBncHVBZ2dyZWdhdGlvbjogZmFsc2UsXG4gKiBjdXN0b20gZ2V0Q29sb3JWYWx1ZS9nZXRFbGV2YXRpb25WYWx1ZSBhY2Nlc3NvcnMsIHBlcmNlbnRpbGUgZmlsdGVyaW5nLCBhbmQgc2NhbGUgdHlwZXMuXG4gKiBUaGUgY3VzdG9tIENQVUFnZ3JlZ2F0b3Igb3ZlcnJpZGUgZnJvbSBkZWNrLmdsIDggaXMgbm8gbG9uZ2VyIG5lZWRlZC5cbiAqXG4gKiBXZSBvdmVycmlkZSBnZXRQaWNraW5nSW5mbyB0byBhZGQgYGNlbGxPdXRsaW5lYCDigJQgYW4gYXJyYXkgb2YgW2xuZywgbGF0XSBjb29yZGluYXRlc1xuICogY29tcHV0ZWQgaW4gY29tbW9uIHNwYWNlIHNvIHRoZSBvdXRsaW5lIGFsaWducyB3aXRoIHJlbmRlcmVkIGNlbGxzIGF0IGFsbCBsYXRpdHVkZXMuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNjYWxlRW5oYW5jZWRHcmlkTGF5ZXIgZXh0ZW5kcyBHcmlkTGF5ZXI8YW55PiB7XG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgLi4uR3JpZExheWVyLmRlZmF1bHRQcm9wcyxcbiAgICBncHVBZ2dyZWdhdGlvbjogZmFsc2VcbiAgfTtcblxuICBnZXRQaWNraW5nSW5mbyhwYXJhbXM6IEdldFBpY2tpbmdJbmZvUGFyYW1zKTogUGlja2luZ0luZm8ge1xuICAgIGNvbnN0IGluZm8gPSBzdXBlci5nZXRQaWNraW5nSW5mbyhwYXJhbXMpIGFzIEdyaWRMYXllclBpY2tpbmdJbmZvPFJlY29yZDxzdHJpbmcsIHVua25vd24+PjtcbiAgICBpZiAoaW5mby5vYmplY3QpIHtcbiAgICAgIGNvbnN0IHtjZWxsT3JpZ2luQ29tbW9uLCBjZWxsU2l6ZUNvbW1vbiwgYWdncmVnYXRvclZpZXdwb3J0fSA9IHRoaXNcbiAgICAgICAgLnN0YXRlIGFzIHVua25vd24gYXMgR3JpZEludGVybmFsU3RhdGU7XG4gICAgICBjb25zdCBjb3ZlcmFnZSA9IHRoaXMucHJvcHMuY292ZXJhZ2UgPz8gMTtcbiAgICAgIGlmICghY2VsbE9yaWdpbkNvbW1vbiB8fCAhY2VsbFNpemVDb21tb24gfHwgIWFnZ3JlZ2F0b3JWaWV3cG9ydCkge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICdTY2FsZUVuaGFuY2VkR3JpZExheWVyOiBleHBlY3RlZCBpbnRlcm5hbCBzdGF0ZSBwcm9wZXJ0aWVzICcgK1xuICAgICAgICAgICAgJyhjZWxsT3JpZ2luQ29tbW9uLCBjZWxsU2l6ZUNvbW1vbiwgYWdncmVnYXRvclZpZXdwb3J0KSBhcmUgbWlzc2luZy4gJyArXG4gICAgICAgICAgICAnSG92ZXIgb3V0bGluZSB3aWxsIG5vdCBiZSBzaG93bi4gVGhpcyBtYXkgaW5kaWNhdGUgYSBkZWNrLmdsIHZlcnNpb24gY2hhbmdlLidcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIGluZm87XG4gICAgICB9XG4gICAgICBjb25zdCB7Y29sLCByb3d9ID0gaW5mby5vYmplY3QgYXMgR3JpZFBpY2tpbmdPYmplY3Q7XG4gICAgICBpZiAodHlwZW9mIGNvbCAhPT0gJ251bWJlcicgfHwgdHlwZW9mIHJvdyAhPT0gJ251bWJlcicpIHJldHVybiBpbmZvO1xuICAgICAgY29uc3QgY3ggPSAoY29sICsgMC41KSAqIGNlbGxTaXplQ29tbW9uWzBdICsgY2VsbE9yaWdpbkNvbW1vblswXTtcbiAgICAgIGNvbnN0IGN5ID0gKHJvdyArIDAuNSkgKiBjZWxsU2l6ZUNvbW1vblsxXSArIGNlbGxPcmlnaW5Db21tb25bMV07XG4gICAgICBjb25zdCBodyA9IDAuNSAqIGNvdmVyYWdlICogY2VsbFNpemVDb21tb25bMF07XG4gICAgICBjb25zdCBoaCA9IDAuNSAqIGNvdmVyYWdlICogY2VsbFNpemVDb21tb25bMV07XG5cbiAgICAgIChpbmZvLm9iamVjdCBhcyBHcmlkUGlja2luZ09iamVjdCkuY2VsbE91dGxpbmUgPSBbXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCAtIGh3LCBjeSAtIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCArIGh3LCBjeSAtIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCArIGh3LCBjeSArIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCAtIGh3LCBjeSArIGhoXSksXG4gICAgICAgIGFnZ3JlZ2F0b3JWaWV3cG9ydC51bnByb2plY3RGbGF0KFtjeCAtIGh3LCBjeSAtIGhoXSlcbiAgICAgIF07XG4gICAgfVxuICAgIHJldHVybiBpbmZvO1xuICB9XG59XG5cblNjYWxlRW5oYW5jZWRHcmlkTGF5ZXIubGF5ZXJOYW1lID0gJ1NjYWxlRW5oYW5jZWRHcmlkTGF5ZXInO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLGtCQUFBLEdBQUFDLE9BQUE7QUFBNEUsU0FBQUMsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFZLFNBQUEsQ0FBQUMsTUFBQSxFQUFBYixDQUFBLFVBQUFDLENBQUEsV0FBQVcsU0FBQSxDQUFBWixDQUFBLElBQUFZLFNBQUEsQ0FBQVosQ0FBQSxRQUFBQSxDQUFBLE9BQUFGLE9BQUEsQ0FBQUksTUFBQSxDQUFBRCxDQUFBLE9BQUFhLE9BQUEsV0FBQWQsQ0FBQSxRQUFBZSxnQkFBQSxhQUFBaEIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsQ0FBQUQsQ0FBQSxTQUFBRSxNQUFBLENBQUFjLHlCQUFBLEdBQUFkLE1BQUEsQ0FBQWUsZ0JBQUEsQ0FBQWxCLENBQUEsRUFBQUcsTUFBQSxDQUFB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
90
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYWdncmVnYXRpb25MYXllcnMiLCJyZXF1aXJlIiwiX2FnZ3JlZ2F0aW9uVXRpbHMiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiY2FsbCIsIl9zdXBlclByb3BHZXQiLCJwIiwiX2dldDIiLCJTY2FsZUVuaGFuY2VkR3JpZExheWVyIiwiZXhwb3J0cyIsIl9HcmlkTGF5ZXIiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJ2YWx1ZSIsIl9vbkFnZ3JlZ2F0aW9uVXBkYXRlIiwiX3JlZiIsImNoYW5uZWwiLCJlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlIiwiR3JpZExheWVyIiwicmVuZGVyTGF5ZXJzIiwiZW5yaWNoZWRSZW5kZXJMYXllcnMiLCJnZXRQaWNraW5nSW5mbyIsInBhcmFtcyIsImluZm8iLCJvYmplY3QiLCJfdGhpcyRwcm9wcyRjb3ZlcmFnZSIsIl9yZWYyIiwic3RhdGUiLCJjZWxsT3JpZ2luQ29tbW9uIiwiY2VsbFNpemVDb21tb24iLCJhZ2dyZWdhdG9yVmlld3BvcnQiLCJjb3ZlcmFnZSIsInByb3BzIiwiY29uc29sZSIsImVycm9yIiwiX3JlZjMiLCJjb2wiLCJyb3ciLCJjeCIsImN5IiwiaHciLCJoaCIsImNlbGxPdXRsaW5lIiwidW5wcm9qZWN0RmxhdCIsImRlZmF1bHRQcm9wcyIsImdwdUFnZ3JlZ2F0aW9uIiwibGF5ZXJOYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dyaWQtbGF5ZXIvZW5oYW5jZWQtY3B1LWdyaWQtbGF5ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtHcmlkTGF5ZXIsIEdyaWRMYXllclBpY2tpbmdJbmZvfSBmcm9tICdAZGVjay5nbC9hZ2dyZWdhdGlvbi1sYXllcnMnO1xuaW1wb3J0IHtHZXRQaWNraW5nSW5mb1BhcmFtcywgUGlja2luZ0luZm8sIFZpZXdwb3J0fSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7ZW5yaWNoZWRBZ2dyZWdhdGlvblVwZGF0ZSwgZW5yaWNoZWRSZW5kZXJMYXllcnN9IGZyb20gJy4uL2xheWVyLXV0aWxzL2FnZ3JlZ2F0aW9uLXV0aWxzJztcblxuaW50ZXJmYWNlIEdyaWRJbnRlcm5hbFN0YXRlIHtcbiAgY2VsbE9yaWdpbkNvbW1vbj86IFtudW1iZXIsIG51bWJlcl07XG4gIGNlbGxTaXplQ29tbW9uPzogW251bWJlciwgbnVtYmVyXTtcbiAgYWdncmVnYXRvclZpZXdwb3J0PzogVmlld3BvcnQgJiB7dW5wcm9qZWN0RmxhdCh4eTogbnVtYmVyW10pOiBudW1iZXJbXX07XG59XG5cbmludGVyZmFjZSBHcmlkUGlja2luZ09iamVjdCB7XG4gIGNvbDogbnVtYmVyO1xuICByb3c6IG51bWJlcjtcbiAgY2VsbE91dGxpbmU/OiBudW1iZXJbXVtdO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEluIGRlY2suZ2wgOSwgR3JpZExheWVyIG5hdGl2ZWx5IHN1cHBvcnRzIENQVSBhZ2dyZWdhdGlvbiB2aWEgZ3B1QWdncmVnYXRpb246IGZhbHNlLFxuICogY3VzdG9tIGdldENvbG9yVmFsdWUvZ2V0RWxldmF0aW9uVmFsdWUgYWNjZXNzb3JzLCBwZXJjZW50aWxlIGZpbHRlcmluZywgYW5kIHNjYWxlIHR5cGVzLlxuICogVGhlIGN1c3RvbSBDUFVBZ2dyZWdhdG9yIG92ZXJyaWRlIGZyb20gZGVjay5nbCA4IGlzIG5vIGxvbmdlciBuZWVkZWQuXG4gKlxuICogV2Ugb3ZlcnJpZGUgZ2V0UGlja2luZ0luZm8gdG8gYWRkIGBjZWxsT3V0bGluZWAg4oCUIGFuIGFycmF5IG9mIFtsbmcsIGxhdF0gY29vcmRpbmF0ZXNcbiAqIGNvbXB1dGVkIGluIGNvbW1vbiBzcGFjZSBzbyB0aGUgb3V0bGluZSBhbGlnbnMgd2l0aCByZW5kZXJlZCBjZWxscyBhdCBhbGwgbGF0aXR1ZGVzLlxuICpcbiAqIFdlIGFsc28gb3ZlcnJpZGUgX29uQWdncmVnYXRpb25VcGRhdGUgdG8gc2VuZCBwZXItYmluIGFnZ3JlZ2F0ZWQgdmFsdWVzIHRocm91Z2hcbiAqIG9uU2V0Q29sb3JEb21haW4gc28gdGhlIGxlZ2VuZCBjYW4gY29tcHV0ZSBwcm9wZXIgcXVhbnRpbGUvY3VzdG9tIGJyZWFrcy5cbiAqL1xuLy8gQHRzLWV4cGVjdC1lcnJvciAtLSBvdmVycmlkaW5nIHByaXZhdGUgX29uQWdncmVnYXRpb25VcGRhdGUgdG8gZW5yaWNoIHRoZSBvblNldENvbG9yRG9tYWluIGNhbGxiYWNrXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTY2FsZUVuaGFuY2VkR3JpZExheWVyIGV4dGVuZHMgR3JpZExheWVyPGFueT4ge1xuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIC4uLkdyaWRMYXllci5kZWZhdWx0UHJvcHMsXG4gICAgZ3B1QWdncmVnYXRpb246IGZhbHNlXG4gIH07XG5cbiAgLy8gSEFDSzogZGVjay5nbCA5J3MgX29uQWdncmVnYXRpb25VcGRhdGUgaXMgcHJpdmF0ZSBhbmQgaXRzIG9uU2V0Q29sb3JEb21haW5cbiAgLy8gY2FsbGJhY2sgb25seSBwcm92aWRlcyBbbWluLCBtYXhdLiAgVGhhdCBpcyBzdWZmaWNpZW50IGZvciBxdWFudGl6ZS9saW5lYXJcbiAgLy8gc2NhbGVzIGJ1dCBkMy5zY2FsZVF1YW50aWxlIG5lZWRzIHRoZSAqZnVsbCBzb3J0ZWQgYXJyYXkqIG9mIGJpbiB2YWx1ZXMgdG9cbiAgLy8gY29tcHV0ZSBjb3JyZWN0IGJyZWFrIHBvaW50cyDigJQgd2l0aG91dCBpdCB0aGUgbGVnZW5kIGxhYmVscyBhcmUgd3JvbmdcbiAgX29uQWdncmVnYXRpb25VcGRhdGUoe2NoYW5uZWx9OiB7Y2hhbm5lbDogbnVtYmVyfSkge1xuICAgIGVucmljaGVkQWdncmVnYXRpb25VcGRhdGUodGhpcywgR3JpZExheWVyLCBjaGFubmVsKTtcbiAgfVxuXG4gIHJlbmRlckxheWVycygpIHtcbiAgICByZXR1cm4gZW5yaWNoZWRSZW5kZXJMYXllcnModGhpcywgR3JpZExheWVyKTtcbiAgfVxuXG4gIGdldFBpY2tpbmdJbmZvKHBhcmFtczogR2V0UGlja2luZ0luZm9QYXJhbXMpOiBQaWNraW5nSW5mbyB7XG4gICAgY29uc3QgaW5mbyA9IHN1cGVyLmdldFBpY2tpbmdJbmZvKHBhcmFtcykgYXMgR3JpZExheWVyUGlja2luZ0luZm88UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuICAgIGlmIChpbmZvLm9iamVjdCkge1xuICAgICAgY29uc3Qge2NlbGxPcmlnaW5Db21tb24sIGNlbGxTaXplQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnR9ID0gdGhpc1xuICAgICAgICAuc3RhdGUgYXMgdW5rbm93biBhcyBHcmlkSW50ZXJuYWxTdGF0ZTtcbiAgICAgIGNvbnN0IGNvdmVyYWdlID0gdGhpcy5wcm9wcy5jb3ZlcmFnZSA/PyAxO1xuICAgICAgaWYgKCFjZWxsT3JpZ2luQ29tbW9uIHx8ICFjZWxsU2l6ZUNvbW1vbiB8fCAhYWdncmVnYXRvclZpZXdwb3J0KSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgJ1NjYWxlRW5oYW5jZWRHcmlkTGF5ZXI6IGV4cGVjdGVkIGludGVybmFsIHN0YXRlIHByb3BlcnRpZXMgJyArXG4gICAgICAgICAgICAnKGNlbGxPcmlnaW5Db21tb24sIGNlbGxTaXplQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnQpIGFyZSBtaXNzaW5nLiAnICtcbiAgICAgICAgICAgICdIb3ZlciBvdXRsaW5lIHdpbGwgbm90IGJlIHNob3duLiBUaGlzIG1heSBpbmRpY2F0ZSBhIGRlY2suZ2wgdmVyc2lvbiBjaGFuZ2UuJ1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4gaW5mbztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHtjb2wsIHJvd30gPSBpbmZvLm9iamVjdCBhcyBHcmlkUGlja2luZ09iamVjdDtcbiAgICAgIGlmICh0eXBlb2YgY29sICE9PSAnbnVtYmVyJyB8fCB0eXBlb2Ygcm93ICE9PSAnbnVtYmVyJykgcmV0dXJuIGluZm87XG4gICAgICBjb25zdCBjeCA9IChjb2wgKyAwLjUpICogY2VsbFNpemVDb21tb25bMF0gKyBjZWxsT3JpZ2luQ29tbW9uWzBdO1xuICAgICAgY29uc3QgY3kgPSAocm93ICsgMC41KSAqIGNlbGxTaXplQ29tbW9uWzFdICsgY2VsbE9yaWdpbkNvbW1vblsxXTtcbiAgICAgIGNvbnN0IGh3ID0gMC41ICogY292ZXJhZ2UgKiBjZWxsU2l6ZUNvbW1vblswXTtcbiAgICAgIGNvbnN0IGhoID0gMC41ICogY292ZXJhZ2UgKiBjZWxsU2l6ZUNvbW1vblsxXTtcblxuICAgICAgKGluZm8ub2JqZWN0IGFzIEdyaWRQaWNraW5nT2JqZWN0KS5jZWxsT3V0bGluZSA9IFtcbiAgICAgICAgYWdncmVnYXRvclZpZXdwb3J0LnVucHJvamVjdEZsYXQoW2N4IC0gaHcsIGN5IC0gaGhdKSxcbiAgICAgICAgYWdncmVnYXRvclZpZXdwb3J0LnVucHJvamVjdEZsYXQoW2N4ICsgaHcsIGN5IC0gaGhdKSxcbiAgICAgICAgYWdncmVnYXRvclZpZXdwb3J0LnVucHJvamVjdEZsYXQoW2N4ICsgaHcsIGN5ICsgaGhdKSxcbiAgICAgICAgYWdncmVnYXRvclZpZXdwb3J0LnVucHJvamVjdEZsYXQoW2N4IC0gaHcsIGN5ICsgaGhdKSxcbiAgICAgICAgYWdncmVnYXRvclZpZXdwb3J0LnVucHJvamVjdEZsYXQoW2N4IC0gaHcsIGN5IC0gaGhdKVxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cblxuU2NhbGVFbmhhbmNlZEdyaWRMYXllci5sYXllck5hbWUgPSAnU2NhbGVFbmhhbmNlZEdyaWRMYXllcic7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsa0JBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLGlCQUFBLEdBQUFELE9BQUE7QUFBaUcsU0FBQUUsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMsS0FBQSxDQUFBVCxDQUFBLEVBQUFJLENBQUEsWUFBQUosQ0FBQTtBQUFBLFNBQUFVLGNBQUFaLENBQUEsYUFBQUMsQ0FBQSxNQUFBQSxDQUFBLEdBQUFZLFNBQUEsQ0FBQUMsTUFBQSxFQUFBYixDQUFBLFVBQUFDLENBQUEsV0FBQVcsU0FBQSxDQUFBWixDQUFBLElBQUFZLFNBQUEsQ0FBQVosQ0FBQSxRQUFBQSxDQUFBLE9BQUFGLE9BQUEsQ0FBQUksTUFBQSxDQUFBRCxDQUFBLE9BQUFhLE9B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
@@ -6,6 +6,9 @@ import { GetPickingInfoParams, PickingInfo } from '@deck.gl/core';
6
6
  *
7
7
  * We override getPickingInfo to add `cellOutline` — an array of [lng, lat] coordinates
8
8
  * computed in common space so the outline aligns with rendered cells at all latitudes.
9
+ *
10
+ * We also override _onAggregationUpdate to send per-bin aggregated values through
11
+ * onSetColorDomain so the legend can compute proper quantile/custom breaks.
9
12
  */
10
13
  export default class ScaleEnhancedHexagonLayer extends HexagonLayer<any> {
11
14
  static defaultProps: {
@@ -4902,5 +4905,9 @@ export default class ScaleEnhancedHexagonLayer extends HexagonLayer<any> {
4902
4905
  ignore?: boolean;
4903
4906
  }) | null) | undefined;
4904
4907
  };
4908
+ _onAggregationUpdate({ channel }: {
4909
+ channel: number;
4910
+ }): void;
4911
+ renderLayers(): any;
4905
4912
  getPickingInfo(params: GetPickingInfoParams): PickingInfo;
4906
4913
  }
@@ -13,6 +13,7 @@ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
13
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
15
  var _aggregationLayers = require("@deck.gl/aggregation-layers");
16
+ var _aggregationUtils = require("../layer-utils/aggregation-utils");
16
17
  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; }
17
18
  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) { (0, _defineProperty2["default"])(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; }
18
19
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
@@ -37,7 +38,11 @@ function getHexbinCentroid(id, radius) {
37
38
  *
38
39
  * We override getPickingInfo to add `cellOutline` — an array of [lng, lat] coordinates
39
40
  * computed in common space so the outline aligns with rendered cells at all latitudes.
41
+ *
42
+ * We also override _onAggregationUpdate to send per-bin aggregated values through
43
+ * onSetColorDomain so the legend can compute proper quantile/custom breaks.
40
44
  */
45
+ // @ts-expect-error -- overriding private _onAggregationUpdate to enrich the onSetColorDomain callback
41
46
  var ScaleEnhancedHexagonLayer = exports["default"] = /*#__PURE__*/function (_HexagonLayer) {
42
47
  function ScaleEnhancedHexagonLayer() {
43
48
  (0, _classCallCheck2["default"])(this, ScaleEnhancedHexagonLayer);
@@ -45,23 +50,39 @@ var ScaleEnhancedHexagonLayer = exports["default"] = /*#__PURE__*/function (_Hex
45
50
  }
46
51
  (0, _inherits2["default"])(ScaleEnhancedHexagonLayer, _HexagonLayer);
47
52
  return (0, _createClass2["default"])(ScaleEnhancedHexagonLayer, [{
53
+ key: "_onAggregationUpdate",
54
+ value:
55
+ // HACK: deck.gl 9's _onAggregationUpdate is private and its onSetColorDomain
56
+ // callback only provides [min, max]. That is sufficient for quantize/linear
57
+ // scales but d3.scaleQuantile needs the *full sorted array* of bin values to
58
+ // compute correct break points — without it the legend labels are wrong
59
+ function _onAggregationUpdate(_ref) {
60
+ var channel = _ref.channel;
61
+ (0, _aggregationUtils.enrichedAggregationUpdate)(this, _aggregationLayers.HexagonLayer, channel);
62
+ }
63
+ }, {
64
+ key: "renderLayers",
65
+ value: function renderLayers() {
66
+ return (0, _aggregationUtils.enrichedRenderLayers)(this, _aggregationLayers.HexagonLayer);
67
+ }
68
+ }, {
48
69
  key: "getPickingInfo",
49
70
  value: function getPickingInfo(params) {
50
71
  var info = _superPropGet(ScaleEnhancedHexagonLayer, "getPickingInfo", this, 3)([params]);
51
72
  if (info.object) {
52
73
  var _this$props$coverage, _hexOriginCommon$, _hexOriginCommon$2;
53
- var _ref = this.state,
54
- radiusCommon = _ref.radiusCommon,
55
- hexOriginCommon = _ref.hexOriginCommon,
56
- aggregatorViewport = _ref.aggregatorViewport;
74
+ var _ref2 = this.state,
75
+ radiusCommon = _ref2.radiusCommon,
76
+ hexOriginCommon = _ref2.hexOriginCommon,
77
+ aggregatorViewport = _ref2.aggregatorViewport;
57
78
  var coverage = (_this$props$coverage = this.props.coverage) !== null && _this$props$coverage !== void 0 ? _this$props$coverage : 1;
58
79
  if (!radiusCommon || !aggregatorViewport) {
59
80
  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.');
60
81
  return info;
61
82
  }
62
- var _ref2 = info.object,
63
- col = _ref2.col,
64
- row = _ref2.row;
83
+ var _ref3 = info.object,
84
+ col = _ref3.col,
85
+ row = _ref3.row;
65
86
  if (typeof col !== 'number' || typeof row !== 'number') return info;
66
87
  var centroid = getHexbinCentroid([col, row], radiusCommon);
67
88
  var ox = (_hexOriginCommon$ = hexOriginCommon === null || hexOriginCommon === void 0 ? void 0 : hexOriginCommon[0]) !== null && _hexOriginCommon$ !== void 0 ? _hexOriginCommon$ : 0;
@@ -84,4 +105,4 @@ var ScaleEnhancedHexagonLayer = exports["default"] = /*#__PURE__*/function (_Hex
84
105
  gpuAggregation: false
85
106
  }));
86
107
  ScaleEnhancedHexagonLayer.layerName = 'ScaleEnhancedHexagonLayer';
87
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYWdncmVnYXRpb25MYXllcnMiLCJyZXF1aXJlIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJfc3VwZXJQcm9wR2V0IiwicCIsIl9nZXQyIiwiVEhJUkRfUEkiLCJNYXRoIiwiUEkiLCJIZXhiaW5WZXJ0aWNlcyIsIkFycmF5IiwiZnJvbSIsIl8iLCJpIiwiYW5nbGUiLCJzaW4iLCJjb3MiLCJnZXRIZXhiaW5DZW50cm9pZCIsImlkIiwicmFkaXVzIiwiRElTVF9YIiwiRElTVF9ZIiwiU2NhbGVFbmhhbmNlZEhleGFnb25MYXllciIsImV4cG9ydHMiLCJfSGV4YWdvbkxheWVyIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwidmFsdWUiLCJnZXRQaWNraW5nSW5mbyIsInBhcmFtcyIsImluZm8iLCJvYmplY3QiLCJfdGhpcyRwcm9wcyRjb3ZlcmFnZSIsIl9oZXhPcmlnaW5Db21tb24kIiwiX2hleE9yaWdpbkNvbW1vbiQyIiwiX3JlZiIsInN0YXRlIiwicmFkaXVzQ29tbW9uIiwiaGV4T3JpZ2luQ29tbW9uIiwiYWdncmVnYXRvclZpZXdwb3J0IiwiY292ZXJhZ2UiLCJwcm9wcyIsImNvbnNvbGUiLCJlcnJvciIsIl9yZWYyIiwiY29sIiwicm93IiwiY2VudHJvaWQiLCJveCIsIm95Iiwib3V0bGluZSIsInZ4IiwidnkiLCJ1bnByb2plY3RGbGF0IiwiY2VsbE91dGxpbmUiLCJIZXhhZ29uTGF5ZXIiLCJkZWZhdWx0UHJvcHMiLCJncHVBZ2dyZWdhdGlvbiIsImxheWVyTmFtZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZXhhZ29uLWxheWVyL2VuaGFuY2VkLWhleGFnb24tbGF5ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHtIZXhhZ29uTGF5ZXIsIEhleGFnb25MYXllclBpY2tpbmdJbmZvfSBmcm9tICdAZGVjay5nbC9hZ2dyZWdhdGlvbi1sYXllcnMnO1xuaW1wb3J0IHtHZXRQaWNraW5nSW5mb1BhcmFtcywgUGlja2luZ0luZm8sIFZpZXdwb3J0fSBmcm9tICdAZGVjay5nbC9jb3JlJztcblxuY29uc3QgVEhJUkRfUEkgPSBNYXRoLlBJIC8gMztcbmNvbnN0IEhleGJpblZlcnRpY2VzID0gQXJyYXkuZnJvbSh7bGVuZ3RoOiA2fSwgKF8sIGkpID0+IHtcbiAgY29uc3QgYW5nbGUgPSBpICogVEhJUkRfUEk7XG4gIHJldHVybiBbTWF0aC5zaW4oYW5nbGUpLCAtTWF0aC5jb3MoYW5nbGUpXTtcbn0pO1xuXG5mdW5jdGlvbiBnZXRIZXhiaW5DZW50cm9pZChpZDogW251bWJlciwgbnVtYmVyXSwgcmFkaXVzOiBudW1iZXIpOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgRElTVF9YID0gMiAqIE1hdGguc2luKFRISVJEX1BJKTtcbiAgY29uc3QgRElTVF9ZID0gMS41O1xuICByZXR1cm4gWyhpZFswXSArIChpZFsxXSAmIDEpIC8gMikgKiByYWRpdXMgKiBESVNUX1gsIGlkWzFdICogcmFkaXVzICogRElTVF9ZXTtcbn1cblxuaW50ZXJmYWNlIEhleEludGVybmFsU3RhdGUge1xuICByYWRpdXNDb21tb24/OiBudW1iZXI7XG4gIGhleE9yaWdpbkNvbW1vbj86IFtudW1iZXIsIG51bWJlcl07XG4gIGFnZ3JlZ2F0b3JWaWV3cG9ydD86IFZpZXdwb3J0ICYge3VucHJvamVjdEZsYXQoeHk6IG51bWJlcltdKTogbnVtYmVyW119O1xufVxuXG5pbnRlcmZhY2UgSGV4UGlja2luZ09iamVjdCB7XG4gIGNvbDogbnVtYmVyO1xuICByb3c6IG51bWJlcjtcbiAgY2VsbE91dGxpbmU/OiBudW1iZXJbXVtdO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEluIGRlY2suZ2wgOSwgSGV4YWdvbkxheWVyIG5hdGl2ZWx5IHN1cHBvcnRzIENQVSBhZ2dyZWdhdGlvbiB2aWEgZ3B1QWdncmVnYXRpb246IGZhbHNlLFxuICogY3VzdG9tIGdldENvbG9yVmFsdWUvZ2V0RWxldmF0aW9uVmFsdWUgYWNjZXNzb3JzLCBwZXJjZW50aWxlIGZpbHRlcmluZywgYW5kIHNjYWxlIHR5cGVzLlxuICpcbiAqIFdlIG92ZXJyaWRlIGdldFBpY2tpbmdJbmZvIHRvIGFkZCBgY2VsbE91dGxpbmVgIOKAlCBhbiBhcnJheSBvZiBbbG5nLCBsYXRdIGNvb3JkaW5hdGVzXG4gKiBjb21wdXRlZCBpbiBjb21tb24gc3BhY2Ugc28gdGhlIG91dGxpbmUgYWxpZ25zIHdpdGggcmVuZGVyZWQgY2VsbHMgYXQgYWxsIGxhdGl0dWRlcy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2NhbGVFbmhhbmNlZEhleGFnb25MYXllciBleHRlbmRzIEhleGFnb25MYXllcjxhbnk+IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAuLi5IZXhhZ29uTGF5ZXIuZGVmYXVsdFByb3BzLFxuICAgIGdwdUFnZ3JlZ2F0aW9uOiBmYWxzZVxuICB9O1xuXG4gIGdldFBpY2tpbmdJbmZvKHBhcmFtczogR2V0UGlja2luZ0luZm9QYXJhbXMpOiBQaWNraW5nSW5mbyB7XG4gICAgY29uc3QgaW5mbyA9IHN1cGVyLmdldFBpY2tpbmdJbmZvKHBhcmFtcykgYXMgSGV4YWdvbkxheWVyUGlja2luZ0luZm88UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuICAgIGlmIChpbmZvLm9iamVjdCkge1xuICAgICAgY29uc3Qge3JhZGl1c0NvbW1vbiwgaGV4T3JpZ2luQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnR9ID0gdGhpc1xuICAgICAgICAuc3RhdGUgYXMgdW5rbm93biBhcyBIZXhJbnRlcm5hbFN0YXRlO1xuICAgICAgY29uc3QgY292ZXJhZ2UgPSB0aGlzLnByb3BzLmNvdmVyYWdlID8/IDE7XG4gICAgICBpZiAoIXJhZGl1c0NvbW1vbiB8fCAhYWdncmVnYXRvclZpZXdwb3J0KSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgJ1NjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXI6IGV4cGVjdGVkIGludGVybmFsIHN0YXRlIHByb3BlcnRpZXMgJyArXG4gICAgICAgICAgICAnKHJhZGl1c0NvbW1vbiwgYWdncmVnYXRvclZpZXdwb3J0KSBhcmUgbWlzc2luZy4gJyArXG4gICAgICAgICAgICAnSG92ZXIgb3V0bGluZSB3aWxsIG5vdCBiZSBzaG93bi4gVGhpcyBtYXkgaW5kaWNhdGUgYSBkZWNrLmdsIHZlcnNpb24gY2hhbmdlLidcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIGluZm87XG4gICAgICB9XG4gICAgICBjb25zdCB7Y29sLCByb3d9ID0gaW5mby5vYmplY3QgYXMgSGV4UGlja2luZ09iamVjdDtcbiAgICAgIGlmICh0eXBlb2YgY29sICE9PSAnbnVtYmVyJyB8fCB0eXBlb2Ygcm93ICE9PSAnbnVtYmVyJykgcmV0dXJuIGluZm87XG4gICAgICBjb25zdCBjZW50cm9pZCA9IGdldEhleGJpbkNlbnRyb2lkKFtjb2wsIHJvd10sIHJhZGl1c0NvbW1vbik7XG4gICAgICBjb25zdCBveCA9IGhleE9yaWdpbkNvbW1vbj8uWzBdID8/IDA7XG4gICAgICBjb25zdCBveSA9IGhleE9yaWdpbkNvbW1vbj8uWzFdID8/IDA7XG4gICAgICBjb25zdCByID0gcmFkaXVzQ29tbW9uICogY292ZXJhZ2U7XG5cbiAgICAgIGNvbnN0IG91dGxpbmU6IG51bWJlcltdW10gPSBbXTtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNjsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHZ4ID0gY2VudHJvaWRbMF0gKyByICogSGV4YmluVmVydGljZXNbaV1bMF0gKyBveDtcbiAgICAgICAgY29uc3QgdnkgPSBjZW50cm9pZFsxXSArIHIgKiBIZXhiaW5WZXJ0aWNlc1tpXVsxXSArIG95O1xuICAgICAgICBvdXRsaW5lLnB1c2goYWdncmVnYXRvclZpZXdwb3J0LnVucHJvamVjdEZsYXQoW3Z4LCB2eV0pKTtcbiAgICAgIH1cbiAgICAgIG91dGxpbmUucHVzaChvdXRsaW5lWzBdKTtcbiAgICAgIChpbmZvLm9iamVjdCBhcyBIZXhQaWNraW5nT2JqZWN0KS5jZWxsT3V0bGluZSA9IG91dGxpbmU7XG4gICAgfVxuICAgIHJldHVybiBpbmZvO1xuICB9XG59XG5cblNjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXIubGF5ZXJOYW1lID0gJ1NjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXInO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUdBLElBQUFBLGtCQUFBLEdBQUFDLE9BQUE7QUFBa0YsU0FBQUMsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFO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
108
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYWdncmVnYXRpb25MYXllcnMiLCJyZXF1aXJlIiwiX2FnZ3JlZ2F0aW9uVXRpbHMiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiY2FsbCIsIl9zdXBlclByb3BHZXQiLCJwIiwiX2dldDIiLCJUSElSRF9QSSIsIk1hdGgiLCJQSSIsIkhleGJpblZlcnRpY2VzIiwiQXJyYXkiLCJmcm9tIiwiXyIsImkiLCJhbmdsZSIsInNpbiIsImNvcyIsImdldEhleGJpbkNlbnRyb2lkIiwiaWQiLCJyYWRpdXMiLCJESVNUX1giLCJESVNUX1kiLCJTY2FsZUVuaGFuY2VkSGV4YWdvbkxheWVyIiwiZXhwb3J0cyIsIl9IZXhhZ29uTGF5ZXIiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2luaGVyaXRzMiIsIl9jcmVhdGVDbGFzczIiLCJrZXkiLCJ2YWx1ZSIsIl9vbkFnZ3JlZ2F0aW9uVXBkYXRlIiwiX3JlZiIsImNoYW5uZWwiLCJlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlIiwiSGV4YWdvbkxheWVyIiwicmVuZGVyTGF5ZXJzIiwiZW5yaWNoZWRSZW5kZXJMYXllcnMiLCJnZXRQaWNraW5nSW5mbyIsInBhcmFtcyIsImluZm8iLCJvYmplY3QiLCJfdGhpcyRwcm9wcyRjb3ZlcmFnZSIsIl9oZXhPcmlnaW5Db21tb24kIiwiX2hleE9yaWdpbkNvbW1vbiQyIiwiX3JlZjIiLCJzdGF0ZSIsInJhZGl1c0NvbW1vbiIsImhleE9yaWdpbkNvbW1vbiIsImFnZ3JlZ2F0b3JWaWV3cG9ydCIsImNvdmVyYWdlIiwicHJvcHMiLCJjb25zb2xlIiwiZXJyb3IiLCJfcmVmMyIsImNvbCIsInJvdyIsImNlbnRyb2lkIiwib3giLCJveSIsIm91dGxpbmUiLCJ2eCIsInZ5IiwidW5wcm9qZWN0RmxhdCIsImNlbGxPdXRsaW5lIiwiZGVmYXVsdFByb3BzIiwiZ3B1QWdncmVnYXRpb24iLCJsYXllck5hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaGV4YWdvbi1sYXllci9lbmhhbmNlZC1oZXhhZ29uLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7SGV4YWdvbkxheWVyLCBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mb30gZnJvbSAnQGRlY2suZ2wvYWdncmVnYXRpb24tbGF5ZXJzJztcbmltcG9ydCB7R2V0UGlja2luZ0luZm9QYXJhbXMsIFBpY2tpbmdJbmZvLCBWaWV3cG9ydH0gZnJvbSAnQGRlY2suZ2wvY29yZSc7XG5pbXBvcnQge2VucmljaGVkQWdncmVnYXRpb25VcGRhdGUsIGVucmljaGVkUmVuZGVyTGF5ZXJzfSBmcm9tICcuLi9sYXllci11dGlscy9hZ2dyZWdhdGlvbi11dGlscyc7XG5cbmNvbnN0IFRISVJEX1BJID0gTWF0aC5QSSAvIDM7XG5jb25zdCBIZXhiaW5WZXJ0aWNlcyA9IEFycmF5LmZyb20oe2xlbmd0aDogNn0sIChfLCBpKSA9PiB7XG4gIGNvbnN0IGFuZ2xlID0gaSAqIFRISVJEX1BJO1xuICByZXR1cm4gW01hdGguc2luKGFuZ2xlKSwgLU1hdGguY29zKGFuZ2xlKV07XG59KTtcblxuZnVuY3Rpb24gZ2V0SGV4YmluQ2VudHJvaWQoaWQ6IFtudW1iZXIsIG51bWJlcl0sIHJhZGl1czogbnVtYmVyKTogW251bWJlciwgbnVtYmVyXSB7XG4gIGNvbnN0IERJU1RfWCA9IDIgKiBNYXRoLnNpbihUSElSRF9QSSk7XG4gIGNvbnN0IERJU1RfWSA9IDEuNTtcbiAgcmV0dXJuIFsoaWRbMF0gKyAoaWRbMV0gJiAxKSAvIDIpICogcmFkaXVzICogRElTVF9YLCBpZFsxXSAqIHJhZGl1cyAqIERJU1RfWV07XG59XG5cbmludGVyZmFjZSBIZXhJbnRlcm5hbFN0YXRlIHtcbiAgcmFkaXVzQ29tbW9uPzogbnVtYmVyO1xuICBoZXhPcmlnaW5Db21tb24/OiBbbnVtYmVyLCBudW1iZXJdO1xuICBhZ2dyZWdhdG9yVmlld3BvcnQ/OiBWaWV3cG9ydCAmIHt1bnByb2plY3RGbGF0KHh5OiBudW1iZXJbXSk6IG51bWJlcltdfTtcbn1cblxuaW50ZXJmYWNlIEhleFBpY2tpbmdPYmplY3Qge1xuICBjb2w6IG51bWJlcjtcbiAgcm93OiBudW1iZXI7XG4gIGNlbGxPdXRsaW5lPzogbnVtYmVyW11bXTtcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuLyoqXG4gKiBJbiBkZWNrLmdsIDksIEhleGFnb25MYXllciBuYXRpdmVseSBzdXBwb3J0cyBDUFUgYWdncmVnYXRpb24gdmlhIGdwdUFnZ3JlZ2F0aW9uOiBmYWxzZSxcbiAqIGN1c3RvbSBnZXRDb2xvclZhbHVlL2dldEVsZXZhdGlvblZhbHVlIGFjY2Vzc29ycywgcGVyY2VudGlsZSBmaWx0ZXJpbmcsIGFuZCBzY2FsZSB0eXBlcy5cbiAqXG4gKiBXZSBvdmVycmlkZSBnZXRQaWNraW5nSW5mbyB0byBhZGQgYGNlbGxPdXRsaW5lYCDigJQgYW4gYXJyYXkgb2YgW2xuZywgbGF0XSBjb29yZGluYXRlc1xuICogY29tcHV0ZWQgaW4gY29tbW9uIHNwYWNlIHNvIHRoZSBvdXRsaW5lIGFsaWducyB3aXRoIHJlbmRlcmVkIGNlbGxzIGF0IGFsbCBsYXRpdHVkZXMuXG4gKlxuICogV2UgYWxzbyBvdmVycmlkZSBfb25BZ2dyZWdhdGlvblVwZGF0ZSB0byBzZW5kIHBlci1iaW4gYWdncmVnYXRlZCB2YWx1ZXMgdGhyb3VnaFxuICogb25TZXRDb2xvckRvbWFpbiBzbyB0aGUgbGVnZW5kIGNhbiBjb21wdXRlIHByb3BlciBxdWFudGlsZS9jdXN0b20gYnJlYWtzLlxuICovXG4vLyBAdHMtZXhwZWN0LWVycm9yIC0tIG92ZXJyaWRpbmcgcHJpdmF0ZSBfb25BZ2dyZWdhdGlvblVwZGF0ZSB0byBlbnJpY2ggdGhlIG9uU2V0Q29sb3JEb21haW4gY2FsbGJhY2tcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXIgZXh0ZW5kcyBIZXhhZ29uTGF5ZXI8YW55PiB7XG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgLi4uSGV4YWdvbkxheWVyLmRlZmF1bHRQcm9wcyxcbiAgICBncHVBZ2dyZWdhdGlvbjogZmFsc2VcbiAgfTtcblxuICAvLyBIQUNLOiBkZWNrLmdsIDkncyBfb25BZ2dyZWdhdGlvblVwZGF0ZSBpcyBwcml2YXRlIGFuZCBpdHMgb25TZXRDb2xvckRvbWFpblxuICAvLyBjYWxsYmFjayBvbmx5IHByb3ZpZGVzIFttaW4sIG1heF0uICBUaGF0IGlzIHN1ZmZpY2llbnQgZm9yIHF1YW50aXplL2xpbmVhclxuICAvLyBzY2FsZXMgYnV0IGQzLnNjYWxlUXVhbnRpbGUgbmVlZHMgdGhlICpmdWxsIHNvcnRlZCBhcnJheSogb2YgYmluIHZhbHVlcyB0b1xuICAvLyBjb21wdXRlIGNvcnJlY3QgYnJlYWsgcG9pbnRzIOKAlCB3aXRob3V0IGl0IHRoZSBsZWdlbmQgbGFiZWxzIGFyZSB3cm9uZ1xuICBfb25BZ2dyZWdhdGlvblVwZGF0ZSh7Y2hhbm5lbH06IHtjaGFubmVsOiBudW1iZXJ9KSB7XG4gICAgZW5yaWNoZWRBZ2dyZWdhdGlvblVwZGF0ZSh0aGlzLCBIZXhhZ29uTGF5ZXIsIGNoYW5uZWwpO1xuICB9XG5cbiAgcmVuZGVyTGF5ZXJzKCkge1xuICAgIHJldHVybiBlbnJpY2hlZFJlbmRlckxheWVycyh0aGlzLCBIZXhhZ29uTGF5ZXIpO1xuICB9XG5cbiAgZ2V0UGlja2luZ0luZm8ocGFyYW1zOiBHZXRQaWNraW5nSW5mb1BhcmFtcyk6IFBpY2tpbmdJbmZvIHtcbiAgICBjb25zdCBpbmZvID0gc3VwZXIuZ2V0UGlja2luZ0luZm8ocGFyYW1zKSBhcyBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mbzxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gICAgaWYgKGluZm8ub2JqZWN0KSB7XG4gICAgICBjb25zdCB7cmFkaXVzQ29tbW9uLCBoZXhPcmlnaW5Db21tb24sIGFnZ3JlZ2F0b3JWaWV3cG9ydH0gPSB0aGlzXG4gICAgICAgIC5zdGF0ZSBhcyB1bmtub3duIGFzIEhleEludGVybmFsU3RhdGU7XG4gICAgICBjb25zdCBjb3ZlcmFnZSA9IHRoaXMucHJvcHMuY292ZXJhZ2UgPz8gMTtcbiAgICAgIGlmICghcmFkaXVzQ29tbW9uIHx8ICFhZ2dyZWdhdG9yVmlld3BvcnQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcjogZXhwZWN0ZWQgaW50ZXJuYWwgc3RhdGUgcHJvcGVydGllcyAnICtcbiAgICAgICAgICAgICcocmFkaXVzQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnQpIGFyZSBtaXNzaW5nLiAnICtcbiAgICAgICAgICAgICdIb3ZlciBvdXRsaW5lIHdpbGwgbm90IGJlIHNob3duLiBUaGlzIG1heSBpbmRpY2F0ZSBhIGRlY2suZ2wgdmVyc2lvbiBjaGFuZ2UuJ1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4gaW5mbztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHtjb2wsIHJvd30gPSBpbmZvLm9iamVjdCBhcyBIZXhQaWNraW5nT2JqZWN0O1xuICAgICAgaWYgKHR5cGVvZiBjb2wgIT09ICdudW1iZXInIHx8IHR5cGVvZiByb3cgIT09ICdudW1iZXInKSByZXR1cm4gaW5mbztcbiAgICAgIGNvbnN0IGNlbnRyb2lkID0gZ2V0SGV4YmluQ2VudHJvaWQoW2NvbCwgcm93XSwgcmFkaXVzQ29tbW9uKTtcbiAgICAgIGNvbnN0IG94ID0gaGV4T3JpZ2luQ29tbW9uPy5bMF0gPz8gMDtcbiAgICAgIGNvbnN0IG95ID0gaGV4T3JpZ2luQ29tbW9uPy5bMV0gPz8gMDtcbiAgICAgIGNvbnN0IHIgPSByYWRpdXNDb21tb24gKiBjb3ZlcmFnZTtcblxuICAgICAgY29uc3Qgb3V0bGluZTogbnVtYmVyW11bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA2OyBpKyspIHtcbiAgICAgICAgY29uc3QgdnggPSBjZW50cm9pZFswXSArIHIgKiBIZXhiaW5WZXJ0aWNlc1tpXVswXSArIG94O1xuICAgICAgICBjb25zdCB2eSA9IGNlbnRyb2lkWzFdICsgciAqIEhleGJpblZlcnRpY2VzW2ldWzFdICsgb3k7XG4gICAgICAgIG91dGxpbmUucHVzaChhZ2dyZWdhdG9yVmlld3BvcnQudW5wcm9qZWN0RmxhdChbdngsIHZ5XSkpO1xuICAgICAgfVxuICAgICAgb3V0bGluZS5wdXNoKG91dGxpbmVbMF0pO1xuICAgICAgKGluZm8ub2JqZWN0IGFzIEhleFBpY2tpbmdPYmplY3QpLmNlbGxPdXRsaW5lID0gb3V0bGluZTtcbiAgICB9XG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cblxuU2NhbGVFbmhhbmNlZEhleGFnb25MYXllci5sYXllck5hbWUgPSAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcic7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsa0JBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLGlCQUFBLEdBQUFELE9BQUE7QUFBaUcsU0FBQUUsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEs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
package/dist/index.d.ts CHANGED
@@ -11,5 +11,6 @@ export { default as RasterMeshLayer } from './raster/raster-mesh-layer/raster-me
11
11
  export * as RasterWebGL from './raster/webgl';
12
12
  export { default as WMSLayer } from './wms/wms-layer';
13
13
  export * from './layer-utils/shader-utils';
14
+ export * from './layer-utils/aggregation-utils';
14
15
  export * from './3d-building-layer/types';
15
16
  export * from './3d-building-layer/3d-building-utils';
package/dist/index.js CHANGED
@@ -111,6 +111,18 @@ Object.keys(_shaderUtils).forEach(function (key) {
111
111
  }
112
112
  });
113
113
  });
114
+ var _aggregationUtils = require("./layer-utils/aggregation-utils");
115
+ Object.keys(_aggregationUtils).forEach(function (key) {
116
+ if (key === "default" || key === "__esModule") return;
117
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
118
+ if (key in exports && exports[key] === _aggregationUtils[key]) return;
119
+ Object.defineProperty(exports, key, {
120
+ enumerable: true,
121
+ get: function get() {
122
+ return _aggregationUtils[key];
123
+ }
124
+ });
125
+ });
114
126
  var _types = require("./3d-building-layer/types");
115
127
  Object.keys(_types).forEach(function (key) {
116
128
  if (key === "default" || key === "__esModule") return;
@@ -137,4 +149,4 @@ Object.keys(_dBuildingUtils).forEach(function (key) {
137
149
  });
138
150
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
139
151
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
140
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZEJ1aWxkaW5nTGF5ZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jbHVzdGVyTGF5ZXIiLCJfZW5oYW5jZWRDb2x1bW5MYXllciIsIl9lbmhhbmNlZENwdUdyaWRMYXllciIsIl9lbmhhbmNlZEhleGFnb25MYXllciIsIl9saW5lTGF5ZXIiLCJfc3ZnSWNvbkxheWVyIiwiX2ZpbHRlckFycm93TGF5ZXIiLCJfcmFzdGVyTGF5ZXIiLCJfcmFzdGVyTWVzaExheWVyIiwiX1Jhc3RlcldlYkdMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJleHBvcnRzIiwiUmFzdGVyV2ViR0wiLCJfd21zTGF5ZXIiLCJfc2hhZGVyVXRpbHMiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9leHBvcnROYW1lcyIsImRlZmluZVByb3BlcnR5IiwiZW51bWVyYWJsZSIsImdldCIsIl90eXBlcyIsIl9kQnVpbGRpbmdVdGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsIm4iLCJfX3Byb3RvX18iLCJhIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImkiLCJzZXQiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuZXhwb3J0IHtkZWZhdWx0IGFzIFRocmVlREJ1aWxkaW5nTGF5ZXJ9IGZyb20gJy4vM2QtYnVpbGRpbmctbGF5ZXIvM2QtYnVpbGRpbmctbGF5ZXInO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgRGVja0dMQ2x1c3RlckxheWVyfSBmcm9tICcuL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBFbmhhbmNlZENvbHVtbkxheWVyfSBmcm9tICcuL2NvbHVtbi1sYXllci9lbmhhbmNlZC1jb2x1bW4tbGF5ZXInO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgRW5oYW5jZWRHcmlkTGF5ZXJ9IGZyb20gJy4vZ3JpZC1sYXllci9lbmhhbmNlZC1jcHUtZ3JpZC1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBFbmhhbmNlZEhleGFnb25MYXllcn0gZnJvbSAnLi9oZXhhZ29uLWxheWVyL2VuaGFuY2VkLWhleGFnb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEVuaGFuY2VkTGluZUxheWVyfSBmcm9tICcuL2xpbmUtbGF5ZXIvbGluZS1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgU3ZnSWNvbkxheWVyfSBmcm9tICcuL3N2Zy1pY29uLWxheWVyL3N2Zy1pY29uLWxheWVyJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBGaWx0ZXJBcnJvd0V4dGVuc2lvbn0gZnJvbSAnLi9kZWNrZ2wtZXh0ZW5zaW9ucy9maWx0ZXItYXJyb3ctbGF5ZXInO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgUmFzdGVyTGF5ZXJ9IGZyb20gJy4vcmFzdGVyL3Jhc3Rlci1sYXllci9yYXN0ZXItbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIFJhc3Rlck1lc2hMYXllcn0gZnJvbSAnLi9yYXN0ZXIvcmFzdGVyLW1lc2gtbGF5ZXIvcmFzdGVyLW1lc2gtbGF5ZXInO1xuZXhwb3J0ICogYXMgUmFzdGVyV2ViR0wgZnJvbSAnLi9yYXN0ZXIvd2ViZ2wnO1xuXG5leHBvcnQge2RlZmF1bHQgYXMgV01TTGF5ZXJ9IGZyb20gJy4vd21zL3dtcy1sYXllcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXItdXRpbHMvc2hhZGVyLXV0aWxzJztcblxuZXhwb3J0ICogZnJvbSAnLi8zZC1idWlsZGluZy1sYXllci90eXBlcyc7XG5leHBvcnQgKiBm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
152
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZEJ1aWxkaW5nTGF5ZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jbHVzdGVyTGF5ZXIiLCJfZW5oYW5jZWRDb2x1bW5MYXllciIsIl9lbmhhbmNlZENwdUdyaWRMYXllciIsIl9lbmhhbmNlZEhleGFnb25MYXllciIsIl9saW5lTGF5ZXIiLCJfc3ZnSWNvbkxheWVyIiwiX2ZpbHRlckFycm93TGF5ZXIiLCJfcmFzdGVyTGF5ZXIiLCJfcmFzdGVyTWVzaExheWVyIiwiX1Jhc3RlcldlYkdMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJleHBvcnRzIiwiUmFzdGVyV2ViR0wiLCJfd21zTGF5ZXIiLCJfc2hhZGVyVXRpbHMiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9leHBvcnROYW1lcyIsImRlZmluZVByb3BlcnR5IiwiZW51bWVyYWJsZSIsImdldCIsIl9hZ2dyZWdhdGlvblV0aWxzIiwiX3R5cGVzIiwiX2RCdWlsZGluZ1V0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwibiIsIl9fcHJvdG9fXyIsImEiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaSIsInNldCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5leHBvcnQge2RlZmF1bHQgYXMgVGhyZWVEQnVpbGRpbmdMYXllcn0gZnJvbSAnLi8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBEZWNrR0xDbHVzdGVyTGF5ZXJ9IGZyb20gJy4vY2x1c3Rlci1sYXllci9jbHVzdGVyLWxheWVyJztcblxuZXhwb3J0IHtkZWZhdWx0IGFzIEVuaGFuY2VkQ29sdW1uTGF5ZXJ9IGZyb20gJy4vY29sdW1uLWxheWVyL2VuaGFuY2VkLWNvbHVtbi1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBFbmhhbmNlZEdyaWRMYXllcn0gZnJvbSAnLi9ncmlkLWxheWVyL2VuaGFuY2VkLWNwdS1ncmlkLWxheWVyJztcblxuZXhwb3J0IHtkZWZhdWx0IGFzIEVuaGFuY2VkSGV4YWdvbkxheWVyfSBmcm9tICcuL2hleGFnb24tbGF5ZXIvZW5oYW5jZWQtaGV4YWdvbi1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgRW5oYW5jZWRMaW5lTGF5ZXJ9IGZyb20gJy4vbGluZS1sYXllci9saW5lLWxheWVyJztcbmV4cG9ydCB7ZGVmYXVsdCBhcyBTdmdJY29uTGF5ZXJ9IGZyb20gJy4vc3ZnLWljb24tbGF5ZXIvc3ZnLWljb24tbGF5ZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEZpbHRlckFycm93RXh0ZW5zaW9ufSBmcm9tICcuL2RlY2tnbC1leHRlbnNpb25zL2ZpbHRlci1hcnJvdy1sYXllcic7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBSYXN0ZXJMYXllcn0gZnJvbSAnLi9yYXN0ZXIvcmFzdGVyLWxheWVyL3Jhc3Rlci1sYXllcic7XG5leHBvcnQge2RlZmF1bHQgYXMgUmFzdGVyTWVzaExheWVyfSBmcm9tICcuL3Jhc3Rlci9yYXN0ZXItbWVzaC1sYXllci9yYXN0ZXItbWVzaC1sYXllcic7XG5leHBvcnQgKiBhcyBSYXN0ZXJXZWJHTCBmcm9tICcuL3Jhc3Rlci93ZWJnbCc7XG5cbmV4cG9ydCB7ZGVmYXVsdCBhcyBXTVNMYXllcn0gZnJvbSAnLi93bXMvd21zLWxheWVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9sYXllci11dGlscy9zaGFkZXItdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXllci11dGlscy9hZ2dyZWdhdGlvbi11dGlscyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vM2QtYnVpbGRpbmctbGF5ZXIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi8zZC1idWlsZGluZy1sYXllci8zZC1idWlsZGluZy11dGlscyc7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxlQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxhQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBRSxvQkFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUcscUJBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFJLHFCQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxhQUFBLEdBQUFQLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTyxpQkFBQSxHQUFBUixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQVEsWUFBQSxHQUFBVCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVMsZ0JBQUEsR0FBQVYsc0JBQUEsQ0FBQUMsT0FBQTtBQUF3RixJQUFBVSxZQUFBLEdBQUFDLHVCQUFBLENBQUFYLE9BQUE7QUFBQVksT0FBQSxDQUFBQyxXQUFBLEdBQUFILFlBQUE7QUFHeEYsSUFBQUksU0FBQSxHQUFBZixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQWUsWUFBQSxHQUFBZixPQUFBO0FBQUFnQixNQUFBLENBQUFDLElBQUEsQ0FBQUYsWUFBQSxFQUFBRyxPQUFBLFdBQUFDLEdBQUE7RUFBQSxJQUFBQSxHQUFBLGtCQUFBQSxHQUFBO0VBQUEsSUFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBQyxZQUFBLEVBQUFKLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFQLE9BQUEsSUFBQUEsT0FBQSxDQUFBTyxHQUFBLE1BQUFKLFlBQUEsQ0FBQUksR0FBQTtFQUFBSCxNQUFBLENBQUFRLGNBQUEsQ0FBQVosT0FBQSxFQUFBTyxHQUFBO0lBQUFNLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQVgsWUFBQSxDQUFBSSxHQUFBO0lBQUE7RUFBQTtBQUFBO0FBQ0EsSUFBQVEsaUJBQUEsR0FBQTNCLE9BQUE7QUFBQWdCLE1BQUEsQ0FBQUMsSUFBQSxDQUFBVSxpQkFBQSxFQUFBVCxPQUFBLFdBQUFDLEdBQUE7RUFBQSxJQUFBQSxHQUFBLGtCQUFBQSxHQUFBO0VBQUEsSUFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBQyxZQUFBLEVBQUFKLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFQLE9BQUEsSUFBQUEsT0FBQSxDQUFBTyxHQUFBLE1BQUFRLGlCQUFBLENBQUFSLEdBQUE7RUFBQUgsTUFBQSxDQUFBUSxjQUFBLENBQUFaLE9BQUEsRUFBQU8sR0FBQTtJQUFBTSxVQUFBO0lBQUFDLEdBQUEsV0FBQUEsSUFBQTtNQUFBLE9BQUFDLGlCQUFBLENBQUFSLEdBQUE7SUFBQTtFQUFBO0FBQUE7QUFFQSxJQUFBUyxNQUFBLEdBQUE1QixPQUFBO0FBQUFnQixNQUFBLENBQUFDLElBQUEsQ0FBQVcsTUFBQSxFQUFBVixPQUFBLFdBQUFDLEdBQUE7RUFBQSxJQUFBQSxHQUFBLGtCQUFBQSxHQUFBO0VBQUEsSUFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBQyxZQUFBLEVBQUFKLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFQLE9BQUEsSUFBQUEsT0FBQSxDQUFBTyxHQUFBLE1BQUFTLE1BQUEsQ0FBQVQsR0FBQTtFQUFBSCxNQUFBLENBQUFRLGNBQUEsQ0FBQVosT0FBQSxFQUFBTyxHQUFBO0lBQUFNLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQUUsTUFBQSxDQUFBVCxHQUFBO0lBQUE7RUFBQTtBQUFBO0FBQ0EsSUFBQVUsZUFBQSxHQUFBN0IsT0FBQTtBQUFBZ0IsTUFBQSxDQUFBQyxJQUFBLENBQUFZLGVBQUEsRUFBQVgsT0FBQSxXQUFBQyxHQUFBO0VBQUEsSUFBQUEsR0FBQSxrQkFBQUEsR0FBQTtFQUFBLElBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQUMsWUFBQSxFQUFBSixHQUFBO0VBQUEsSUFBQUEsR0FBQSxJQUFBUCxPQUFBLElBQUFBLE9BQUEsQ0FBQU8sR0FBQSxNQUFBVSxlQUFBLENBQUFWLEdBQUE7RUFBQUgsTUFBQSxDQUFBUSxjQUFBLENBQUFaLE9BQUEsRUFBQU8sR0FBQTtJQUFBTSxVQUFBO0lBQUFDLEdBQUEsV0FBQUEsSUFBQTtNQUFBLE9BQUFHLGVBQUEsQ0FBQVYsR0FBQTtJQUFBO0VBQUE7QUFBQTtBQUFzRCxTQUFBVyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQXBCLHdCQUFBb0IsQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBUixHQUFBLENBQUFLLENBQUEsT0FBQU8sQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQXhCLE1BQUEsQ0FBQVEsY0FBQSxJQUFBUixNQUFBLENBQUF5Qix3QkFBQSxXQUFBQyxDQUFBLElBQUFYLENBQUEsb0JBQUFXLENBQUEsT0FBQXJCLGNBQUEsQ0FBQUMsSUFBQSxDQUFBUyxDQUFBLEVBQUFXLENBQUEsU0FBQUMsQ0FBQSxHQUFBSCxDQUFBLEdBQUF4QixNQUFBLENBQUF5Qix3QkFBQSxDQUFBVixDQUFBLEVBQUFXLENBQUEsVUFBQUMsQ0FBQSxLQUFBQSxDQUFBLENBQUFqQixHQUFBLElBQUFpQixDQUFBLENBQUFDLEdBQUEsSUFBQTVCLE1BQUEsQ0FBQVEsY0FBQSxDQUFBYyxDQUFBLEVBQUFJLENBQUEsRUFBQUMsQ0FBQSxJQUFBTCxDQUFBLENBQUFJLENBQUEsSUFBQVgsQ0FBQSxDQUFBVyxDQUFBLFlBQUFKLENBQUEsY0FBQVAsQ0FBQSxFQUFBRyxDQUFBLElBQUFBLENBQUEsQ0FBQVUsR0FBQSxDQUFBYixDQUFBLEVBQUFPLENBQUEsR0FBQUEsQ0FBQSIsImlnbm9yZUxpc3QiOltdfQ==
@@ -0,0 +1,44 @@
1
+ import type { AggregatedBin, ColorMap } from '@kepler.gl/types';
2
+ /**
3
+ * Build a Record<index, AggregatedBin> from the raw Float32Array of per-bin
4
+ * aggregated values returned by deck.gl 9's CPUAggregator/WebGLAggregator.
5
+ * The resulting map is compatible with the format kepler.gl expects for
6
+ * histogram rendering and color-scale selector.
7
+ */
8
+ export declare function buildAggregatedBinMap(binValues: ArrayLike<number>, binCount: number, aggregator?: any): Record<number, AggregatedBin>;
9
+ /**
10
+ * Classify raw per-bin aggregated values into break indices according to
11
+ * a custom colorMap, and patch the deck.gl internal `state.colors` so the
12
+ * GPU shader renders the correct color for each bin.
13
+ *
14
+ * Custom breaks define thresholds [t0, t1, …, t_{N-2}] for N colors:
15
+ * color 0: value < t0
16
+ * color i: t_{i-1} <= value < t_i
17
+ * color N-1: value >= t_{N-2}
18
+ *
19
+ * We replace the values in `state.colors.attribute` / `state.colors.input`
20
+ * with integer break indices [0 … N-1]. Combined with `colorScaleType: 'quantize'`
21
+ * and `colorDomain: [0, N-1]`, the shader's linear interpolation maps each index
22
+ * to the correct color texture pixel.
23
+ *
24
+ * `rawValues` must be the original aggregated values (not previously classified).
25
+ */
26
+ export declare function classifyBinsByCustomBreaks(stateColors: any, binCount: number, colorMap: ColorMap, rawValues: Float32Array): void;
27
+ /**
28
+ * Enriched _onAggregationUpdate implementation shared by ScaleEnhancedHexagonLayer
29
+ * and ScaleEnhancedGridLayer.
30
+ *
31
+ * @param layer The enhanced layer instance (`this`)
32
+ * @param ParentClass The deck.gl parent class (HexagonLayer or GridLayer)
33
+ * @param channel The aggregation channel index passed by deck.gl
34
+ */
35
+ export declare function enrichedAggregationUpdate(layer: any, ParentClass: any, channel: number): void;
36
+ /**
37
+ * Shared renderLayers() wrapper that re-classifies bins when custom colorMap
38
+ * changes between renders without triggering a full re-aggregation.
39
+ *
40
+ * @param layer The enhanced layer instance (`this`)
41
+ * @param ParentClass The deck.gl parent class (HexagonLayer or GridLayer)
42
+ * @returns The sublayers returned by the parent's renderLayers()
43
+ */
44
+ export declare function enrichedRenderLayers(layer: any, ParentClass: any): any;