@texturehq/edges 2.1.1 → 2.1.2

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.
@@ -1240,6 +1240,24 @@ interface VectorLayerSpec extends BaseLayerSpec {
1240
1240
  tileset: string;
1241
1241
  /** Source layer name within the tileset */
1242
1242
  sourceLayer: string;
1243
+ /**
1244
+ * Promote a feature property to be the feature `id`.
1245
+ *
1246
+ * Vector-tile features usually have no usable top-level `id`, so Mapbox
1247
+ * feature-state (data-joins, hover/selection highlighting) has nothing to key
1248
+ * on. `promoteId` tells Mapbox to use the named property as the id, which is
1249
+ * what lets `map.setFeatureState({ id }, …)` line up with tile features —
1250
+ * e.g. joining a metric keyed by region code onto choropleth polygons.
1251
+ *
1252
+ * Accepts either a single property name applied to this layer's source layer,
1253
+ * or an object mapping `{ [sourceLayer]: propertyName }` when a tileset
1254
+ * exposes several source layers. Matches Mapbox GL's `promoteId` spec.
1255
+ *
1256
+ * Must be set when the source is created — Mapbox cannot add it to an
1257
+ * existing source. Only needed for feature-state joins; static
1258
+ * color-by-property (`style.color = { by, mapping }`) does not require it.
1259
+ */
1260
+ promoteId?: string | Record<string, string>;
1243
1261
  /** How to render the geometry */
1244
1262
  renderAs: RenderType;
1245
1263
  /** Visual styling */
@@ -1240,6 +1240,24 @@ interface VectorLayerSpec extends BaseLayerSpec {
1240
1240
  tileset: string;
1241
1241
  /** Source layer name within the tileset */
1242
1242
  sourceLayer: string;
1243
+ /**
1244
+ * Promote a feature property to be the feature `id`.
1245
+ *
1246
+ * Vector-tile features usually have no usable top-level `id`, so Mapbox
1247
+ * feature-state (data-joins, hover/selection highlighting) has nothing to key
1248
+ * on. `promoteId` tells Mapbox to use the named property as the id, which is
1249
+ * what lets `map.setFeatureState({ id }, …)` line up with tile features —
1250
+ * e.g. joining a metric keyed by region code onto choropleth polygons.
1251
+ *
1252
+ * Accepts either a single property name applied to this layer's source layer,
1253
+ * or an object mapping `{ [sourceLayer]: propertyName }` when a tileset
1254
+ * exposes several source layers. Matches Mapbox GL's `promoteId` spec.
1255
+ *
1256
+ * Must be set when the source is created — Mapbox cannot add it to an
1257
+ * existing source. Only needed for feature-state joins; static
1258
+ * color-by-property (`style.color = { by, mapping }`) does not require it.
1259
+ */
1260
+ promoteId?: string | Record<string, string>;
1243
1261
  /** How to render the geometry */
1244
1262
  renderAs: RenderType;
1245
1263
  /** Visual styling */