diff --git a/src/app/data-catalogue/components/dataset-detail/dataset-element-table/dataset-element-table.component.html b/src/app/data-catalogue/components/dataset-detail/dataset-element-table/dataset-element-table.component.html
index d08ed082f..1e0d91dff 100644
--- a/src/app/data-catalogue/components/dataset-detail/dataset-element-table/dataset-element-table.component.html
+++ b/src/app/data-catalogue/components/dataset-detail/dataset-element-table/dataset-element-table.component.html
@@ -8,10 +8,10 @@
@for (attribute of attributes; track attribute.name) {
- {{ attribute.name }} |
- |
- {{ attribute.type }} |
- {{ attribute.unit }} |
+ {{ attribute.name ?? '-' }} |
+ |
+ {{ attribute.type ?? '-' }} |
+ {{ attribute.unit ?? '-' }} |
}
diff --git a/src/app/data-catalogue/utils/data-extraction.utils.spec.ts b/src/app/data-catalogue/utils/data-extraction.utils.spec.ts
index 7ac104400..b0dc99737 100644
--- a/src/app/data-catalogue/utils/data-extraction.utils.spec.ts
+++ b/src/app/data-catalogue/utils/data-extraction.utils.spec.ts
@@ -19,7 +19,7 @@ describe('DataExtractionUtils', () => {
zipCode: 2222,
poBox: null,
section: null,
- url: 'https://www.example.com',
+ url: {href: 'https://www.example.com'},
};
const result = DataExtractionUtils.extractContactElements(mockContact);
@@ -36,7 +36,7 @@ describe('DataExtractionUtils', () => {
{title: 'Tel', value: mockContact.phone, type: 'text'},
{title: 'Tel direkt', value: mockContact.phoneDirect, type: 'text'},
{title: 'E-Mail', value: mockContact.email, type: 'url'},
- {title: 'www', value: {href: mockContact.url}, type: 'url'},
+ {title: 'www', value: mockContact.url, type: 'url'},
];
expect(result).toEqual(expected);
});
diff --git a/src/app/data-catalogue/utils/data-extraction.utils.ts b/src/app/data-catalogue/utils/data-extraction.utils.ts
index bec6699fc..d38f3751b 100644
--- a/src/app/data-catalogue/utils/data-extraction.utils.ts
+++ b/src/app/data-catalogue/utils/data-extraction.utils.ts
@@ -12,7 +12,7 @@ export class DataExtractionUtils {
{title: 'Tel', value: contact.phone, type: 'text'},
{title: 'Tel direkt', value: contact.phoneDirect, type: 'text'},
{title: 'E-Mail', value: contact.email, type: 'url'},
- {title: 'www', value: {href: contact.url}, type: 'url'},
+ {title: 'www', value: contact.url, type: 'url'},
];
}
}
diff --git a/src/app/shared/interfaces/gb3-metadata.interface.ts b/src/app/shared/interfaces/gb3-metadata.interface.ts
index a12e36a2c..bc2aa08cd 100644
--- a/src/app/shared/interfaces/gb3-metadata.interface.ts
+++ b/src/app/shared/interfaces/gb3-metadata.interface.ts
@@ -15,8 +15,8 @@ export interface DepartmentalContact {
village: string;
phone: string;
phoneDirect: string;
- email: LinkObject;
- url: string;
+ email: LinkObject | null;
+ url: LinkObject | null;
}
interface BaseMetadataInterface {
diff --git a/src/app/shared/interfaces/layer-attributes.interface.ts b/src/app/shared/interfaces/layer-attributes.interface.ts
index e6b7c9f5b..fcaba26af 100644
--- a/src/app/shared/interfaces/layer-attributes.interface.ts
+++ b/src/app/shared/interfaces/layer-attributes.interface.ts
@@ -1,6 +1,6 @@
export interface LayerAttributes {
- name: string;
- description: string;
- type: string;
+ name: string | null;
+ description: string | null;
+ type: string | null;
unit: string | null;
}
diff --git a/src/app/shared/models/gb3-api-generated.interfaces.ts b/src/app/shared/models/gb3-api-generated.interfaces.ts
index dd28dcf97..3cc7c6bdc 100644
--- a/src/app/shared/models/gb3-api-generated.interfaces.ts
+++ b/src/app/shared/models/gb3-api-generated.interfaces.ts
@@ -168,6 +168,15 @@ export interface MetadataDatasets {
datasets: Dataset[];
}
+export interface MetadataGeoshopProducts {
+ geoshop_products?: {
+ /** Geoshop product ID */
+ giszhnr: number;
+ /** Link auf Geodatashop bei NOGD-Daten */
+ url_shop: string | null;
+ }[];
+}
+
export interface MetadataMap {
map: Map;
}
@@ -421,6 +430,11 @@ export interface PrintNew {
};
}
+export interface PrintReport {
+ /** Link to report file */
+ report_url: string;
+}
+
export interface ProductsList {
/** Timestamp of product list in ISO8601 format */
timestamp: string;
@@ -656,9 +670,9 @@ export interface Contact {
/** Telephon direkt */
telephon_direkt: string;
/** E-Mail */
- email: LinkObject;
+ email: LinkObject | null;
/** URL */
- weburl: LinkObject;
+ weburl: LinkObject | null;
}
export interface Dataset {
@@ -751,13 +765,13 @@ export interface Dataset {
datenbezugart: string;
attribute: {
/** Attributname */
- name: string;
+ name: string | null;
/** Attributtyp */
- typ: string;
+ typ: string | null;
/** Einheit des Attributwerts */
einheit: string | null;
/** Beschreibung des Attributs */
- beschreibung: string;
+ beschreibung: string | null;
}[];
}[];
services: {
@@ -968,6 +982,10 @@ export interface Map {
name: string;
/** Beschreibung der Karte */
beschreibung: string;
+ /** Link to the internet version of the current map */
+ gbkarten_internet_url: LinkObject | null;
+ /** Link to the intranet version of the current map (only available whether this api is called from intranet) */
+ gbkarten_intranet_url: LinkObject | null;
/** Link auf GB2-Karte */
gb2_url: LinkObject | null;
/** Links auf weiterführende Verweise */
@@ -1121,6 +1139,21 @@ export interface Service {
}[];
}
+export interface VectorInputGeneral {
+ /** GeoJSON file containing FeatureCollection or Feature, or KML file */
+ file: File;
+}
+
+export interface VectorInputGeojson {
+ /** GeoJSON file containing FeatureCollection or Feature */
+ file: File;
+}
+
+export interface VectorInputKml {
+ /** KML file */
+ file: File;
+}
+
/** Vector layer */
export interface VectorLayer {
/** Vector layer type */
@@ -1207,27 +1240,12 @@ export interface VectorLayerWithoutStyles {
export type CantonListData = Canton;
-export interface ImportGeojsonCreatePayload {
- /** GeoJSON file containing FeatureCollection or Feature */
- file: File;
-}
-
export type ImportGeojsonCreateData = VectorLayer;
export type ExportGeojsonCreateData = GenericGeojsonFeatureCollection;
-export interface ImportCreatePayload {
- /** GeoJSON file containing FeatureCollection or Feature, or KML file */
- file: File;
-}
-
export type ImportCreateData = VectorLayer;
-export interface ImportKmlCreatePayload {
- /** KML file */
- file: File;
-}
-
export type ImportKmlCreateData = VectorLayer;
export type ExportKmlCreateData = any;
@@ -1242,14 +1260,7 @@ export type MetadataDatasetsListData = MetadataDatasets;
export type MetadataDatasetsDetailData = MetadataDataset;
-export interface MetadataGeoshopProductsListData {
- geoshop_products: {
- /** Geoshop product ID */
- giszhnr: number;
- /** Link auf Geodatashop bei NOGD-Daten */
- url_shop: string | null;
- }[];
-}
+export type MetadataGeoshopProductsListData = MetadataGeoshopProducts;
export type MetadataMapsListData = MetadataMaps;
@@ -1277,20 +1288,11 @@ export type UserFavoritesDetailData = PersonalFavorite;
export type UserFavoritesDeleteData = any;
-export interface PrintCreateData {
- /** Link to report file */
- report_url: string;
-}
+export type PrintCreateData = PrintReport;
-export interface PrintFeatureInfoCreateData {
- /** Link to report file */
- report_url: string;
-}
+export type PrintFeatureInfoCreateData = PrintReport;
-export interface PrintLegendCreateData {
- /** Link to report file */
- report_url: string;
-}
+export type PrintLegendCreateData = PrintReport;
export type PrintDetailData = any;
diff --git a/src/app/shared/services/apis/gb3/gb3-metadata.service.spec.ts b/src/app/shared/services/apis/gb3/gb3-metadata.service.spec.ts
index 0fa7a4163..4ed0a98b2 100644
--- a/src/app/shared/services/apis/gb3/gb3-metadata.service.spec.ts
+++ b/src/app/shared/services/apis/gb3/gb3-metadata.service.spec.ts
@@ -79,6 +79,8 @@ const mockMapDetailResponse = {
topic: 'test-topic',
verweise: [],
gb2_url: null,
+ gbkarten_internet_url: null,
+ gbkarten_intranet_url: null,
},
} as MetadataMapsDetailData;
@@ -153,7 +155,7 @@ const mockDatasetDetailResponse = {
} as MetadataDatasetsDetailData;
const expectedMockDepartmentalContact: DepartmentalContact = {
- url: mockContact.weburl.href,
+ url: mockContact.weburl,
email: mockContact.email,
phoneDirect: mockContact.telephon_direkt,
phone: mockContact.telephon,
diff --git a/src/app/shared/services/apis/gb3/gb3-metadata.service.ts b/src/app/shared/services/apis/gb3/gb3-metadata.service.ts
index 297b78a33..48ffb7bd2 100644
--- a/src/app/shared/services/apis/gb3/gb3-metadata.service.ts
+++ b/src/app/shared/services/apis/gb3/gb3-metadata.service.ts
@@ -297,7 +297,7 @@ export class Gb3MetadataService extends Gb3ApiService {
department: contact.amt,
division: contact.fachstelle,
section: contact.sektion,
- url: contact.weburl.href,
+ url: contact.weburl,
street: contact.strassenname,
poBox: contact.postfach,
email: contact.email,