@piveau/piveau-hub-ui-modules 4.4.0-beta.2 → 4.4.1
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/catalogues/CatalogPage.vue.mjs +23 -22
- package/dist/catalogues/CatalogPage.vue.mjs.map +1 -1
- package/dist/composables/head/useDatasetDetailsDatasetHead.mjs +19 -15
- package/dist/composables/head/useDatasetDetailsDatasetHead.mjs.map +1 -1
- package/dist/composables/useRuntimeEnv.d.ts +1 -1
- package/dist/configurations/config-schema/apiSchema.d.ts +3 -3
- package/dist/configurations/config-schema/apiSchema.mjs +1 -1
- package/dist/configurations/config-schema/apiSchema.mjs.map +1 -1
- package/dist/configurations/config-schema/configSchema.d.ts +5 -5
- package/dist/data-provider-interface/DPIMenu.vue.d.ts +2 -2
- package/dist/data-provider-interface/DPIMenu.vue.mjs +3 -3
- package/dist/data-provider-interface/DPIMenu.vue.mjs.map +1 -1
- package/dist/data-provider-interface/DataProviderInterface.vue.d.ts +29 -7
- package/dist/data-provider-interface/DataProviderInterface.vue.mjs +12 -69
- package/dist/data-provider-interface/DataProviderInterface.vue.mjs.map +1 -1
- package/dist/data-provider-interface/DataProviderInterface.vue2.mjs +91 -2
- package/dist/data-provider-interface/DataProviderInterface.vue2.mjs.map +1 -1
- package/dist/data-provider-interface/DataProviderInterface.vue3.mjs +5 -0
- package/dist/data-provider-interface/DataProviderInterface.vue3.mjs.map +1 -0
- package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs +66 -65
- package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/ConditionalInput.vue.mjs +127 -115
- package/dist/data-provider-interface/components/ConditionalInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/DataFetchingComponent.vue.d.ts +1 -1
- package/dist/data-provider-interface/components/DataFetchingComponent.vue.mjs +25 -19
- package/dist/data-provider-interface/components/DataFetchingComponent.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/FileUpload.vue.d.ts +1 -1
- package/dist/data-provider-interface/components/Navigation.vue.d.ts +5 -5
- package/dist/data-provider-interface/components/SpatialInput.vue.mjs +79 -81
- package/dist/data-provider-interface/components/SpatialInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/composables/index.d.ts +2 -0
- package/dist/data-provider-interface/composables/useDpiContext.d.ts +17 -0
- package/dist/data-provider-interface/composables/useDpiContext.mjs +19 -0
- package/dist/data-provider-interface/composables/useDpiContext.mjs.map +1 -0
- package/dist/data-provider-interface/composables/useDpiEditMode.d.ts +16 -0
- package/dist/data-provider-interface/composables/useDpiEditMode.mjs +41 -0
- package/dist/data-provider-interface/composables/useDpiEditMode.mjs.map +1 -0
- package/dist/data-provider-interface/config/dcatap/input-definition.mjs +28 -2
- package/dist/data-provider-interface/config/dcatap/input-definition.mjs.map +1 -1
- package/dist/data-provider-interface/config/dcatapde/input-definition.mjs +5 -2
- package/dist/data-provider-interface/config/dcatapde/input-definition.mjs.map +1 -1
- package/dist/data-provider-interface/config/dpi-spec-config.mjs +1 -0
- package/dist/data-provider-interface/config/dpi-spec-config.mjs.map +1 -1
- package/dist/data-provider-interface/index.d.ts +2 -0
- package/dist/data-provider-interface/index.mjs +11 -0
- package/dist/data-provider-interface/index.mjs.map +1 -0
- package/dist/data-provider-interface/store/dpiStore.d.ts +31 -15
- package/dist/data-provider-interface/store/dpiStore.mjs +30 -13
- package/dist/data-provider-interface/store/dpiStore.mjs.map +1 -1
- package/dist/data-provider-interface/store/modules/autocompleteStore.d.ts +3 -1
- package/dist/data-provider-interface/store/modules/autocompleteStore.mjs +28 -29
- package/dist/data-provider-interface/store/modules/autocompleteStore.mjs.map +1 -1
- package/dist/data-provider-interface/store/modules/conversionStore.d.ts +6 -6
- package/dist/data-provider-interface/store/modules/conversionStore.mjs +21 -22
- package/dist/data-provider-interface/store/modules/conversionStore.mjs.map +1 -1
- package/dist/data-provider-interface/store/modules/formSchemaStore.d.ts +5 -3
- package/dist/data-provider-interface/store/modules/formSchemaStore.mjs +29 -29
- package/dist/data-provider-interface/store/modules/formSchemaStore.mjs.map +1 -1
- package/dist/data-provider-interface/store/modules/navigationStore.d.ts +1 -1
- package/dist/data-provider-interface/store/modules/navigationStore.mjs +13 -14
- package/dist/data-provider-interface/store/modules/navigationStore.mjs.map +1 -1
- package/dist/data-provider-interface/utils/RDFconverter.mjs +63 -60
- package/dist/data-provider-interface/utils/RDFconverter.mjs.map +1 -1
- package/dist/data-provider-interface/views/DraftsPage.vue.d.ts +2 -2
- package/dist/data-provider-interface/views/InputPage.vue.d.ts +3 -3
- package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs +1 -1
- package/dist/data-provider-interface/views/OverviewPage.vue.d.ts +1 -1
- package/dist/datasetDetails/DatasetDetails.vue.d.ts +1 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs +1 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue2.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsDescription.vue.d.ts +1 -1
- package/dist/datasetDetails/distributions/Distribution.vue.mjs +45 -43
- package/dist/datasetDetails/distributions/Distribution.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/DistributionFormat.vue.d.ts +3 -3
- package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.d.ts +2 -2
- package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.d.ts +1 -0
- package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs +18 -14
- package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.d.ts +3 -3
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs +68 -57
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue2.mjs +2 -2
- package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.d.ts +1 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigation.vue.d.ts +1 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.d.ts +1 -1
- package/dist/embed/EmbedDataset.vue.d.ts +1 -1
- package/dist/embed/EmbedDatasetSnippet.vue.d.ts +2 -2
- package/dist/external/@vueuse/core/index +129 -80
- package/dist/external/@vueuse/core/index.map +1 -1
- package/dist/external/@vueuse/shared/index +121 -17
- package/dist/external/@vueuse/shared/index.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +250 -248
- package/dist/index.mjs.map +1 -1
- package/dist/piveau-hub-ui-modules.css +1 -1
- package/dist/services/datasetService.d.ts +1 -1
- package/dist/services/datasetService.mjs +2 -2
- package/dist/services/datasetService.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@ import { isNil as u, has as q, isArray as w, isObject as z, isString as L } from
|
|
|
7
7
|
import { truncate as U, getTranslationFor as E } from "../utils/helpers.mjs";
|
|
8
8
|
import M from "../services/datasetService.mjs";
|
|
9
9
|
import V from "axios";
|
|
10
|
-
import { resolveComponent as b, openBlock as l, createElementBlock as i, createElementVNode as t, createTextVNode as r, renderSlot as D, createCommentVNode as
|
|
10
|
+
import { resolveComponent as b, openBlock as l, createElementBlock as i, createElementVNode as t, createTextVNode as r, renderSlot as D, createCommentVNode as c, toDisplayString as g, createVNode as p, withCtx as v, Fragment as N, renderList as S, withModifiers as T, normalizeClass as K, withDirectives as f, createBlock as C, vShow as y, pushScopeId as G, popScopeId as H } from "vue";
|
|
11
11
|
import "./CatalogPage.vue2.mjs";
|
|
12
12
|
import J from "../_virtual/_plugin-vue_export-helper.mjs";
|
|
13
13
|
const W = {
|
|
@@ -119,6 +119,7 @@ const W = {
|
|
|
119
119
|
this.$env.api.hubUrl,
|
|
120
120
|
this.$env.api.qualityBaseUrl,
|
|
121
121
|
this.$env.api.similarityBaseUrl,
|
|
122
|
+
this.$env.api.similarityServiceName,
|
|
122
123
|
this.$env.content.datasets.facets.scoringFacets.defaultScoringFacets
|
|
123
124
|
);
|
|
124
125
|
let e = this.$route.params.ctlg_id;
|
|
@@ -136,7 +137,7 @@ const W = {
|
|
|
136
137
|
// We should refactor this code to use the store instead of making
|
|
137
138
|
// a dedicated HTTP request for dataset search.
|
|
138
139
|
// This will ensure that the most relevant datasets for the catalog are always displayed,
|
|
139
|
-
// even if the search page has filtered datasets.
|
|
140
|
+
// even if the search page has filtered datasets.
|
|
140
141
|
V.get(`${this.$env.api.baseUrl}search`, {
|
|
141
142
|
params: {
|
|
142
143
|
q: "",
|
|
@@ -171,7 +172,7 @@ const W = {
|
|
|
171
172
|
console.error(s), this.$Progress.fail();
|
|
172
173
|
});
|
|
173
174
|
}
|
|
174
|
-
}, Q = (e) => (G("data-v-
|
|
175
|
+
}, Q = (e) => (G("data-v-c6a4c80f"), e = e(), H(), e), R = { class: "catalog-page-container" }, X = {
|
|
175
176
|
key: 0,
|
|
176
177
|
class: "catalog-page-background",
|
|
177
178
|
ref: "catBackground"
|
|
@@ -194,7 +195,7 @@ const W = {
|
|
|
194
195
|
class: "nav nav-tabs card-header-tabs",
|
|
195
196
|
role: "tablist",
|
|
196
197
|
"aria-label": "Navigationsleiste"
|
|
197
|
-
}, de = ["aria-controls", "aria-selected", "aria-label"],
|
|
198
|
+
}, de = ["aria-controls", "aria-selected", "aria-label"], ce = ["onClick", "href"], ge = { class: "card-body my-5" }, he = {
|
|
198
199
|
key: 0,
|
|
199
200
|
class: "tab-pane active catalog-about-tab d-flex align-items-start justify-content-between",
|
|
200
201
|
id: "about",
|
|
@@ -238,17 +239,17 @@ function Ie(e, s, n, h, d, a) {
|
|
|
238
239
|
class: "catalog-header-title-icon",
|
|
239
240
|
src: e.getCatalog.catalogueFavIcon,
|
|
240
241
|
alt: ""
|
|
241
|
-
}, null, 8, ae)) :
|
|
242
|
+
}, null, 8, ae)) : c("", !0),
|
|
242
243
|
r(),
|
|
243
244
|
t("div", te, [
|
|
244
|
-
t("h1", se,
|
|
245
|
+
t("h1", se, g(a.getTranslationFor(e.getCatalog.title, e.$route.query.locale, e.getCatalog.languages)), 1),
|
|
245
246
|
r(),
|
|
246
247
|
t("h5", le, [
|
|
247
248
|
p(m, {
|
|
248
249
|
to: e.getCatalog.homepage
|
|
249
250
|
}, {
|
|
250
251
|
default: v(() => [
|
|
251
|
-
r(
|
|
252
|
+
r(g(e.getCatalog.homepage), 1)
|
|
252
253
|
]),
|
|
253
254
|
_: 1
|
|
254
255
|
}, 8, ["to"])
|
|
@@ -262,7 +263,7 @@ function Ie(e, s, n, h, d, a) {
|
|
|
262
263
|
src: e.getCatalog.catalogueLogo,
|
|
263
264
|
alt: "",
|
|
264
265
|
"aria-label": "logo"
|
|
265
|
-
}, null, 8, oe)) :
|
|
266
|
+
}, null, 8, oe)) : c("", !0)
|
|
266
267
|
], 512)
|
|
267
268
|
], !0),
|
|
268
269
|
r(),
|
|
@@ -281,12 +282,12 @@ function Ie(e, s, n, h, d, a) {
|
|
|
281
282
|
class: K(["catalog-nav-link nav-link", { active: o.id === d.activeTabName }]),
|
|
282
283
|
href: `#${o.id}`,
|
|
283
284
|
role: "tab"
|
|
284
|
-
},
|
|
285
|
+
}, g(o.displayName), 11, ce)
|
|
285
286
|
], 8, de))), 128))
|
|
286
287
|
])
|
|
287
288
|
]),
|
|
288
289
|
r(),
|
|
289
|
-
t("div",
|
|
290
|
+
t("div", ge, [
|
|
290
291
|
d.activeTabName === "about" ? (l(), i("div", he, [
|
|
291
292
|
t("div", null, [
|
|
292
293
|
t("div", ue, [
|
|
@@ -303,8 +304,8 @@ function Ie(e, s, n, h, d, a) {
|
|
|
303
304
|
class: "catalog-hero-pic img-fluid",
|
|
304
305
|
src: e.getCatalog.catalogueProfile,
|
|
305
306
|
alt: ""
|
|
306
|
-
}, null, 8, be)) :
|
|
307
|
-
])) :
|
|
307
|
+
}, null, 8, be)) : c("", !0)
|
|
308
|
+
])) : c("", !0),
|
|
308
309
|
r(),
|
|
309
310
|
f(t("div", me, [
|
|
310
311
|
a.showArray(e.getDatasets) ? (l(), i("div", pe, [
|
|
@@ -350,15 +351,15 @@ function Ie(e, s, n, h, d, a) {
|
|
|
350
351
|
a.has(e.getCatalog, "publisher") && a.showObject(e.getCatalog.publisher) && (a.showString(e.getCatalog.publisher.email) || a.showString(e.getCatalog.publisher.homepage) || a.showObject(e.getCatalog.publisher.address)) ? (l(), i("dl", we, [
|
|
351
352
|
De,
|
|
352
353
|
r(),
|
|
353
|
-
a.has(e.getCatalog, "publisher.name") && a.showString(e.getCatalog.publisher.name) ? (l(), i("dt", Ne,
|
|
354
|
+
a.has(e.getCatalog, "publisher.name") && a.showString(e.getCatalog.publisher.name) ? (l(), i("dt", Ne, g(e.getCatalog.publisher.name), 1)) : c("", !0),
|
|
354
355
|
r(),
|
|
355
356
|
a.has(e.getCatalog, "publisher.address") && a.showObject(e.getCatalog.publisher.address) ? (l(), i("dd", Se, [
|
|
356
|
-
a.has(e.getCatalog, "publisher.address.street") && a.showString(e.getCatalog.publisher.address.street) ? (l(), i("span", Te,
|
|
357
|
-
])) :
|
|
357
|
+
a.has(e.getCatalog, "publisher.address.street") && a.showString(e.getCatalog.publisher.address.street) ? (l(), i("span", Te, g(e.getCatalog.publisher.address.street), 1)) : c("", !0)
|
|
358
|
+
])) : c("", !0),
|
|
358
359
|
r(),
|
|
359
360
|
a.has(e.getCatalog, "publisher.address") && a.showObject(e.getCatalog.publisher.address) ? (l(), i("dd", Ae, [
|
|
360
|
-
a.has(e.getCatalog, "publisher.address.postalCode") && a.showString(e.getCatalog.publisher.address.locality) && a.has(e.getCatalog, "publisher.address.locality") && a.showString(e.getCatalog.publisher.address.postalCode) ? (l(), i("span", Fe,
|
|
361
|
-
])) :
|
|
361
|
+
a.has(e.getCatalog, "publisher.address.postalCode") && a.showString(e.getCatalog.publisher.address.locality) && a.has(e.getCatalog, "publisher.address.locality") && a.showString(e.getCatalog.publisher.address.postalCode) ? (l(), i("span", Fe, g(e.getCatalog.publisher.address.postalCode) + " " + g(e.getCatalog.publisher.address.locality), 1)) : c("", !0)
|
|
362
|
+
])) : c("", !0),
|
|
362
363
|
r(),
|
|
363
364
|
t("dd", null, [
|
|
364
365
|
a.has(e.getCatalog, "publisher.email") && a.showString(e.getCatalog.publisher.email) ? (l(), C(m, {
|
|
@@ -366,10 +367,10 @@ function Ie(e, s, n, h, d, a) {
|
|
|
366
367
|
to: e.getCatalog.publisher.email
|
|
367
368
|
}, {
|
|
368
369
|
default: v(() => [
|
|
369
|
-
r(
|
|
370
|
+
r(g(e.getCatalog.publisher.email.startsWith("mailto:") ? e.getCatalog.publisher.email.slice(7) : e.getCatalog.publisher.email), 1)
|
|
370
371
|
]),
|
|
371
372
|
_: 1
|
|
372
|
-
}, 8, ["to"])) :
|
|
373
|
+
}, 8, ["to"])) : c("", !0)
|
|
373
374
|
]),
|
|
374
375
|
r(),
|
|
375
376
|
t("dd", null, [
|
|
@@ -378,10 +379,10 @@ function Ie(e, s, n, h, d, a) {
|
|
|
378
379
|
to: e.getCatalog.publisher.homepage
|
|
379
380
|
}, {
|
|
380
381
|
default: v(() => [
|
|
381
|
-
r(
|
|
382
|
+
r(g(e.getCatalog.publisher.homepage), 1)
|
|
382
383
|
]),
|
|
383
384
|
_: 1
|
|
384
|
-
}, 8, ["to"])) :
|
|
385
|
+
}, 8, ["to"])) : c("", !0)
|
|
385
386
|
])
|
|
386
387
|
])) : (l(), i("span", Oe, `
|
|
387
388
|
Es sind keine Kontaktinformationen verfügbar.
|
|
@@ -395,7 +396,7 @@ function Ie(e, s, n, h, d, a) {
|
|
|
395
396
|
])
|
|
396
397
|
]);
|
|
397
398
|
}
|
|
398
|
-
const Je = /* @__PURE__ */ J(W, [["render", Ie], ["__scopeId", "data-v-
|
|
399
|
+
const Je = /* @__PURE__ */ J(W, [["render", Ie], ["__scopeId", "data-v-c6a4c80f"]]);
|
|
399
400
|
export {
|
|
400
401
|
Je as default
|
|
401
402
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CatalogPage.vue.mjs","sources":["../../lib/catalogues/CatalogPage.vue"],"sourcesContent":["<template>\n <div class=\"catalog-page-container\">\n <div v-if=\"showArray(getCatalog.catalogueBackground)\" class=\"catalog-page-background\" ref=\"catBackground\">\n <img class=\"catalog-page-background-image\" :src=\"getCatalog.catalogueBackground\" alt=\"\">\n </div>\n <div v-else class=\"catalog-page-background-default\"></div>\n <div class=\"catalog-box\">\n\n <slot name=\"header\">\n <div class=\"catalog-header-container mx-auto d-flex justify-content-between align-items-center\" ref=\"catHeader\">\n <div class=\"catalog-header-info d-flex\">\n <img v-if=\"showArray(getCatalog.catalogueFavIcon)\" class=\"catalog-header-title-icon\"\n :src=\"getCatalog.catalogueFavIcon\" alt=\"\">\n <div class=\"catalog-header-title-text\">\n <h1 class=\"catalog-header-title-title\" aria-label=\"Katalogtitel\">\n {{ getTranslationFor(getCatalog.title, $route.query.locale, getCatalog.languages) }}\n </h1>\n <h5 class=\"catalog-header-title-subtitle\" aria-label=\"Homepage\">\n <app-link :to=\"getCatalog.homepage\">\n {{ getCatalog.homepage }}\n </app-link>\n </h5>\n </div>\n </div>\n <img v-if=\"showArray(getCatalog.catalogueLogo)\" class=\"catalog-header-logo d-none d-sm-block\"\n :src=\"getCatalog.catalogueLogo\" alt=\"\" aria-label=\"logo\">\n </div>\n </slot>\n\n <div class=\"catalog-card card\">\n <div class=\"card-header\" role=\"navigation\">\n <!-- CARD NAV -->\n <ul class=\"nav nav-tabs card-header-tabs\" role=\"tablist\" aria-label=\"Navigationsleiste\">\n <li v-for=\"tab in cardNavTabs\" :key=\"tab.id\" role=\"tab\" :aria-controls=\"tab.id\"\n :aria-selected=\"activeTabName === tab.id\" :aria-label=\"tab.displayName\">\n <a @click.prevent=\"setActiveTabName(tab.id)\" class=\"catalog-nav-link nav-link\"\n :class=\"{active: tab.id === activeTabName}\" :href=\"`#${tab.id}`\" role=\"tab\">\n {{ tab.displayName }}\n </a>\n </li>\n </ul>\n </div>\n <!-- CARD CONTENT -->\n <div class=\"card-body my-5\">\n\n <!-- \"ÜBER DIESEN KATALOG\" -->\n <div v-if=\"activeTabName === 'about'\"\n class=\"tab-pane active catalog-about-tab d-flex align-items-start justify-content-between\" id=\"about\"\n role=\"tabpanel\">\n <div>\n <div class=\"tab-content d-flex\">\n <app-markdown-content class=\"card-text\" tag=\"div\"\n :text=\"getTranslationFor(catalog.description, $route.query.locale, catalog.languages)\"/>\n </div>\n </div>\n <img v-if=\"showArray(getCatalog.catalogueProfile)\" class=\"catalog-hero-pic img-fluid\"\n :src=\"getCatalog.catalogueProfile\" alt=\"\">\n </div>\n\n <!-- \"INTERESSANTE DATENSÄTZE\" -->\n <div v-show=\"activeTabName === 'dataset-selections'\" class=\"tab-pane active\" id=\"dataset-selections\"\n role=\"tabpanel\" aria-labelledby=\"dataset-selections-tab\">\n <div v-if=\"showArray(getDatasets)\" class=\"tab-content d-flex flex-column align-items-center mt-3\">\n <div class=\"d-flex flex-wrap justify-content-center mb-5\">\n\n <DatasetCard\n v-for=\"dataset in (interestingDatasets.length > 0) ? interestingDatasets.slice(0, 3) : getDatasets.slice(0, 3)\"\n :key=\"dataset.id\"\n :to=\"`/datasets/${dataset.id}`\"\n :datasetTitle=\"getTranslationFor(dataset.title, $route.query.locale, dataset.languages) || dataset.id\"\n :datasetDescription=\"getTranslationFor(dataset.description, $route.query.locale, dataset.languages)\"\n :datasetCatalog=\"getTranslationFor(dataset.catalog.title, $route.query.locale, [])\"\n :descriptionMaxLength=\"175\"\n :data-cy=\"`dataset@${dataset.id}`\"\n class=\"mt-3\"\n />\n </div>\n\n <button @click.prevent=\"setActiveTabName('dataset-page')\" class=\"primary-button\" role=\"button\">\n Mehr Daten entdecken\n </button>\n </div>\n\n <span v-else>\n Es sind keine Datensätze verfügbar.\n </span>\n </div>\n\n <!-- \"ALLE DATENSÄTZE\" -->\n <div v-show=\"activeTabName === 'dataset-page'\" class=\"tab-pane active\" id=\"dataset-page\" role=\"tabpanel\"\n aria-labelledby=\"dataset-page-tab\">\n <slot name=\"card-datasets\">\n <div class=\"tab-content mt-3\">\n <Datasets/>\n </div>\n </slot>\n </div>\n\n <!-- \"KONTAKT\" -->\n <div v-show=\"activeTabName === 'contact'\" class=\"tab-pane active\" id=\"contact\" role=\"tabpanel\"\n aria-labelledby=\"contact-tab\">\n <div class=\"tab-content\">\n <dl v-if=\"has(getCatalog, 'publisher') && showObject(getCatalog.publisher) && (showString(getCatalog.publisher.email) || showString(getCatalog.publisher.homepage) || showObject(getCatalog.publisher.address))\">\n <h4 class=\"catalog-contact-header\">Fragen zu dieser Open Data Präsenz?</h4>\n <!-- publisher name -->\n <dt v-if=\"has(getCatalog, 'publisher.name') && showString(getCatalog.publisher.name)\">\n {{ getCatalog.publisher.name }}\n </dt>\n <!-- address -->\n <dd v-if=\"has(getCatalog, 'publisher.address') && showObject(getCatalog.publisher.address)\">\n <!-- E-Mail: -->\n <span\n v-if=\"has(getCatalog, 'publisher.address.street') && showString(getCatalog.publisher.address.street)\">{{\n getCatalog.publisher.address.street\n }}</span>\n </dd>\n <dd v-if=\"has(getCatalog, 'publisher.address') && showObject(getCatalog.publisher.address)\">\n <!-- E-Mail: -->\n <span\n v-if=\"has(getCatalog, 'publisher.address.postalCode') && showString(getCatalog.publisher.address.locality) && has(getCatalog, 'publisher.address.locality') && showString(getCatalog.publisher.address.postalCode)\">{{\n getCatalog.publisher.address.postalCode\n }} {{ getCatalog.publisher.address.locality }}</span>\n </dd>\n <!-- email -->\n <dd>\n <!-- E-Mail: -->\n <app-link v-if=\"has(getCatalog, 'publisher.email') && showString(getCatalog.publisher.email)\"\n :to=\"getCatalog.publisher.email\">\n {{\n getCatalog.publisher.email.startsWith(\"mailto:\") ? getCatalog.publisher.email.slice(7) : getCatalog.publisher.email\n }}\n </app-link>\n </dd>\n <!-- homepage -->\n <dd>\n <!-- Website: -->\n <app-link v-if=\"has(getCatalog, 'publisher.homepage') && showString(getCatalog.publisher.homepage)\"\n :to=\"getCatalog.publisher.homepage\">\n {{ getCatalog.publisher.homepage }}\n </app-link>\n </dd>\n </dl>\n <span v-else>\n Es sind keine Kontaktinformationen verfügbar.\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Datasets from \"../datasets/Datasets.vue\"\nimport {mapGetters, mapActions} from 'vuex';\nimport AppLink from \"../widgets/AppLink\";\nimport DatasetCard from \"./CatalogPageDatasetCard.vue\"\nimport AppMarkdownContent from \"../datasetDetails/AppMarkdownContent.vue\"\nimport {\n has,\n isArray,\n isNil,\n isObject,\n isString\n} from 'lodash-es';\nimport {getTranslationFor, truncate} from '../utils/helpers';\nimport datasetService from \"../services/datasetService\";\n\nimport Axios from 'axios';\n\nexport default {\n name: \"CatalogPage\",\n components: {\n Datasets,\n DatasetCard,\n AppLink,\n AppMarkdownContent,\n },\n data() {\n return {\n interestingDatasets: [],\n interestingDatasetsFallback: [],\n activeTabName: 'about',\n cardNavTabs: [\n {\n id: 'about',\n displayName: 'Über diese Seite',\n },\n {\n id: 'dataset-selections',\n displayName: 'Interessante Datensätze',\n },\n {\n id: 'dataset-page',\n displayName: 'Alle Datensätze',\n },\n {\n id: 'contact',\n displayName: 'Kontakt',\n },\n ],\n datasetService: null,\n };\n },\n computed: {\n ...mapGetters('catalogDetails', [\n 'getCatalog',\n ]),\n ...mapGetters('datasets', [\n 'getDatasets',\n 'getDatasetsCount',\n 'getLoading',\n 'getOffset',\n ]),\n catalog() {\n return this.getCatalog;\n },\n },\n methods: {\n isNil,\n // The imported Lodash has function. Must be defined in Methods so we can use it in template\n has,\n isArray,\n truncate,\n getTranslationFor,\n ...mapActions('catalogDetails', [\n 'loadCatalog',\n ]),\n ...mapActions('datasets', [\n 'loadDatasets',\n 'loadSingleDataset',\n ]),\n setActiveTabName(name) {\n this.activeTabName = name;\n },\n showObject(object) {\n return !isNil(object) && isObject(object) && !Object.values(object).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true);\n },\n showArrayOfStrings(stringArray) {\n return this.showArray(stringArray) && stringArray.every(currentString => this.showString(currentString));\n },\n showString(string) {\n return !isNil(string) && isString(string);\n },\n showArray(array) {\n return !isNil(array) && isArray(array) && array.length > 0;\n },\n showObjectArray(objectArray) {\n return this.showArray(objectArray) && !objectArray.reduce((objectUndefined, currentObject) => objectUndefined && Object.values(currentObject).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true), true);\n },\n loadCatalogInterestingDatasets(catalog) {\n for (let id of this.catalog.catalogueInterestingDatasets) {\n this.loadSingleDataset(id)\n .then(response => {\n this.interestingDatasets.push(response);\n })\n .catch(error => {\n console.log('error: ', error)\n });\n }\n },\n loadCatalogInterestingDatasetsFallback(catalog) {\n for (let id of this.catalog.catalogueInterestingDatasets) {\n this.datasetService.getSingle(id)\n .then(response => {\n this.interestingDatasetsFallback.push(response);\n })\n .catch(error => console.log('error: ', error));\n }\n }\n },\n mounted() {\n if (sessionStorage.activeTabName) {\n this.activeTabName = sessionStorage.activeTabName;\n }\n },\n watch: {\n activeTabName(activeTab) {\n sessionStorage.activeTabName = activeTab;\n },\n },\n created() {\n this.$Progress.start()\n\n // Hack: define fresh instance of datasetService to avoid going through store.\n // When going through store, it will cause mutations that will affect datasetDetails page.\n this.datasetService = new datasetService(\n this.$env.api.baseUrl,\n this.$env.api.hubUrl,\n this.$env.api.qualityBaseUrl,\n this.$env.api.similarityBaseUrl,\n this.$env.content.datasets.facets.scoringFacets.defaultScoringFacets,\n );\n\n let catalogId = this.$route.params.ctlg_id;\n if (catalogId === undefined || catalogId === null) {\n const host = window.location.host;\n const parts = host.split('.');\n if (parts.length > 1) {\n catalogId = parts[0];\n\n }\n }\n\n\n Promise.all([\n this.loadCatalog(catalogId)\n .then(result => {\n this.loadCatalogInterestingDatasets(result)\n }\n ),\n // TODO: This is a temporary workaround.\n // We should refactor this code to use the store instead of making\n // a dedicated HTTP request for dataset search.\n // This will ensure that the most relevant datasets for the catalog are always displayed,\n // even if the search page has filtered datasets. \n Axios.get(`${this.$env.api.baseUrl}search`, {\n params: {\n q: '',\n filter: 'dataset',\n limit: 3,\n page: 0,\n sort: 'relevance+desc,+modified+desc,+title.de+asc',\n facetOperator: 'AND',\n facetGroupOperator: 'AND',\n dataServices: false,\n includes: 'id,title.de,description.de,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: JSON.stringify({\n license: [],\n format: [],\n categories: [],\n catalog: [catalogId],\n publisher: [],\n country: [],\n }),\n },\n }).then(response => {\n const interestingDatasets = response.data?.result?.results || [];\n this.loadCatalogInterestingDatasetsFallback(interestingDatasets)\n }).catch(error => {\n console.error(error)\n }),\n // ...this.activeTabName === 'dataset-page' ? [this.loadDatasets({locale: this.$route.query.locale})] : [],\n ]).then(results => {\n this.$Progress.finish()\n }).catch(error => {\n console.error(error)\n this.$Progress.fail()\n })\n }\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.catalog-page-container {\n margin-top: 0 !important;\n padding: 0 !important;\n}\n\n.catalog-page-background-image,\n.catalog-page-background-default {\n position: absolute;\n height: 360px;\n width: 100%;\n}\n\n.catalog-page-background-default {\n background-color: #F4F8FA;\n}\n\n.catalog-page-background-image {\n overflow: hidden;\n object-fit: cover;\n}\n\n.catalog-box {\n display: flex;\n flex-direction: column;\n margin-bottom: 95px;\n}\n\n.flag-img {\n width: 150px;\n height: auto;\n}\n\n.catalog-header-container {\n flex: 1 1 100%;\n width: 100%;\n max-width: 1040px;\n min-height: 180px;\n padding-left: 32px;\n padding-right: 32px;\n z-index: 1;\n}\n\n.catalog-header-title-subtitle {\n font-size: 14px;\n}\n\n.catalog-header-title-icon {\n height: 48px;\n width: 48px;\n padding: 5px;\n margin-right: 16px;\n border: 1px solid transparent;\n border-radius: 50%;\n background-color: white;\n box-shadow: 0px 0px 6px 0px #0000001F;\n object-fit: contain;\n}\n\n.catalog-header-logo {\n max-height: 80px;\n max-width: 192px;\n height: auto;\n width: auto;\n}\n\n.catalog-card {\n flex: 1 1 100%;\n padding: 32px;\n width: 100%;\n max-width: 1040px;\n border: none;\n}\n\n.catalog-about-tab {\n flex-direction: column;\n flex-wrap: wrap;\n}\n\n.card-header {\n background-color: transparent;\n padding: 0;\n}\n\n.card-header-tabs {\n margin-right: 0;\n margin-left: 0;\n margin-bottom: 0;\n flex-wrap: nowrap;\n white-space: nowrap;\n overflow-x: scroll;\n overflow-y: hidden;\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n}\n\n.card-header-tabs li {\n padding-right: 48px;\n}\n\n.card-header-tabs li:last-child {\n padding-right: 0;\n}\n\n.card-body {\n padding: 0;\n}\n\n.catalog-nav-link.nav-link {\n color: rgba(0, 0, 0, 0.7);\n padding-left: 0;\n padding-right: 0;\n margin-bottom: 0;\n background-color: transparent;\n border: 0;\n border-left: 0;\n border-right: 0;\n border-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom: 2px solid transparent !important;\n\n &:hover,\n &.active {\n color: #175baf !important;\n }\n\n &.active {\n border-bottom: 2px solid #175baf !important;\n }\n}\n\n.catalog-hero-pic {\n max-width: 250px !important;\n width: 100%;\n height: auto;\n margin-top: calc(48px - 1rem);\n}\n\n.catalog-contact-header {\n font-size: 18px;\n margin-bottom: 34px;\n}\n\n.tab-content dt {\n margin-bottom: 8px;\n}\n\n.tab-content dd {\n margin-bottom: 0;\n}\n\n@media screen and (min-width: 768px) {\n .catalog-header-container {\n padding-left: 0;\n padding-right: 0;\n }\n\n .catalog-box {\n padding-left: 32px;\n padding-right: 32px;\n }\n\n .catalog-card {\n border: none;\n box-shadow: 0px 2px 12px 0px #00000012;\n margin-left: auto;\n margin-right: auto;\n padding-left: 48px;\n padding-right: 48px;\n }\n\n .catalog-about-tab {\n flex-wrap: nowrap;\n flex-direction: row;\n }\n\n .catalog-hero-pic {\n margin-top: 0;\n margin-left: 1.5rem;\n }\n}\n</style>"],"names":["_sfc_main","Datasets","DatasetCard","AppLink","AppMarkdownContent","mapGetters","isNil","has","isArray","truncate","getTranslationFor","mapActions","name","object","isObject","keyUndefined","currentValue","stringArray","currentString","string","isString","array","objectArray","objectUndefined","currentObject","catalog","id","response","error","activeTab","datasetService","catalogId","parts","result","Axios","interestingDatasets","_b","_a","results","_hoisted_1","_hoisted_3","_hoisted_5","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_12","_hoisted_13","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_20","_hoisted_21","_hoisted_24","_hoisted_27","_hoisted_29","_hoisted_31","_withScopeId","_createElementVNode","_openBlock","_createElementBlock","$options","_ctx","_hoisted_2","_hoisted_4","_createTextVNode","_renderSlot","_hoisted_6","_createCommentVNode","_hoisted_10","_toDisplayString","_hoisted_11","_createVNode","_component_app_link","_withCtx","_hoisted_14","_hoisted_15","_Fragment","_renderList","$data","tab","_withModifiers","$event","_normalizeClass","_hoisted_19","_component_app_markdown_content","_withDirectives","_hoisted_22","_hoisted_23","dataset","_createBlock","_component_DatasetCard","_cache","_hoisted_25","_hoisted_26","_component_Datasets","_hoisted_28","_hoisted_30","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CatalogPage.vue.mjs","sources":["../../lib/catalogues/CatalogPage.vue"],"sourcesContent":["<template>\n <div class=\"catalog-page-container\">\n <div v-if=\"showArray(getCatalog.catalogueBackground)\" class=\"catalog-page-background\" ref=\"catBackground\">\n <img class=\"catalog-page-background-image\" :src=\"getCatalog.catalogueBackground\" alt=\"\">\n </div>\n <div v-else class=\"catalog-page-background-default\"></div>\n <div class=\"catalog-box\">\n\n <slot name=\"header\">\n <div class=\"catalog-header-container mx-auto d-flex justify-content-between align-items-center\" ref=\"catHeader\">\n <div class=\"catalog-header-info d-flex\">\n <img v-if=\"showArray(getCatalog.catalogueFavIcon)\" class=\"catalog-header-title-icon\"\n :src=\"getCatalog.catalogueFavIcon\" alt=\"\">\n <div class=\"catalog-header-title-text\">\n <h1 class=\"catalog-header-title-title\" aria-label=\"Katalogtitel\">\n {{ getTranslationFor(getCatalog.title, $route.query.locale, getCatalog.languages) }}\n </h1>\n <h5 class=\"catalog-header-title-subtitle\" aria-label=\"Homepage\">\n <app-link :to=\"getCatalog.homepage\">\n {{ getCatalog.homepage }}\n </app-link>\n </h5>\n </div>\n </div>\n <img v-if=\"showArray(getCatalog.catalogueLogo)\" class=\"catalog-header-logo d-none d-sm-block\"\n :src=\"getCatalog.catalogueLogo\" alt=\"\" aria-label=\"logo\">\n </div>\n </slot>\n\n <div class=\"catalog-card card\">\n <div class=\"card-header\" role=\"navigation\">\n <!-- CARD NAV -->\n <ul class=\"nav nav-tabs card-header-tabs\" role=\"tablist\" aria-label=\"Navigationsleiste\">\n <li v-for=\"tab in cardNavTabs\" :key=\"tab.id\" role=\"tab\" :aria-controls=\"tab.id\"\n :aria-selected=\"activeTabName === tab.id\" :aria-label=\"tab.displayName\">\n <a @click.prevent=\"setActiveTabName(tab.id)\" class=\"catalog-nav-link nav-link\"\n :class=\"{active: tab.id === activeTabName}\" :href=\"`#${tab.id}`\" role=\"tab\">\n {{ tab.displayName }}\n </a>\n </li>\n </ul>\n </div>\n <!-- CARD CONTENT -->\n <div class=\"card-body my-5\">\n\n <!-- \"ÜBER DIESEN KATALOG\" -->\n <div v-if=\"activeTabName === 'about'\"\n class=\"tab-pane active catalog-about-tab d-flex align-items-start justify-content-between\" id=\"about\"\n role=\"tabpanel\">\n <div>\n <div class=\"tab-content d-flex\">\n <app-markdown-content class=\"card-text\" tag=\"div\"\n :text=\"getTranslationFor(catalog.description, $route.query.locale, catalog.languages)\"/>\n </div>\n </div>\n <img v-if=\"showArray(getCatalog.catalogueProfile)\" class=\"catalog-hero-pic img-fluid\"\n :src=\"getCatalog.catalogueProfile\" alt=\"\">\n </div>\n\n <!-- \"INTERESSANTE DATENSÄTZE\" -->\n <div v-show=\"activeTabName === 'dataset-selections'\" class=\"tab-pane active\" id=\"dataset-selections\"\n role=\"tabpanel\" aria-labelledby=\"dataset-selections-tab\">\n <div v-if=\"showArray(getDatasets)\" class=\"tab-content d-flex flex-column align-items-center mt-3\">\n <div class=\"d-flex flex-wrap justify-content-center mb-5\">\n\n <DatasetCard\n v-for=\"dataset in (interestingDatasets.length > 0) ? interestingDatasets.slice(0, 3) : getDatasets.slice(0, 3)\"\n :key=\"dataset.id\"\n :to=\"`/datasets/${dataset.id}`\"\n :datasetTitle=\"getTranslationFor(dataset.title, $route.query.locale, dataset.languages) || dataset.id\"\n :datasetDescription=\"getTranslationFor(dataset.description, $route.query.locale, dataset.languages)\"\n :datasetCatalog=\"getTranslationFor(dataset.catalog.title, $route.query.locale, [])\"\n :descriptionMaxLength=\"175\"\n :data-cy=\"`dataset@${dataset.id}`\"\n class=\"mt-3\"\n />\n </div>\n\n <button @click.prevent=\"setActiveTabName('dataset-page')\" class=\"primary-button\" role=\"button\">\n Mehr Daten entdecken\n </button>\n </div>\n\n <span v-else>\n Es sind keine Datensätze verfügbar.\n </span>\n </div>\n\n <!-- \"ALLE DATENSÄTZE\" -->\n <div v-show=\"activeTabName === 'dataset-page'\" class=\"tab-pane active\" id=\"dataset-page\" role=\"tabpanel\"\n aria-labelledby=\"dataset-page-tab\">\n <slot name=\"card-datasets\">\n <div class=\"tab-content mt-3\">\n <Datasets/>\n </div>\n </slot>\n </div>\n\n <!-- \"KONTAKT\" -->\n <div v-show=\"activeTabName === 'contact'\" class=\"tab-pane active\" id=\"contact\" role=\"tabpanel\"\n aria-labelledby=\"contact-tab\">\n <div class=\"tab-content\">\n <dl v-if=\"has(getCatalog, 'publisher') && showObject(getCatalog.publisher) && (showString(getCatalog.publisher.email) || showString(getCatalog.publisher.homepage) || showObject(getCatalog.publisher.address))\">\n <h4 class=\"catalog-contact-header\">Fragen zu dieser Open Data Präsenz?</h4>\n <!-- publisher name -->\n <dt v-if=\"has(getCatalog, 'publisher.name') && showString(getCatalog.publisher.name)\">\n {{ getCatalog.publisher.name }}\n </dt>\n <!-- address -->\n <dd v-if=\"has(getCatalog, 'publisher.address') && showObject(getCatalog.publisher.address)\">\n <!-- E-Mail: -->\n <span\n v-if=\"has(getCatalog, 'publisher.address.street') && showString(getCatalog.publisher.address.street)\">{{\n getCatalog.publisher.address.street\n }}</span>\n </dd>\n <dd v-if=\"has(getCatalog, 'publisher.address') && showObject(getCatalog.publisher.address)\">\n <!-- E-Mail: -->\n <span\n v-if=\"has(getCatalog, 'publisher.address.postalCode') && showString(getCatalog.publisher.address.locality) && has(getCatalog, 'publisher.address.locality') && showString(getCatalog.publisher.address.postalCode)\">{{\n getCatalog.publisher.address.postalCode\n }} {{ getCatalog.publisher.address.locality }}</span>\n </dd>\n <!-- email -->\n <dd>\n <!-- E-Mail: -->\n <app-link v-if=\"has(getCatalog, 'publisher.email') && showString(getCatalog.publisher.email)\"\n :to=\"getCatalog.publisher.email\">\n {{\n getCatalog.publisher.email.startsWith(\"mailto:\") ? getCatalog.publisher.email.slice(7) : getCatalog.publisher.email\n }}\n </app-link>\n </dd>\n <!-- homepage -->\n <dd>\n <!-- Website: -->\n <app-link v-if=\"has(getCatalog, 'publisher.homepage') && showString(getCatalog.publisher.homepage)\"\n :to=\"getCatalog.publisher.homepage\">\n {{ getCatalog.publisher.homepage }}\n </app-link>\n </dd>\n </dl>\n <span v-else>\n Es sind keine Kontaktinformationen verfügbar.\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Datasets from \"../datasets/Datasets.vue\"\nimport {mapGetters, mapActions} from 'vuex';\nimport AppLink from \"../widgets/AppLink\";\nimport DatasetCard from \"./CatalogPageDatasetCard.vue\"\nimport AppMarkdownContent from \"../datasetDetails/AppMarkdownContent.vue\"\nimport {\n has,\n isArray,\n isNil,\n isObject,\n isString\n} from 'lodash-es';\nimport {getTranslationFor, truncate} from '../utils/helpers';\nimport datasetService from \"../services/datasetService\";\n\nimport Axios from 'axios';\n\nexport default {\n name: \"CatalogPage\",\n components: {\n Datasets,\n DatasetCard,\n AppLink,\n AppMarkdownContent,\n },\n data() {\n return {\n interestingDatasets: [],\n interestingDatasetsFallback: [],\n activeTabName: 'about',\n cardNavTabs: [\n {\n id: 'about',\n displayName: 'Über diese Seite',\n },\n {\n id: 'dataset-selections',\n displayName: 'Interessante Datensätze',\n },\n {\n id: 'dataset-page',\n displayName: 'Alle Datensätze',\n },\n {\n id: 'contact',\n displayName: 'Kontakt',\n },\n ],\n datasetService: null,\n };\n },\n computed: {\n ...mapGetters('catalogDetails', [\n 'getCatalog',\n ]),\n ...mapGetters('datasets', [\n 'getDatasets',\n 'getDatasetsCount',\n 'getLoading',\n 'getOffset',\n ]),\n catalog() {\n return this.getCatalog;\n },\n },\n methods: {\n isNil,\n // The imported Lodash has function. Must be defined in Methods so we can use it in template\n has,\n isArray,\n truncate,\n getTranslationFor,\n ...mapActions('catalogDetails', [\n 'loadCatalog',\n ]),\n ...mapActions('datasets', [\n 'loadDatasets',\n 'loadSingleDataset',\n ]),\n setActiveTabName(name) {\n this.activeTabName = name;\n },\n showObject(object) {\n return !isNil(object) && isObject(object) && !Object.values(object).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true);\n },\n showArrayOfStrings(stringArray) {\n return this.showArray(stringArray) && stringArray.every(currentString => this.showString(currentString));\n },\n showString(string) {\n return !isNil(string) && isString(string);\n },\n showArray(array) {\n return !isNil(array) && isArray(array) && array.length > 0;\n },\n showObjectArray(objectArray) {\n return this.showArray(objectArray) && !objectArray.reduce((objectUndefined, currentObject) => objectUndefined && Object.values(currentObject).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true), true);\n },\n loadCatalogInterestingDatasets(catalog) {\n for (let id of this.catalog.catalogueInterestingDatasets) {\n this.loadSingleDataset(id)\n .then(response => {\n this.interestingDatasets.push(response);\n })\n .catch(error => {\n console.log('error: ', error)\n });\n }\n },\n loadCatalogInterestingDatasetsFallback(catalog) {\n for (let id of this.catalog.catalogueInterestingDatasets) {\n this.datasetService.getSingle(id)\n .then(response => {\n this.interestingDatasetsFallback.push(response);\n })\n .catch(error => console.log('error: ', error));\n }\n }\n },\n mounted() {\n if (sessionStorage.activeTabName) {\n this.activeTabName = sessionStorage.activeTabName;\n }\n },\n watch: {\n activeTabName(activeTab) {\n sessionStorage.activeTabName = activeTab;\n },\n },\n created() {\n this.$Progress.start()\n\n // Hack: define fresh instance of datasetService to avoid going through store.\n // When going through store, it will cause mutations that will affect datasetDetails page.\n this.datasetService = new datasetService(\n this.$env.api.baseUrl,\n this.$env.api.hubUrl,\n this.$env.api.qualityBaseUrl,\n this.$env.api.similarityBaseUrl,\n this.$env.api.similarityServiceName,\n this.$env.content.datasets.facets.scoringFacets.defaultScoringFacets,\n );\n\n let catalogId = this.$route.params.ctlg_id;\n if (catalogId === undefined || catalogId === null) {\n const host = window.location.host;\n const parts = host.split('.');\n if (parts.length > 1) {\n catalogId = parts[0];\n\n }\n }\n\n\n Promise.all([\n this.loadCatalog(catalogId)\n .then(result => {\n this.loadCatalogInterestingDatasets(result)\n }\n ),\n // TODO: This is a temporary workaround.\n // We should refactor this code to use the store instead of making\n // a dedicated HTTP request for dataset search.\n // This will ensure that the most relevant datasets for the catalog are always displayed,\n // even if the search page has filtered datasets.\n Axios.get(`${this.$env.api.baseUrl}search`, {\n params: {\n q: '',\n filter: 'dataset',\n limit: 3,\n page: 0,\n sort: 'relevance+desc,+modified+desc,+title.de+asc',\n facetOperator: 'AND',\n facetGroupOperator: 'AND',\n dataServices: false,\n includes: 'id,title.de,description.de,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: JSON.stringify({\n license: [],\n format: [],\n categories: [],\n catalog: [catalogId],\n publisher: [],\n country: [],\n }),\n },\n }).then(response => {\n const interestingDatasets = response.data?.result?.results || [];\n this.loadCatalogInterestingDatasetsFallback(interestingDatasets)\n }).catch(error => {\n console.error(error)\n }),\n // ...this.activeTabName === 'dataset-page' ? [this.loadDatasets({locale: this.$route.query.locale})] : [],\n ]).then(results => {\n this.$Progress.finish()\n }).catch(error => {\n console.error(error)\n this.$Progress.fail()\n })\n }\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.catalog-page-container {\n margin-top: 0 !important;\n padding: 0 !important;\n}\n\n.catalog-page-background-image,\n.catalog-page-background-default {\n position: absolute;\n height: 360px;\n width: 100%;\n}\n\n.catalog-page-background-default {\n background-color: #F4F8FA;\n}\n\n.catalog-page-background-image {\n overflow: hidden;\n object-fit: cover;\n}\n\n.catalog-box {\n display: flex;\n flex-direction: column;\n margin-bottom: 95px;\n}\n\n.flag-img {\n width: 150px;\n height: auto;\n}\n\n.catalog-header-container {\n flex: 1 1 100%;\n width: 100%;\n max-width: 1040px;\n min-height: 180px;\n padding-left: 32px;\n padding-right: 32px;\n z-index: 1;\n}\n\n.catalog-header-title-subtitle {\n font-size: 14px;\n}\n\n.catalog-header-title-icon {\n height: 48px;\n width: 48px;\n padding: 5px;\n margin-right: 16px;\n border: 1px solid transparent;\n border-radius: 50%;\n background-color: white;\n box-shadow: 0px 0px 6px 0px #0000001F;\n object-fit: contain;\n}\n\n.catalog-header-logo {\n max-height: 80px;\n max-width: 192px;\n height: auto;\n width: auto;\n}\n\n.catalog-card {\n flex: 1 1 100%;\n padding: 32px;\n width: 100%;\n max-width: 1040px;\n border: none;\n}\n\n.catalog-about-tab {\n flex-direction: column;\n flex-wrap: wrap;\n}\n\n.card-header {\n background-color: transparent;\n padding: 0;\n}\n\n.card-header-tabs {\n margin-right: 0;\n margin-left: 0;\n margin-bottom: 0;\n flex-wrap: nowrap;\n white-space: nowrap;\n overflow-x: scroll;\n overflow-y: hidden;\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n}\n\n.card-header-tabs li {\n padding-right: 48px;\n}\n\n.card-header-tabs li:last-child {\n padding-right: 0;\n}\n\n.card-body {\n padding: 0;\n}\n\n.catalog-nav-link.nav-link {\n color: rgba(0, 0, 0, 0.7);\n padding-left: 0;\n padding-right: 0;\n margin-bottom: 0;\n background-color: transparent;\n border: 0;\n border-left: 0;\n border-right: 0;\n border-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom: 2px solid transparent !important;\n\n &:hover,\n &.active {\n color: #175baf !important;\n }\n\n &.active {\n border-bottom: 2px solid #175baf !important;\n }\n}\n\n.catalog-hero-pic {\n max-width: 250px !important;\n width: 100%;\n height: auto;\n margin-top: calc(48px - 1rem);\n}\n\n.catalog-contact-header {\n font-size: 18px;\n margin-bottom: 34px;\n}\n\n.tab-content dt {\n margin-bottom: 8px;\n}\n\n.tab-content dd {\n margin-bottom: 0;\n}\n\n@media screen and (min-width: 768px) {\n .catalog-header-container {\n padding-left: 0;\n padding-right: 0;\n }\n\n .catalog-box {\n padding-left: 32px;\n padding-right: 32px;\n }\n\n .catalog-card {\n border: none;\n box-shadow: 0px 2px 12px 0px #00000012;\n margin-left: auto;\n margin-right: auto;\n padding-left: 48px;\n padding-right: 48px;\n }\n\n .catalog-about-tab {\n flex-wrap: nowrap;\n flex-direction: row;\n }\n\n .catalog-hero-pic {\n margin-top: 0;\n margin-left: 1.5rem;\n }\n}\n</style>\n"],"names":["_sfc_main","Datasets","DatasetCard","AppLink","AppMarkdownContent","mapGetters","isNil","has","isArray","truncate","getTranslationFor","mapActions","name","object","isObject","keyUndefined","currentValue","stringArray","currentString","string","isString","array","objectArray","objectUndefined","currentObject","catalog","id","response","error","activeTab","datasetService","catalogId","parts","result","Axios","interestingDatasets","_b","_a","results","_hoisted_1","_hoisted_3","_hoisted_5","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_12","_hoisted_13","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_20","_hoisted_21","_hoisted_24","_hoisted_27","_hoisted_29","_hoisted_31","_withScopeId","_createElementVNode","_openBlock","_createElementBlock","$options","_ctx","_hoisted_2","_hoisted_4","_createTextVNode","_renderSlot","_hoisted_6","_createCommentVNode","_hoisted_10","_toDisplayString","_hoisted_11","_createVNode","_component_app_link","_withCtx","_hoisted_14","_hoisted_15","_Fragment","_renderList","$data","tab","_withModifiers","$event","_normalizeClass","_hoisted_19","_component_app_markdown_content","_withDirectives","_hoisted_22","_hoisted_23","dataset","_createBlock","_component_DatasetCard","_cache","_hoisted_25","_hoisted_26","_component_Datasets","_hoisted_28","_hoisted_30","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37"],"mappings":"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"}
|
|
@@ -7,10 +7,10 @@ import { isNil as u, has as d, isArray as F } from "lodash-es";
|
|
|
7
7
|
function U(e) {
|
|
8
8
|
return !u(e) && F(e) && e.length > 0;
|
|
9
9
|
}
|
|
10
|
-
function
|
|
10
|
+
function H(e) {
|
|
11
11
|
return U(e) && !e.reduce((i, a) => i && Object.values(a).reduce((o, l) => o && l === void 0, !0), !0);
|
|
12
12
|
}
|
|
13
|
-
function
|
|
13
|
+
function z(e) {
|
|
14
14
|
return d(e, "id") && d(e, "title") && !u(e.id) && !u(e.title);
|
|
15
15
|
}
|
|
16
16
|
function b(e) {
|
|
@@ -29,7 +29,7 @@ function b(e) {
|
|
|
29
29
|
...(o || l) && { url: o || l }
|
|
30
30
|
};
|
|
31
31
|
}
|
|
32
|
-
function
|
|
32
|
+
function I(e) {
|
|
33
33
|
const i = n(() => e.getters["datasetDetails/getLicences"]);
|
|
34
34
|
return n(() => {
|
|
35
35
|
const a = i.value;
|
|
@@ -71,16 +71,16 @@ function T(e) {
|
|
|
71
71
|
});
|
|
72
72
|
return i;
|
|
73
73
|
}
|
|
74
|
-
function
|
|
74
|
+
function N(e, i, a) {
|
|
75
75
|
return e.title ? m(e.title, i, a) : "-";
|
|
76
76
|
}
|
|
77
|
-
function
|
|
77
|
+
function k(e) {
|
|
78
78
|
return d(e, "format.label") && !u(e.format.label) ? e.format.label : "";
|
|
79
79
|
}
|
|
80
|
-
function
|
|
80
|
+
function q(e) {
|
|
81
81
|
return d(e, "accessUrl") && U(e.accessUrl);
|
|
82
82
|
}
|
|
83
|
-
function
|
|
83
|
+
function G(e, i) {
|
|
84
84
|
const a = n(() => e.getters["datasetDetails/getTitle"] || ""), o = n(() => e.getters["datasetDetails/getDescription"] || ""), l = n(() => e.getters["datasetDetails/getLanguages"]), r = n(() => e.getters["datasetDetails/getSpatial"]), g = n(() => e.getters["datasetDetails/getOtherIdentifiers"]), p = n(() => e.getters["datasetDetails/getKeywords"]), c = n(() => e.getters["datasetDetails/getCatalog"]), D = n(() => e.getters["datasetDetails/getDistributions"]), j = n(() => e.getters["datasetDetails/getPublisher"]), K = n(() => e.getters["datasetDetails/getContactPoints"]), f = n(() => {
|
|
85
85
|
var s;
|
|
86
86
|
return (s = i.query) == null ? void 0 : s.locale;
|
|
@@ -110,8 +110,8 @@ function I(e, i) {
|
|
|
110
110
|
contactPoint: []
|
|
111
111
|
// https://schema.org/ContactPoint
|
|
112
112
|
};
|
|
113
|
-
s.name = m(a.value, f.value, l.value), s.name = s.name ? s.name.substring(0, 4999) : s.name, s.description = m(o.value, f.value, l.value), s.description = s.description ? s.description.substring(0, 4999) : s.description, s.license =
|
|
114
|
-
|
|
113
|
+
s.name = m(a.value, f.value, l.value), s.name = s.name ? s.name.substring(0, 4999) : s.name, s.description = m(o.value, f.value, l.value), s.description = s.description ? s.description.substring(0, 4999) : s.description, s.license = I(e).value, s.spatialCoverage = T(r.value), s.identifier = g.value, H(p.value) && p.value.forEach((t) => {
|
|
114
|
+
z(t) && s.keywords.push(t.title);
|
|
115
115
|
}), s.catalog = {
|
|
116
116
|
"@type": "DataCatalog",
|
|
117
117
|
name: (S = m(c.value.title, f.value, l)) == null ? void 0 : S.substring(0, 4999),
|
|
@@ -125,15 +125,15 @@ function I(e, i) {
|
|
|
125
125
|
}, D.value.forEach((t) => {
|
|
126
126
|
const v = {
|
|
127
127
|
"@type": "DataDownload",
|
|
128
|
-
name:
|
|
129
|
-
encodingFormat:
|
|
128
|
+
name: N(t, f.value, l.value),
|
|
129
|
+
encodingFormat: k(t),
|
|
130
130
|
license: b(t.licence),
|
|
131
131
|
contentSize: t.byteSize,
|
|
132
132
|
datePublished: t.releaseDate,
|
|
133
133
|
dateModified: t.modificationDate,
|
|
134
134
|
contentUrl: void 0
|
|
135
135
|
};
|
|
136
|
-
|
|
136
|
+
q(t) && (v.contentUrl = t.accessUrl[0]), s.distribution.push(v);
|
|
137
137
|
});
|
|
138
138
|
const y = j.value;
|
|
139
139
|
return y.name && !u(y.name) && s.creator.push({
|
|
@@ -154,8 +154,8 @@ function I(e, i) {
|
|
|
154
154
|
}), s;
|
|
155
155
|
});
|
|
156
156
|
}
|
|
157
|
-
function
|
|
158
|
-
const e = x(), i = E(), a = n(() =>
|
|
157
|
+
function W() {
|
|
158
|
+
const e = x(), i = E(), a = n(() => G(e, i).value), o = n(() => [{
|
|
159
159
|
type: "application/ld+json",
|
|
160
160
|
textContent: JSON.stringify({ ...a.value }, null, 2)
|
|
161
161
|
}]);
|
|
@@ -185,6 +185,10 @@ function B() {
|
|
|
185
185
|
{
|
|
186
186
|
name: "robots",
|
|
187
187
|
content: "index"
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
name: "dataset_type",
|
|
191
|
+
content: () => n(() => e.getters["datasetDetails/getIsHvd"] ? "High-Value Dataset" : "Dataset").value
|
|
188
192
|
}
|
|
189
193
|
],
|
|
190
194
|
script: o,
|
|
@@ -196,6 +200,6 @@ function B() {
|
|
|
196
200
|
};
|
|
197
201
|
}
|
|
198
202
|
export {
|
|
199
|
-
|
|
203
|
+
W as useDatasetDetailsDatasetHead
|
|
200
204
|
};
|
|
201
205
|
//# sourceMappingURL=useDatasetDetailsDatasetHead.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDatasetDetailsDatasetHead.mjs","sources":["../../../lib/composables/head/useDatasetDetailsDatasetHead.ts"],"sourcesContent":["import { useHead } from '@unhead/vue';\nimport { ComputedRef, computed } from 'vue';\nimport { RouteLocationNormalizedLoaded, useRoute } from 'vue-router';\nimport { getTranslationFor } from '../../utils/helpers';\nimport { Store, useStore } from 'vuex';\nimport {\n has,\n isNil,\n isArray,\n} from 'lodash';\n\nfunction showArray(array: unknown) {\n return !isNil(array) && isArray(array) && array.length > 0;\n}\nfunction showObjectArray(objectArray: Array<unknown>) {\n return showArray(objectArray) && !objectArray.reduce((objectUndefined: any, currentObject: any) => objectUndefined && Object.values(currentObject).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true), true);\n}\nfunction showKeyword(keyword: any) {\n return has(keyword, 'id')\n && has(keyword, 'title')\n && !isNil(keyword.id)\n && !isNil(keyword.title);\n}\n\n/** \n * Returns a schema.org license object by providing dcat-ap license\n * See https://schema.org/license\n * See https://confluencesrv.fokus.fraunhofer.de/pages/viewpage.action?spaceKey=PIV&title=DCAT-AP+Guide\n */\nfunction getSchemaOfLicense(license: any) {\n if (!license) return null;\n\n const {\n id, description, resource, la_url: laUrl,\n } = license;\n\n if (!id && !description && !resource && !laUrl) return null;\n\n const licenseObject = {\n '@type': 'CreativeWork',\n ...id && { '@id': id },\n ...description && { description },\n ...(resource || laUrl) && { url: (resource || laUrl) },\n\n };\n\n return licenseObject;\n}\n\n/** \n * Returns a json-ld object of the license of the first distribution where a license exists in this dataset\n * or null, if first distribution or license does not exist\n */\nfunction getSchemaOfFirstAvailableLicense(store: Store<any>) {\n\n const getLicences = computed(() => store.getters['datasetDetails/getLicences']);\n\n return computed(() => {\n const licenses = getLicences.value;\n let license = null;\n\n if (licenses && licenses.length > 0) {\n const distributionLicense = licenses.find((l: any) => l && (l.title || l.description || l.id || l.resource));\n\n if (distributionLicense) {\n license = getSchemaOfLicense(distributionLicense);\n }\n }\n return license;\n })\n}\n\nfunction getSchemaOfSpatialCoverage(spatialObject: any) {\n let spatialCoverage: any[] | any = [];\n const spatial = spatialObject ? (spatialObject.length ? spatialObject[0] : spatialObject) : null;\n\n if (!spatial) return [];\n\n if (spatial.type === 'Polygon') {\n const places: any[] = [];\n const polygons: any[] = spatial.coordinates;\n polygons.forEach((polygon: any[]) => {\n let poly = '';\n poly = polygon.map(coordinate => coordinate.join(',')).join(' ');\n const geoShape = {\n '@type': 'GeoShape',\n polygon: poly,\n };\n places.push({\n '@type': 'Place',\n geo: geoShape,\n });\n });\n\n spatialCoverage = places;\n } else if (spatial.type === 'Point') {\n spatialCoverage = {\n '@type': 'Place',\n geo: {\n '@type': 'GeoCoordinates',\n latitude: spatial.coordinates[0],\n longitude: spatial.coordinates[1],\n },\n };\n }\n\n return spatialCoverage;\n}\n\nfunction getDistributionTitle(distribution: any, locale: any, languages: any) {\n return distribution.title ? getTranslationFor(distribution.title, locale, languages) : '-';\n}\nfunction getDistributionFormat(distribution: any) {\n return has(distribution, 'format.label') && !isNil(distribution.format.label) ? distribution.format.label : '';\n}\nfunction showAccessUrls(distribution: any) {\n return has(distribution, 'accessUrl') && showArray(distribution.accessUrl);\n}\n\nfunction getSchemaOrg(store: Store<any>, route: RouteLocationNormalizedLoaded) {\n const getTitle: ComputedRef<string> = computed(() => store.getters['datasetDetails/getTitle'] as string || '');\n const getDescription: ComputedRef<string> = computed(() => store.getters['datasetDetails/getDescription'] as string || '');\n const getLanguages = computed(() => store.getters['datasetDetails/getLanguages']);\n const getSpatial = computed(() => store.getters['datasetDetails/getSpatial']);\n const getOtherIdentifiers = computed(() => store.getters['datasetDetails/getOtherIdentifiers']);\n const getKeywords = computed(() => store.getters['datasetDetails/getKeywords']);\n const getCatalog = computed(() => store.getters['datasetDetails/getCatalog']);\n const getDistributions = computed(() => store.getters['datasetDetails/getDistributions']);\n const getPublisher = computed(() => store.getters['datasetDetails/getPublisher']);\n const getContactPoints = computed(() => store.getters['datasetDetails/getContactPoints']);\n\n const computedLocale = computed(() => {\n return route.query?.locale;\n });\n\n return computed(() => {\n // PAYLOAD\n const payload = {\n '@context': 'http://schema.org',\n '@type': 'Dataset',\n name: '', // https://schema.org/Dataset\n description: '', // https://schema.org/Dataset\n license: {}, // https://schema.org/Dataset\n spatialCoverage: {}, // https://schema.org/Dataset\n keywords: [] as any[], // https://schema.org/Dataset\n catalog: {}, // https://schema.org/DataCatalog\n identifier: [] as any[],\n distribution: [] as any[], // https://schema.org/DataDownload\n creator: [] as any[], // https://schema.org/Organization\n contactPoint: [] as any[], // https://schema.org/ContactPoint\n };\n\n // https://schema.org/Dataset\n payload.name = getTranslationFor(getTitle.value, computedLocale.value, getLanguages.value);\n payload.name = payload.name ? payload.name.substring(0, 4999) : payload.name;\n payload.description = getTranslationFor(getDescription.value, computedLocale.value, getLanguages.value);\n payload.description = payload.description ? payload.description.substring(0, 4999) : payload.description;\n payload.license = getSchemaOfFirstAvailableLicense(store).value;\n payload.spatialCoverage = getSchemaOfSpatialCoverage(getSpatial.value);\n payload.identifier = getOtherIdentifiers.value;\n if (showObjectArray(getKeywords.value)) {\n getKeywords.value.forEach((keyword: any) => {\n if (showKeyword(keyword)) {\n payload.keywords.push(keyword.title);\n }\n });\n }\n\n // https://schema.org/DataCatalog\n payload.catalog = {\n '@type': 'DataCatalog',\n name: getTranslationFor(getCatalog.value.title, computedLocale.value, getLanguages)?.substring(0, 4999),\n description: getTranslationFor(getCatalog.value.description, computedLocale.value, getLanguages)?.substring(0, 4999),\n // publisher: getCatalog.value.publisher,\n url: getCatalog.value.homepage,\n // inLanguage: isArray(getCatalog.value.language) ? getCatalog.value.language[0] : getCatalog.value.language,\n license: getSchemaOfLicense(getCatalog.value.license),\n dateModified: getCatalog.value.modificationDate,\n spatialCoverage: getSchemaOfSpatialCoverage(getCatalog.value.getSpatial),\n };\n\n // https://schema.org/DataDownload\n getDistributions.value.forEach((distro: any) => {\n const distroResult = {\n '@type': 'DataDownload',\n name: getDistributionTitle(distro, computedLocale.value, getLanguages.value),\n encodingFormat: getDistributionFormat(distro),\n license: getSchemaOfLicense(distro.licence),\n contentSize: distro.byteSize,\n datePublished: distro.releaseDate,\n dateModified: distro.modificationDate,\n contentUrl: undefined,\n };\n if (showAccessUrls(distro)) {\n distroResult.contentUrl = distro.accessUrl[0];\n }\n payload.distribution.push(distroResult);\n });\n\n // https://schema.org/Organization\n const publisher = getPublisher.value;\n if (publisher.name && !isNil(publisher.name)) {\n payload.creator.push({\n '@type': 'Organization',\n name: publisher.name,\n });\n }\n\n // https://schema.org/ContactPoint\n getContactPoints.value.forEach((contactPoint: any) => {\n const hasName = has(contactPoint, 'name') && !isNil(contactPoint.name);\n const hasEmail = has(contactPoint, 'email') && !isNil(contactPoint.email);\n const hasAddress = has(contactPoint, 'address') && !isNil(contactPoint.address);\n const hasTelephone = has(contactPoint, 'telephone') && !isNil(contactPoint.telephone);\n if ((hasName || hasEmail || hasAddress || hasTelephone)) {\n const c = {\n '@type': 'ContactPoint',\n name: undefined,\n email: undefined,\n address: undefined,\n telephone: undefined,\n };\n\n if (hasName) c.name = contactPoint!.name;\n if (hasEmail) c.email = contactPoint.email;\n if (hasAddress) c.address = contactPoint.address;\n if (hasTelephone) c.telephone = contactPoint.telephone;\n\n payload.contactPoint.push(c);\n }\n });\n return payload;\n });\n}\n\nexport function useDatasetDetailsDatasetHead() {\n const store = useStore();\n const route = useRoute();\n\n const datasetSchema = computed(() => {\n return getSchemaOrg(store, route).value;\n })\n\n const schemaOrg = computed(() => [{\n type: 'application/ld+json',\n textContent: JSON.stringify({ ...datasetSchema.value }, null, 2),\n }])\n\n const head = useHead({\n meta: [\n {\n name: 'description',\n vmid: 'description',\n content: () => {\n const getDescription: ComputedRef<string> = computed(() => store.getters['datasetDetails/getDescription'] as string || '');\n const getTitle: ComputedRef<string> = computed(() => store.getters['datasetDetails/getTitle'] as string || '');\n const getLanguages = computed(() => store.getters['datasetDetails/getLanguages']);\n const computedLocale = computed(() => {\n return route.query?.locale;\n });\n return getTranslationFor(getDescription.value, computedLocale.value, getLanguages.value) || getTranslationFor(getTitle.value, computedLocale.value, getLanguages.value);\n },\n },\n {\n name: 'keywords',\n vmid: 'keywords',\n content: () => {\n const getKeywords = computed(() => store.getters['datasetDetails/getKeywords']);\n return getKeywords.value.map((keyword: any) => keyword.title).join(' ');\n },\n },\n {\n name: 'subject',\n vmid: 'subject',\n },\n {\n name: 'robots',\n content: 'index',\n },\n ],\n script: schemaOrg,\n link: [\n { rel: 'canonical', href: window.location.href },\n ],\n })\n \n return {\n head,\n schemaOrg,\n }\n}"],"names":["showArray","array","isNil","isArray","showObjectArray","objectArray","objectUndefined","currentObject","keyUndefined","currentValue","showKeyword","keyword","has","getSchemaOfLicense","license","id","description","resource","laUrl","getSchemaOfFirstAvailableLicense","store","getLicences","computed","licenses","distributionLicense","l","getSchemaOfSpatialCoverage","spatialObject","spatialCoverage","spatial","places","polygon","poly","coordinate","geoShape","getDistributionTitle","distribution","locale","languages","getTranslationFor","getDistributionFormat","showAccessUrls","getSchemaOrg","route","getTitle","getDescription","getLanguages","getSpatial","getOtherIdentifiers","getKeywords","getCatalog","getDistributions","getPublisher","getContactPoints","computedLocale","_a","payload","_b","distro","distroResult","publisher","contactPoint","hasName","hasEmail","hasAddress","hasTelephone","c","useDatasetDetailsDatasetHead","useStore","useRoute","datasetSchema","schemaOrg","useHead"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useDatasetDetailsDatasetHead.mjs","sources":["../../../lib/composables/head/useDatasetDetailsDatasetHead.ts"],"sourcesContent":["import { useHead } from '@unhead/vue';\nimport { ComputedRef, computed } from 'vue';\nimport { RouteLocationNormalizedLoaded, useRoute } from 'vue-router';\nimport { getTranslationFor } from '../../utils/helpers';\nimport { Store, useStore } from 'vuex';\nimport {\n has,\n isNil,\n isArray,\n} from 'lodash';\n\nfunction showArray(array: unknown) {\n return !isNil(array) && isArray(array) && array.length > 0;\n}\nfunction showObjectArray(objectArray: Array<unknown>) {\n return showArray(objectArray) && !objectArray.reduce((objectUndefined: any, currentObject: any) => objectUndefined && Object.values(currentObject).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true), true);\n}\nfunction showKeyword(keyword: any) {\n return has(keyword, 'id')\n && has(keyword, 'title')\n && !isNil(keyword.id)\n && !isNil(keyword.title);\n}\n\n/**\n * Returns a schema.org license object by providing dcat-ap license\n * See https://schema.org/license\n * See https://confluencesrv.fokus.fraunhofer.de/pages/viewpage.action?spaceKey=PIV&title=DCAT-AP+Guide\n */\nfunction getSchemaOfLicense(license: any) {\n if (!license) return null;\n\n const {\n id, description, resource, la_url: laUrl,\n } = license;\n\n if (!id && !description && !resource && !laUrl) return null;\n\n const licenseObject = {\n '@type': 'CreativeWork',\n ...id && { '@id': id },\n ...description && { description },\n ...(resource || laUrl) && { url: (resource || laUrl) },\n\n };\n\n return licenseObject;\n}\n\n/**\n * Returns a json-ld object of the license of the first distribution where a license exists in this dataset\n * or null, if first distribution or license does not exist\n */\nfunction getSchemaOfFirstAvailableLicense(store: Store<any>) {\n\n const getLicences = computed(() => store.getters['datasetDetails/getLicences']);\n\n return computed(() => {\n const licenses = getLicences.value;\n let license = null;\n\n if (licenses && licenses.length > 0) {\n const distributionLicense = licenses.find((l: any) => l && (l.title || l.description || l.id || l.resource));\n\n if (distributionLicense) {\n license = getSchemaOfLicense(distributionLicense);\n }\n }\n return license;\n })\n}\n\nfunction getSchemaOfSpatialCoverage(spatialObject: any) {\n let spatialCoverage: any[] | any = [];\n const spatial = spatialObject ? (spatialObject.length ? spatialObject[0] : spatialObject) : null;\n\n if (!spatial) return [];\n\n if (spatial.type === 'Polygon') {\n const places: any[] = [];\n const polygons: any[] = spatial.coordinates;\n polygons.forEach((polygon: any[]) => {\n let poly = '';\n poly = polygon.map(coordinate => coordinate.join(',')).join(' ');\n const geoShape = {\n '@type': 'GeoShape',\n polygon: poly,\n };\n places.push({\n '@type': 'Place',\n geo: geoShape,\n });\n });\n\n spatialCoverage = places;\n } else if (spatial.type === 'Point') {\n spatialCoverage = {\n '@type': 'Place',\n geo: {\n '@type': 'GeoCoordinates',\n latitude: spatial.coordinates[0],\n longitude: spatial.coordinates[1],\n },\n };\n }\n\n return spatialCoverage;\n}\n\nfunction getDistributionTitle(distribution: any, locale: any, languages: any) {\n return distribution.title ? getTranslationFor(distribution.title, locale, languages) : '-';\n}\nfunction getDistributionFormat(distribution: any) {\n return has(distribution, 'format.label') && !isNil(distribution.format.label) ? distribution.format.label : '';\n}\nfunction showAccessUrls(distribution: any) {\n return has(distribution, 'accessUrl') && showArray(distribution.accessUrl);\n}\n\nfunction getSchemaOrg(store: Store<any>, route: RouteLocationNormalizedLoaded) {\n const getTitle: ComputedRef<string> = computed(() => store.getters['datasetDetails/getTitle'] as string || '');\n const getDescription: ComputedRef<string> = computed(() => store.getters['datasetDetails/getDescription'] as string || '');\n const getLanguages = computed(() => store.getters['datasetDetails/getLanguages']);\n const getSpatial = computed(() => store.getters['datasetDetails/getSpatial']);\n const getOtherIdentifiers = computed(() => store.getters['datasetDetails/getOtherIdentifiers']);\n const getKeywords = computed(() => store.getters['datasetDetails/getKeywords']);\n const getCatalog = computed(() => store.getters['datasetDetails/getCatalog']);\n const getDistributions = computed(() => store.getters['datasetDetails/getDistributions']);\n const getPublisher = computed(() => store.getters['datasetDetails/getPublisher']);\n const getContactPoints = computed(() => store.getters['datasetDetails/getContactPoints']);\n\n const computedLocale = computed(() => {\n return route.query?.locale;\n });\n\n return computed(() => {\n // PAYLOAD\n const payload = {\n '@context': 'http://schema.org',\n '@type': 'Dataset',\n name: '', // https://schema.org/Dataset\n description: '', // https://schema.org/Dataset\n license: {}, // https://schema.org/Dataset\n spatialCoverage: {}, // https://schema.org/Dataset\n keywords: [] as any[], // https://schema.org/Dataset\n catalog: {}, // https://schema.org/DataCatalog\n identifier: [] as any[],\n distribution: [] as any[], // https://schema.org/DataDownload\n creator: [] as any[], // https://schema.org/Organization\n contactPoint: [] as any[], // https://schema.org/ContactPoint\n };\n\n // https://schema.org/Dataset\n payload.name = getTranslationFor(getTitle.value, computedLocale.value, getLanguages.value);\n payload.name = payload.name ? payload.name.substring(0, 4999) : payload.name;\n payload.description = getTranslationFor(getDescription.value, computedLocale.value, getLanguages.value);\n payload.description = payload.description ? payload.description.substring(0, 4999) : payload.description;\n payload.license = getSchemaOfFirstAvailableLicense(store).value;\n payload.spatialCoverage = getSchemaOfSpatialCoverage(getSpatial.value);\n payload.identifier = getOtherIdentifiers.value;\n if (showObjectArray(getKeywords.value)) {\n getKeywords.value.forEach((keyword: any) => {\n if (showKeyword(keyword)) {\n payload.keywords.push(keyword.title);\n }\n });\n }\n\n // https://schema.org/DataCatalog\n payload.catalog = {\n '@type': 'DataCatalog',\n name: getTranslationFor(getCatalog.value.title, computedLocale.value, getLanguages)?.substring(0, 4999),\n description: getTranslationFor(getCatalog.value.description, computedLocale.value, getLanguages)?.substring(0, 4999),\n // publisher: getCatalog.value.publisher,\n url: getCatalog.value.homepage,\n // inLanguage: isArray(getCatalog.value.language) ? getCatalog.value.language[0] : getCatalog.value.language,\n license: getSchemaOfLicense(getCatalog.value.license),\n dateModified: getCatalog.value.modificationDate,\n spatialCoverage: getSchemaOfSpatialCoverage(getCatalog.value.getSpatial),\n };\n\n // https://schema.org/DataDownload\n getDistributions.value.forEach((distro: any) => {\n const distroResult = {\n '@type': 'DataDownload',\n name: getDistributionTitle(distro, computedLocale.value, getLanguages.value),\n encodingFormat: getDistributionFormat(distro),\n license: getSchemaOfLicense(distro.licence),\n contentSize: distro.byteSize,\n datePublished: distro.releaseDate,\n dateModified: distro.modificationDate,\n contentUrl: undefined,\n };\n if (showAccessUrls(distro)) {\n distroResult.contentUrl = distro.accessUrl[0];\n }\n payload.distribution.push(distroResult);\n });\n\n // https://schema.org/Organization\n const publisher = getPublisher.value;\n if (publisher.name && !isNil(publisher.name)) {\n payload.creator.push({\n '@type': 'Organization',\n name: publisher.name,\n });\n }\n\n // https://schema.org/ContactPoint\n getContactPoints.value.forEach((contactPoint: any) => {\n const hasName = has(contactPoint, 'name') && !isNil(contactPoint.name);\n const hasEmail = has(contactPoint, 'email') && !isNil(contactPoint.email);\n const hasAddress = has(contactPoint, 'address') && !isNil(contactPoint.address);\n const hasTelephone = has(contactPoint, 'telephone') && !isNil(contactPoint.telephone);\n if ((hasName || hasEmail || hasAddress || hasTelephone)) {\n const c = {\n '@type': 'ContactPoint',\n name: undefined,\n email: undefined,\n address: undefined,\n telephone: undefined,\n };\n\n if (hasName) c.name = contactPoint!.name;\n if (hasEmail) c.email = contactPoint.email;\n if (hasAddress) c.address = contactPoint.address;\n if (hasTelephone) c.telephone = contactPoint.telephone;\n\n payload.contactPoint.push(c);\n }\n });\n return payload;\n });\n}\n\nexport function useDatasetDetailsDatasetHead() {\n const store = useStore();\n const route = useRoute();\n\n const datasetSchema = computed(() => {\n return getSchemaOrg(store, route).value;\n })\n\n const schemaOrg = computed(() => [{\n type: 'application/ld+json',\n textContent: JSON.stringify({ ...datasetSchema.value }, null, 2),\n }])\n\n const head = useHead({\n meta: [\n {\n name: 'description',\n vmid: 'description',\n content: () => {\n const getDescription: ComputedRef<string> = computed(() => store.getters['datasetDetails/getDescription'] as string || '');\n const getTitle: ComputedRef<string> = computed(() => store.getters['datasetDetails/getTitle'] as string || '');\n const getLanguages = computed(() => store.getters['datasetDetails/getLanguages']);\n const computedLocale = computed(() => {\n return route.query?.locale;\n });\n return getTranslationFor(getDescription.value, computedLocale.value, getLanguages.value) || getTranslationFor(getTitle.value, computedLocale.value, getLanguages.value);\n },\n },\n {\n name: 'keywords',\n vmid: 'keywords',\n content: () => {\n const getKeywords = computed(() => store.getters['datasetDetails/getKeywords']);\n return getKeywords.value.map((keyword: any) => keyword.title).join(' ');\n },\n },\n {\n name: 'subject',\n vmid: 'subject',\n },\n {\n name: 'robots',\n content: 'index',\n },\n {\n name: 'dataset_type',\n content: () => {\n // return store.getters['datasetDetails/getIsHvd'] ? 'High-Value Dataset' : 'Dataset';\n return computed(() => (store.getters['datasetDetails/getIsHvd'] ? 'High-Value Dataset' : 'Dataset')).value;\n }\n }\n ],\n script: schemaOrg,\n link: [\n { rel: 'canonical', href: window.location.href },\n ],\n })\n\n return {\n head,\n schemaOrg,\n }\n}\n"],"names":["showArray","array","isNil","isArray","showObjectArray","objectArray","objectUndefined","currentObject","keyUndefined","currentValue","showKeyword","keyword","has","getSchemaOfLicense","license","id","description","resource","laUrl","getSchemaOfFirstAvailableLicense","store","getLicences","computed","licenses","distributionLicense","l","getSchemaOfSpatialCoverage","spatialObject","spatialCoverage","spatial","places","polygon","poly","coordinate","geoShape","getDistributionTitle","distribution","locale","languages","getTranslationFor","getDistributionFormat","showAccessUrls","getSchemaOrg","route","getTitle","getDescription","getLanguages","getSpatial","getOtherIdentifiers","getKeywords","getCatalog","getDistributions","getPublisher","getContactPoints","computedLocale","_a","payload","_b","distro","distroResult","publisher","contactPoint","hasName","hasEmail","hasAddress","hasTelephone","c","useDatasetDetailsDatasetHead","useStore","useRoute","datasetSchema","schemaOrg","useHead"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ export declare function useRuntimeEnv(): {
|
|
|
12
12
|
hubUrl: string;
|
|
13
13
|
qualityBaseUrl: string;
|
|
14
14
|
similarityBaseUrl: string;
|
|
15
|
-
|
|
15
|
+
similarityServiceName: string;
|
|
16
16
|
fileUploadUrl: string;
|
|
17
17
|
sparqlUrl: string;
|
|
18
18
|
gazetteerBaseUrl: string;
|
|
@@ -4,7 +4,7 @@ export declare const apiSchema: z.ZodObject<{
|
|
|
4
4
|
hubUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
5
5
|
qualityBaseUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
6
6
|
similarityBaseUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
7
|
-
|
|
7
|
+
similarityServiceName: z.ZodDefault<z.ZodString>;
|
|
8
8
|
fileUploadUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
9
9
|
sparqlUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
10
10
|
gazetteerBaseUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
@@ -14,7 +14,7 @@ export declare const apiSchema: z.ZodObject<{
|
|
|
14
14
|
hubUrl: string;
|
|
15
15
|
qualityBaseUrl: string;
|
|
16
16
|
similarityBaseUrl: string;
|
|
17
|
-
|
|
17
|
+
similarityServiceName: string;
|
|
18
18
|
fileUploadUrl: string;
|
|
19
19
|
sparqlUrl: string;
|
|
20
20
|
gazetteerBaseUrl: string;
|
|
@@ -28,5 +28,5 @@ export declare const apiSchema: z.ZodObject<{
|
|
|
28
28
|
sparqlUrl: string;
|
|
29
29
|
gazetteerBaseUrl: string;
|
|
30
30
|
corsproxyApiUrl: string;
|
|
31
|
-
|
|
31
|
+
similarityServiceName?: string | undefined;
|
|
32
32
|
}>;
|
|
@@ -7,7 +7,7 @@ const i = s({
|
|
|
7
7
|
hubUrl: r().url().transform(a),
|
|
8
8
|
qualityBaseUrl: r().url().transform(a),
|
|
9
9
|
similarityBaseUrl: r().url().transform(a),
|
|
10
|
-
|
|
10
|
+
similarityServiceName: r().default("similarities"),
|
|
11
11
|
fileUploadUrl: r().url().transform(a),
|
|
12
12
|
sparqlUrl: r().url().transform(a),
|
|
13
13
|
gazetteerBaseUrl: r().url().transform(a),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiSchema.mjs","sources":["../../../lib/configurations/config-schema/apiSchema.ts"],"sourcesContent":["import * as z from 'zod'\n\n/**\n * Add trailing slash to url if it doesn't have one\n */\nfunction addTrailingSlash(url: string) {\n if (url.endsWith('/'))\n return url\n\n return `${url}/`\n}\n\nexport const apiSchema = z.object({\n baseUrl: z.string().url().transform(addTrailingSlash),\n hubUrl: z.string().url().transform(addTrailingSlash),\n qualityBaseUrl: z.string().url().transform(addTrailingSlash),\n similarityBaseUrl: z.string().url().transform(addTrailingSlash),\n
|
|
1
|
+
{"version":3,"file":"apiSchema.mjs","sources":["../../../lib/configurations/config-schema/apiSchema.ts"],"sourcesContent":["import * as z from 'zod'\n\n/**\n * Add trailing slash to url if it doesn't have one\n */\nfunction addTrailingSlash(url: string) {\n if (url.endsWith('/'))\n return url\n\n return `${url}/`\n}\n\nexport const apiSchema = z.object({\n baseUrl: z.string().url().transform(addTrailingSlash),\n hubUrl: z.string().url().transform(addTrailingSlash),\n qualityBaseUrl: z.string().url().transform(addTrailingSlash),\n similarityBaseUrl: z.string().url().transform(addTrailingSlash),\n similarityServiceName: z.string().default('similarities'),\n fileUploadUrl: z.string().url().transform(addTrailingSlash),\n sparqlUrl: z.string().url().transform(addTrailingSlash),\n gazetteerBaseUrl: z.string().url().transform(addTrailingSlash),\n corsproxyApiUrl: z.string().url().transform(addTrailingSlash),\n})\n"],"names":["addTrailingSlash","url","apiSchema","z.object","z.string"],"mappings":";AAKA,SAASA,EAAiBC,GAAa;AACjC,SAAAA,EAAI,SAAS,GAAG,IACXA,IAEF,GAAGA,CAAG;AACf;AAEa,MAAAC,IAAYC,EAAS;AAAA,EAChC,SAASC,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EACpD,QAAQI,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EACnD,gBAAgBI,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EAC3D,mBAAmBI,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EAC9D,uBAAuBI,EAAS,EAAE,QAAQ,cAAc;AAAA,EACxD,eAAeA,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EAC1D,WAAWI,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EACtD,kBAAkBI,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAAA,EAC7D,iBAAiBI,IAAW,IAAI,EAAE,UAAUJ,CAAgB;AAC9D,CAAC;"}
|
|
@@ -6,7 +6,7 @@ export declare const configSchema: z.ZodObject<{
|
|
|
6
6
|
hubUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
7
7
|
qualityBaseUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
8
8
|
similarityBaseUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
9
|
-
|
|
9
|
+
similarityServiceName: z.ZodDefault<z.ZodString>;
|
|
10
10
|
fileUploadUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
11
11
|
sparqlUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
12
12
|
gazetteerBaseUrl: z.ZodEffects<z.ZodString, string, string>;
|
|
@@ -16,7 +16,7 @@ export declare const configSchema: z.ZodObject<{
|
|
|
16
16
|
hubUrl: string;
|
|
17
17
|
qualityBaseUrl: string;
|
|
18
18
|
similarityBaseUrl: string;
|
|
19
|
-
|
|
19
|
+
similarityServiceName: string;
|
|
20
20
|
fileUploadUrl: string;
|
|
21
21
|
sparqlUrl: string;
|
|
22
22
|
gazetteerBaseUrl: string;
|
|
@@ -30,7 +30,7 @@ export declare const configSchema: z.ZodObject<{
|
|
|
30
30
|
sparqlUrl: string;
|
|
31
31
|
gazetteerBaseUrl: string;
|
|
32
32
|
corsproxyApiUrl: string;
|
|
33
|
-
|
|
33
|
+
similarityServiceName?: string | undefined;
|
|
34
34
|
}>;
|
|
35
35
|
authentication: z.ZodDefault<z.ZodObject<{
|
|
36
36
|
useService: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -2085,7 +2085,7 @@ export declare const configSchema: z.ZodObject<{
|
|
|
2085
2085
|
hubUrl: string;
|
|
2086
2086
|
qualityBaseUrl: string;
|
|
2087
2087
|
similarityBaseUrl: string;
|
|
2088
|
-
|
|
2088
|
+
similarityServiceName: string;
|
|
2089
2089
|
fileUploadUrl: string;
|
|
2090
2090
|
sparqlUrl: string;
|
|
2091
2091
|
gazetteerBaseUrl: string;
|
|
@@ -2402,7 +2402,7 @@ export declare const configSchema: z.ZodObject<{
|
|
|
2402
2402
|
sparqlUrl: string;
|
|
2403
2403
|
gazetteerBaseUrl: string;
|
|
2404
2404
|
corsproxyApiUrl: string;
|
|
2405
|
-
|
|
2405
|
+
similarityServiceName?: string | undefined;
|
|
2406
2406
|
};
|
|
2407
2407
|
metadata?: {
|
|
2408
2408
|
title?: string | undefined;
|
|
@@ -126,11 +126,11 @@ declare const _default: import('vue').DefineComponent<Readonly<import('vue').Com
|
|
|
126
126
|
isLocatedOnAuthorizedDatasetPage(): any;
|
|
127
127
|
isLocatedOnAuthorizedCatalogPage(): any;
|
|
128
128
|
getUserData: import('vuex').Computed;
|
|
129
|
+
getTitle: import('vuex').Computed;
|
|
130
|
+
getDescription: import('vuex').Computed;
|
|
129
131
|
getCatalog: import('vuex').Computed;
|
|
130
132
|
getLoading: import('vuex').Computed;
|
|
131
|
-
getDescription: import('vuex').Computed;
|
|
132
133
|
getID: import('vuex').Computed;
|
|
133
|
-
getTitle: import('vuex').Computed;
|
|
134
134
|
}, {
|
|
135
135
|
setupKeycloakWatcher(): void;
|
|
136
136
|
handleConfirm(action: any, argsObj: any, { successMessage, errorMessage }: {
|