- add bar component wit d3.js

- new dataset-by-station-selector.component with angular/material/dialog
- zoom.componentn: disable button at lasst zoom level
This commit is contained in:
Arno Kaimbacher 2021-09-14 15:22:31 +02:00
parent 363cdb0681
commit 427b7b9c91
25 changed files with 1840 additions and 55 deletions

View file

@ -0,0 +1,80 @@
import { GeomonPlatform } from "./platform";
export class Dataset {
public id: string;
public label: string;
public url: string;
public uom: string;
public internalId: string;
public firstValue: FirstLastValue;
public lastValue: FirstLastValue;
public referenceValues: ReferenceValue[];
public datasetType: any;
public platformType: any;
public seriesParameters?: any;
public renderingHints: RenderingHints;
public parameters: any;
}
export class GeomonDataset {
public internalId: string;
constructor(
public id: string,
public url: string,
public label: string
) {
// this.internalId = new InternalIdHandler().createInternalId(url, id);
}
}
export class GeomonTimeseries extends GeomonDataset {
constructor(
public id: string,
public url: string,
public label: string,
public uom: string,
public platform: GeomonPlatform,
public firstValue: FirstLastValue,
public lastValue: FirstLastValue,
public referenceValues: ReferenceValue[],
public renderingHints: RenderingHints,
public parameters: ParameterConstellation,
) {
super(id, url, label);
}
}
export class ParameterConstellation {
public service: Parameter;
public offering: Parameter;
public feature: Parameter; //Feature;
public procedure: Parameter;
public phenomenon: Parameter;
public category: Parameter;
}
interface Parameter {
id: string;
label: string;
}
export class FirstLastValue {
public timestamp: number;
public value: number;
}
export class ReferenceValue {
public referenceValueId: string;
public label: string;
public lastValue: FirstLastValue;
public color?: string;
public visible?: boolean;
}
export interface RenderingHints {
chartType: string;
properties: {
color: string;
};
}

View file

@ -0,0 +1,10 @@
export class GeomonPlatform {
constructor(
public id: string,
public label: string,
public datasetIds: string[],
public geometry?: GeoJSON.GeometryObject
) { }
}

View file

@ -10,25 +10,32 @@ export interface Station {
export interface StationProperties {
id: string;
label: string;
// timeseries: TimeseriesCollection | Timeseries;
datasets: Dataset;
}
export interface Dataset
{
id: string;
label: string;
href: string,
domainId: string;
}
// export class TimeseriesCollection {
// [key: string]: ParameterConstellation;
// }
interface Timeseries {
id: string;
label: string;
url: string;
uom: string;
internalId: string;
// firstValue;
// lastValue;
// referenceValues;
station: Station;
// parameters;
// statusIntervals?;
// hasData = false;
// public renderingHints;
}
// interface Timeseries {
// id: string;
// label: string;
// url: string;
// uom: string;
// internalId: string;
// // firstValue;
// // lastValue;
// // referenceValues;
// station: Station;
// // parameters;
// // statusIntervals?;
// // hasData = false;
// // public renderingHints;
// }