@piveau/piveau-hub-ui-modules 4.6.73 → 4.6.75
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/dist/data-provider-interface/DPIMenu.vue.mjs +5 -5
- package/dist/data-provider-interface/DPIMenu.vue.mjs.map +1 -1
- package/dist/piveau-hub-ui-modules.css +1 -1
- package/dist/services/datasetService.d.ts +2 -1
- package/dist/services/datasetService.mjs +15 -13
- package/dist/services/datasetService.mjs.map +1 -1
- package/dist/store/modules/datasetsStore.d.ts +10 -1
- package/dist/store/modules/datasetsStore.mjs +28 -15
- package/dist/store/modules/datasetsStore.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var d = (r, e, i) => (
|
|
1
|
+
var F = Object.defineProperty;
|
|
2
|
+
var M = (r, e, i) => e in r ? F(r, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : r[e] = i;
|
|
3
|
+
var d = (r, e, i) => (M(r, typeof e != "symbol" ? e + "" : e, i), i);
|
|
4
4
|
import y from "axios";
|
|
5
5
|
import { isNil as U, has as b, isArray as k } from "lodash-es";
|
|
6
6
|
import t from "./getters/data-getters.mjs";
|
|
@@ -22,7 +22,7 @@ const w = (r) => {
|
|
|
22
22
|
]), s.licenseAttributionByText = t.getObjectLanguage(i, "license_attribution_by_text"), s.byteSize = t.getNumber(i, "byte_size"), s.checksum = t.getObject(i, "checksum", ["algorithm", "checksum_value"]), s.compressFormat = t.getObject(i, "compress_format", ["label", "resource"]), s.conformsTo = t.getArrayOfObjects(i, "conforms_to", ["label", "resource"]), s.description = t.getObjectLanguage(i, "description", ""), s.downloadUrls = t.getArrayOfStrings(i, "download_url"), s.format = t.getObject(i, "format", ["id", "resource", { key: "label", default: "UNKNOWN" }]), s.hasPolicy = t.getString(i, "has_policy"), s.id = t.getString(i, "id"), s.languages = t.getArrayOfObjects(i, "language", ["id", "label", "resource"]), s.licence = t.getObject(i, "license", ["id", "label", "description", "resource", "la_url", "homepage"]), s.mediaType = t.getString(i, "media_type"), s.modificationDate = t.getString(i, "modified"), s.packageFormat = t.getObject(i, "package_format", ["label", "resource"]), s.pages = t.getArrayOfObjects(i, "page", ["format", "title", "description", "resource"]), s.releaseDate = t.getString(i, "issued"), s.rights = t.getObject(i, "rights", ["label", "resource"]), s.spatialResolutionInMeters = t.getNumber(i, "spatial_resolution_in_meters"), s.status = t.getObject(i, "status", ["label", "resource"]), s.temporalResolution = t.getArrayOfStrings(i, "temporal_resolution"), s.title = t.getObjectLanguage(i, "title", ""), s.type = t.getObject(i, "type", ["label", "resource"]), s.applicableLegislation = t.getArrayOfObjects(i, "applicable_legislation", ["id", "label", "resource"]), s.type.resource === "http://publications.europa.eu/resource/authority/distribution-type/VISUALIZATION" ? e.visualisations.push(s) : e.distributions.push(s), e.distributionFormats.push(s.format), e.licences.push(s.licence);
|
|
23
23
|
}
|
|
24
24
|
return e;
|
|
25
|
-
},
|
|
25
|
+
}, E = (r) => {
|
|
26
26
|
try {
|
|
27
27
|
let e = r;
|
|
28
28
|
if (U(e))
|
|
@@ -36,7 +36,7 @@ const w = (r) => {
|
|
|
36
36
|
return;
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
|
-
class
|
|
39
|
+
class G {
|
|
40
40
|
constructor(e, i, s, a, n, o) {
|
|
41
41
|
d(this, "baseUrl");
|
|
42
42
|
d(this, "hubUrl");
|
|
@@ -80,9 +80,10 @@ class V {
|
|
|
80
80
|
* @param dataScope
|
|
81
81
|
* @param minDate
|
|
82
82
|
* @param maxDate
|
|
83
|
+
* @param dateType
|
|
83
84
|
* @returns {Promise}
|
|
84
85
|
*/
|
|
85
|
-
get(e, i, s, a, n = 0, o = `relevance+desc, modified+desc, title.${s}+asc`, j = "AND", g = "AND", f = "false", h, N, q = 0, A, L, x) {
|
|
86
|
+
get(e, i, s, a, n = 0, o = `relevance+desc, modified+desc, title.${s}+asc`, j = "AND", g = "AND", f = "false", h, N, q = 0, A, L, x, R) {
|
|
86
87
|
h = { ...h }, delete h.scoring, delete h.dataServices;
|
|
87
88
|
const l = {
|
|
88
89
|
q: e,
|
|
@@ -97,13 +98,14 @@ class V {
|
|
|
97
98
|
includes: `id,title.${s},description.${s},country,languages,modified,issued,catalog.id,catalog.title,catalog.country.id,distributions.id,distributions.format.label,distributions.format.id,distributions.license,categories.label,publisher`,
|
|
98
99
|
facets: h,
|
|
99
100
|
minDate: L,
|
|
100
|
-
maxDate: x
|
|
101
|
+
maxDate: x,
|
|
102
|
+
dateType: R
|
|
101
103
|
};
|
|
102
104
|
q > 0 && (l.minScoring = q), U(A) || (l.countryData = A === "countryData", l.countryData ? l.facets.country = l.facets.country.filter((v) => v !== "countryData") : (l.facets.country = [], l.facets.country.push(A)));
|
|
103
|
-
const _ =
|
|
105
|
+
const _ = E(N);
|
|
104
106
|
return U(_) || (l.bboxMinLat = _[0], l.bboxMaxLat = _[2], l.bboxMinLon = _[1], l.bboxMaxLon = _[3]), new Promise((v, $) => {
|
|
105
|
-
const
|
|
106
|
-
y.get(
|
|
107
|
+
const B = "search", I = `${this.baseUrl}${B}`;
|
|
108
|
+
y.get(I, {
|
|
107
109
|
params: l
|
|
108
110
|
}).then((p) => {
|
|
109
111
|
if (!b(p.data, "result"))
|
|
@@ -131,8 +133,8 @@ class V {
|
|
|
131
133
|
items: S
|
|
132
134
|
});
|
|
133
135
|
}
|
|
134
|
-
const
|
|
135
|
-
for (const m of
|
|
136
|
+
const P = p.data.result.results;
|
|
137
|
+
for (const m of P) {
|
|
136
138
|
let S = {};
|
|
137
139
|
try {
|
|
138
140
|
S = w(m);
|
|
@@ -229,7 +231,7 @@ class V {
|
|
|
229
231
|
}
|
|
230
232
|
}
|
|
231
233
|
export {
|
|
232
|
-
|
|
234
|
+
G as default,
|
|
233
235
|
w as getResponseData
|
|
234
236
|
};
|
|
235
237
|
//# sourceMappingURL=datasetService.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasetService.mjs","sources":["../../lib/services/datasetService.ts"],"sourcesContent":["/* eslint-disable no-console */\n\n import axios from 'axios';\n import { has, isNil, isArray } from 'lodash-es';\n\n import dataGetters from './getters/data-getters';\n\n export const getResponseData = (dataset: { is_hvd: boolean; }) => {\n const ds: {[key: string]: unknown} = {};\n // New fields from DCAT-AP.de\n // Dataset\n ds.politicalGeocodingLevelURI = dataGetters.getArrayOfObjects(dataset, 'political_geocoding_level_uri', ['resource', 'label']);\n ds.politicalGeocodingURI = dataGetters.getArrayOfObjects(dataset, 'political_geocoding_uri', ['resource', 'label']);\n ds.availability = dataGetters.getObject(dataset, 'availability', ['resource', 'label']);\n ds.contributorID = dataGetters.getArrayOfObjects(dataset, 'contributor_id', ['resource', 'label']);\n ds.geocodingDescriptionDe = dataGetters.getObjectLanguage(dataset, 'geocoding_description');\n ds.legalBasis = dataGetters.getObjectLanguage(dataset, 'legal_basis');\n ds.qualityProcessURI = dataGetters.getString(dataset, 'quality_process_uri');\n ds.typeDe = dataGetters.getString(dataset, 'type');\n ds.references = dataGetters.getString(dataset, 'references');\n ds.contributor = dataGetters.getArrayOfObjects(dataset, 'contributor', ['name', 'type', 'resource', 'email', 'homepage']);\n ds.originator = dataGetters.getArrayOfObjects(dataset, 'originator', ['name', 'type', 'resource', 'email', 'homepage']);\n ds.maintainer = dataGetters.getArrayOfObjects(dataset, 'maintainer', ['name', 'type', 'resource', 'email', 'homepage']);\n //\n ds.accessRights = dataGetters.getObject(dataset, 'access_right', ['label', 'resource']);\n ds.accrualPeriodicity = dataGetters.getObject(dataset, 'accrual_periodicity', ['resource', 'label']);\n ds.admsIdentifiers = dataGetters.getArrayOfObjects(dataset, 'adms_identifier', ['identifier', 'schema', 'resource']);\n ds.attributes = dataGetters.getArrayOfStrings(dataset, 'attribute');\n ds.catalog = dataGetters.getObject(dataset, 'catalog', ['id', 'title', 'description', 'country', 'homepage', 'issued', 'modified', 'language', 'license', 'publisher', 'spatial', 'spatial_resource', 'availability','is_part_of']);\n ds.catalogRecord = dataGetters.getObject(dataset, 'catalog_record', ['issued', 'modified']);\n ds.categories = dataGetters.getArrayOfObjects(dataset, 'categories', ['id', 'label']);\n ds.conformsTo = dataGetters.getArrayOfObjects(dataset, 'conforms_to', ['label', 'resource']);\n ds.contactPoints = dataGetters.getArrayOfObjects(dataset, 'contact_point', ['name','organisation_name', 'type', 'resource', 'email', 'telephone', 'address', 'url']);\n ds.country = dataGetters.getObject(dataset, 'country', [{ key: 'id', default: 'eu' }, { key: 'title', default: 'European Union' }, { key: 'label', default: 'European Union' }]);\n ds.creator = dataGetters.getObject(dataset, 'creator', ['name', 'type', 'email', 'resource', 'homepage']);\n ds.deadline = dataGetters.getString(dataset, 'deadline');\n ds.description = dataGetters.getObjectLanguage(dataset, 'description');\n ds.dimensions = dataGetters.getArrayOfStrings(dataset, 'dimension');\n ds.distributions = [];\n ds.distributionFormats = [];\n ds.documentations = dataGetters.getArrayOfStrings(dataset, 'documentations');\n ds.extendetMetadata = dataGetters.getObject(dataset, 'extended_metadata', ['is_used_by']);\n ds.frequency = dataGetters.getObject(dataset, 'frequency', ['title', 'resource']);\n ds.geocodingDescription = dataGetters.getObject(dataset, 'geocoding_description', ['id', 'label']);\n ds.hasQualityAnnotations = dataGetters.getArrayOfStrings(dataset, 'has_quality_annotation');\n ds.hasVersion = dataGetters.getArrayOfStrings(dataset, 'has_version');\n ds.id = dataGetters.getString(dataset, 'id');\n ds.identifiers = dataGetters.getArrayOfStrings(dataset, 'identifier');\n ds.idName = dataGetters.getString(dataset, 'idName');\n ds.isHvd = dataset.is_hvd || false;\n ds.hvdCategory = dataGetters.getArrayOfObjects(dataset, 'hvd_category', ['id', 'label', 'resource']);\n ds.isReferencedBy = dataGetters.getArrayOfStrings(dataset, 'is_referenced_by');\n ds.isVersionOf = dataGetters.getArrayOfStrings(dataset, 'is_version_of');\n ds.keywords = dataGetters.getArrayOfObjects(dataset, 'keywords', ['id', 'label', 'language']);\n ds.landingPages = dataGetters.getArrayOfObjects(dataset, 'landing_page', ['format', 'description', 'title', 'resource']);\n ds.languages = dataGetters.getArrayOfObjects(dataset, 'language', ['id', 'label', 'resource']);\n ds.licences = [];\n ds.modificationDate = dataGetters.getString(dataset, 'modified');\n ds.numSeries = dataGetters.getNumber(dataset, 'num_series');\n ds.originalLanguage = dataGetters.getOriginalLanguage(dataset);\n ds.otherIdentifiers = dataGetters.getArrayOfObjects(dataset, 'adms_identifier', ['identifier', 'scheme', 'resource']);\n ds.pages = dataGetters.getArrayOfObjects(dataset, 'page', ['format', 'description', 'title', 'resource']);\n ds.provenances = dataGetters.getArrayOfObjects(dataset, 'provenance', ['label', 'resource']);\n ds.publisher = dataGetters.getObject(dataset, 'publisher', ['name', 'type', 'email', 'resource', 'homepage']);\n ds.qualifiedAttributions = dataGetters.getArrayOfStrings(dataset, 'qualified_attribution');\n ds.qualifiedRelations = dataGetters.getArrayOfObjects(dataset, 'qualified_relation', ['relation', 'had_role']);\n ds.relations = dataGetters.getArrayOfStrings(dataset, 'relation');\n // ds.relatedResources = dataGetters.getArrayOfStrings(dataset, 'related_resources');\n ds.releaseDate = dataGetters.getString(dataset, 'issued');\n ds.sample = dataGetters.getArrayOfStrings(dataset, 'sample');\n ds.sources = dataGetters.getArrayOfStrings(dataset, 'source');\n ds.spatial = dataGetters.getArrayOfObjects(dataset, 'spatial', ['type', 'coordinates']);\n ds.spatialResolutionInMeters = dataGetters.getNumber(dataset, 'spatial_resolution_in_meters');\n ds.spatialResource = dataGetters.getArrayOfObjects(dataset, 'spatial_resource', ['label', 'resource']);\n ds.statUnitMeasures = dataGetters.getArrayOfStrings(dataset, 'stat_unit_measure');\n ds.subject = dataGetters.getArrayOfObjects(dataset, 'subject', ['resource', 'label', 'id']);\n ds.temporal = dataGetters.getArrayOfObjects(dataset, 'temporal', ['gte', 'lte']);\n ds.temporalResolution = dataGetters.getString(dataset, 'temporal_resolution');\n ds.theme = dataGetters.getArrayOfObjects(dataset, 'categories', ['id', 'label', 'resource']);\n ds.translationMetaData = dataGetters.getTranslationMetaData(dataset);\n ds.title = dataGetters.getObjectLanguage(dataset, 'title', '');\n ds.type = dataGetters.getObject(dataset, 'type', ['id', 'label', 'resource']);\n ds.resource = dataGetters.getString(dataset, 'resource');\n ds.versionInfo = dataGetters.getString(dataset, 'version_info');\n ds.versionNotes = dataGetters.getObjectLanguage(dataset, 'version_notes');\n ds.visualisations = [];\n ds.wasGeneratedBy = dataGetters.getArrayOfStrings(dataset, 'was_generated_by');\n\n // High-value dataset fields\n // https://semiceu.github.io/DCAT-AP/releases/2.2.0-hvd/\n // NOTE: This is a solution primarily addressing Open Data Bayern's needs.\n ds.isHvd = dataset.is_hvd || false;\n ds.applicableLegislation = dataGetters.getArrayOfStrings(dataset, 'applicable_legislation');\n ds.hvdCategory = dataGetters.getArrayOfObjects(dataset, 'hvd_category', ['id', 'label', 'resource']);\n\n for (const dist of dataGetters.getDistributions(dataset)) {\n const distribution : {[key: string]: unknown} = {};\n distribution.accessUrl = dataGetters.getArrayOfStrings(dist, 'access_url');\n distribution.accessService = dataGetters.getArrayOfObjects(dist, 'access_service', [\n 'title',\n 'description',\n 'endpoint_url',\n 'availability',\n 'applicable_legislation',\n 'contact_point',\n 'page',\n 'hvd_category',\n 'rights',\n ]); // availability field for DCAT-AP.de\n // distribution.accessService = dataGetters.getArrayOfStrings(dist, 'access_service');\n distribution.licenseAttributionByText = dataGetters.getObjectLanguage(dist, 'license_attribution_by_text');\n distribution.byteSize = dataGetters.getNumber(dist, 'byte_size');\n distribution.checksum = dataGetters.getObject(dist, 'checksum', ['algorithm', 'checksum_value']);\n distribution.compressFormat = dataGetters.getObject(dist, 'compress_format', ['label', 'resource']);\n distribution.conformsTo = dataGetters.getArrayOfObjects(dist, 'conforms_to', ['label', 'resource']);\n distribution.description = dataGetters.getObjectLanguage(dist, 'description', '');\n distribution.downloadUrls = dataGetters.getArrayOfStrings(dist, 'download_url');\n distribution.format = dataGetters.getObject(dist, 'format', ['id', 'resource', { key: 'label', default: 'UNKNOWN' }]);\n distribution.hasPolicy = dataGetters.getString(dist, 'has_policy');\n distribution.id = dataGetters.getString(dist, 'id');\n distribution.languages = dataGetters.getArrayOfObjects(dist, 'language', ['id', 'label', 'resource']);\n distribution.licence = dataGetters.getObject(dist, 'license', ['id', 'label', 'description', 'resource', 'la_url', 'homepage']);\n distribution.mediaType = dataGetters.getString(dist, 'media_type');\n distribution.modificationDate = dataGetters.getString(dist, 'modified');\n distribution.packageFormat = dataGetters.getObject(dist, 'package_format', ['label', 'resource']);\n distribution.pages = dataGetters.getArrayOfObjects(dist, 'page', ['format', 'title', 'description', 'resource']);\n distribution.releaseDate = dataGetters.getString(dist, 'issued');\n distribution.rights = dataGetters.getObject(dist, 'rights', ['label', 'resource']);\n //distribution.spatialResolutionInMeters = dataGetters.getArrayOfNumbers(dist, 'spatial_resolution_in_meters');\n distribution.spatialResolutionInMeters = dataGetters.getNumber(dist, 'spatial_resolution_in_meters');\n distribution.status = dataGetters.getObject(dist, 'status', ['label', 'resource']);\n distribution.temporalResolution = dataGetters.getArrayOfStrings(dist, 'temporal_resolution');\n distribution.title = dataGetters.getObjectLanguage(dist, 'title', '');\n distribution.type = dataGetters.getObject(dist, 'type', ['label', 'resource']);\n\n // High-value dataset fields\n // https://semiceu.github.io/DCAT-AP/releases/2.2.0-hvd/\n // NOTE: This is a solution primarily addressing Open Data Bayern's needs.\n distribution.applicableLegislation = dataGetters.getArrayOfObjects(dist, 'applicable_legislation', ['id', 'label', 'resource']);\n\n\n // Check type of ditribution\n if (distribution.type.resource === 'http://publications.europa.eu/resource/authority/distribution-type/VISUALIZATION') {\n ds.visualisations.push(distribution);\n } else {\n ds.distributions.push(distribution);\n }\n\n ds.distributionFormats.push(distribution.format);\n ds.licences.push(distribution.licence);\n\n }\n\n return ds;\n };\n\n const checkBounds = (bounds: any) => {\n try {\n let gb = bounds;\n if (isNil(gb)) return undefined;\n // If gb is a string, split to array\n if (!isArray(gb) && typeof gb === 'string') gb = gb.split(',');\n // Check number of elements. we need 4 for latMin, LonMin, LatMax, LonMax\n if (isArray(gb) && gb.length === 4) {\n for (const coord of gb) {\n // Check if items are floats\n if (!parseFloat(coord)) return undefined;\n return gb;\n }\n }\n return undefined;\n } catch (error) {\n console.error(error.message);\n return undefined;\n }\n };\n\n export default class Datasets {\n\n private readonly baseUrl: string;\n private readonly hubUrl: string;\n private readonly qualityBaseUrl: string;\n private readonly similarityBaseUrl: string;\n private readonly similarityServiceName: string;\n private readonly defaultScoringFacets: any[];\n\n constructor(baseUrl: string, hubUrl: string, qualityBaseUrl: string, similarityBaseUrl: string, similarityServiceName: string, defaultScoringFacets: any[]) {\n this.baseUrl = baseUrl;\n this.hubUrl = hubUrl;\n this.qualityBaseUrl = qualityBaseUrl;\n this.similarityBaseUrl = similarityBaseUrl;\n this.similarityServiceName = similarityServiceName;\n this.defaultScoringFacets = defaultScoringFacets;\n }\n\n /**\n * @description GET dataset by given id.\n * @param id\n */\n getSingle(id: any) {\n return new Promise((resolve, reject) => {\n const endpoint = 'datasets';\n const reqStr = `${this.baseUrl}${endpoint}/${id}`;\n axios.get(reqStr, {\n params: {},\n })\n .then((response) => {\n const dataset = response.data.result;\n let ds = {};\n try {\n ds = getResponseData(dataset);\n } catch (error) {\n console.warn('Error in datasets.js while checking response:', error.message);\n console.error(error.stack);\n }\n resolve(ds);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n /**\n * @description GET all datasets matching the given criteria.\n * @param q\n * @param fields\n * @param locale\n * @param facets\n * @param geoBounds\n * @param minScoring\n * @param dataScope\n * @param minDate\n * @param maxDate\n * @returns {Promise}\n */\n get(q: any, fields: any, locale: any, limit: any, page = 0, sort = `relevance+desc, modified+desc, title.${locale}+asc`, facetOperator = 'AND', facetGroupOperator = 'AND', dataServices = 'false', facets: { scoring: any; dataServices: any; }, geoBounds: any, minScoring = 0, dataScope: string, minDate: any, maxDate: any) {\n\n facets = { ...facets }; // create a copy to prevent side effects\n delete facets.scoring; // Those are not facets in the api call! They are separate query parameters\n delete facets.dataServices; // ...\n // The request parameters\n const params: {[key: string]: unknown} = {\n q,\n fields,\n filter: 'dataset',\n limit,\n page: page - 1,\n sort,\n facetOperator,\n facetGroupOperator,\n dataServices,\n includes: `id,title.${locale},description.${locale},country,languages,modified,issued,catalog.id,catalog.title,catalog.country.id,distributions.id,distributions.format.label,distributions.format.id,distributions.license,categories.label,publisher`,\n facets,\n minDate,\n maxDate,\n };\n\n // Check if minScoring is set\n if (minScoring > 0) params.minScoring = minScoring;\n\n // Check if dataScope is set and then modify params to fullfil the corresponding data scope criterias\n if (!isNil(dataScope)) {\n // Set countryData param to true if Country data is requested\n params.countryData = dataScope === 'countryData';\n // Set country facets param\n if (params.countryData) {\n params.facets.country = params.facets.country.filter((c: string) => c !== 'countryData');\n } else {\n params.facets.country = [];\n params.facets.country.push(dataScope);\n }\n }\n\n // Add geoBounds parameters if the bounds are valid\n const bounds = checkBounds(geoBounds);\n if (!isNil(bounds)) {\n params.bboxMinLat = bounds[0];\n params.bboxMaxLat = bounds[2];\n params.bboxMinLon = bounds[1];\n params.bboxMaxLon = bounds[3];\n }\n\n return new Promise((resolve, reject) => {\n const endpoint = 'search';\n const reqStr = `${this.baseUrl}${endpoint}`;\n axios.get(reqStr, {\n params,\n })\n .then((response) => {\n if (!has(response.data, 'result')) {\n console.warn('Error in datasets.js while checking response');\n return reject(new Error('Empty Response Data'));\n }\n /**\n * @property availableFacets\n * @type {availableFacets: Array, datasetsCount, datasets: Array}\n * @description The set union of all available facets for the .\n */\n const resData = {\n availableFacets: [],\n scoringCount: {},\n datasetsCount: response.data.result.count,\n datasets: [],\n };\n\n // Transform fetched facets\n for (const field of response.data.result.facets) {\n // Check for required field keys\n if (has(field, 'id') && has(field, 'title') && has(field, 'items')) {\n const items = [];\n for (const facet of field.items) {\n const item: {id?: any, title?: any, count?: any, minScoring?: any, maxScoring?: any} = {};\n // Check for required facet/item keys\n if (has(facet, 'id') && has(facet, 'title') && has(facet, 'count')) {\n item.id = facet.id;\n item.title = facet.title;\n item.count = facet.count;\n }\n // Handle Scoring Facets\n if (has(facet, 'from') && has(facet, 'to')) {\n const currentScoringFacet: {id?: any, title?: any, count?: any, minScoring?: any, maxScoring?: any} = this.defaultScoringFacets[facet.id];\n item.minScoring = facet.from;\n item.maxScoring = facet.to;\n\n // Use config values to overwrite the default values from the backend\n if (currentScoringFacet.title) item.title = currentScoringFacet.title;\n if (currentScoringFacet.minScoring) item.minScoring = currentScoringFacet.minScoring;\n if (currentScoringFacet.maxScoring) item.maxScoring = currentScoringFacet.maxScoring;\n }\n items.push(item);\n }\n // Add to response array\n resData.availableFacets.push({\n id: field.id,\n title: field.title,\n items,\n });\n }\n }\n\n // Transform Datasets Data model\n const datasets = response.data.result.results;\n\n for (const dataset of datasets) {\n let ds = {};\n try {\n ds = getResponseData(dataset);\n } catch (error) {\n console.warn('Error in datasets.js while checking response:', error.message);\n console.error(error.stack);\n }\n resData.datasets.push(ds);\n }\n return resolve(resData);\n })\n .catch((error) => {\n console.error(error);\n reject(error);\n });\n });\n }\n\n /**\n * @description Get similar datasets to the dataset represented by the provided id.\n * @param id {string} The dataset id to get similar datasets for.\n * @param properties additional parameters, in particular for the knn-request\n * @param query {SimilarDatasetsQuery} query params\n */\n getSimilarDatasets(id: any, properties: any, query?: SimilarDatasetsQuery) {\n return new Promise((resolve, reject) => {\n let url = this.similarityBaseUrl;\n if ( ! url.endsWith('/')) {\n url += '/';\n }\n const similarityServiceName = this.similarityServiceName;\n if (similarityServiceName === 'knn_request') {\n properties.exclude_uris = [`http://data.europa.eu/88u/dataset/${id}`];\n // properties.exclude_uris = [`https://data.europa.eu/api/hub/search/datasets/${id}`];\n axios.post(`${url}knn_request/`, { ...properties, k: 10})\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n } else {\n const reqStr = `${url}similarity/${id}`;\n axios.get(reqStr, {\n params: query,\n }).then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n }\n });\n }\n // curl -i -X POST -H \"Content-Type: application/json\" -d '{\"k\": 10, \"query\": \"This dataset presents all the political groups of the French National Assembly since the 14th legislature (2012). The data comes from open data from the National Assembly.\"}' https://live-service-server-data-europa-eu.apps.osc.fokus.fraunhofer.de/knn_request\n\n getQualityData(id: any) {\n return new Promise((resolve, reject) => {\n const endpoint = 'datasets';\n const reqStr = `${this.qualityBaseUrl}${endpoint}/${id} `;\n axios.get(reqStr, {\n timeout: 30000,\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n getQualityDistributionData(id: any) {\n return new Promise((resolve, reject) => {\n const endpoint = `datasets/${id}/distributions`;\n const reqStr = `${this.qualityBaseUrl}${endpoint} `;\n axios.get(reqStr, {\n timeout: 30000,\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n getDQVDataHead(id: any, locale: any) {\n return new Promise((resolve, reject) => {\n // Only check if DQV data is available. No need to request single formats.\n const reqStr = `${this.hubUrl}datasets/${id}/metrics`;\n axios.head(reqStr, {\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n /**\n * @description Autocomplete the given query.\n * @param q {String} The Query to autocomplete.\n */\n autocomplete(q: any) {\n return new Promise((resolve, reject) => {\n const endpoint = 'autocomplete';\n const reqStr = `${this.baseUrl}${endpoint}`;\n axios.get(reqStr, {\n params: {\n q,\n },\n })\n .then((response) => {\n resolve(response);\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n}\n\nexport interface SimilarDatasetsQuery {\n limits?: number\n}\n"],"names":["getResponseData","dataset","ds","dataGetters","dist","distribution","checkBounds","bounds","gb","isNil","isArray","coord","error","Datasets","baseUrl","hubUrl","qualityBaseUrl","similarityBaseUrl","similarityServiceName","defaultScoringFacets","__publicField","id","resolve","reject","endpoint","reqStr","axios","response","q","fields","locale","limit","page","sort","facetOperator","facetGroupOperator","dataServices","facets","geoBounds","minScoring","dataScope","minDate","maxDate","params","c","has","resData","field","items","facet","item","currentScoringFacet","datasets","properties","query","url","err"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"datasetService.mjs","sources":["../../lib/services/datasetService.ts"],"sourcesContent":["/* eslint-disable no-console */\n\n import axios from 'axios';\n import { has, isNil, isArray } from 'lodash-es';\n\n import dataGetters from './getters/data-getters';\n\n export const getResponseData = (dataset: { is_hvd: boolean; }) => {\n const ds: {[key: string]: unknown} = {};\n // New fields from DCAT-AP.de\n // Dataset\n ds.politicalGeocodingLevelURI = dataGetters.getArrayOfObjects(dataset, 'political_geocoding_level_uri', ['resource', 'label']);\n ds.politicalGeocodingURI = dataGetters.getArrayOfObjects(dataset, 'political_geocoding_uri', ['resource', 'label']);\n ds.availability = dataGetters.getObject(dataset, 'availability', ['resource', 'label']);\n ds.contributorID = dataGetters.getArrayOfObjects(dataset, 'contributor_id', ['resource', 'label']);\n ds.geocodingDescriptionDe = dataGetters.getObjectLanguage(dataset, 'geocoding_description');\n ds.legalBasis = dataGetters.getObjectLanguage(dataset, 'legal_basis');\n ds.qualityProcessURI = dataGetters.getString(dataset, 'quality_process_uri');\n ds.typeDe = dataGetters.getString(dataset, 'type');\n ds.references = dataGetters.getString(dataset, 'references');\n ds.contributor = dataGetters.getArrayOfObjects(dataset, 'contributor', ['name', 'type', 'resource', 'email', 'homepage']);\n ds.originator = dataGetters.getArrayOfObjects(dataset, 'originator', ['name', 'type', 'resource', 'email', 'homepage']);\n ds.maintainer = dataGetters.getArrayOfObjects(dataset, 'maintainer', ['name', 'type', 'resource', 'email', 'homepage']);\n //\n ds.accessRights = dataGetters.getObject(dataset, 'access_right', ['label', 'resource']);\n ds.accrualPeriodicity = dataGetters.getObject(dataset, 'accrual_periodicity', ['resource', 'label']);\n ds.admsIdentifiers = dataGetters.getArrayOfObjects(dataset, 'adms_identifier', ['identifier', 'schema', 'resource']);\n ds.attributes = dataGetters.getArrayOfStrings(dataset, 'attribute');\n ds.catalog = dataGetters.getObject(dataset, 'catalog', ['id', 'title', 'description', 'country', 'homepage', 'issued', 'modified', 'language', 'license', 'publisher', 'spatial', 'spatial_resource', 'availability','is_part_of']);\n ds.catalogRecord = dataGetters.getObject(dataset, 'catalog_record', ['issued', 'modified']);\n ds.categories = dataGetters.getArrayOfObjects(dataset, 'categories', ['id', 'label']);\n ds.conformsTo = dataGetters.getArrayOfObjects(dataset, 'conforms_to', ['label', 'resource']);\n ds.contactPoints = dataGetters.getArrayOfObjects(dataset, 'contact_point', ['name','organisation_name', 'type', 'resource', 'email', 'telephone', 'address', 'url']);\n ds.country = dataGetters.getObject(dataset, 'country', [{ key: 'id', default: 'eu' }, { key: 'title', default: 'European Union' }, { key: 'label', default: 'European Union' }]);\n ds.creator = dataGetters.getObject(dataset, 'creator', ['name', 'type', 'email', 'resource', 'homepage']);\n ds.deadline = dataGetters.getString(dataset, 'deadline');\n ds.description = dataGetters.getObjectLanguage(dataset, 'description');\n ds.dimensions = dataGetters.getArrayOfStrings(dataset, 'dimension');\n ds.distributions = [];\n ds.distributionFormats = [];\n ds.documentations = dataGetters.getArrayOfStrings(dataset, 'documentations');\n ds.extendetMetadata = dataGetters.getObject(dataset, 'extended_metadata', ['is_used_by']);\n ds.frequency = dataGetters.getObject(dataset, 'frequency', ['title', 'resource']);\n ds.geocodingDescription = dataGetters.getObject(dataset, 'geocoding_description', ['id', 'label']);\n ds.hasQualityAnnotations = dataGetters.getArrayOfStrings(dataset, 'has_quality_annotation');\n ds.hasVersion = dataGetters.getArrayOfStrings(dataset, 'has_version');\n ds.id = dataGetters.getString(dataset, 'id');\n ds.identifiers = dataGetters.getArrayOfStrings(dataset, 'identifier');\n ds.idName = dataGetters.getString(dataset, 'idName');\n ds.isHvd = dataset.is_hvd || false;\n ds.hvdCategory = dataGetters.getArrayOfObjects(dataset, 'hvd_category', ['id', 'label', 'resource']);\n ds.isReferencedBy = dataGetters.getArrayOfStrings(dataset, 'is_referenced_by');\n ds.isVersionOf = dataGetters.getArrayOfStrings(dataset, 'is_version_of');\n ds.keywords = dataGetters.getArrayOfObjects(dataset, 'keywords', ['id', 'label', 'language']);\n ds.landingPages = dataGetters.getArrayOfObjects(dataset, 'landing_page', ['format', 'description', 'title', 'resource']);\n ds.languages = dataGetters.getArrayOfObjects(dataset, 'language', ['id', 'label', 'resource']);\n ds.licences = [];\n ds.modificationDate = dataGetters.getString(dataset, 'modified');\n ds.numSeries = dataGetters.getNumber(dataset, 'num_series');\n ds.originalLanguage = dataGetters.getOriginalLanguage(dataset);\n ds.otherIdentifiers = dataGetters.getArrayOfObjects(dataset, 'adms_identifier', ['identifier', 'scheme', 'resource']);\n ds.pages = dataGetters.getArrayOfObjects(dataset, 'page', ['format', 'description', 'title', 'resource']);\n ds.provenances = dataGetters.getArrayOfObjects(dataset, 'provenance', ['label', 'resource']);\n ds.publisher = dataGetters.getObject(dataset, 'publisher', ['name', 'type', 'email', 'resource', 'homepage']);\n ds.qualifiedAttributions = dataGetters.getArrayOfStrings(dataset, 'qualified_attribution');\n ds.qualifiedRelations = dataGetters.getArrayOfObjects(dataset, 'qualified_relation', ['relation', 'had_role']);\n ds.relations = dataGetters.getArrayOfStrings(dataset, 'relation');\n // ds.relatedResources = dataGetters.getArrayOfStrings(dataset, 'related_resources');\n ds.releaseDate = dataGetters.getString(dataset, 'issued');\n ds.sample = dataGetters.getArrayOfStrings(dataset, 'sample');\n ds.sources = dataGetters.getArrayOfStrings(dataset, 'source');\n ds.spatial = dataGetters.getArrayOfObjects(dataset, 'spatial', ['type', 'coordinates']);\n ds.spatialResolutionInMeters = dataGetters.getNumber(dataset, 'spatial_resolution_in_meters');\n ds.spatialResource = dataGetters.getArrayOfObjects(dataset, 'spatial_resource', ['label', 'resource']);\n ds.statUnitMeasures = dataGetters.getArrayOfStrings(dataset, 'stat_unit_measure');\n ds.subject = dataGetters.getArrayOfObjects(dataset, 'subject', ['resource', 'label', 'id']);\n ds.temporal = dataGetters.getArrayOfObjects(dataset, 'temporal', ['gte', 'lte']);\n ds.temporalResolution = dataGetters.getString(dataset, 'temporal_resolution');\n ds.theme = dataGetters.getArrayOfObjects(dataset, 'categories', ['id', 'label', 'resource']);\n ds.translationMetaData = dataGetters.getTranslationMetaData(dataset);\n ds.title = dataGetters.getObjectLanguage(dataset, 'title', '');\n ds.type = dataGetters.getObject(dataset, 'type', ['id', 'label', 'resource']);\n ds.resource = dataGetters.getString(dataset, 'resource');\n ds.versionInfo = dataGetters.getString(dataset, 'version_info');\n ds.versionNotes = dataGetters.getObjectLanguage(dataset, 'version_notes');\n ds.visualisations = [];\n ds.wasGeneratedBy = dataGetters.getArrayOfStrings(dataset, 'was_generated_by');\n\n // High-value dataset fields\n // https://semiceu.github.io/DCAT-AP/releases/2.2.0-hvd/\n // NOTE: This is a solution primarily addressing Open Data Bayern's needs.\n ds.isHvd = dataset.is_hvd || false;\n ds.applicableLegislation = dataGetters.getArrayOfStrings(dataset, 'applicable_legislation');\n ds.hvdCategory = dataGetters.getArrayOfObjects(dataset, 'hvd_category', ['id', 'label', 'resource']);\n\n for (const dist of dataGetters.getDistributions(dataset)) {\n const distribution : {[key: string]: unknown} = {};\n distribution.accessUrl = dataGetters.getArrayOfStrings(dist, 'access_url');\n distribution.accessService = dataGetters.getArrayOfObjects(dist, 'access_service', [\n 'title',\n 'description',\n 'endpoint_url',\n 'availability',\n 'applicable_legislation',\n 'contact_point',\n 'page',\n 'hvd_category',\n 'rights',\n ]); // availability field for DCAT-AP.de\n // distribution.accessService = dataGetters.getArrayOfStrings(dist, 'access_service');\n distribution.licenseAttributionByText = dataGetters.getObjectLanguage(dist, 'license_attribution_by_text');\n distribution.byteSize = dataGetters.getNumber(dist, 'byte_size');\n distribution.checksum = dataGetters.getObject(dist, 'checksum', ['algorithm', 'checksum_value']);\n distribution.compressFormat = dataGetters.getObject(dist, 'compress_format', ['label', 'resource']);\n distribution.conformsTo = dataGetters.getArrayOfObjects(dist, 'conforms_to', ['label', 'resource']);\n distribution.description = dataGetters.getObjectLanguage(dist, 'description', '');\n distribution.downloadUrls = dataGetters.getArrayOfStrings(dist, 'download_url');\n distribution.format = dataGetters.getObject(dist, 'format', ['id', 'resource', { key: 'label', default: 'UNKNOWN' }]);\n distribution.hasPolicy = dataGetters.getString(dist, 'has_policy');\n distribution.id = dataGetters.getString(dist, 'id');\n distribution.languages = dataGetters.getArrayOfObjects(dist, 'language', ['id', 'label', 'resource']);\n distribution.licence = dataGetters.getObject(dist, 'license', ['id', 'label', 'description', 'resource', 'la_url', 'homepage']);\n distribution.mediaType = dataGetters.getString(dist, 'media_type');\n distribution.modificationDate = dataGetters.getString(dist, 'modified');\n distribution.packageFormat = dataGetters.getObject(dist, 'package_format', ['label', 'resource']);\n distribution.pages = dataGetters.getArrayOfObjects(dist, 'page', ['format', 'title', 'description', 'resource']);\n distribution.releaseDate = dataGetters.getString(dist, 'issued');\n distribution.rights = dataGetters.getObject(dist, 'rights', ['label', 'resource']);\n //distribution.spatialResolutionInMeters = dataGetters.getArrayOfNumbers(dist, 'spatial_resolution_in_meters');\n distribution.spatialResolutionInMeters = dataGetters.getNumber(dist, 'spatial_resolution_in_meters');\n distribution.status = dataGetters.getObject(dist, 'status', ['label', 'resource']);\n distribution.temporalResolution = dataGetters.getArrayOfStrings(dist, 'temporal_resolution');\n distribution.title = dataGetters.getObjectLanguage(dist, 'title', '');\n distribution.type = dataGetters.getObject(dist, 'type', ['label', 'resource']);\n\n // High-value dataset fields\n // https://semiceu.github.io/DCAT-AP/releases/2.2.0-hvd/\n // NOTE: This is a solution primarily addressing Open Data Bayern's needs.\n distribution.applicableLegislation = dataGetters.getArrayOfObjects(dist, 'applicable_legislation', ['id', 'label', 'resource']);\n\n\n // Check type of ditribution\n if (distribution.type.resource === 'http://publications.europa.eu/resource/authority/distribution-type/VISUALIZATION') {\n ds.visualisations.push(distribution);\n } else {\n ds.distributions.push(distribution);\n }\n\n ds.distributionFormats.push(distribution.format);\n ds.licences.push(distribution.licence);\n\n }\n\n return ds;\n };\n\n const checkBounds = (bounds: any) => {\n try {\n let gb = bounds;\n if (isNil(gb)) return undefined;\n // If gb is a string, split to array\n if (!isArray(gb) && typeof gb === 'string') gb = gb.split(',');\n // Check number of elements. we need 4 for latMin, LonMin, LatMax, LonMax\n if (isArray(gb) && gb.length === 4) {\n for (const coord of gb) {\n // Check if items are floats\n if (!parseFloat(coord)) return undefined;\n return gb;\n }\n }\n return undefined;\n } catch (error) {\n console.error(error.message);\n return undefined;\n }\n };\n\n export default class Datasets {\n\n private readonly baseUrl: string;\n private readonly hubUrl: string;\n private readonly qualityBaseUrl: string;\n private readonly similarityBaseUrl: string;\n private readonly similarityServiceName: string;\n private readonly defaultScoringFacets: any[];\n\n constructor(baseUrl: string, hubUrl: string, qualityBaseUrl: string, similarityBaseUrl: string, similarityServiceName: string, defaultScoringFacets: any[]) {\n this.baseUrl = baseUrl;\n this.hubUrl = hubUrl;\n this.qualityBaseUrl = qualityBaseUrl;\n this.similarityBaseUrl = similarityBaseUrl;\n this.similarityServiceName = similarityServiceName;\n this.defaultScoringFacets = defaultScoringFacets;\n }\n\n /**\n * @description GET dataset by given id.\n * @param id\n */\n getSingle(id: any) {\n return new Promise((resolve, reject) => {\n const endpoint = 'datasets';\n const reqStr = `${this.baseUrl}${endpoint}/${id}`;\n axios.get(reqStr, {\n params: {},\n })\n .then((response) => {\n const dataset = response.data.result;\n let ds = {};\n try {\n ds = getResponseData(dataset);\n } catch (error) {\n console.warn('Error in datasets.js while checking response:', error.message);\n console.error(error.stack);\n }\n resolve(ds);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n /**\n * @description GET all datasets matching the given criteria.\n * @param q\n * @param fields\n * @param locale\n * @param facets\n * @param geoBounds\n * @param minScoring\n * @param dataScope\n * @param minDate\n * @param maxDate\n * @param dateType\n * @returns {Promise}\n */\n get(q: any, fields: any, locale: any, limit: any, page = 0, sort = `relevance+desc, modified+desc, title.${locale}+asc`, facetOperator = 'AND', facetGroupOperator = 'AND', dataServices = 'false', facets: { scoring: any; dataServices: any; }, geoBounds: any, minScoring = 0, dataScope: string, minDate: any, maxDate: any, dateType: any) {\n\n facets = { ...facets }; // create a copy to prevent side effects\n delete facets.scoring; // Those are not facets in the api call! They are separate query parameters\n delete facets.dataServices; // ...\n // The request parameters\n const params: {[key: string]: unknown} = {\n q,\n fields,\n filter: 'dataset',\n limit,\n page: page - 1,\n sort,\n facetOperator,\n facetGroupOperator,\n dataServices,\n includes: `id,title.${locale},description.${locale},country,languages,modified,issued,catalog.id,catalog.title,catalog.country.id,distributions.id,distributions.format.label,distributions.format.id,distributions.license,categories.label,publisher`,\n facets,\n minDate,\n maxDate,\n dateType,\n };\n\n // Check if minScoring is set\n if (minScoring > 0) params.minScoring = minScoring;\n\n // Check if dataScope is set and then modify params to fullfil the corresponding data scope criterias\n if (!isNil(dataScope)) {\n // Set countryData param to true if Country data is requested\n params.countryData = dataScope === 'countryData';\n // Set country facets param\n if (params.countryData) {\n params.facets.country = params.facets.country.filter((c: string) => c !== 'countryData');\n } else {\n params.facets.country = [];\n params.facets.country.push(dataScope);\n }\n }\n\n // Add geoBounds parameters if the bounds are valid\n const bounds = checkBounds(geoBounds);\n if (!isNil(bounds)) {\n params.bboxMinLat = bounds[0];\n params.bboxMaxLat = bounds[2];\n params.bboxMinLon = bounds[1];\n params.bboxMaxLon = bounds[3];\n }\n\n return new Promise((resolve, reject) => {\n const endpoint = 'search';\n const reqStr = `${this.baseUrl}${endpoint}`;\n axios.get(reqStr, {\n params,\n })\n .then((response) => {\n if (!has(response.data, 'result')) {\n console.warn('Error in datasets.js while checking response');\n return reject(new Error('Empty Response Data'));\n }\n /**\n * @property availableFacets\n * @type {availableFacets: Array, datasetsCount, datasets: Array}\n * @description The set union of all available facets for the .\n */\n const resData = {\n availableFacets: [],\n scoringCount: {},\n datasetsCount: response.data.result.count,\n datasets: [],\n };\n\n // Transform fetched facets\n for (const field of response.data.result.facets) {\n // Check for required field keys\n if (has(field, 'id') && has(field, 'title') && has(field, 'items')) {\n const items = [];\n for (const facet of field.items) {\n const item: {id?: any, title?: any, count?: any, minScoring?: any, maxScoring?: any} = {};\n // Check for required facet/item keys\n if (has(facet, 'id') && has(facet, 'title') && has(facet, 'count')) {\n item.id = facet.id;\n item.title = facet.title;\n item.count = facet.count;\n }\n // Handle Scoring Facets\n if (has(facet, 'from') && has(facet, 'to')) {\n const currentScoringFacet: {id?: any, title?: any, count?: any, minScoring?: any, maxScoring?: any} = this.defaultScoringFacets[facet.id];\n item.minScoring = facet.from;\n item.maxScoring = facet.to;\n\n // Use config values to overwrite the default values from the backend\n if (currentScoringFacet.title) item.title = currentScoringFacet.title;\n if (currentScoringFacet.minScoring) item.minScoring = currentScoringFacet.minScoring;\n if (currentScoringFacet.maxScoring) item.maxScoring = currentScoringFacet.maxScoring;\n }\n items.push(item);\n }\n // Add to response array\n resData.availableFacets.push({\n id: field.id,\n title: field.title,\n items,\n });\n }\n }\n\n // Transform Datasets Data model\n const datasets = response.data.result.results;\n\n for (const dataset of datasets) {\n let ds = {};\n try {\n ds = getResponseData(dataset);\n } catch (error) {\n console.warn('Error in datasets.js while checking response:', error.message);\n console.error(error.stack);\n }\n resData.datasets.push(ds);\n }\n return resolve(resData);\n })\n .catch((error) => {\n console.error(error);\n reject(error);\n });\n });\n }\n\n /**\n * @description Get similar datasets to the dataset represented by the provided id.\n * @param id {string} The dataset id to get similar datasets for.\n * @param properties additional parameters, in particular for the knn-request\n * @param query {SimilarDatasetsQuery} query params\n */\n getSimilarDatasets(id: any, properties: any, query?: SimilarDatasetsQuery) {\n return new Promise((resolve, reject) => {\n let url = this.similarityBaseUrl;\n if ( ! url.endsWith('/')) {\n url += '/';\n }\n const similarityServiceName = this.similarityServiceName;\n if (similarityServiceName === 'knn_request') {\n properties.exclude_uris = [`http://data.europa.eu/88u/dataset/${id}`];\n // properties.exclude_uris = [`https://data.europa.eu/api/hub/search/datasets/${id}`];\n axios.post(`${url}knn_request/`, { ...properties, k: 10})\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n } else {\n const reqStr = `${url}similarity/${id}`;\n axios.get(reqStr, {\n params: query,\n }).then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n }\n });\n }\n // curl -i -X POST -H \"Content-Type: application/json\" -d '{\"k\": 10, \"query\": \"This dataset presents all the political groups of the French National Assembly since the 14th legislature (2012). The data comes from open data from the National Assembly.\"}' https://live-service-server-data-europa-eu.apps.osc.fokus.fraunhofer.de/knn_request\n\n getQualityData(id: any) {\n return new Promise((resolve, reject) => {\n const endpoint = 'datasets';\n const reqStr = `${this.qualityBaseUrl}${endpoint}/${id} `;\n axios.get(reqStr, {\n timeout: 30000,\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n getQualityDistributionData(id: any) {\n return new Promise((resolve, reject) => {\n const endpoint = `datasets/${id}/distributions`;\n const reqStr = `${this.qualityBaseUrl}${endpoint} `;\n axios.get(reqStr, {\n timeout: 30000,\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n getDQVDataHead(id: any, locale: any) {\n return new Promise((resolve, reject) => {\n // Only check if DQV data is available. No need to request single formats.\n const reqStr = `${this.hubUrl}datasets/${id}/metrics`;\n axios.head(reqStr, {\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n }\n\n /**\n * @description Autocomplete the given query.\n * @param q {String} The Query to autocomplete.\n */\n autocomplete(q: any) {\n return new Promise((resolve, reject) => {\n const endpoint = 'autocomplete';\n const reqStr = `${this.baseUrl}${endpoint}`;\n axios.get(reqStr, {\n params: {\n q,\n },\n })\n .then((response) => {\n resolve(response);\n })\n .catch((err) => {\n reject(err);\n });\n });\n }\n}\n\nexport interface SimilarDatasetsQuery {\n limits?: number\n}\n"],"names":["getResponseData","dataset","ds","dataGetters","dist","distribution","checkBounds","bounds","gb","isNil","isArray","coord","error","Datasets","baseUrl","hubUrl","qualityBaseUrl","similarityBaseUrl","similarityServiceName","defaultScoringFacets","__publicField","id","resolve","reject","endpoint","reqStr","axios","response","q","fields","locale","limit","page","sort","facetOperator","facetGroupOperator","dataServices","facets","geoBounds","minScoring","dataScope","minDate","maxDate","dateType","params","c","has","resData","field","items","facet","item","currentScoringFacet","datasets","properties","query","url","err"],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ declare const module: {
|
|
|
17
17
|
sort: string;
|
|
18
18
|
minDate: null;
|
|
19
19
|
maxDate: null;
|
|
20
|
+
dateType: null;
|
|
20
21
|
};
|
|
21
22
|
availableFacets: never[];
|
|
22
23
|
page: number;
|
|
@@ -41,6 +42,7 @@ declare const module: {
|
|
|
41
42
|
* @param options.query {String} - The given query string
|
|
42
43
|
* @param options.minDate {UTC} - The given query string
|
|
43
44
|
* @param options.maxDate {UTC} - The given query string
|
|
45
|
+
* @param options.dateType {UTC} - The given query string
|
|
44
46
|
* @param options.fields {String} - The given fields
|
|
45
47
|
* @param options.facets {Array} - The active facets
|
|
46
48
|
* @param options.limit {Number} - The maximum amount of datasets to fetch
|
|
@@ -52,7 +54,7 @@ declare const module: {
|
|
|
52
54
|
loadDatasets({ commit, state }: {
|
|
53
55
|
commit: any;
|
|
54
56
|
state: any;
|
|
55
|
-
}, { locale, query, fields, limit, page, sort, facetOperator, facetGroupOperator, dataServices, facets, geoBounds, minScoring, dataScope, minDate, maxDate, append, }: {
|
|
57
|
+
}, { locale, query, fields, limit, page, sort, facetOperator, facetGroupOperator, dataServices, facets, geoBounds, minScoring, dataScope, minDate, maxDate, dateType, append, }: {
|
|
56
58
|
locale: any;
|
|
57
59
|
query?: any;
|
|
58
60
|
fields?: any;
|
|
@@ -68,6 +70,7 @@ declare const module: {
|
|
|
68
70
|
dataScope?: any;
|
|
69
71
|
minDate?: any;
|
|
70
72
|
maxDate?: any;
|
|
73
|
+
dateType?: any;
|
|
71
74
|
append?: boolean | undefined;
|
|
72
75
|
}): Promise<unknown>;
|
|
73
76
|
/**
|
|
@@ -181,6 +184,9 @@ declare const module: {
|
|
|
181
184
|
setMaxDate({ commit }: {
|
|
182
185
|
commit: any;
|
|
183
186
|
}, maxDate: any): void;
|
|
187
|
+
setDateType({ commit }: {
|
|
188
|
+
commit: any;
|
|
189
|
+
}, dateType: any): void;
|
|
184
190
|
setSort({ commit }: {
|
|
185
191
|
commit: any;
|
|
186
192
|
}, sort: any): void;
|
|
@@ -239,6 +245,8 @@ declare const module: {
|
|
|
239
245
|
SET_QUERY(state: any, query: any): void;
|
|
240
246
|
SET_FIELDS(state: any, fields: any): void;
|
|
241
247
|
SET_MINDATE(state: any, minDate: any): void;
|
|
248
|
+
SET_MAXTDATE(state: any, maxDate: any): void;
|
|
249
|
+
SET_DATETYPE(state: any, dateType: any): void;
|
|
242
250
|
SET_SORT(state: any, sort: any): void;
|
|
243
251
|
SET_LOADING(state: any, isLoading: any): void;
|
|
244
252
|
SET_MIN_SCORING(state: any, minScoring: any): void;
|
|
@@ -251,6 +259,7 @@ declare const module: {
|
|
|
251
259
|
getFields: (state: any) => any;
|
|
252
260
|
getMinDate: (state: any) => any;
|
|
253
261
|
getMaxDate: (state: any) => any;
|
|
262
|
+
getDateType: (state: any) => any;
|
|
254
263
|
getLimit: (state: any) => any;
|
|
255
264
|
getLoading: (state: any) => any;
|
|
256
265
|
getOffset: (state: any) => any;
|
|
@@ -16,7 +16,8 @@ const f = {
|
|
|
16
16
|
datasetGeoBounds: void 0,
|
|
17
17
|
sort: "relevance+desc, modified+desc, title.en+asc",
|
|
18
18
|
minDate: null,
|
|
19
|
-
maxDate: null
|
|
19
|
+
maxDate: null,
|
|
20
|
+
dateType: null
|
|
20
21
|
},
|
|
21
22
|
availableFacets: [],
|
|
22
23
|
page: 1,
|
|
@@ -61,6 +62,7 @@ const f = {
|
|
|
61
62
|
getFields: (e) => e.searchParameters.fields,
|
|
62
63
|
getMinDate: (e) => e.searchParameters.minDate,
|
|
63
64
|
getMaxDate: (e) => e.searchParameters.maxDate,
|
|
65
|
+
getDateType: (e) => e.searchParameters.dateType,
|
|
64
66
|
getLimit: (e) => e.searchParameters.limit,
|
|
65
67
|
getLoading: (e) => e.loading,
|
|
66
68
|
getOffset: (e) => e.searchParameters.offset,
|
|
@@ -97,7 +99,7 @@ const f = {
|
|
|
97
99
|
getMinScoring: (e) => e.minScoring,
|
|
98
100
|
getScoringFacets: (e) => e.scoringFacets,
|
|
99
101
|
getDataScope: (e) => e.dataScope
|
|
100
|
-
},
|
|
102
|
+
}, T = {
|
|
101
103
|
/**
|
|
102
104
|
* @description Load all datasets matching the given parameters.
|
|
103
105
|
* @param commit
|
|
@@ -106,6 +108,7 @@ const f = {
|
|
|
106
108
|
* @param options.query {String} - The given query string
|
|
107
109
|
* @param options.minDate {UTC} - The given query string
|
|
108
110
|
* @param options.maxDate {UTC} - The given query string
|
|
111
|
+
* @param options.dateType {UTC} - The given query string
|
|
109
112
|
* @param options.fields {String} - The given fields
|
|
110
113
|
* @param options.facets {Array} - The active facets
|
|
111
114
|
* @param options.limit {Number} - The maximum amount of datasets to fetch
|
|
@@ -118,7 +121,7 @@ const f = {
|
|
|
118
121
|
locale: t,
|
|
119
122
|
query: c = r.getQuery(a),
|
|
120
123
|
fields: s = r.getFields(a),
|
|
121
|
-
limit:
|
|
124
|
+
limit: n = r.getLimit(a),
|
|
122
125
|
page: g = r.getPage(a),
|
|
123
126
|
sort: _ = r.getSort(a),
|
|
124
127
|
facetOperator: A = r.getFacetOperator(a),
|
|
@@ -129,16 +132,17 @@ const f = {
|
|
|
129
132
|
minScoring: D = r.getMinScoring(a),
|
|
130
133
|
dataScope: u = r.getDataScope(a),
|
|
131
134
|
minDate: P = r.getMinDate(a),
|
|
132
|
-
maxDate:
|
|
133
|
-
|
|
135
|
+
maxDate: p = r.getMaxDate(a),
|
|
136
|
+
dateType: m = r.getDateType(a),
|
|
137
|
+
append: O = !1
|
|
134
138
|
}) {
|
|
135
139
|
e("SET_LOADING", !0);
|
|
136
|
-
const
|
|
137
|
-
return
|
|
138
|
-
this.$datasetService.get(c, s, t,
|
|
139
|
-
e("SET_FIELDS",
|
|
140
|
-
}).catch((
|
|
141
|
-
console.error(
|
|
140
|
+
const o = E;
|
|
141
|
+
return o instanceof Array && o[0] && o[1] ? E = `${o[0][0]},${o[0][1]},${o[1][0]},${o[1][1]}` : E = void 0, i.catalog[0] === "erpd" && (i.catalog = [], i.superCatalog = ["erpd"]), new Promise((C, h) => {
|
|
142
|
+
this.$datasetService.get(c, s, t, n, g, _, A, l, d, i, E, D, u, P, p, m).then((S) => {
|
|
143
|
+
e("SET_FIELDS", S.fields), e("SET_AVAILABLE_FACETS", S.availableFacets), e("SET_SCORING_COUNT", S.scoringCount), e("SET_DATASETS_COUNT", S.datasetsCount), e(O ? "ADD_DATASETS" : "SET_DATASETS", S.datasets), e("SET_LOADING", !1), C();
|
|
144
|
+
}).catch((S) => {
|
|
145
|
+
console.error(S), e("SET_LOADING", !1), h(S);
|
|
142
146
|
});
|
|
143
147
|
});
|
|
144
148
|
},
|
|
@@ -165,7 +169,7 @@ const f = {
|
|
|
165
169
|
*/
|
|
166
170
|
loadAdditionalDatasets({ commit: e, state: a }) {
|
|
167
171
|
const t = r.getPage(a);
|
|
168
|
-
|
|
172
|
+
T.loadDatasets({ commit: e, state: a }, { page: t, append: !0 });
|
|
169
173
|
},
|
|
170
174
|
/**
|
|
171
175
|
* @description Autocomplete a query String by using a autocompletion service
|
|
@@ -260,6 +264,9 @@ const f = {
|
|
|
260
264
|
setMaxDate({ commit: e }, a) {
|
|
261
265
|
e("SET_MAXDATE", a);
|
|
262
266
|
},
|
|
267
|
+
setDateType({ commit: e }, a) {
|
|
268
|
+
e("SET_DATETYPE", a);
|
|
269
|
+
},
|
|
263
270
|
setSort({ commit: e }, a) {
|
|
264
271
|
e("SET_SORT", a);
|
|
265
272
|
},
|
|
@@ -354,6 +361,12 @@ const f = {
|
|
|
354
361
|
SET_MINDATE(e, a) {
|
|
355
362
|
e.searchParameters.minDate = a;
|
|
356
363
|
},
|
|
364
|
+
SET_MAXTDATE(e, a) {
|
|
365
|
+
e.searchParameters.maxDate = a;
|
|
366
|
+
},
|
|
367
|
+
SET_DATETYPE(e, a) {
|
|
368
|
+
e.searchParameters.dateType = a;
|
|
369
|
+
},
|
|
357
370
|
SET_SORT(e, a) {
|
|
358
371
|
e.searchParameters.sort = a;
|
|
359
372
|
},
|
|
@@ -366,14 +379,14 @@ const f = {
|
|
|
366
379
|
SET_DATA_SCOPE(e, a) {
|
|
367
380
|
e.dataScope = a;
|
|
368
381
|
}
|
|
369
|
-
},
|
|
382
|
+
}, G = {
|
|
370
383
|
namespaced: !0,
|
|
371
384
|
state: f,
|
|
372
|
-
actions:
|
|
385
|
+
actions: T,
|
|
373
386
|
mutations: F,
|
|
374
387
|
getters: r
|
|
375
388
|
};
|
|
376
389
|
export {
|
|
377
|
-
|
|
390
|
+
G as default
|
|
378
391
|
};
|
|
379
392
|
//# sourceMappingURL=datasetsStore.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasetsStore.mjs","sources":["../../../lib/store/modules/datasetsStore.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable no-param-reassign,no-unused-vars,no-console,consistent-return */\n\nconst RESULTS_PER_PAGE = 10;\n// const RESULTS_PER_PAGE = GLUE_CONFIG.routing.pagination.defaultItemsPerPage;\n\nconst state = {\n datasets: [],\n loading: false,\n searchParameters: {\n query: '',\n fields: undefined, \n limit: RESULTS_PER_PAGE,\n offset: 0,\n // The Facets to filter for\n facets: {},\n facetOperator: 'AND',\n facetGroupOperator: 'AND',\n dataServices: 'false',\n superCatalogue: undefined, // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n datasetGeoBounds: undefined,\n sort: 'relevance+desc, modified+desc, title.en+asc',\n minDate: null,\n maxDate: null,\n },\n availableFacets: [],\n page: 1,\n pageCount: 1,\n datasetsCount: 0,\n dataScope: undefined,\n minScoring: undefined,\n scoringFacets: [\n {\n id: 'excellentScoring',\n title: 'Excellent',\n count: 0,\n minScoring: 351,\n maxScoring: 405,\n },\n {\n id: 'goodScoring',\n title: 'Good',\n count: 0,\n minScoring: 221,\n maxScoring: 350,\n },\n {\n id: 'sufficientScoring',\n title: 'Sufficient',\n count: 0,\n minScoring: 121,\n maxScoring: 220,\n },\n {\n id: 'anyScoring',\n title: 'Any',\n count: 0,\n minScoring: 0,\n maxScoring: 120,\n },\n ],\n};\n\nconst GETTERS = {\n getDatasets: state => state.datasets,\n getDatasetsCount: state => state.datasetsCount,\n getQuery: state => state.searchParameters.query,\n getFields: state => state.searchParameters.fields,\n getMinDate: state => state.searchParameters.minDate,\n getMaxDate: state => state.searchParameters.maxDate,\n getLimit: state => state.searchParameters.limit,\n getLoading: state => state.loading,\n getOffset: state => state.searchParameters.offset,\n getFacets: (state) => {\n const preparedFacets = {...state.searchParameters.facets};\n if (preparedFacets.categories) preparedFacets.categories = preparedFacets.categories.map(c => c.toUpperCase());\n if (preparedFacets.dataScope) delete preparedFacets.dataScope;\n return preparedFacets;\n },\n getFacetOperator: state => state.searchParameters.facetOperator,\n getFacetGroupOperator: state => state.searchParameters.facetGroupOperator,\n getDataServices: state => state.searchParameters.dataServices,\n getSuperCatalogue_DEPRECATED: state => state.searchParameters.superCatalogue, // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n getDatasetGeoBounds: state => state.searchParameters.datasetGeoBounds,\n getAvailableFacets: state => state.availableFacets,\n // Hacky solutiohn to insert special facets\n getAllAvailableFacets: (state) => {\n const allAvailableFacets = [...state.availableFacets];\n const indexOfScoring = allAvailableFacets.findIndex(facet => facet.id === 'scoring');\n allAvailableFacets.splice(indexOfScoring, 0,\n {\n id: 'dataServices',\n items: [\n { count: undefined, id: 'true', title: 'yes' },\n { count: undefined, id: 'false', title: 'no' },\n ],\n title: 'Data services',\n });\n // allAvailableFacets.push({\n // id: 'erpd',\n // items: [\n // { count: undefined, id: 'true', title: 'yes' },\n // { count: undefined, id: 'false', title: 'no' },\n // ],\n // title: 'ERPD',\n // });\n return allAvailableFacets;\n },\n getPage: state => state.page,\n getPageCount: state => state.pageCount,\n getSort: state => state.searchParameters.sort,\n getMinScoring: state => state.minScoring,\n getScoringFacets: state => state.scoringFacets,\n getDataScope: state => state.dataScope,\n};\n\nconst actions = {\n /**\n * @description Load all datasets matching the given parameters.\n * @param commit\n * @param state\n * @param options {Object} - Given search parameters\n * @param options.query {String} - The given query string\n * @param options.minDate {UTC} - The given query string\n * @param options.maxDate {UTC} - The given query string\n * @param options.fields {String} - The given fields\n * @param options.facets {Array} - The active facets\n * @param options.limit {Number} - The maximum amount of datasets to fetch\n * @param options.page {Number} - The current page\n * @param options.sort {String} - The sort method to use\n * @param options.geoBounds {Array} - The given bounds to setup a spatial search for\n * @param options.append {Boolean} - Decides whether current datasets in state will be replaced or fetched datasets appended.\n */\n loadDatasets(\n { commit, state },\n {\n locale,\n query = GETTERS.getQuery(state),\n fields = GETTERS.getFields(state),\n limit = GETTERS.getLimit(state),\n page = GETTERS.getPage(state),\n sort = GETTERS.getSort(state),\n facetOperator = GETTERS.getFacetOperator(state),\n facetGroupOperator = GETTERS.getFacetGroupOperator(state),\n dataServices = GETTERS.getDataServices(state),\n facets = GETTERS.getFacets(state),\n geoBounds = GETTERS.getDatasetGeoBounds(state),\n minScoring = GETTERS.getMinScoring(state),\n dataScope = GETTERS.getDataScope(state),\n minDate = GETTERS.getMinDate(state),\n maxDate = GETTERS.getMaxDate(state),\n append = false,\n },\n ) {\n\n commit('SET_LOADING', true);\n\n const gb = geoBounds;\n if (gb instanceof Array && gb[0] && gb[1]) {\n geoBounds = `${gb[0][0]},${gb[0][1]},${gb[1][0]},${gb[1][1]}`;\n } else {\n geoBounds = undefined;\n }\n // console.log(facets) \n if (facets.catalog[0] === 'erpd') { // Special case: do not load datasets of catalog but rather all datasets of all sub-catalogs\n facets.catalog = [];\n facets.superCatalog = ['erpd'];\n }\n\n return new Promise((resolve, reject) => {\n this.$datasetService.get(query, fields, locale, limit, page, sort, facetOperator, facetGroupOperator, dataServices, facets, geoBounds, minScoring, dataScope, minDate, maxDate)\n .then((response) => {\n commit('SET_FIELDS', response.fields);\n commit('SET_AVAILABLE_FACETS', response.availableFacets);\n commit('SET_SCORING_COUNT', response.scoringCount);\n commit('SET_DATASETS_COUNT', response.datasetsCount);\n if (append) commit('ADD_DATASETS', response.datasets);\n else commit('SET_DATASETS', response.datasets);\n commit('SET_LOADING', false);\n resolve();\n })\n .catch((error) => {\n console.error(error);\n commit('SET_LOADING', false);\n reject(error);\n });\n });\n },\n\n /**\n * @description Loads more datasets.\n * @param commit\n * @param state\n * @param {number} amount - The amount of datasets to add.\n */\n loadSingleDataset({ commit }, id) {\n return new Promise((resolve, reject) => {\n this.$datasetService.getSingle(id)\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n console.error(error);\n reject(error);\n });\n });\n },\n\n /**\n * @description Loads more datasets.\n * @param commit\n * @param state\n * @param {number} amount - The amount of datasets to add.\n */\n loadAdditionalDatasets({ commit, state }) {\n const page = GETTERS.getPage(state);\n // const datasetsCount = GETTERS.getDatasetsCount(state);\n actions.loadDatasets({ commit, state }, { page, append: true });\n },\n\n /**\n * @description Autocomplete a query String by using a autocompletion service\n * @param commit\n * @param q {String} The Query to autocomplete\n */\n autocompleteQuery({ commit }, q) {\n // If autocomplete function does not exist in this service -> Abort\n if (typeof this.$datasetService.autocomplete !== 'function') return;\n return new Promise((resolve, reject) => {\n this.$datasetService.autocomplete(q)\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n /**\n * @description Replace the current state facets by the given facets\n * @param commit\n * @param facets {Array} - The given facets\n */\n setFacets({ commit }, facets) {\n if (facets) commit('SET_FACETS', facets);\n },\n\n /**\n * @description Add the given facet to the states facets.\n * @param commit\n * @param params {Object} - The wrapped action parameters.\n * @param params.field {String} - The field of the given facet\n * @param params.facet {String} - The facet to add\n */\n addFacet({ commit }, { field, facet }) {\n commit('ADD_FACET', { field, facet });\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param params {Object} - The wrapped action parameters.\n * @param params.field {String} - The field of the given facet\n * @param params.facet {String} - The facet to remove\n */\n removeFacet({ commit }, { field, facet }) {\n commit('REMOVE_FACET', { field, facet });\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - The facet operator to set. Possible Operators : ['AND', 'OR'].\n */\n setFacetOperator({ commit }, operator) {\n commit('SET_FACET_OPERATOR', operator);\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - The facet operator to set. Possible Operators : ['AND', 'OR'].\n */\n setFacetGroupOperator({ commit }, operator) {\n commit('SET_FACET_GROUP_OPERATOR', operator);\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - The data services to set. Possible Operators : ['true', 'false'].\n */\n setDataServices({ commit }, dataServices) {\n commit('SET_DATA_SERVICES', dataServices);\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - Only Erpd data. Possible Operators : ['true', 'false'].\n */\n setSuperCatalogue_DEPRECATED({ commit }, superCatalogue) { // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n commit('SET_SUPER_CATALOGUE', superCatalogue);\n },\n setPage({ commit }, page) {\n commit('SET_PAGE', page);\n },\n setPageCount({ commit }, count) {\n commit('SET_PAGE_COUNT', count);\n },\n setQuery({ commit }, query) {\n commit('SET_QUERY', query);\n },\n setFields({ commit }, fields) {\n commit('SET_FIELDS', fields);\n },\n setMinDate({ commit }, minDate) {\n commit('SET_MINDATE', minDate);\n },\n setMaxDate({ commit }, maxDate) {\n commit('SET_MAXDATE', maxDate);\n },\n setSort({ commit }, sort) {\n commit('SET_SORT', sort);\n },\n setLimit({ commit }, amount = RESULTS_PER_PAGE) {\n commit('SET_LIMIT', amount);\n },\n setDatasetGeoBounds({ commit }, bounds) {\n commit('SET_DATASET_GEO_BOUNDS', bounds);\n },\n setLoading({ commit }, isLoading) {\n commit('SET_LOADING', isLoading);\n },\n setMinScoring({ commit }, minScoring) {\n commit('SET_MIN_SCORING', minScoring);\n },\n setDataScope({ commit }, dataScope) {\n commit('SET_DATA_SCOPE', dataScope);\n },\n setAvailableFacets({ commit }, facets) {\n commit('SET_AVAILABLE_FACETS', facets);\n },\n setScoringCount({ commit }, count) {\n commit('SET_SCORING_COUNT', count);\n },\n setDatasetsCount({ commit }, count) {\n commit('SET_DATASETS_COUNT', count);\n },\n setDatasets({ commit }, datasets) {\n commit('SET_DATASETS', datasets);\n },\n};\n\nconst mutations = {\n SET_DATASETS(state, data) {\n state.datasets = data;\n },\n ADD_DATASETS(state, data) {\n state.datasets = state.datasets.concat(data);\n },\n SET_LIMIT(state, limit) {\n state.searchParameters.limit = limit;\n },\n SET_OFFSET(state, offset) {\n state.searchParameters.offset = offset;\n },\n SET_FACETS(state, facets) {\n state.searchParameters.facets = {...facets};\n },\n ADD_FACET(state, { field, facet }) {\n // If the facetField is not defined in state..\n if (!Object.prototype.hasOwnProperty.call(state.searchParameters.facets, field)) {\n // ..define it by assigning an array containing {value} in it\n state.searchParameters.facets[field] = [facet];\n } else {\n state.searchParameters.facets[field].push(facet);\n }\n },\n REMOVE_FACET(state, { field, facet }) {\n const index = state.searchParameters.facets[field].indexOf(facet);\n state.searchParameters.facets[field].splice(index, 1);\n },\n SET_DATASET_GEO_BOUNDS(state, bounds) {\n state.searchParameters.datasetGeoBounds = bounds;\n },\n SET_AVAILABLE_FACETS(state, facets) {\n state.availableFacets = facets;\n },\n SET_SCORING_COUNT(state, scoringCount) {\n state.scoringFacets.forEach((scoringFacet) => {\n scoringFacet.count = scoringCount[scoringFacet.id];\n });\n },\n SET_DATASETS_COUNT(state, datasetsCount) {\n state.datasetsCount = datasetsCount;\n },\n SET_FACET_OPERATOR(state, operator) {\n state.searchParameters.facetOperator = operator;\n },\n SET_FACET_GROUP_OPERATOR(state, operator) {\n state.searchParameters.facetGroupOperator = operator;\n },\n SET_DATA_SERVICES(state, dataServices) {\n state.searchParameters.dataServices = dataServices;\n },\n SET_SUPER_CATALOGUE(state, superCatalogue) { // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n state.searchParameters.superCatalogue = superCatalogue;\n },\n SET_PAGE(state, page) {\n state.page = page;\n },\n SET_PAGE_COUNT(state, count) {\n state.pageCount = count;\n },\n SET_QUERY(state, query) {\n state.searchParameters.query = query;\n },\n SET_FIELDS(state, fields) {\n state.searchParameters.fields = fields;\n },\n SET_MINDATE(state, minDate) {\n state.searchParameters.minDate = minDate;\n },\n SET_SORT(state, sort) {\n state.searchParameters.sort = sort;\n },\n SET_LOADING(state, isLoading) {\n state.loading = isLoading;\n },\n SET_MIN_SCORING(state, minScoring) {\n state.minScoring = minScoring;\n },\n SET_DATA_SCOPE(state, dataScope) {\n state.dataScope = dataScope;\n },\n};\n\nconst module = {\n namespaced: true,\n state,\n actions,\n mutations,\n getters: GETTERS,\n};\n\nexport default module;\n"],"names":["state","GETTERS","preparedFacets","c","allAvailableFacets","indexOfScoring","facet","actions","commit","locale","query","fields","limit","page","sort","facetOperator","facetGroupOperator","dataServices","facets","geoBounds","minScoring","dataScope","minDate","maxDate","append","gb","resolve","reject","response","error","id","q","field","operator","superCatalogue","count","amount","bounds","isLoading","datasets","mutations","data","offset","index","scoringCount","scoringFacet","datasetsCount","module"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"datasetsStore.mjs","sources":["../../../lib/store/modules/datasetsStore.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable no-param-reassign,no-unused-vars,no-console,consistent-return */\n\nconst RESULTS_PER_PAGE = 10;\n// const RESULTS_PER_PAGE = GLUE_CONFIG.routing.pagination.defaultItemsPerPage;\n\nconst state = {\n datasets: [],\n loading: false,\n searchParameters: {\n query: '',\n fields: undefined, \n limit: RESULTS_PER_PAGE,\n offset: 0,\n // The Facets to filter for\n facets: {},\n facetOperator: 'AND',\n facetGroupOperator: 'AND',\n dataServices: 'false',\n superCatalogue: undefined, // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n datasetGeoBounds: undefined,\n sort: 'relevance+desc, modified+desc, title.en+asc',\n minDate: null,\n maxDate: null,\n dateType: null,\n },\n availableFacets: [],\n page: 1,\n pageCount: 1,\n datasetsCount: 0,\n dataScope: undefined,\n minScoring: undefined,\n scoringFacets: [\n {\n id: 'excellentScoring',\n title: 'Excellent',\n count: 0,\n minScoring: 351,\n maxScoring: 405,\n },\n {\n id: 'goodScoring',\n title: 'Good',\n count: 0,\n minScoring: 221,\n maxScoring: 350,\n },\n {\n id: 'sufficientScoring',\n title: 'Sufficient',\n count: 0,\n minScoring: 121,\n maxScoring: 220,\n },\n {\n id: 'anyScoring',\n title: 'Any',\n count: 0,\n minScoring: 0,\n maxScoring: 120,\n },\n ],\n};\n\nconst GETTERS = {\n getDatasets: state => state.datasets,\n getDatasetsCount: state => state.datasetsCount,\n getQuery: state => state.searchParameters.query,\n getFields: state => state.searchParameters.fields,\n getMinDate: state => state.searchParameters.minDate,\n getMaxDate: state => state.searchParameters.maxDate,\n getDateType: state => state.searchParameters.dateType,\n getLimit: state => state.searchParameters.limit,\n getLoading: state => state.loading,\n getOffset: state => state.searchParameters.offset,\n getFacets: (state) => {\n const preparedFacets = {...state.searchParameters.facets};\n if (preparedFacets.categories) preparedFacets.categories = preparedFacets.categories.map(c => c.toUpperCase());\n if (preparedFacets.dataScope) delete preparedFacets.dataScope;\n return preparedFacets;\n },\n getFacetOperator: state => state.searchParameters.facetOperator,\n getFacetGroupOperator: state => state.searchParameters.facetGroupOperator,\n getDataServices: state => state.searchParameters.dataServices,\n getSuperCatalogue_DEPRECATED: state => state.searchParameters.superCatalogue, // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n getDatasetGeoBounds: state => state.searchParameters.datasetGeoBounds,\n getAvailableFacets: state => state.availableFacets,\n // Hacky solutiohn to insert special facets\n getAllAvailableFacets: (state) => {\n const allAvailableFacets = [...state.availableFacets];\n const indexOfScoring = allAvailableFacets.findIndex(facet => facet.id === 'scoring');\n allAvailableFacets.splice(indexOfScoring, 0,\n {\n id: 'dataServices',\n items: [\n { count: undefined, id: 'true', title: 'yes' },\n { count: undefined, id: 'false', title: 'no' },\n ],\n title: 'Data services',\n });\n // allAvailableFacets.push({\n // id: 'erpd',\n // items: [\n // { count: undefined, id: 'true', title: 'yes' },\n // { count: undefined, id: 'false', title: 'no' },\n // ],\n // title: 'ERPD',\n // });\n return allAvailableFacets;\n },\n getPage: state => state.page,\n getPageCount: state => state.pageCount,\n getSort: state => state.searchParameters.sort,\n getMinScoring: state => state.minScoring,\n getScoringFacets: state => state.scoringFacets,\n getDataScope: state => state.dataScope,\n};\n\nconst actions = {\n /**\n * @description Load all datasets matching the given parameters.\n * @param commit\n * @param state\n * @param options {Object} - Given search parameters\n * @param options.query {String} - The given query string\n * @param options.minDate {UTC} - The given query string\n * @param options.maxDate {UTC} - The given query string\n * @param options.dateType {UTC} - The given query string\n * @param options.fields {String} - The given fields\n * @param options.facets {Array} - The active facets\n * @param options.limit {Number} - The maximum amount of datasets to fetch\n * @param options.page {Number} - The current page\n * @param options.sort {String} - The sort method to use\n * @param options.geoBounds {Array} - The given bounds to setup a spatial search for\n * @param options.append {Boolean} - Decides whether current datasets in state will be replaced or fetched datasets appended.\n */\n loadDatasets(\n { commit, state },\n {\n locale,\n query = GETTERS.getQuery(state),\n fields = GETTERS.getFields(state),\n limit = GETTERS.getLimit(state),\n page = GETTERS.getPage(state),\n sort = GETTERS.getSort(state),\n facetOperator = GETTERS.getFacetOperator(state),\n facetGroupOperator = GETTERS.getFacetGroupOperator(state),\n dataServices = GETTERS.getDataServices(state),\n facets = GETTERS.getFacets(state),\n geoBounds = GETTERS.getDatasetGeoBounds(state),\n minScoring = GETTERS.getMinScoring(state),\n dataScope = GETTERS.getDataScope(state),\n minDate = GETTERS.getMinDate(state),\n maxDate = GETTERS.getMaxDate(state),\n dateType = GETTERS.getDateType(state),\n append = false,\n },\n ) {\n\n commit('SET_LOADING', true);\n\n const gb = geoBounds;\n if (gb instanceof Array && gb[0] && gb[1]) {\n geoBounds = `${gb[0][0]},${gb[0][1]},${gb[1][0]},${gb[1][1]}`;\n } else {\n geoBounds = undefined;\n }\n // console.log(facets) \n if (facets.catalog[0] === 'erpd') { // Special case: do not load datasets of catalog but rather all datasets of all sub-catalogs\n facets.catalog = [];\n facets.superCatalog = ['erpd'];\n }\n\n return new Promise((resolve, reject) => {\n this.$datasetService.get(query, fields, locale, limit, page, sort, facetOperator, facetGroupOperator, dataServices, facets, geoBounds, minScoring, dataScope, minDate, maxDate, dateType)\n .then((response) => {\n commit('SET_FIELDS', response.fields);\n commit('SET_AVAILABLE_FACETS', response.availableFacets);\n commit('SET_SCORING_COUNT', response.scoringCount);\n commit('SET_DATASETS_COUNT', response.datasetsCount);\n if (append) commit('ADD_DATASETS', response.datasets);\n else commit('SET_DATASETS', response.datasets);\n commit('SET_LOADING', false);\n resolve();\n })\n .catch((error) => {\n console.error(error);\n commit('SET_LOADING', false);\n reject(error);\n });\n });\n },\n\n /**\n * @description Loads more datasets.\n * @param commit\n * @param state\n * @param {number} amount - The amount of datasets to add.\n */\n loadSingleDataset({ commit }, id) {\n return new Promise((resolve, reject) => {\n this.$datasetService.getSingle(id)\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n console.error(error);\n reject(error);\n });\n });\n },\n\n /**\n * @description Loads more datasets.\n * @param commit\n * @param state\n * @param {number} amount - The amount of datasets to add.\n */\n loadAdditionalDatasets({ commit, state }) {\n const page = GETTERS.getPage(state);\n // const datasetsCount = GETTERS.getDatasetsCount(state);\n actions.loadDatasets({ commit, state }, { page, append: true });\n },\n\n /**\n * @description Autocomplete a query String by using a autocompletion service\n * @param commit\n * @param q {String} The Query to autocomplete\n */\n autocompleteQuery({ commit }, q) {\n // If autocomplete function does not exist in this service -> Abort\n if (typeof this.$datasetService.autocomplete !== 'function') return;\n return new Promise((resolve, reject) => {\n this.$datasetService.autocomplete(q)\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n /**\n * @description Replace the current state facets by the given facets\n * @param commit\n * @param facets {Array} - The given facets\n */\n setFacets({ commit }, facets) {\n if (facets) commit('SET_FACETS', facets);\n },\n\n /**\n * @description Add the given facet to the states facets.\n * @param commit\n * @param params {Object} - The wrapped action parameters.\n * @param params.field {String} - The field of the given facet\n * @param params.facet {String} - The facet to add\n */\n addFacet({ commit }, { field, facet }) {\n commit('ADD_FACET', { field, facet });\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param params {Object} - The wrapped action parameters.\n * @param params.field {String} - The field of the given facet\n * @param params.facet {String} - The facet to remove\n */\n removeFacet({ commit }, { field, facet }) {\n commit('REMOVE_FACET', { field, facet });\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - The facet operator to set. Possible Operators : ['AND', 'OR'].\n */\n setFacetOperator({ commit }, operator) {\n commit('SET_FACET_OPERATOR', operator);\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - The facet operator to set. Possible Operators : ['AND', 'OR'].\n */\n setFacetGroupOperator({ commit }, operator) {\n commit('SET_FACET_GROUP_OPERATOR', operator);\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - The data services to set. Possible Operators : ['true', 'false'].\n */\n setDataServices({ commit }, dataServices) {\n commit('SET_DATA_SERVICES', dataServices);\n },\n\n /**\n * @description Remove the given facet from the states facets.\n * @param commit\n * @param operator {String} - Only Erpd data. Possible Operators : ['true', 'false'].\n */\n setSuperCatalogue_DEPRECATED({ commit }, superCatalogue) { // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n commit('SET_SUPER_CATALOGUE', superCatalogue);\n },\n setPage({ commit }, page) {\n commit('SET_PAGE', page);\n },\n setPageCount({ commit }, count) {\n commit('SET_PAGE_COUNT', count);\n },\n setQuery({ commit }, query) {\n commit('SET_QUERY', query);\n },\n setFields({ commit }, fields) {\n commit('SET_FIELDS', fields);\n },\n setMinDate({ commit }, minDate) {\n commit('SET_MINDATE', minDate);\n },\n setMaxDate({ commit }, maxDate) {\n commit('SET_MAXDATE', maxDate);\n },\n setDateType({ commit }, dateType) {\n commit('SET_DATETYPE', dateType);\n },\n setSort({ commit }, sort) {\n commit('SET_SORT', sort);\n },\n setLimit({ commit }, amount = RESULTS_PER_PAGE) {\n commit('SET_LIMIT', amount);\n },\n setDatasetGeoBounds({ commit }, bounds) {\n commit('SET_DATASET_GEO_BOUNDS', bounds);\n },\n setLoading({ commit }, isLoading) {\n commit('SET_LOADING', isLoading);\n },\n setMinScoring({ commit }, minScoring) {\n commit('SET_MIN_SCORING', minScoring);\n },\n setDataScope({ commit }, dataScope) {\n commit('SET_DATA_SCOPE', dataScope);\n },\n setAvailableFacets({ commit }, facets) {\n commit('SET_AVAILABLE_FACETS', facets);\n },\n setScoringCount({ commit }, count) {\n commit('SET_SCORING_COUNT', count);\n },\n setDatasetsCount({ commit }, count) {\n commit('SET_DATASETS_COUNT', count);\n },\n setDatasets({ commit }, datasets) {\n commit('SET_DATASETS', datasets);\n },\n};\n\nconst mutations = {\n SET_DATASETS(state, data) {\n state.datasets = data;\n },\n ADD_DATASETS(state, data) {\n state.datasets = state.datasets.concat(data);\n },\n SET_LIMIT(state, limit) {\n state.searchParameters.limit = limit;\n },\n SET_OFFSET(state, offset) {\n state.searchParameters.offset = offset;\n },\n SET_FACETS(state, facets) {\n state.searchParameters.facets = {...facets};\n },\n ADD_FACET(state, { field, facet }) {\n // If the facetField is not defined in state..\n if (!Object.prototype.hasOwnProperty.call(state.searchParameters.facets, field)) {\n // ..define it by assigning an array containing {value} in it\n state.searchParameters.facets[field] = [facet];\n } else {\n state.searchParameters.facets[field].push(facet);\n }\n },\n REMOVE_FACET(state, { field, facet }) {\n const index = state.searchParameters.facets[field].indexOf(facet);\n state.searchParameters.facets[field].splice(index, 1);\n },\n SET_DATASET_GEO_BOUNDS(state, bounds) {\n state.searchParameters.datasetGeoBounds = bounds;\n },\n SET_AVAILABLE_FACETS(state, facets) {\n state.availableFacets = facets;\n },\n SET_SCORING_COUNT(state, scoringCount) {\n state.scoringFacets.forEach((scoringFacet) => {\n scoringFacet.count = scoringCount[scoringFacet.id];\n });\n },\n SET_DATASETS_COUNT(state, datasetsCount) {\n state.datasetsCount = datasetsCount;\n },\n SET_FACET_OPERATOR(state, operator) {\n state.searchParameters.facetOperator = operator;\n },\n SET_FACET_GROUP_OPERATOR(state, operator) {\n state.searchParameters.facetGroupOperator = operator;\n },\n SET_DATA_SERVICES(state, dataServices) {\n state.searchParameters.dataServices = dataServices;\n },\n SET_SUPER_CATALOGUE(state, superCatalogue) { // !!!!! Project specific (Bayern). Should be removed as soon as possible !!!!\n state.searchParameters.superCatalogue = superCatalogue;\n },\n SET_PAGE(state, page) {\n state.page = page;\n },\n SET_PAGE_COUNT(state, count) {\n state.pageCount = count;\n },\n SET_QUERY(state, query) {\n state.searchParameters.query = query;\n },\n SET_FIELDS(state, fields) {\n state.searchParameters.fields = fields;\n },\n SET_MINDATE(state, minDate) {\n state.searchParameters.minDate = minDate;\n },\n SET_MAXTDATE(state, maxDate) {\n state.searchParameters.maxDate = maxDate;\n },\n SET_DATETYPE(state, dateType) {\n state.searchParameters.dateType = dateType;\n },\n SET_SORT(state, sort) {\n state.searchParameters.sort = sort;\n },\n SET_LOADING(state, isLoading) {\n state.loading = isLoading;\n },\n SET_MIN_SCORING(state, minScoring) {\n state.minScoring = minScoring;\n },\n SET_DATA_SCOPE(state, dataScope) {\n state.dataScope = dataScope;\n },\n};\n\nconst module = {\n namespaced: true,\n state,\n actions,\n mutations,\n getters: GETTERS,\n};\n\nexport default module;\n"],"names":["state","GETTERS","preparedFacets","c","allAvailableFacets","indexOfScoring","facet","actions","commit","locale","query","fields","limit","page","sort","facetOperator","facetGroupOperator","dataServices","facets","geoBounds","minScoring","dataScope","minDate","maxDate","dateType","append","gb","resolve","reject","response","error","id","q","field","operator","superCatalogue","count","amount","bounds","isLoading","datasets","mutations","data","offset","index","scoringCount","scoringFacet","datasetsCount","module"],"mappings":"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"}
|