@deck.gl/geo-layers 8.9.9 → 8.9.11

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/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@deck.gl/geo-layers",
3
3
  "description": "deck.gl layers supporting geospatial use cases and GIS formats",
4
4
  "license": "MIT",
5
- "version": "8.9.9",
5
+ "version": "8.9.11",
6
6
  "publishConfig": {
7
7
  "access": "public"
8
8
  },
@@ -55,5 +55,5 @@
55
55
  "@loaders.gl/core": "^3.3.0",
56
56
  "@luma.gl/core": "^8.0.0"
57
57
  },
58
- "gitHead": "84804c8413f59f27e5d8fefd828192b06e839bfa"
58
+ "gitHead": "ec059b9b2bde01fecc8017ed39b9898d85794561"
59
59
  }
@@ -76,11 +76,18 @@ export class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLayer<
76
76
  height: number;
77
77
  };
78
78
  lastRequestId: number;
79
-
80
79
  _nextRequestId: number;
80
+ /** TODO: Change any => setTimeout return type. Different between Node and browser... */
81
81
  _timeoutId: any;
82
+ loadCounter: number;
82
83
  };
83
84
 
85
+ /** Returns true if all async resources are loaded */
86
+ get isLoaded(): boolean {
87
+ // Track the explicit loading done by this layer
88
+ return Boolean(this.state) && this.state.loadCounter === 0 && super.isLoaded;
89
+ }
90
+
84
91
  /** Lets deck.gl know that we want viewport change events */
85
92
  override shouldUpdateState(): boolean {
86
93
  return true;
@@ -90,6 +97,7 @@ export class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLayer<
90
97
  // intentionally empty, initialization is done in updateState
91
98
  this.state._nextRequestId = 0;
92
99
  this.state.lastRequestId = -1;
100
+ this.state.loadCounter = 0;
93
101
  }
94
102
 
95
103
  override updateState({changeFlags, props, oldProps}: UpdateParameters<this>): void {
@@ -167,6 +175,7 @@ export class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLayer<
167
175
  async _loadMetadata(): Promise<void> {
168
176
  const {imageSource} = this.state;
169
177
  try {
178
+ this.state.loadCounter++;
170
179
  const metadata = await imageSource.getMetadata();
171
180
 
172
181
  // If a request takes a long time, it may no longer be expected
@@ -175,6 +184,8 @@ export class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLayer<
175
184
  }
176
185
  } catch (error) {
177
186
  this.getCurrentLayer()?.props.onMetadataLoadError(error as Error);
187
+ } finally {
188
+ this.state.loadCounter--;
178
189
  }
179
190
  }
180
191
 
@@ -209,6 +220,7 @@ export class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLayer<
209
220
  }
210
221
 
211
222
  try {
223
+ this.state.loadCounter++;
212
224
  this.props.onImageLoadStart(requestId);
213
225
 
214
226
  const image = await this.state.imageSource.getImage(requestParams);
@@ -227,6 +239,8 @@ export class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLayer<
227
239
  } catch (error) {
228
240
  this.raiseError(error as Error, 'Load image');
229
241
  this.getCurrentLayer()?.props.onImageLoadError(requestId, error as Error);
242
+ } finally {
243
+ this.state.loadCounter--;
230
244
  }
231
245
  }
232
246
 
@@ -34,8 +34,12 @@ export declare class WMSLayer<ExtraPropsT extends {} = {}> extends CompositeLaye
34
34
  };
35
35
  lastRequestId: number;
36
36
  _nextRequestId: number;
37
+ /** TODO: Change any => setTimeout return type. Different between Node and browser... */
37
38
  _timeoutId: any;
39
+ loadCounter: number;
38
40
  };
41
+ /** Returns true if all async resources are loaded */
42
+ get isLoaded(): boolean;
39
43
  /** Lets deck.gl know that we want viewport change events */
40
44
  shouldUpdateState(): boolean;
41
45
  initializeState(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"wms-layer.d.ts","sourceRoot":"","sources":["../../src/wms-layer/wms-layer.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,EACL,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EAGT,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAC,mBAAmB,EAAE,SAAS,EAAE,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAC,WAAW,EAAoB,MAAM,iBAAiB,CAAC;AAG/D,2CAA2C;AAC3C,oBAAY,aAAa,GAAG,mBAAmB,GAAG,cAAc,CAAC;AAEjE,mCAAmC;AACnC,aAAK,cAAc,GAAG;IACpB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,WAAW,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,GAAG,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;IACzC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACzD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC7C,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/D,CAAC;AAqBF;;GAEG;AACH,qBAAa,QAAQ,CAAC,WAAW,SAAS,EAAE,GAAG,EAAE,CAAE,SAAQ,cAAc,CACvE,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,CACvC;IACC,MAAM,CAAC,SAAS,SAAc;IAC9B,MAAM,CAAC,YAAY,EAAE,YAAY,CAAgB;IAEjD,KAAK,EAAG;QACN,WAAW,EAAE,WAAW,CAAC;QACzB,KAAK,EAAE,SAAS,CAAC;QACjB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,qBAAqB,EAAE;YACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM,EAAE,MAAM,EAAE,CAAC;YACjB,GAAG,EAAE,WAAW,GAAG,WAAW,CAAC;YAC/B,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;QACF,aAAa,EAAE,MAAM,CAAC;QAEtB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,GAAG,CAAC;KACjB,CAAC;IAEF,4DAA4D;IACnD,iBAAiB,IAAI,OAAO;IAI5B,eAAe,IAAI,IAAI;IAMvB,WAAW,CAAC,EAAC,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAC,EAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI;IAgBzE,aAAa,IAAI,IAAI;IAIrB,YAAY,IAAI,KAAK;IAmBxB,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBtE,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,WAAW;IAgBrD,6CAA6C;IACvC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAcpC,oBAAoB;IACd,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDlE,oDAAoD;IACpD,OAAO,CAAC,YAAY;IAIpB,8FAA8F;IAC9F,OAAO,CAAC,QAAQ;CAIjB"}
1
+ {"version":3,"file":"wms-layer.d.ts","sourceRoot":"","sources":["../../src/wms-layer/wms-layer.ts"],"names":[],"mappings":"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"}