UNPKG

terriajs

Version:

Geospatial data visualization platform.

46 lines 2.37 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; import { computed, makeObservable } from "mobx"; import { FEATURE_ID_PROP } from "../ModelMixins/GeojsonMixin"; import LoadableStratum from "../Models/Definition/LoadableStratum"; import StratumOrder from "../Models/Definition/StratumOrder"; import createStratumInstance from "../Models/Definition/createStratumInstance"; import { FeatureInfoTemplateTraits } from "../Traits/TraitsClasses/FeatureInfoTraits"; import TableTraits from "../Traits/TraitsClasses/Table/TableTraits"; export default class TableFeatureInfoStratum extends LoadableStratum(TableTraits) { catalogItem; static stratumName = "tableFeatureInfo"; constructor(catalogItem) { super(); this.catalogItem = catalogItem; makeObservable(this); } static load(item) { return new TableFeatureInfoStratum(item); } duplicateLoadableStratum(newModel) { return new TableFeatureInfoStratum(newModel); } get featureInfoTemplate() { let template = '<table class="cesium-infoBox-defaultTable">'; template += this.catalogItem.tableColumns ?.filter((col) => col.name !== FEATURE_ID_PROP) ?.map((col) => `<tr><td style="vertical-align: middle"><b>${col.title}</b></td><td>{{${col.name}}}</td></tr>`) .join(""); // See tableFeatureInfoContext for how timeSeries chart is generated template += `</table>{{terria.timeSeries.chart}}`; return createStratumInstance(FeatureInfoTemplateTraits, { template, showFeatureInfoDownloadWithTemplate: true }); } } __decorate([ computed ], TableFeatureInfoStratum.prototype, "featureInfoTemplate", null); StratumOrder.addLoadStratum(TableFeatureInfoStratum.stratumName); //# sourceMappingURL=TableFeatureInfoStratum.js.map