ol-stac 1.0.0-beta.10 → 1.0.0-beta.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/README.md CHANGED
@@ -15,6 +15,8 @@ Explore the examples to get started with some more code:
15
15
  Dig into the API documentation for all details:
16
16
  <https://m-mohr.github.io/ol-stac/en/latest/apidoc/>
17
17
 
18
+ **ol-stac requires OpenLayers version >=7.5.2**
19
+
18
20
  ## Sponsors
19
21
 
20
22
  ol-stac appreciates contributions of all kinds.
package/layer/STAC.d.ts CHANGED
@@ -15,6 +15,11 @@ export type Options = {
15
15
  * `data` take precedence over `url`.
16
16
  */
17
17
  data?: STAC | Asset | any;
18
+ /**
19
+ * For STAC Catalogs and Collections, any child entites
20
+ * to show. Can be STAC ItemCollections (as ItemCollection, GeoJSON FeatureCollection, or URL) or a list of STAC entities.
21
+ */
22
+ children?: ItemCollection | any | Array<STAC> | string | null;
18
23
  /**
19
24
  * The selector for the assets to be rendered,
20
25
  * only for STAC Items and Collections.
@@ -155,6 +160,8 @@ export type Options = {
155
160
  * Can also be used as url for data, if it is absolute and doesn't contain a self link.
156
161
  * @property {STAC|Asset|Object} [data] The STAC metadata. Any of `url` and `data` must be provided.
157
162
  * `data` take precedence over `url`.
163
+ * @property {ItemCollection|Object|Array<STAC>|string|null} [children=null] For STAC Catalogs and Collections, any child entites
164
+ * to show. Can be STAC ItemCollections (as ItemCollection, GeoJSON FeatureCollection, or URL) or a list of STAC entities.
158
165
  * @property {Array<string|Asset>|null} [assets=null] The selector for the assets to be rendered,
159
166
  * only for STAC Items and Collections.
160
167
  * This can be an array of strings corresponding to asset keys or Asset objects.
@@ -235,7 +242,12 @@ declare class STACLayer extends LayerGroup {
235
242
  */
236
243
  private data_;
237
244
  /**
238
- * @type {Array<Asset> | null}
245
+ * @type {Array<STAC>|null}
246
+ * @private
247
+ */
248
+ private children_;
249
+ /**
250
+ * @type {Array<Asset>|null}
239
251
  * @private
240
252
  */
241
253
  private assets_;
@@ -245,7 +257,7 @@ declare class STACLayer extends LayerGroup {
245
257
  */
246
258
  private bands_;
247
259
  /**
248
- * @type {string | null}
260
+ * @type {string|null}
249
261
  * @private
250
262
  */
251
263
  private crossOrigin_;
@@ -303,7 +315,7 @@ declare class STACLayer extends LayerGroup {
303
315
  * @return {VectorLayer|null} The vector layer for the bounds
304
316
  * @api
305
317
  */
306
- getBoundsLayer(): VectorLayer<any> | null;
318
+ getBoundsLayer(): VectorLayer | null;
307
319
  /**
308
320
  * @private
309
321
  * @param {Error} error The error.
@@ -313,15 +325,17 @@ declare class STACLayer extends LayerGroup {
313
325
  * @private
314
326
  * @param {STAC|Asset|Object} data The STAC data.
315
327
  * @param {string} url The url to the data.
316
- * @param {Array<Asset|string> | null} assets The assets to show.
328
+ * @param {ItemCollection|Object|Array<STAC>|string|null} children The child STAC entities to show.
329
+ * @param {Array<Asset|string>|null} assets The assets to show.
317
330
  * @param {Array<number>} bands The (one-based) bands to show.
318
331
  */
319
332
  private configure_;
320
333
  /**
321
334
  * @private
335
+ * @param {Array<STAC>} collection The list of STAC entities to show.
322
336
  * @return {Promise} Resolves when complete.
323
337
  */
324
- private addApiCollection_;
338
+ private addChildren_;
325
339
  /**
326
340
  * @private
327
341
  * @return {Promise} Resolves when complete.
@@ -400,6 +414,13 @@ declare class STACLayer extends LayerGroup {
400
414
  * @api
401
415
  */
402
416
  setAssets(assets: Array<string | Asset> | null): Promise<any>;
417
+ /**
418
+ * Updates the children STAC entities to be rendered.
419
+ * @param {ItemCollection|Object|Array<STAC>|string|null} childs The children to show.
420
+ * @return {Promise} Resolves when all items are rendered.
421
+ * @api
422
+ */
423
+ setChildren(childs: ItemCollection | any | Array<STAC> | string | null): Promise<any>;
403
424
  /**
404
425
  * Get the STAC object.
405
426
  *
@@ -407,6 +428,13 @@ declare class STACLayer extends LayerGroup {
407
428
  * @api
408
429
  */
409
430
  getData(): STAC | Asset;
431
+ /**
432
+ * Get the children STAC entities.
433
+ *
434
+ * @return {STAC} The STAC child entities.
435
+ * @api
436
+ */
437
+ getChildren(): STAC;
410
438
  /**
411
439
  * Get the STAC assets shown.
412
440
  *
@@ -414,6 +442,18 @@ declare class STACLayer extends LayerGroup {
414
442
  * @api
415
443
  */
416
444
  getAssets(): Array<Asset>;
445
+ /**
446
+ * Get the attributions of the STAC entity assigned to this layer.
447
+ *
448
+ * @return {Array<string>} Attributions for this layer.
449
+ * @api
450
+ */
451
+ getAttributions(): Array<string>;
452
+ /**
453
+ * Get the layer source.
454
+ * @return {SourceType|null} The layer source (or `null` if not yet set).
455
+ */
456
+ getSource(): SourceType | null;
417
457
  }
418
458
  import SourceType from '../source/type.js';
419
459
  import LayerGroup from 'ol/layer/Group.js';
@@ -1 +1 @@
1
- {"version":3,"file":"STAC.d.ts","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":";qBAoCa,OAAO,cAAc,EAAE,MAAM;oBAG7B,OAAO,aAAa,EAAE,KAAK;;oBAM3B,OAAO,aAAa,EAAE,KAAK;4BAG3B,OAAO,mBAAmB,EAAE,aAAa;;;;;;;;;;;WAOxC,kBAAiB;;;;;;;;;;;;;;;;;;;+BAOR,UAAU,QAAE,aAAa,QAAE,CAAC,QAAM,IAAI,CAAC,KAAE,CAAC,aAAa,GAAC,QAAQ,aAAa,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CA0BxE,MAAM,GAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AArDzC;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH;;;;;;;;;;GAUG;AACH;IACE;;;OAGG;IACH,qBAHW,OAAO,EAmIjB;IAjHC;;;OAGG;IACH,0BAAiD;IAEjD;;;OAGG;IACH,cAAU;IAEV;;;OAGG;IACH,gBAAmB;IAEnB;;;OAGG;IACH,eAAgB;IAEhB;;;OAGG;IACH,qBAA+C;IAE/C;;;OAGG;IACH,0BAA0E;IAE1E;;;OAGG;IACH,iCAAwE;IAExE;;;OAGG;IACH,wBAAsD;IAEtD;;;OAGG;IACH,yBAAwE;IAExE;;OAEG;IACH,oBAFU,MAAM,GAAC,OAAO,GAAC,MAAM,IAAI,GAAC,MAAM,CAAC,CAEiB;IAE5D;;;OAGG;IACH,8BAAiE;IAEjE;;;OAGG;IACH,gCAAsE;IAEtE;;;OAGG;IACH,qBAA6D;IAE7D;;;OAGG;IACH,yBAAyE;IAEzE;;;OAGG;IACH,qBAAwB;IA4B1B;;;;OAIG;IACH,kBAHY,mBAAY,IAAI,CAK3B;IAED;;;OAGG;IACH,qBASC;IAED;;;;;;OAMG;IACH,mBAuCC;IAED;;;OAGG;IACH,0BAiBC;IAED;;;OAGG;IACH,uBA0BC;IAED;;;;OAIG;IACH,oBAUC;IAED;;;;OAIG;IACH,sBA0BC;IAED;;;OAGG;IACH,mBAFY,QAAQ,MAAM,KAAK,CAAC,GAAC,SAAS,CAAC,CAO1C;IAED;;;;;;;OAOG;IACH,4BAHY,QAAQ,MAAM,KAAK,CAAC,GAAC,SAAS,CAAC,CAuI1C;IAED;;;;OAIG;IACH,oBA+DC;IAED;;;;OAIG;IACH,gCAgBC;IAED;;;;;OAKG;IACH,kBAIC;IAED;;;OAGG;IACH,sBA+BC;IAED;;OAEG;IACH,sBAwBC;IAED;;;;OAIG;IACH,iBAHY,OAAO,CASlB;IAED;;;;OAIG;IACH,kBAHY,MAAM,IAAI,CAAC,CA+BtB;IAED;;;;;OAKG;IACH,kBAJW,MAAM,MAAM,QAAM,CAAC,GAAC,IAAI,gBAmBlC;IAED;;;;;OAKG;IACH,WAHY,YAAU,CAKrB;IAED;;;;;OAKG;IACH,aAHY,YAAY,CAKvB;CAoCF;uBAz2BsB,mBAAmB;uBADnB,mBAAmB;wBAKlB,oBAAoB"}
1
+ {"version":3,"file":"STAC.d.ts","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":";qBAoCa,OAAO,cAAc,EAAE,MAAM;oBAG7B,OAAO,aAAa,EAAE,KAAK;;oBAM3B,OAAO,aAAa,EAAE,KAAK;4BAG3B,OAAO,mBAAmB,EAAE,aAAa;;;;;;;;;;;WAOxC,kBAAiB;;;;;eAEjB,uBAAsB,WAAW,GAAC,MAAM,GAAC,IAAI;;;;;;;;;;;;;;;;;;;+BAOpC,UAAU,QAAE,aAAa,QAAE,CAAC,QAAM,IAAI,CAAC,KAAE,CAAC,aAAa,GAAC,QAAQ,aAAa,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CA0BxE,MAAM,GAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAvDzC;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AAEH;;;;;;;;;;GAUG;AACH;IACE;;;OAGG;IACH,qBAHW,OAAO,EAgJjB;IA9HC;;;OAGG;IACH,0BAAiD;IAEjD;;;OAGG;IACH,cAAU;IAEV;;;OAGG;IACH,kBAAqB;IAErB;;;OAGG;IACH,gBAAmB;IAEnB;;;OAGG;IACH,eAAgB;IAEhB;;;OAGG;IACH,qBAA+C;IAE/C;;;OAGG;IACH,0BAA0E;IAE1E;;;OAGG;IACH,iCAAwE;IAExE;;;OAGG;IACH,wBAAsD;IAEtD;;;OAGG;IACH,yBAAwE;IAExE;;OAEG;IACH,oBAFU,MAAM,GAAC,OAAO,GAAC,MAAM,IAAI,GAAC,MAAM,CAAC,CAEiB;IAE5D;;;OAGG;IACH,8BAAiE;IAEjE;;;OAGG;IACH,gCAAsE;IAEtE;;;OAGG;IACH,qBAA6D;IAE7D;;;OAGG;IACH,yBAAyE;IAEzE;;;OAGG;IACH,qBAAwB;IAmC1B;;;;OAIG;IACH,kBAHY,WAAW,GAAC,IAAI,CAK3B;IAED;;;OAGG;IACH,qBASC;IAED;;;;;;;OAOG;IACH,mBAkDC;IAED;;;;OAIG;IACH,qBAeC;IAED;;;OAGG;IACH,uBA0BC;IAED;;;;OAIG;IACH,oBAUC;IAED;;;;OAIG;IACH,sBA0BC;IAED;;;OAGG;IACH,mBAFY,QAAQ,MAAM,KAAK,CAAC,GAAC,SAAS,CAAC,CAO1C;IAED;;;;;;;OAOG;IACH,4BAHY,QAAQ,MAAM,KAAK,CAAC,GAAC,SAAS,CAAC,CAuI1C;IAED;;;;OAIG;IACH,oBA+DC;IAED;;;;OAIG;IACH,gCAgBC;IAED;;;;;OAKG;IACH,kBAIC;IAED;;;OAGG;IACH,sBA+BC;IAED;;OAEG;IACH,sBA4BC;IAED;;;;OAIG;IACH,iBAHY,OAAO,CASlB;IAED;;;;OAIG;IACH,kBAHY,MAAM,IAAI,CAAC,CA+BtB;IAED;;;;;OAKG;IACH,kBAJW,MAAM,MAAM,QAAM,CAAC,GAAC,IAAI,gBAmBlC;IAED;;;;;OAKG;IACH,oBAJW,uBAAsB,WAAW,GAAC,MAAM,GAAC,IAAI,gBAiCvD;IAED;;;;;OAKG;IACH,WAHY,YAAU,CAKrB;IAED;;;;;OAKG;IACH,oBAEC;IAED;;;;;OAKG;IACH,aAHY,YAAY,CAKvB;IAqCD;;;;;OAKG;IACH,mBAHY,MAAM,MAAM,CAAC,CAaxB;IAED;;;OAGG;IACH,aAFY,UAAU,GAAC,IAAI,CAI1B;CACF;uBAh9BsB,mBAAmB;uBADnB,mBAAmB;wBAKlB,oBAAoB"}
package/layer/STAC.js CHANGED
@@ -19,7 +19,7 @@ import WMS from 'ol/source/TileWMS.js';
19
19
  import WMTS, { optionsFromCapabilities } from 'ol/source/WMTS.js';
20
20
  import WebGLTileLayer from 'ol/layer/WebGLTile.js';
21
21
  import XYZ from 'ol/source/XYZ.js';
22
- import create, { Asset, STAC } from 'stac-js';
22
+ import create, { Asset, ItemCollection, STAC } from 'stac-js';
23
23
  import { PMTilesRasterSource, PMTilesVectorSource } from 'ol-pmtiles';
24
24
  import { defaultBoundsStyle, defaultCollectionStyle, getBoundsStyle, getGeoTiffSourceInfoFromAsset, getProjection, getSpecificWebMapUrl, getWmtsCapabilities, } from '../util.js';
25
25
  import { toGeoJSON } from 'stac-js/src/geo.js';
@@ -45,6 +45,8 @@ import { transformExtent } from 'ol/proj.js';
45
45
  * Can also be used as url for data, if it is absolute and doesn't contain a self link.
46
46
  * @property {STAC|Asset|Object} [data] The STAC metadata. Any of `url` and `data` must be provided.
47
47
  * `data` take precedence over `url`.
48
+ * @property {ItemCollection|Object|Array<STAC>|string|null} [children=null] For STAC Catalogs and Collections, any child entites
49
+ * to show. Can be STAC ItemCollections (as ItemCollection, GeoJSON FeatureCollection, or URL) or a list of STAC entities.
48
50
  * @property {Array<string|Asset>|null} [assets=null] The selector for the assets to be rendered,
49
51
  * only for STAC Items and Collections.
50
52
  * This can be an array of strings corresponding to asset keys or Asset objects.
@@ -137,7 +139,12 @@ class STACLayer extends LayerGroup {
137
139
  */
138
140
  this.data_;
139
141
  /**
140
- * @type {Array<Asset> | null}
142
+ * @type {Array<STAC>|null}
143
+ * @private
144
+ */
145
+ this.children_ = null;
146
+ /**
147
+ * @type {Array<Asset>|null}
141
148
  * @private
142
149
  */
143
150
  this.assets_ = null;
@@ -147,7 +154,7 @@ class STACLayer extends LayerGroup {
147
154
  */
148
155
  this.bands_ = [];
149
156
  /**
150
- * @type {string | null}
157
+ * @type {string|null}
151
158
  * @private
152
159
  */
153
160
  this.crossOrigin_ = options.crossOrigin || null;
@@ -202,7 +209,7 @@ class STACLayer extends LayerGroup {
202
209
  this.boundsLayer_ = null;
203
210
  if (options.data) {
204
211
  try {
205
- this.configure_(options.data, options.url, options.assets, options.bands);
212
+ this.configure_(options.data, options.url, options.children, options.assets, options.bands);
206
213
  }
207
214
  catch (error) {
208
215
  this.handleError_(error);
@@ -214,7 +221,7 @@ class STACLayer extends LayerGroup {
214
221
  }
215
222
  fetch(options.url)
216
223
  .then((response) => response.json())
217
- .then((data) => this.configure_(data, options.url, options.assets, options.bands))
224
+ .then((data) => this.configure_(data, options.url, options.children, options.assets, options.bands))
218
225
  .catch((error) => this.handleError_(error));
219
226
  }
220
227
  /**
@@ -243,10 +250,11 @@ class STACLayer extends LayerGroup {
243
250
  * @private
244
251
  * @param {STAC|Asset|Object} data The STAC data.
245
252
  * @param {string} url The url to the data.
246
- * @param {Array<Asset|string> | null} assets The assets to show.
253
+ * @param {ItemCollection|Object|Array<STAC>|string|null} children The child STAC entities to show.
254
+ * @param {Array<Asset|string>|null} assets The assets to show.
247
255
  * @param {Array<number>} bands The (one-based) bands to show.
248
256
  */
249
- configure_(data, url = null, assets = null, bands = []) {
257
+ configure_(data, url = null, children = [], assets = null, bands = []) {
250
258
  if (data instanceof Asset || data instanceof STAC) {
251
259
  this.data_ = data;
252
260
  }
@@ -265,6 +273,16 @@ class STACLayer extends LayerGroup {
265
273
  };
266
274
  this.getLayers().on('add', updateBoundsStyle);
267
275
  this.getLayers().on('remove', updateBoundsStyle);
276
+ this.setChildren(children)
277
+ .then(() => {
278
+ /**
279
+ * Invoked once the child STAC entites are loaded and shown on the map.
280
+ *
281
+ * @event childrenready
282
+ */
283
+ return this.dispatchEvent('childrenready');
284
+ })
285
+ .catch((error) => this.handleError_(error));
268
286
  this.setAssets(assets)
269
287
  .then(() => {
270
288
  /**
@@ -286,12 +304,11 @@ class STACLayer extends LayerGroup {
286
304
  }
287
305
  /**
288
306
  * @private
307
+ * @param {Array<STAC>} collection The list of STAC entities to show.
289
308
  * @return {Promise} Resolves when complete.
290
309
  */
291
- async addApiCollection_() {
292
- const promises = this.getData()
293
- .getAll()
294
- .map((obj) => {
310
+ async addChildren_(collection) {
311
+ const promises = collection.map((obj) => {
295
312
  const subgroup = new STACLayer({
296
313
  data: obj,
297
314
  crossOrigin: this.crossOrigin_,
@@ -547,7 +564,7 @@ class STACLayer extends LayerGroup {
547
564
  // see https://github.com/openlayers/openlayers/issues/14926
548
565
  source.on('change', () => {
549
566
  if (source.getState() === 'error') {
550
- tileserverFallback(asset, layer);
567
+ errorFn();
551
568
  }
552
569
  });
553
570
  layer.on('error', errorFn);
@@ -648,7 +665,7 @@ class STACLayer extends LayerGroup {
648
665
  // Add new layers
649
666
  const data = this.getData();
650
667
  if (data.isItemCollection() || data.isCollectionCollection()) {
651
- await this.addApiCollection_();
668
+ await this.addChildren_(this.getData().getAll());
652
669
  }
653
670
  else if (data.isItem() || data.isCollection()) {
654
671
  await this.addStacAssets_();
@@ -657,6 +674,9 @@ class STACLayer extends LayerGroup {
657
674
  (Array.isArray(this.displayWebMapLink_) || this.hasOnlyBounds())) {
658
675
  await this.addWebMapLinks_();
659
676
  }
677
+ if (this.children_) {
678
+ await this.addChildren_(this.children_);
679
+ }
660
680
  }
661
681
  /**
662
682
  * Indicates whether the LayerGroup shows only the bounds layer (i.e. no imagery/tile layers).
@@ -725,6 +745,44 @@ class STACLayer extends LayerGroup {
725
745
  }
726
746
  await this.updateLayers_();
727
747
  }
748
+ /**
749
+ * Updates the children STAC entities to be rendered.
750
+ * @param {ItemCollection|Object|Array<STAC>|string|null} childs The children to show.
751
+ * @return {Promise} Resolves when all items are rendered.
752
+ * @api
753
+ */
754
+ async setChildren(childs) {
755
+ if (!childs) {
756
+ this.children_ = null;
757
+ return;
758
+ }
759
+ if (typeof childs === 'string') {
760
+ const response = await fetch(childs);
761
+ childs = await response.json();
762
+ }
763
+ if (typeof childs === 'object' && childs.type === 'FeatureCollection') {
764
+ childs = childs.features;
765
+ }
766
+ if (childs instanceof ItemCollection) {
767
+ this.children_ = childs.getAll();
768
+ }
769
+ else if (Array.isArray(childs)) {
770
+ childs = childs.map((child) => {
771
+ if (child instanceof STAC) {
772
+ return child;
773
+ }
774
+ return create(child);
775
+ });
776
+ this.children_ = childs;
777
+ }
778
+ else {
779
+ this.children_ = null; // Invalid input
780
+ }
781
+ if (this.children_ && this.children_.length === 0) {
782
+ this.children_ = null;
783
+ }
784
+ await this.updateLayers_();
785
+ }
728
786
  /**
729
787
  * Get the STAC object.
730
788
  *
@@ -734,6 +792,15 @@ class STACLayer extends LayerGroup {
734
792
  getData() {
735
793
  return this.data_;
736
794
  }
795
+ /**
796
+ * Get the children STAC entities.
797
+ *
798
+ * @return {STAC} The STAC child entities.
799
+ * @api
800
+ */
801
+ getChildren() {
802
+ return this.children_;
803
+ }
737
804
  /**
738
805
  * Get the STAC assets shown.
739
806
  *
@@ -773,6 +840,30 @@ class STACLayer extends LayerGroup {
773
840
  return transformExtent(bbox, 'EPSG:4326', view.getProjection());
774
841
  }
775
842
  }
843
+ /**
844
+ * Get the attributions of the STAC entity assigned to this layer.
845
+ *
846
+ * @return {Array<string>} Attributions for this layer.
847
+ * @api
848
+ */
849
+ getAttributions() {
850
+ const attribution = [];
851
+ const stac = this.getData();
852
+ if (stac) {
853
+ const attribution = stac.getMetadata('attribution');
854
+ if (attribution) {
855
+ attribution.push(attribution);
856
+ }
857
+ }
858
+ return attribution;
859
+ }
860
+ /**
861
+ * Get the layer source.
862
+ * @return {SourceType|null} The layer source (or `null` if not yet set).
863
+ */
864
+ getSource() {
865
+ return null;
866
+ }
776
867
  }
777
868
  export default STACLayer;
778
869
  //# sourceMappingURL=STAC.js.map
package/layer/STAC.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"STAC.js","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,eAAe,MAAM,wBAAwB,CAAC;AACrD,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACvD,OAAO,GAAG,MAAM,sBAAsB,CAAC;AACvC,OAAO,IAAI,EAAE,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAChE,OAAO,cAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,GAAG,MAAM,kBAAkB,CAAC;AACnC,OAAO,MAAM,EAAE,EAAC,KAAK,EAAE,IAAI,EAAC,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAC,mBAAmB,EAAE,mBAAmB,EAAC,MAAM,YAAY,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EACd,6BAA6B,EAC7B,aAAa,EACb,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,SAAU,SAAQ,UAAU;IAChC;;;OAGG;IACH,YAAY,OAAO;QACjB,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB;YACE,SAAS;YACT,SAAS;YACT,QAAQ;YACR,eAAe;YACf,eAAe;YACf,SAAS;YACT,SAAS;YACT,YAAY;SACb,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEvD,KAAK,CAAC,YAAY,CAAC,CAAC;QAEpB;;;WAGG;QACH,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAElD;;;WAGG;QACH,IAAI,CAAC,KAAK,CAAC;QAEX;;;WAGG;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB;;;WAGG;QACH,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QAEjB;;;WAGG;QACH,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;QAEhD;;;WAGG;QACH,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAE3E;;;WAGG;QACH,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAEzE;;;WAGG;QACH,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAEvD;;;WAGG;QACH,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAEzE;;WAEG;QACH,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,IAAI,KAAK,CAAC;QAE7D;;;WAGG;QACH,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC;QAElE;;;WAGG;QACH,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,IAAI,KAAK,CAAC;QAEvE;;;WAGG;QACH,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,IAAI,kBAAkB,CAAC;QAE9D;;;WAGG;QACH,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,IAAI,sBAAsB,CAAC;QAE1E;;;WAGG;QACH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,OAAO,CAAC,IAAI,EAAE;YAChB,IAAI;gBACF,IAAI,CAAC,UAAU,CACb,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,CACd,CAAC;aACH;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;aAC1B;YACD,OAAO;SACR;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;QAED,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;aACf,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;aACnC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACb,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAClE;aACA,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,KAAK;QAChB;;;;;;WAMG;QACH,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE;QACpD,IAAI,IAAI,YAAY,KAAK,IAAI,IAAI,YAAY,IAAI,EAAE;YACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACnB;aAAM;YACL,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;SAC3B;QACD,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACzC,MAAM,iBAAiB,GAAG,GAAG,EAAE;YAC7B,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;aACrE;QACH,CAAC,CAAC;QACF,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAEjD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aACnB,IAAI,CAAC,GAAG,EAAE;YACT;;;;eAIG;YACH,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC3C,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;QAE9C;;;;;;WAMG;QACH,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,iBAAiB;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE;aAC5B,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC;gBAC7B,IAAI,EAAE,GAAG;gBACT,WAAW,EAAE,IAAI,CAAC,YAAY;gBAC9B,WAAW,EAAE,IAAI,CAAC,gBAAgB;gBAClC,uBAAuB,EAAE,IAAI,CAAC,wBAAwB;gBACtD,eAAe,EAAE,IAAI,CAAC,gBAAgB;gBACtC,cAAc,EAAE,IAAI,CAAC,eAAe;gBACpC,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;aACzC,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzB,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;QACL,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,MAAM,KAAK,IAAI,EAAE;YACnB,MAAM,GAAG,EAAE,CAAC;YACZ,qEAAqE;YACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,iBAAiB,CAC9C,IAAI,EACJ,CAAC,IAAI,CAAC,wBAAwB,CAC/B,CAAC;YACF,IAAI,OAAO,EAAE;gBACX,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACtB;iBAAM;gBACL,kCAAkC;gBAClC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE;qBAC9B,aAAa,EAAE;qBACf,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAC/D,CAAC;gBACJ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC5B;aACF;SACF;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,GAAG;QACnB,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QACD,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE;YACnB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;SACpC;QACD,IAAI,GAAG,CAAC,sBAAsB,EAAE,EAAE;YAChC,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;SACtC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CAAC,SAAS;QAC3B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,OAAO;SACR;QACD;;WAEG;QACH,IAAI,OAAO,GAAG;YACZ,GAAG,EAAE,SAAS,CAAC,cAAc,EAAE;YAC/B,UAAU,EAAE,MAAM,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC;YACvD,WAAW,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE;YACpD,WAAW,EAAE,IAAI,CAAC,YAAY;SAC/B,CAAC;QACF,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,aAAa;YACb,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACpC,UAAU,CAAC,WAAW,EACtB,OAAO,EACP,SAAS,CACV,CAAC;SACH;QACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC;YAC3B,MAAM,EAAE,IAAI,WAAW,CAAC,OAAO,CAAC;SACjC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7C;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CAAC,IAAI;QACxB,8DAA8D;QAC9D,MAAM,GAAG,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QAED,MAAM,OAAO,GAAG;YACd,YAAY,EACV,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;gBAC/B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,GAAG;SACJ,CAAC;QAEF,MAAM,aAAa,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC5C,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;aAC7D;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,QAAQ,IAAI,CAAC,GAAG,EAAE;YAChB,KAAK,SAAS;gBACZ,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC;gBACpC,IAAI,MAAM,CAAC;gBACX,QAAQ,OAAO,CAAC,QAAQ,EAAE;oBACxB,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG;wBACvB,MAAM,GAAG,IAAI,mBAAmB,CAC9B,MAAM,aAAa,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC,CACvD,CAAC;wBACF,MAAM;oBACR,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC3B,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC3B,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAC1B,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI;wBACxB,MAAM,GAAG,IAAI,mBAAmB,CAC9B,MAAM,aAAa,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC,CACvD,CAAC;wBACF,MAAM;oBACR;wBACE,OAAO,CAAC,cAAc;iBACzB;gBACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,UAAU;gBACb,OAAO,CAAC,IAAI,CACV,IAAI,QAAQ,CAAC,MAAM,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAChE,CAAC;gBACF,MAAM;YACR,KAAK,KAAK;gBACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE;oBACtC,MAAM;iBACP;gBACD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE;oBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC3C,IAAI,MAAM,GAAG,EAAE,CAAC;oBAChB,IACE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBACjC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,EACzC;wBACA,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;qBAChC;oBACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAC1B;wBACE,MAAM,EAAE,MAAM;wBACd,MAAM,EAAE,MAAM;qBACf,EACD,IAAI,CAAC,gBAAgB,CAAC,CACvB,CAAC;oBACF,IAAI,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,SAAS,EAAE;wBAChD,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;qBACtD;oBACD,IACE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ;wBAChC,IAAI,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EACjC;wBACA,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC9B;oBACD,MAAM,UAAU,GAAG,MAAM,aAAa,CACpC,UAAU,CAAC,OAAO,EAClB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,EAAC,MAAM,EAAC,CAAC,CACrC,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;iBACnC;gBACD,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBACxD,IAAI,CAAC,gBAAgB,EAAE;oBACrB,OAAO;iBACR;gBACD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC9C,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;oBACpB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACzB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,IAAI,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,EAAC,KAAK,EAAC,CAAC,CAAC;oBACtD,IACE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ;wBAChC,IAAI,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,EACjC;wBACA,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;qBACnC;oBACD,WAAW,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;oBAChE,OAAO,CAAC,IAAI,CACV,IAAI,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC,CACjE,CAAC;iBACH;gBACD,MAAM;YACR,KAAK,KAAK;gBACR,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpE,MAAM;YACR;gBACE,OAAO;SACV;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5B,IAAI,KAAK,CAAC;YACV,IAAI,MAAM,YAAY,gBAAgB,EAAE;gBACtC,KAAK,GAAG,IAAI,eAAe,CAAC;oBAC1B,MAAM;oBACN,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;aACJ;iBAAM,IAAI,MAAM,YAAY,mBAAmB,EAAE;gBAChD,KAAK,GAAG,IAAI,cAAc,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;aACtC;iBAAM;gBACL,KAAK,GAAG,IAAI,SAAS,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;aACjC;YACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,KAAK;QACrB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC1B,OAAO;SACR;QAED,IAAI,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE;YAC/D,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;SAClD;QAED,MAAM,UAAU,GAAG,6BAA6B,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAErE;;WAEG;QACH,IAAI,OAAO,GAAG;YACZ,OAAO,EAAE,CAAC,UAAU,CAAC;SACtB,CAAC;QAEF,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU,EAAE;YACd,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;SACjC;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,aAAa;YACb,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACpC,UAAU,CAAC,OAAO,EAClB,OAAO,EACP,KAAK,CACN,CAAC;SACH;QAED,MAAM,kBAAkB,GAAG,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAChD,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAChC;YACD,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC;QACF,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;YAC3C,IAAI,IAAI,CAAC,uBAAuB,EAAE;gBAChC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACvD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC5B,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBACpC,4DAA4D;gBAC5D,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;oBACvB,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE;wBACjC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;qBAClC;gBACH,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC3B,sEAAsE;gBACtE,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;aACxB;YACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,IAAI,CAAC,uBAAuB,EAAE;gBAChC,OAAO,MAAM,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAC9C;YACD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CAAC,IAAI;QAChC;;WAEG;QACH,IAAI,OAAO,GAAG;YACZ,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,GAAG,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC;SACtC,CAAC;QACF,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;SACvE;QACD,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC;YAC1B,MAAM,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;QAC/B,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxB,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,gBAAgB,EAAE,IAAI,IAAI,CAAC,sBAAsB,EAAE,EAAE;YAC5D,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;SAC5C;aAAM;YACL,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;SAC5B;QAED,IAAI,OAAO,EAAE;YACX,MAAM,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;gBAC9B,MAAM;gBACN,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE;oBACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE;wBAC5C,iBAAiB,EAAE,UAAU;qBAC9B,CAAC,CAAC;oBACH,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;aACF,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC;gBAClC,MAAM;gBACN,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC;gBAC9C,OAAO,EAAE,IAAI,CAAC,iBAAiB;aAChC,CAAC,CAAC;YACH,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACrC,OAAO,WAAW,CAAC;SACpB;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,oBAAoB;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACnD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE;gBAC7C,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aACvB;SACF;QAED,iBAAiB;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,gBAAgB,EAAE,IAAI,IAAI,CAAC,sBAAsB,EAAE,EAAE;YAC5D,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAChC;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;YAC/C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;SAC7B;QACD,IACE,IAAI,CAAC,kBAAkB;YACvB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC,EAChE;YACA,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;SAC9B;IACH,CAAC;IAED;;;;OAIG;IACH,aAAa;QACX,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CACzC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,WAAW,CACjC,CAAC;QACF,OAAO,OAAO,QAAQ,KAAK,WAAW,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,IAAI,KAAK,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,iCAAiC;QAC5F,IAAI,OAAO,IAAI,CAAC,kBAAkB,KAAK,QAAQ,EAAE;YAC/C,KAAK,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACnC;QACD,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAElD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YAC1C,QAAQ,GAAG,IAAI,CAAC,kBAAkB;iBAC/B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACZ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;oBAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;oBAClE,IAAI,KAAK,EAAE;wBACT,OAAO,KAAK,CAAC;qBACd;oBACD,OAAO,IAAI,CAAC;iBACb;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC7B;aAAM;YACL,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACrB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACnC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACnC,OAAO,KAAK,GAAG,KAAK,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,MAAM;QACpB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC7B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBACvC;gBACD,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,EAAE;oBAC7B,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;iBACzB;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACrB;QACD,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO;SACR;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;QAC/C,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;SACR;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACnC,IAAI,IAAI,EAAE;YACR,OAAO,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;SACjE;IACH,CAAC;CACF;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"STAC.js","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ol-stac",
3
- "version": "1.0.0-beta.10",
3
+ "version": "1.0.0-beta.11",
4
4
  "description": "An \"automagical\" STAC LayerGroup for OpenLayers",
5
5
  "homepage": "https://mohr.ws",
6
6
  "license": "Apache-2.0",
@@ -22,7 +22,7 @@
22
22
  "stac-js": "0.0.9"
23
23
  },
24
24
  "peerDependencies": {
25
- "ol": ">=7.5.2"
25
+ "ol": "*"
26
26
  },
27
27
  "browserslist": [
28
28
  "> 1%",
package/util.d.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  /**
2
2
  * Get the STAC objects associated with this event, if any. Excludes API Collections.
3
3
  * @param {import('ol/MapBrowserEvent.js').default} event The asset to read the information from.
4
+ * @param {STAC} [exclude=null] Excludes the given STAC entity from the list.
4
5
  * @return {Promise<Array<STAC>>} A list of STAC objects
5
6
  * @api
6
7
  */
7
- export function getStacObjectsForEvent(event: import("ol/MapBrowserEvent.js").default<any>): Promise<Array<STAC>>;
8
+ export function getStacObjectsForEvent(event: import("ol/MapBrowserEvent.js").default<any>, exclude?: any): Promise<Array<STAC>>;
8
9
  /**
9
10
  * Get the source info for the GeoTiff from the asset.
10
11
  * @param {import('stac-js').Asset} asset The asset to read the information from.
package/util.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"AAwCA;;;;;GAKG;AACH,6FAHY,QAAQ,WAAW,CAAC,CAsB/B;AAED;;;;;GAKG;AACH,iEAHW,MAAM,MAAM,CAAC,GACZ,OAAO,sBAAsB,EAAE,UAAU,CAiCpD;AAED;;;;;GAKG;AACH,kEAHW,OAAO,YAAY,EAAE,cAAc,GAClC,QAAQ,OAAO,YAAY,EAAE,cAAc,CAAC,CAgBvD;AAED;;;;;;;;GAQG;AACH,+HAHY,KAAK,CAShB;AAED;;;;;GAKG;AACH,iDAFY,MAAM,GAAC,IAAI,CAgBtB;AAED;;;;GAIG;AACH,yCAHW,MAAM,GACL,QAAQ,MAAO,IAAI,CAAC,CAY/B;AAzKD;;;;GAIG;AACH,iCAHU,KAAK,CAWZ;AAEH;;;;GAIG;AACH,qCAHU,KAAK,CAQZ;sBAjC+B,aAAa"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"AAwCA;;;;;;GAMG;AACH,4GAHY,QAAQ,WAAW,CAAC,CA4B/B;AAED;;;;;GAKG;AACH,iEAHW,MAAM,MAAM,CAAC,GACZ,OAAO,sBAAsB,EAAE,UAAU,CAiCpD;AAED;;;;;GAKG;AACH,kEAHW,OAAO,YAAY,EAAE,cAAc,GAClC,QAAQ,OAAO,YAAY,EAAE,cAAc,CAAC,CAgBvD;AAED;;;;;;;;GAQG;AACH,+HAHY,KAAK,CAShB;AAED;;;;;GAKG;AACH,iDAFY,MAAM,GAAC,IAAI,CAgBtB;AAED;;;;GAIG;AACH,yCAHW,MAAM,GACL,QAAQ,MAAO,IAAI,CAAC,CAY/B;AAhLD;;;;GAIG;AACH,iCAHU,KAAK,CAWZ;AAEH;;;;GAIG;AACH,qCAHU,KAAK,CAQZ;sBAjC+B,aAAa"}
package/util.js CHANGED
@@ -28,22 +28,29 @@ export const defaultBoundsStyle = new Style({
28
28
  export const defaultCollectionStyle = new Style({
29
29
  stroke: new Stroke({
30
30
  color: '#ff9933',
31
- width: 1,
31
+ width: 2,
32
32
  }),
33
33
  });
34
34
  /**
35
35
  * Get the STAC objects associated with this event, if any. Excludes API Collections.
36
36
  * @param {import('ol/MapBrowserEvent.js').default} event The asset to read the information from.
37
+ * @param {STAC} [exclude=null] Excludes the given STAC entity from the list.
37
38
  * @return {Promise<Array<STAC>>} A list of STAC objects
38
39
  * @api
39
40
  */
40
- export async function getStacObjectsForEvent(event) {
41
+ export async function getStacObjectsForEvent(event, exclude = null) {
41
42
  const objects = event.map
42
43
  .getAllLayers()
43
44
  .filter((layer) => {
44
45
  if (layer instanceof VectorLayer &&
45
46
  layer.get('bounds') === true &&
46
47
  layer.get('stac') instanceof STAC) {
48
+ if (exclude) {
49
+ const stac = layer.get('stac');
50
+ if (stac.equals(exclude)) {
51
+ return false;
52
+ }
53
+ }
47
54
  const features = layer
48
55
  .getSource()
49
56
  .getFeaturesAtCoordinate(event.coordinate);
package/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAC,MAAM,aAAa,CAAC;AAChD,OAAO,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,YAAY,IAAI,iBAAiB,GAClC,MAAM,kBAAkB,CAAC;AAE1B;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,KAAK,CAAC;IAC1C,IAAI,EAAE,IAAI,IAAI,CAAC;QACb,KAAK,EAAE,uBAAuB;KAC/B,CAAC;IACF,MAAM,EAAE,IAAI,MAAM,CAAC;QACjB,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,CAAC;KACT,CAAC;CACH,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,KAAK,CAAC;IAC9C,MAAM,EAAE,IAAI,MAAM,CAAC;QACjB,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,CAAC;KACT,CAAC;CACH,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,KAAK;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG;SACtB,YAAY,EAAE;SACd,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QAChB,IACE,KAAK,YAAY,WAAW;YAC5B,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI;YAC5B,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,EACjC;YACA,MAAM,QAAQ,GAAG,KAAK;iBACnB,SAAS,EAAE;iBACX,uBAAuB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7C,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;SAC5B;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrC,oCAAoC;IACpC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAAK,EAAE,KAAK;IACxD,MAAM,UAAU,GAAG;QACjB,GAAG,EAAE,KAAK,CAAC,cAAc,EAAE;KAC5B,CAAC;IAEF,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,yEAAyE;IACzE,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACjC,IAAI,GAAG,CAAC,CAAC;KACV;IAED,qEAAqE;IACrE,MAAM,EAAC,OAAO,EAAE,OAAO,EAAC,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC;KAC1B;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC;KAC1B;IAED,qEAAqE;IACrE,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACrB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;KAC/B;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;KAC1B;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS;IAC1E,IAAI,UAAU,GAAG,iBAAiB,CAAC;IACnC,IAAI,iBAAiB,EAAE,EAAE;QACvB,4FAA4F;QAC5F,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,QAAQ,EAAE;YACZ,IAAI;gBACF,UAAU,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;aAC3C;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO;aACR;SACF;KACF;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,aAAa,EAAE,UAAU;IACtD,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,CAAC;IACpC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,EAAE;QAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KACrB;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAI;IACvC,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;IACpB,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QACvB,IACE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAC/B;YACA,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC5D,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnD;aAAM;YACL,OAAO,IAAI,CAAC;SACb;KACF;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAG;IAC3C,IAAI;QACF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;QACrC,OAAO,IAAI,gBAAgB,EAAE,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;KAC3D;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,IAAI,CAAC;KACb;AACH,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"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"}