ol-stac 1.1.1 → 1.2.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"STAC.d.ts","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"STAC.d.ts","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":"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"}
package/layer/STAC.js CHANGED
@@ -29,7 +29,7 @@ import ErrorEvent from '../events/ErrorEvent.js';
29
29
  // todo: temporary fix for https://github.com/openlayers/openlayers/issues/17153
30
30
  import GeoTIFF from '../source/GeoTIFF.js';
31
31
  import SourceType from '../source/type.js';
32
- import { LABEL_EXTENSION, defaultBoundsStyle, defaultCollectionStyle, getBoundsStyle, getGeoTiffSourceInfoFromAsset, getProjection, getSpecificWebMapUrl, isScalar, } from '../util.js';
32
+ import { LABEL_EXTENSION, defaultBoundsStyle, defaultCollectionStyle, getBoundsStyle, getClassificationStyle, getGeoTiffSourceInfoFromAsset, getProjection, getSpecificWebMapUrl, isScalar, } from '../util.js';
33
33
  /**
34
34
  * @typedef {import("ol/extent.js").Extent} Extent
35
35
  */
@@ -645,6 +645,10 @@ class STACLayer extends LayerGroup {
645
645
  if (projection) {
646
646
  options.projection = projection;
647
647
  }
648
+ const classificationStyle = getClassificationStyle(asset, this.bands_);
649
+ if (classificationStyle) {
650
+ options.normalize = false;
651
+ }
648
652
  if (this.getSourceOptions_) {
649
653
  // @ts-ignore
650
654
  options = await this.getSourceOptions_(SourceType.GeoTIFF, options, asset);
@@ -664,7 +668,11 @@ class STACLayer extends LayerGroup {
664
668
  });
665
669
  try {
666
670
  await status;
667
- const layer = new WebGLTileLayer({ source });
671
+ const layerOptions = { source };
672
+ if (classificationStyle) {
673
+ layerOptions.style = classificationStyle;
674
+ }
675
+ const layer = new WebGLTileLayer(layerOptions);
668
676
  this.addLayer_(layer, asset);
669
677
  return layer;
670
678
  }
@@ -721,7 +729,7 @@ class STACLayer extends LayerGroup {
721
729
  addFootprint_() {
722
730
  let geojson = null;
723
731
  const data = this.getData();
724
- if (data.isItemCollection() || data.isCollectionCollection()) {
732
+ if (data.isItemCollection || data.isCollectionCollection) {
725
733
  geojson = toGeoJSON(data.getBoundingBox());
726
734
  }
727
735
  else {
@@ -868,7 +876,7 @@ class STACLayer extends LayerGroup {
868
876
  if (ref.type === geojsonMediaType) {
869
877
  return await this.addGeoJson_(ref);
870
878
  }
871
- if (ref.isGeoTIFF()) {
879
+ if (ref.isGeoTIFF) {
872
880
  return await this.addGeoTiff_(ref);
873
881
  }
874
882
  if (ref.canBrowserDisplayImage()) {
@@ -886,7 +894,7 @@ class STACLayer extends LayerGroup {
886
894
  }
887
895
  else if (data instanceof STAC) {
888
896
  // Show label extension
889
- if (data.isItem() &&
897
+ if (data.isItem &&
890
898
  data.supportsExtension(LABEL_EXTENSION) &&
891
899
  data.getMetadata('label:type') === 'vector') {
892
900
  await this.addLabelExtension_();
package/layer/STAC.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"STAC.js","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"STAC.js","sourceRoot":"","sources":["../../../src/ol/layer/STAC.js"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAC7C,OAAO,eAAe,MAAM,wBAAwB,CAAC;AACrD,OAAO,cAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAC3C,8CAA8C;AAC9C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,GAAG,MAAM,sBAAsB,CAAC;AACvC,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAC/C,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACvD,OAAO,IAAI,EAAE,EAAC,uBAAuB,EAAC,MAAM,mBAAmB,CAAC;AAChE,OAAO,GAAG,MAAM,kBAAkB,CAAC;AACnC,OAAO,EAAC,mBAAmB,EAAE,mBAAmB,EAAC,MAAM,YAAY,CAAC;AACpE,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,MAAM,EAAE,EACb,aAAa,EACb,KAAK,EACL,oBAAoB,EACpB,IAAI,EACJ,cAAc,EACd,IAAI,GACL,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAC,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAC9C,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,gFAAgF;AAChF,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EACd,sBAAsB,EACtB,6BAA6B,EAC7B,aAAa,EACb,oBAAoB,EACpB,QAAQ,GACT,MAAM,YAAY,CAAC;AACpB;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;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,SAAS,GAAG,IAAI,CAAC;QAEtB;;;WAGG;QACH,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;QAEtD;;;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;;;WAGG;QACH,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,IAAI,KAAK,CAAC;QAE3D;;;WAGG;QACH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB;;;WAGG;QACH,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QAEtB,IAAI,OAAO,CAAC,aAAa,EAAE;YACzB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;SACrC;QAED,IAAI,OAAO,CAAC,IAAI,EAAE;YAChB,IAAI;gBACF,IAAI,CAAC,UAAU,CACb,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,QAAQ,EAChB,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,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;aACrB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACb,IAAI,CAAC,UAAU,CACb,IAAI,EACJ,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,KAAK,CACd,CACF;aACA,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM;QACrC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;SACxE;QACD,IAAI,YAAY,KAAK,MAAM,EAAE;YAC3B,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9B;QACD,IAAI,YAAY,KAAK,MAAM,EAAE;YAC3B,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,OAAO;;QACL,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC;QAC3C,IAAI,KAAK,GAAG,CAAC,EAAE;YACb,OAAO,KAAK,CAAC;SACd;QACD,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,OAAO,EAAE,0CAAE,cAAc,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC;SACb;QACD,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,KAAK;QAChB;;;;;;WAMG;QACH,IAAI,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE;QACrE,IAAI,IAAI,CAAC;QACT,IAAI,IAAI,YAAY,KAAK,IAAI,IAAI,YAAY,IAAI,EAAE;YACjD,IAAI,GAAG,IAAI,CAAC;SACb;aAAM;YACL,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC7C,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC9B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aAC1B;SACF;QACD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvB,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,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,IAAI,CACX,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAC5D,CAAC;SACH;QACD,IAAI,MAAM,EAAE;YACV,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;SAClE;QACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;QAE1E;;;;WAIG;QACH,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,KAAK;QACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aAC3B;YACD,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;SACvB;IACH,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,GAAG;QACT,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,EAAE;YACrB,OAAO;SACR;QACD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,GAAG,EAAE;QACzC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACtC,MAAM,cAAc,GAAG;gBACrB,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;gBACxC,sBAAsB,EAAE,IAAI,CAAC,uBAAuB;gBACpD,oBAAoB,EAAE,IAAI,CAAC,qBAAqB;aACjD,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;YACvE,gFAAgF;YAChF,+EAA+E;YAC/E,0BAA0B;YAC1B,aAAa;YACb,QAAQ,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;gBAC9B,IAAI,QAAQ,CAAC,IAAI,EAAE;oBACjB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;iBAC7B;YACH,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC/B,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAAK;QAC1B,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACrD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO;SACR;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACvB;;WAEG;QACH,IAAI,OAAO,GAAG;YACZ,GAAG,EAAE,KAAK,CAAC,cAAc,EAAE;YAC3B,UAAU;YACV,WAAW,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC;YAC3D,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,KAAK,CACN,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,KAAK,CAAC,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,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,OAAO,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC;YAC3C,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,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;wBACnE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;qBAC3B;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,IAAI,CAAC,oBAAoB,CACtD,GAAG,EACH,IAAI,CAAC,eAAe,CAAC,CACtB,CAAC;gBACF,IAAI,CAAC,gBAAgB,EAAE;oBACrB,OAAO;iBACR;gBACD,IAAI,MAAM,GAAG,EAAE,CAAC;gBAChB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE;oBACrC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;iBAC7B;qBAAM,IAAI,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,QAAQ,EAAE;oBACjD,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;iBAC/B;gBACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;oBAC1B,IAAI,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;wBAC3C,KAAK;wBACL,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;qBACnE,CAAC,CAAC;oBACH,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;wBACnE,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;qBAChC;oBACD,WAAW,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;oBAChE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;oBACpE,IAAI,IAAI,KAAK,IAAI,EAAE;wBACjB,SAAS;qBACV;oBAED,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE;wBACxC,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;wBACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;4BACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;4BACzB,IAAI,KAAK,CAAC;4BACV,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gCAC1B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;6BACtB;iCAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;gCACnC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;6BACxB;iCAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gCAC/D,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;6BACxB;4BACD,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;gCAChC,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;6BACjE;iCAAM;gCACL,SAAS,CAAC,oEAAoE;6BAC/E;yBACF;wBACD,OAAO,IAAI,CAAC,IAAI,CAAC;wBACjB,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC;qBACxB;oBAED,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC9B;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,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;;;WAGG;QACH,IAAI,OAAO,GAAG;YACZ,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,YAAY,EAAE,MAAM;YACpB,qBAAqB,EAAE,IAAI;SAC5B,CAAC;QAEF,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU,EAAE;YACd,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;SACjC;QAED,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,IAAI,mBAAmB,EAAE;YACvB,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;SAC3B;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,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7C,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3B,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACvB,4DAA4D;gBAC5D,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE;oBACjC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;iBAC3B;qBAAM;oBACL,OAAO,EAAE,CAAC;iBACX;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI;YACF,MAAM,MAAM,CAAC;YACb,MAAM,YAAY,GAAG,EAAC,MAAM,EAAC,CAAC;YAC9B,IAAI,mBAAmB,EAAE;gBACvB,YAAY,CAAC,KAAK,GAAG,mBAAmB,CAAC;aAC1C;YACD,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,YAAY,CAAC,CAAC;YAC/C,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,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;aAClD;YACD,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CAAC,IAAI;QAChC,IAAI,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,GAAG,YAAY,OAAO,EAAE;YAC1B,GAAG,GAAG,MAAM,GAAG,CAAC;SACjB;QACD;;WAEG;QACH,IAAI,OAAO,GAAG;YACZ,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,GAAG;SACJ,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,GAAG,IAAI,EAAE,MAAM,GAAG,CAAC;QACtC,IAAI,IAAI,EAAE;YACR,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACzB;QACD,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,IAAI,IAAI,CAAC,sBAAsB,EAAE;YACxD,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,KAAK,GAAG,IAAI,CAAC,mBAAmB,CACpC,OAAO,EACP,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EACvC,IAAI,CAAC,iBAAiB,CACvB,CAAC;YACF,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC1B,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,KAAK;QACrB,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,GAAG,IAAI;QACvD,MAAM,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;YAC9B,MAAM;YACN,MAAM,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE;gBACzC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE;oBAC5C,iBAAiB,EAAE,UAAU;iBAC9B,CAAC,CAAC;gBACH,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,EAAE;YACV,KAAK,GAAG,sBAAsB,CAAC;SAChC;QACD,OAAO,IAAI,WAAW,CAAC,EAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;IACnD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE;YAC3B,OAAO;SACR;QACD,8CAA8C;QAC9C,IAAI,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,CAAC;QACxE,IAAI,UAAU,CAAC;QACf,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACjC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CACtC,CAAC;SACH;QACD,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;SAC7C;QACD,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,GAAG,IAAI;iBACV,SAAS,EAAE;iBACX,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBACvB,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;aACxB;SACF;QAED,yBAAyB;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtD,IAAI,UAAU,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACxC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC9C,IAAI;oBACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;oBAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC9B,OAAO,IAAI,CAAC;iBACb;gBAAC,OAAO,KAAK,EAAE;oBACd,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACzB,OAAO,IAAI,CAAC;iBACb;YACH,CAAC,CAAC,CAAC;YACH,MAAM,KAAK,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAChD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,YAAY,IAAI,CAC/B,CAAC;YACF,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAC,gBAAgB,EAAE,KAAK,EAAC,CAAC,CAAC;SAC3D;QAED,yBAAyB;QACzB,IAAI;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;SACpC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI;QAC5B,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,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBAC7C,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aACvB;SACF;QAED,yBAAyB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE5B,8CAA8C;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,GAAG,CACxC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CACjD,CAAC;YACF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC7B;QAED,4BAA4B;QAC5B,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SAChE;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,MAAM,EAAE;YACV,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACxC,IAAI,CAAC,GAAG,EAAE;oBACR,OAAO;iBACR;gBACD,IAAI,GAAG,CAAC,IAAI,KAAK,gBAAgB,EAAE;oBACjC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;iBACpC;gBACD,IAAI,GAAG,CAAC,SAAS,EAAE;oBACjB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;iBACpC;gBACD,IAAI,GAAG,CAAC,sBAAsB,EAAE,EAAE;oBAChC,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;iBACzC;YACH,CAAC,CAAC,CAAC;YACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC7B;QAED,2EAA2E;QAC3E,0CAA0C;QAC1C,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YACxB,uDAAuD;YACvD,IAAI,IAAI,YAAY,aAAa,EAAE;gBACjC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAC/D;iBAAM,IAAI,IAAI,YAAY,IAAI,EAAE;gBAC/B,uBAAuB;gBACvB,IACE,IAAI,CAAC,MAAM;oBACX,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC;oBACvC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,QAAQ,EAC3C;oBACA,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAChC,IAAI,IAAI,EAAE;wBACR,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;qBAC/B;oBACD,OAAO;iBACR;gBACD,qBAAqB;gBACrB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;oBACpB,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;iBACtC;qBAAM;oBACL,sCAAsC;oBACtC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CACpC,IAAI,EACJ,CAAC,IAAI,CAAC,wBAAwB,CAC/B,CAAC;oBACF,IAAI,KAAK,CAAC;oBACV,6CAA6C;oBAC7C,IAAI,OAAO,IAAI,IAAI,CAAC,gBAAgB,EAAE;wBACpC,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;qBACzC;oBACD,gEAAgE;oBAChE,yCAAyC;oBACzC,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE;wBAChD,kCAAkC;wBAClC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBACxD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;4BACzB,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;yBAC5C;qBACF;iBACF;aACF;SACF;QACD,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;SAC/B;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,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,IAAI,YAAY,KAAK,EAAE;YACzB,OAAO,EAAE,CAAC;SACX;QAED,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,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE5C,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;;;;;;OAMG;IACH,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;QACzC,IAAI,MAAM,KAAK,IAAI,CAAC,OAAO,EAAE;YAC3B,OAAO;SACR;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAClC,IAAI,IAAI,YAAY,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBAC7B;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,IAAI,YAAY,EAAE;YAChB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;SAC3B;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,EAAE,YAAY,GAAG,IAAI;QAC3D,IAAI,MAAM,YAAY,cAAc,EAAE;YACpC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;SAClC;aAAM,IAAI,MAAM,YAAY,oBAAoB,EAAE;YACjD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;SAClC;aAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;SACnE;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACpC,IAAI,KAAK,YAAY,IAAI,EAAE;oBACzB,OAAO,KAAK,CAAC;iBACd;gBACD,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,gBAAgB;SACxC;QACD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;YACjD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACvB;QACD,IAAI,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE;YACvC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;SACjC;QACD,IAAI,YAAY,EAAE;YAChB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;SAC3B;IACH,CAAC;IAED;;;;;OAKG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;;;;;OAQG;IACH,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,OAAO;SACR;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QAED,sFAAsF;QACtF,gEAAgE;QAChE,yEAAyE;QACzE,8DAA8D;QAC9D,gCAAgC;QAChC,2EAA2E;QAE3E,IAAI,IAAI,CAAC;QACT,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,IAAI,EAAE;YACR,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;SAC9B;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,KAAK,EAAE;YACT,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YAC1D,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;SACjC;QAED,IAAI,IAAI,EAAE;YACR,OAAO,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;SACjE;IACH,CAAC;IAED,aAAa;QACX,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;QACpC,6EAA6E;QAC7E,0FAA0F;QAC1F,2EAA2E;QAC3E,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,eAAe;QACb,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,IAAI,EAAE;YACR,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,WAAW,EAAE;gBACf,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aAC/B;SACF;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,oBAAoB,CAAC,GAAG,EAAE,QAAQ,GAAG,KAAK;QAC9C,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,QAAQ,KAAK,MAAM,EAAE;gBACvB,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC3C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;aACvD;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;YAC9D,OAAO,IAAI,gBAAgB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9C;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,IAAI,CAAC;SACb;IACH,CAAC;CACF;AAED,eAAe,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ol-stac",
3
- "version": "1.1.1",
3
+ "version": "1.2.0",
4
4
  "description": "An \"automagical\" STAC LayerGroup for OpenLayers",
5
5
  "homepage": "https://moregeo.it",
6
6
  "license": "Apache-2.0",
@@ -20,10 +20,10 @@
20
20
  "dependencies": {
21
21
  "ol-pmtiles": "^2.0.0",
22
22
  "proj4": "^2.15.0",
23
- "stac-js": ">=0.1.9"
23
+ "stac-js": ">=0.3.0"
24
24
  },
25
25
  "peerDependencies": {
26
- "ol": ">=7.5.2"
26
+ "ol": ">=7.5.2, <10.8.0"
27
27
  },
28
28
  "browserslist": [
29
29
  "> 1%",
package/util.d.ts CHANGED
@@ -63,6 +63,28 @@ export function getSpecificWebMapUrl(link: any): string | null;
63
63
  * @return {boolean} `true` is the value is a scalar, `false` otherwise
64
64
  */
65
65
  export function isScalar(value: any): boolean;
66
+ /**
67
+ * Returns the `classification:classes` array from a STAC Asset,
68
+ * checking band-level and asset-level metadata.
69
+ *
70
+ * @param {import('stac-js').Asset} asset The STAC asset
71
+ * @param {Array<number>} [bands] The selected bands (one-based)
72
+ * @return {Array<Object>|null} The classification classes, or null
73
+ * @api
74
+ */
75
+ export function getClassificationClasses(asset: any, bands?: number[] | undefined): Array<any> | null;
76
+ /**
77
+ * Builds a WebGL tile layer style for classified raster data based on
78
+ * `classification:classes` from a STAC Asset.
79
+ *
80
+ * Returns `null` if the asset has no classification classes with color hints.
81
+ *
82
+ * @param {import('stac-js').Asset} asset The STAC asset
83
+ * @param {Array<number>} [bands] The selected bands (one-based)
84
+ * @return {Object|null} A WebGL tile layer style object, or null
85
+ * @api
86
+ */
87
+ export function getClassificationStyle(asset: any, bands?: number[] | undefined): any | null;
66
88
  /**
67
89
  * @typedef {import('ol/colorlike.js').ColorLike} ColorLike
68
90
  */
package/util.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"AAsCA;;;;;;;;;GASG;AACH,sCAPW,SAAS,eACT,MAAM,cACN,SAAS,iBACT,MAAM,GACL,KAAK,CA4BhB;AAgBD;;;;;;;;GAQG;AACH,8CAPW,OAAO,uBAAuB,EAAE,OAAO,6HAItC,QAAQ,WAAW,CAAC,CAoC/B;AAED;;;;;GAKG;AACH,yEAHW,MAAM,MAAM,CAAC,GACZ,OAAO,sBAAsB,EAAE,UAAU,CAmFpD;AAED;;;;;GAKG;AACH,qCAHW,MAAM,GACL,QAAQ,UAAU,GAAC,IAAI,CAAC,CAenC;AAED;;;;;GAKG;AACH,kEAHW,cAAc,GACb,QAAQ,cAAc,CAAC,CAYlC;AAED;;;;;;;;GAQG;AACH,+HAHY,KAAK,CAShB;AAED;;;;;GAKG;AACH,iDAFY,MAAM,GAAC,IAAI,CAgBtB;AAED;;;;GAIG;AACH,sCAFY,OAAO,CAQlB;AA3SD;;GAEG;AACH;;;GAGG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AAEH;;;GAGG;AACH,8BAFU,MAAM,CAG6C;AAyC7D;;;;GAIG;AACH,iCAHU,KAAK,CAG0C;AAEzD;;;;GAIG;AACH,qCAHU,KAAK,CAGoD;wBA1EtD,OAAO,iBAAiB,EAAE,SAAS;;sBAOnC,OAAO,eAAe,EAAE,OAAO;yBAG/B,OAAO,YAAY,EAAE,UAAU;6BAG/B,OAAO,YAAY,EAAE,cAAc;kBAjB9B,mBAAmB"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"AAsCA;;;;;;;;;GASG;AACH,sCAPW,SAAS,eACT,MAAM,cACN,SAAS,iBACT,MAAM,GACL,KAAK,CA4BhB;AAgBD;;;;;;;;GAQG;AACH,8CAPW,OAAO,uBAAuB,EAAE,OAAO,6HAItC,QAAQ,WAAW,CAAC,CAoC/B;AAED;;;;;GAKG;AACH,yEAHW,MAAM,MAAM,CAAC,GACZ,OAAO,sBAAsB,EAAE,UAAU,CAmFpD;AAED;;;;;GAKG;AACH,qCAHW,MAAM,GACL,QAAQ,UAAU,GAAC,IAAI,CAAC,CAenC;AAED;;;;;GAKG;AACH,kEAHW,cAAc,GACb,QAAQ,cAAc,CAAC,CAYlC;AAED;;;;;;;;GAQG;AACH,+HAHY,KAAK,CAShB;AAED;;;;;GAKG;AACH,iDAFY,MAAM,GAAC,IAAI,CAgBtB;AAED;;;;GAIG;AACH,sCAFY,OAAO,CAQlB;AAeD;;;;;;;;GAQG;AACH,oFAHY,UAAa,GAAC,IAAI,CAyB7B;AAED;;;;;;;;;;GAUG;AACH,kFAHY,MAAO,IAAI,CAqCtB;AAxYD;;GAEG;AACH;;;GAGG;AACH;;GAEG;AACH;;GAEG;AACH;;GAEG;AAEH;;;GAGG;AACH,8BAFU,MAAM,CAG6C;AAyC7D;;;;GAIG;AACH,iCAHU,KAAK,CAG0C;AAEzD;;;;GAIG;AACH,qCAHU,KAAK,CAGoD;wBA1EtD,OAAO,iBAAiB,EAAE,SAAS;;sBAOnC,OAAO,eAAe,EAAE,OAAO;yBAG/B,OAAO,YAAY,EAAE,UAAU;6BAG/B,OAAO,YAAY,EAAE,cAAc;kBAjB9B,mBAAmB"}
package/util.js CHANGED
@@ -272,4 +272,82 @@ export function isScalar(value) {
272
272
  typeof value === 'number' ||
273
273
  typeof value === 'boolean');
274
274
  }
275
+ /**
276
+ * Parses a 6-character hex color string (without leading `#`) into an RGB array.
277
+ * @param {string} hex A 6-character hex color string (e.g. `"FF5733"`)
278
+ * @return {Array<number>} An array of [r, g, b] values (0-255)
279
+ */
280
+ function hexToRgb(hex) {
281
+ return [
282
+ parseInt(hex.substring(0, 2), 16),
283
+ parseInt(hex.substring(2, 4), 16),
284
+ parseInt(hex.substring(4, 6), 16),
285
+ ];
286
+ }
287
+ /**
288
+ * Returns the `classification:classes` array from a STAC Asset,
289
+ * checking band-level and asset-level metadata.
290
+ *
291
+ * @param {import('stac-js').Asset} asset The STAC asset
292
+ * @param {Array<number>} [bands] The selected bands (one-based)
293
+ * @return {Array<Object>|null} The classification classes, or null
294
+ * @api
295
+ */
296
+ export function getClassificationClasses(asset, bands) {
297
+ let classes = null;
298
+ // If specific bands are selected, look for classification on the selected band
299
+ const assetBands = asset.getBands();
300
+ if (bands && bands.length === 1 && assetBands.length > 0) {
301
+ const bandObj = assetBands[bands[0] - 1];
302
+ if (bandObj) {
303
+ classes = bandObj['classification:classes'];
304
+ }
305
+ }
306
+ // Fall back to asset-level classification or single band
307
+ if (!Array.isArray(classes)) {
308
+ classes = asset.getMetadata('classification:classes');
309
+ }
310
+ if (!Array.isArray(classes) || classes.length === 0) {
311
+ return null;
312
+ }
313
+ return classes;
314
+ }
315
+ /**
316
+ * Builds a WebGL tile layer style for classified raster data based on
317
+ * `classification:classes` from a STAC Asset.
318
+ *
319
+ * Returns `null` if the asset has no classification classes with color hints.
320
+ *
321
+ * @param {import('stac-js').Asset} asset The STAC asset
322
+ * @param {Array<number>} [bands] The selected bands (one-based)
323
+ * @return {Object|null} A WebGL tile layer style object, or null
324
+ * @api
325
+ */
326
+ export function getClassificationStyle(asset, bands) {
327
+ const classes = getClassificationClasses(asset, bands);
328
+ if (!classes) {
329
+ return null;
330
+ }
331
+ // Only useful if at least one class has a color_hint
332
+ const classesWithColor = classes.filter((cls) => typeof cls.value === 'number' &&
333
+ typeof cls.color_hint === 'string' &&
334
+ cls.color_hint.length === 6);
335
+ if (classesWithColor.length === 0) {
336
+ return null;
337
+ }
338
+ // Build the match expression: ['match', ['band', n], value, color, ..., fallback]
339
+ let band = 1;
340
+ if (bands && bands.length === 1) {
341
+ band = bands[0];
342
+ }
343
+ const matchExpr = ['match', ['band', band]];
344
+ for (const cls of classesWithColor) {
345
+ const [r, g, b] = hexToRgb(cls.color_hint);
346
+ const alpha = cls.nodata ? 0 : 1;
347
+ matchExpr.push(cls.value, ['color', r, g, b, alpha]);
348
+ }
349
+ // Default: transparent for values without a color hint
350
+ matchExpr.push(['color', 0, 0, 0, 0]);
351
+ return { color: matchExpr };
352
+ }
275
353
  //# sourceMappingURL=util.js.map
package/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/ol/util.js"],"names":[],"mappings":"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"}