@piveau/piveau-hub-ui-modules 4.4.28 → 4.5.0

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.
Files changed (71) hide show
  1. package/dist/configurations/configureComponents.mjs +20 -18
  2. package/dist/configurations/configureComponents.mjs.map +1 -1
  3. package/dist/data-provider-interface/DataProviderInterface.vue.d.ts +378 -20
  4. package/dist/data-provider-interface/DataProviderInterface.vue.mjs.map +1 -1
  5. package/dist/data-provider-interface/DataProviderInterface.vue2.mjs +36 -25
  6. package/dist/data-provider-interface/DataProviderInterface.vue2.mjs.map +1 -1
  7. package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs +92 -89
  8. package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs.map +1 -1
  9. package/dist/data-provider-interface/components/ConditionalInput.vue.mjs +104 -107
  10. package/dist/data-provider-interface/components/ConditionalInput.vue.mjs.map +1 -1
  11. package/dist/data-provider-interface/components/SpatialInput.vue.mjs +190 -148
  12. package/dist/data-provider-interface/components/SpatialInput.vue.mjs.map +1 -1
  13. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.mjs +19 -8
  14. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.mjs.map +1 -1
  15. package/dist/data-provider-interface/composables/aucotomplete.d.ts +27 -0
  16. package/dist/data-provider-interface/composables/aucotomplete.mjs +52 -0
  17. package/dist/data-provider-interface/composables/aucotomplete.mjs.map +1 -0
  18. package/dist/data-provider-interface/composables/index.d.ts +4 -0
  19. package/dist/data-provider-interface/composables/useDpiContext.mjs +7 -9
  20. package/dist/data-provider-interface/composables/useDpiContext.mjs.map +1 -1
  21. package/dist/data-provider-interface/composables/useRequestUriName.d.ts +18 -0
  22. package/dist/data-provider-interface/composables/useRequestUriName.mjs +59 -0
  23. package/dist/data-provider-interface/composables/useRequestUriName.mjs.map +1 -0
  24. package/dist/data-provider-interface/config/dcatapde/vocab-prefixes.mjs +1 -1
  25. package/dist/data-provider-interface/config/dcatapde/vocab-prefixes.mjs.map +1 -1
  26. package/dist/data-provider-interface/index.mjs +10 -6
  27. package/dist/data-provider-interface/index.mjs.map +1 -1
  28. package/dist/data-provider-interface/store/dpiStore.d.ts +0 -26
  29. package/dist/data-provider-interface/store/dpiStore.mjs +12 -14
  30. package/dist/data-provider-interface/store/dpiStore.mjs.map +1 -1
  31. package/dist/data-provider-interface/views/InputPage.vue.d.ts +368 -20
  32. package/dist/data-provider-interface/views/InputPage.vue.mjs +125 -107
  33. package/dist/data-provider-interface/views/InputPage.vue.mjs.map +1 -1
  34. package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.d.ts +16 -6
  35. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.d.ts +32 -14
  36. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.mjs +27 -31
  37. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.mjs.map +1 -1
  38. package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.d.ts +16 -6
  39. package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.d.ts +8 -3
  40. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.d.ts +8 -3
  41. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs +57 -47
  42. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs.map +1 -1
  43. package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.d.ts +16 -6
  44. package/dist/data-provider-interface/views/OverviewPage.vue.d.ts +367 -20
  45. package/dist/data-provider-interface/views/OverviewPage.vue.mjs +66 -58
  46. package/dist/data-provider-interface/views/OverviewPage.vue.mjs.map +1 -1
  47. package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs +50 -36
  48. package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs.map +1 -1
  49. package/dist/datasetDetails/DatasetDetailsDataset.vue2.mjs +4 -4
  50. package/dist/datasetDetails/DatasetDetailsDataset.vue2.mjs.map +1 -1
  51. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.d.ts +3 -3
  52. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.mjs +3 -3
  53. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.mjs.map +1 -1
  54. package/dist/datasetDetails/features/DatasetDetailsIsUsedBy.vue.mjs +18 -18
  55. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.mjs +58 -50
  56. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.mjs.map +1 -1
  57. package/dist/external/@vueuse/core/index +3 -2
  58. package/dist/external/@vueuse/shared/index +86 -72
  59. package/dist/external/@vueuse/shared/index.map +1 -1
  60. package/dist/form/Repeatable.vue.d.ts +11 -10
  61. package/dist/form/Repeatable.vue.mjs +5 -62
  62. package/dist/form/Repeatable.vue.mjs.map +1 -1
  63. package/dist/form/Repeatable.vue2.mjs +72 -2
  64. package/dist/form/Repeatable.vue2.mjs.map +1 -1
  65. package/dist/form/Repeatable.vue3.mjs +5 -0
  66. package/dist/form/Repeatable.vue3.mjs.map +1 -0
  67. package/dist/piveau-hub-ui-modules.css +1 -1
  68. package/package.json +1 -1
  69. package/dist/data-provider-interface/store/modules/autocompleteStore.d.ts +0 -27
  70. package/dist/data-provider-interface/store/modules/autocompleteStore.mjs +0 -54
  71. package/dist/data-provider-interface/store/modules/autocompleteStore.mjs.map +0 -1
@@ -1,15 +1,15 @@
1
- import f from "axios";
2
- import { mapGetters as p, mapActions as w } from "vuex";
3
- import y from "../components/LanguageSelector.vue.mjs";
1
+ import w from "axios";
2
+ import { mapGetters as u, mapActions as y } from "vuex";
3
+ import b from "../components/LanguageSelector.vue.mjs";
4
4
  import x from "./OverviewPage/DatasetOverview.vue.mjs";
5
5
  import C from "./OverviewPage/CatalogueOverview.vue.mjs";
6
- import { useIntersectionObserver as _ } from "../../external/@vueuse/core/index";
7
- import { useTemplateRef as k, ref as D, resolveComponent as s, openBlock as o, createElementBlock as n, Fragment as I, createElementVNode as r, createTextVNode as l, toDisplayString as L, createVNode as O, createBlock as u, createCommentVNode as v, createStaticVNode as V } from "vue";
6
+ import { useIntersectionObserver as I } from "../../external/@vueuse/core/index";
7
+ import { getCurrentInstance as _, useTemplateRef as k, ref as D, resolveComponent as l, openBlock as o, createElementBlock as r, Fragment as L, createElementVNode as s, createTextVNode as n, toDisplayString as O, createVNode as V, createBlock as v, createCommentVNode as c, createStaticVNode as A } from "vue";
8
8
  import "./OverviewPage.vue2.mjs";
9
- import A from "../../_virtual/_plugin-vue_export-helper.mjs";
10
- const E = {
9
+ import E from "../../_virtual/_plugin-vue_export-helper.mjs";
10
+ const P = {
11
11
  components: {
12
- LanguageSelector: y,
12
+ LanguageSelector: b,
13
13
  DatasetOverview: x,
14
14
  CatalogueOverview: C
15
15
  },
@@ -22,16 +22,17 @@ const E = {
22
22
  }
23
23
  },
24
24
  data() {
25
- var t;
25
+ var a;
26
26
  return {
27
- dpiLocale: ((t = this.$route.query) == null ? void 0 : t.locale) || this.$i18n.locale || this.$i18n.fallbackLocale || "en"
27
+ instance: _().appContext.app.config.globalProperties.$env,
28
+ dpiLocale: ((a = this.$route.query) == null ? void 0 : a.locale) || this.$i18n.locale || this.$i18n.fallbackLocale || "en"
28
29
  };
29
30
  },
30
31
  computed: {
31
- ...p("auth", [
32
+ ...u("auth", [
32
33
  "getIsEditMode"
33
34
  ]),
34
- ...p("dpiStore", [
35
+ ...u("dpiStore", [
35
36
  "getData"
36
37
  ]),
37
38
  showDatasetsOverview() {
@@ -42,7 +43,7 @@ const E = {
42
43
  }
43
44
  },
44
45
  methods: {
45
- ...w("dpiStore", [
46
+ ...y("dpiStore", [
46
47
  "clearAll",
47
48
  "saveLocalstorageValues"
48
49
  ]),
@@ -96,12 +97,12 @@ const E = {
96
97
  // });
97
98
  // }
98
99
  // },
99
- checkID(t) {
100
- this.getIsEditMode || this.checkUniqueID(t).then((e) => {
100
+ checkID(a) {
101
+ this.getIsEditMode || this.checkUniqueID(a).then((e) => {
101
102
  e || this.$router.push({
102
103
  name: "DataProviderInterface-Input",
103
104
  params: {
104
- property: t,
105
+ property: a,
105
106
  page: "step1"
106
107
  },
107
108
  query: {
@@ -111,11 +112,11 @@ const E = {
111
112
  });
112
113
  });
113
114
  },
114
- checkUniqueID(t) {
115
+ checkUniqueID(a) {
115
116
  return new Promise((e) => {
116
- if (this.getData(t)["@id"] !== "") {
117
- const i = `${this.$env.api.hubUrl}${t}/${this.getData(t)["@id"]}?useNormalizedId=true`;
118
- f.head(i).then(() => {
117
+ if (this.getData(a)["@id"] !== "") {
118
+ const i = `${this.$env.api.hubUrl}${a}/${this.getData(a)["@id"]}?useNormalizedId=true`;
119
+ w.head(i).then(() => {
119
120
  e(!1);
120
121
  }).catch(() => {
121
122
  e(!0);
@@ -130,9 +131,9 @@ const E = {
130
131
  });
131
132
  },
132
133
  setup() {
133
- const t = k("overview-page"), e = D(!1);
134
- return _(
135
- t,
134
+ const a = k("overview-page"), e = D(!1);
135
+ return I(
136
+ a,
136
137
  ([{ isIntersecting: i }]) => {
137
138
  e.value = i;
138
139
  },
@@ -141,70 +142,77 @@ const E = {
141
142
  }
142
143
  ), { overviewPageIsVisible: e };
143
144
  }
144
- }, P = {
145
+ }, S = {
145
146
  ref: "overview-page",
146
147
  class: "col-12"
147
- }, S = { class: "mt-5 mb-0" }, M = { class: "row" }, N = { class: "col-10" }, T = {
148
+ }, M = { class: "mt-5 mb-0" }, N = { class: "row" }, T = { class: "col-10" }, q = {
148
149
  key: 0,
149
150
  class: "mb-3"
150
- }, q = {
151
+ }, B = {
151
152
  key: 1,
152
153
  class: "mb-3"
154
+ }, U = {
155
+ key: 0,
156
+ class: "legalnotice py-5",
157
+ style: { width: "90%", margin: "0 auto" }
153
158
  };
154
- function B(t, e, i, c, a, d) {
155
- const b = s("LanguageSelector"), m = s("DatasetOverview"), h = s("CatalogueOverview");
156
- return o(), n(I, null, [
157
- r("div", P, [
158
- r("div", S, [
159
- r("div", M, [
160
- r("div", N, [
161
- l(L(t.$t("message.dataupload.info.selectDisplayLanguage")) + `:
159
+ function $(a, e, i, p, t, d) {
160
+ const m = l("LanguageSelector"), h = l("DatasetOverview"), g = l("CatalogueOverview");
161
+ return o(), r(L, null, [
162
+ s("div", S, [
163
+ s("div", M, [
164
+ s("div", N, [
165
+ s("div", T, [
166
+ n(O(a.$t("message.dataupload.info.selectDisplayLanguage")) + `:
162
167
  `, 1),
163
- O(b, {
168
+ V(m, {
164
169
  class: "ml-1",
165
- modelValue: a.dpiLocale,
166
- "onUpdate:modelValue": e[0] || (e[0] = (g) => a.dpiLocale = g)
170
+ modelValue: t.dpiLocale,
171
+ "onUpdate:modelValue": e[0] || (e[0] = (f) => t.dpiLocale = f)
167
172
  }, null, 8, ["modelValue"])
168
173
  ])
169
174
  ])
170
175
  ]),
171
- e[1] || (e[1] = l()),
172
- d.showDatasetsOverview && c.overviewPageIsVisible ? (o(), n("div", T, [
173
- (o(), u(m, {
174
- dpiLocale: a.dpiLocale,
175
- key: a.dpiLocale
176
+ e[1] || (e[1] = n()),
177
+ d.showDatasetsOverview && p.overviewPageIsVisible ? (o(), r("div", q, [
178
+ (o(), v(h, {
179
+ dpiLocale: t.dpiLocale,
180
+ key: t.dpiLocale
176
181
  }, null, 8, ["dpiLocale"]))
177
- ])) : v("", !0),
178
- e[2] || (e[2] = l()),
179
- d.showCatalogsOverview && c.overviewPageIsVisible ? (o(), n("div", q, [
180
- (o(), u(h, {
181
- dpiLocale: a.dpiLocale,
182
- key: a.dpiLocale
182
+ ])) : c("", !0),
183
+ e[2] || (e[2] = n()),
184
+ d.showCatalogsOverview && p.overviewPageIsVisible ? (o(), r("div", B, [
185
+ (o(), v(g, {
186
+ dpiLocale: t.dpiLocale,
187
+ key: t.dpiLocale
183
188
  }, null, 8, ["dpiLocale"]))
184
- ])) : v("", !0)
189
+ ])) : c("", !0)
185
190
  ], 512),
186
- e[3] || (e[3] = V(` <div class="legalnotice py-5" style="width:90%;margin:0 auto;" data-v-335b2b68><div class="d-flex align-items-start" data-v-335b2b68><svg xmlns="http://www.w3.org/2000/svg" width="30px" height="30px" fill="currentColor" class="bi bi-info-circle mx-3 mb-3 mt-1 infoboxI" viewBox="0 0 16 16" data-v-335b2b68><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16" data-v-335b2b68></path> <path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0" data-v-335b2b68></path></svg> <div class="w-80" data-v-335b2b68><p data-v-335b2b68>For <strong data-v-335b2b68>European</strong> <strong data-v-335b2b68>Commission&#39;s datasets</strong>, bear in mind that <a class="external-link" href="https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32011D0833" target="_blank" rel="nofollow noopener" data-v-335b2b68><ins data-v-335b2b68>Decision 2011/833/EU</ins></a> allows for their commercial
191
+ e[4] || (e[4] = n()),
192
+ t.instance.content.dataProviderInterface.annifIntegration ? (o(), r("div", U, e[3] || (e[3] = [
193
+ A(`<div class="d-flex align-items-start" data-v-a416ae97><svg xmlns="http://www.w3.org/2000/svg" width="30px" height="30px" fill="currentColor" class="bi bi-info-circle mx-3 mb-3 mt-1 infoboxI" viewBox="0 0 16 16" data-v-a416ae97><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16" data-v-a416ae97></path> <path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0" data-v-a416ae97></path></svg> <div class="w-80" data-v-a416ae97><p data-v-a416ae97>For <strong data-v-a416ae97>European</strong> <strong data-v-a416ae97>Commission&#39;s datasets</strong>, bear in mind that <a class="external-link" href="https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32011D0833" target="_blank" rel="nofollow noopener" data-v-a416ae97><ins data-v-a416ae97>Decision 2011/833/EU</ins></a> allows for their commercial
187
194
  reuse
188
195
  without prior authorisation, except for the material subject to the third party intellectual property rights.
189
196
  This
190
- Decision has been implemented under the <a class="external-link" href="https://ec.europa.eu/transparency/documents-register/detail?ref=C(2019)1655&amp;lang=en" target="_blank" rel="nofollow noopener" data-v-335b2b68><ins data-v-335b2b68>Decision C(2019) 1655 final</ins></a> by which Creative Commons
197
+ Decision has been implemented under the <a class="external-link" href="https://ec.europa.eu/transparency/documents-register/detail?ref=C(2019)1655&amp;lang=en" target="_blank" rel="nofollow noopener" data-v-a416ae97><ins data-v-a416ae97>Decision C(2019) 1655 final</ins></a> by which Creative Commons
191
198
  Attribution 4.0
192
199
  International Public License (CC BY 4.0) is adopted as an open licence for the Commission&#39;s reuse policy.
193
200
  Additionally, raw data, metadata or other documents of comparable nature may alternatively be distributed
194
201
  under
195
- the provisions of the Creative Commons Universal Public Domain Dedication deed (CC0 1.0).</p> <p data-v-335b2b68>The <strong data-v-335b2b68>Council</strong> and the <strong data-v-335b2b68>European Court of Auditors</strong> have
196
- approved similar decisions on reuse. It is advisable that you check <strong data-v-335b2b68>the reuse policy of your
197
- organisation</strong> before publishing or submitting your dataset.</p></div></div> <div class="d-flex align-items-start mt-4" data-v-335b2b68><svg xmlns="http://www.w3.org/2000/svg" width="30px" height="30px" fill="currentColor" class="bi bi-info-circle mx-3 mb-3 mt-1 infoboxI" viewBox="0 0 16 16" data-v-335b2b68><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16" data-v-335b2b68></path> <path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0" data-v-335b2b68></path></svg> <div class="w-80" data-v-335b2b68><p data-v-335b2b68>As owner of your dataset, you guarantee that it does not violate the copyright, other intellectual property
202
+ the provisions of the Creative Commons Universal Public Domain Dedication deed (CC0 1.0).</p> <p data-v-a416ae97>The <strong data-v-a416ae97>Council</strong> and the <strong data-v-a416ae97>European Court of Auditors</strong> have
203
+ approved similar decisions on reuse. It is advisable that you check <strong data-v-a416ae97>the reuse policy of your
204
+ organisation</strong> before publishing or submitting your dataset.</p></div></div> <div class="d-flex align-items-start mt-4" data-v-a416ae97><svg xmlns="http://www.w3.org/2000/svg" width="30px" height="30px" fill="currentColor" class="bi bi-info-circle mx-3 mb-3 mt-1 infoboxI" viewBox="0 0 16 16" data-v-a416ae97><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16" data-v-a416ae97></path> <path d="m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0" data-v-a416ae97></path></svg> <div class="w-80" data-v-a416ae97><p data-v-a416ae97>As owner of your dataset, you guarantee that it does not violate the copyright, other intellectual property
198
205
  or
199
206
  privacy rights of any third party. In particular, if third party material is included in the dataset, you must
200
207
  ensure that all necessary permissions have been obtained and appropriate acknowledgment is given, if
201
208
  necessary.
202
- </p> <p data-v-335b2b68>If you need further information regarding <strong data-v-335b2b68>licenses or copyright</strong> issues, please contact us
203
- at <span class="nobr" data-v-335b2b68><a class="external-link" href="mailto:op-copyright@publications.europa.eu" target="_blank" rel="nofollow noopener" data-v-335b2b68>op-copyright@publications.europa.eu</a></span></p></div></div></div>`, 2))
209
+ </p> <p data-v-a416ae97>If you need further information regarding <strong data-v-a416ae97>licenses or copyright</strong> issues, please contact us
210
+ at <span class="nobr" data-v-a416ae97><a class="external-link" href="mailto:op-copyright@publications.europa.eu" target="_blank" rel="nofollow noopener" data-v-a416ae97>op-copyright@publications.europa.eu</a></span></p></div></div>`, 3)
211
+ ]))) : c("", !0)
204
212
  ], 64);
205
213
  }
206
- const H = /* @__PURE__ */ A(E, [["render", B], ["__scopeId", "data-v-335b2b68"]]);
214
+ const K = /* @__PURE__ */ E(P, [["render", $], ["__scopeId", "data-v-a416ae97"]]);
207
215
  export {
208
- H as default
216
+ K as default
209
217
  };
210
218
  //# sourceMappingURL=OverviewPage.vue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverviewPage.vue.mjs","sources":["../../../lib/data-provider-interface/views/OverviewPage.vue"],"sourcesContent":["<template>\n <div ref=\"overview-page\" class=\"col-12\">\n <!-- LANGUAGE SELECTOR -->\n <div class=\"mt-5 mb-0\">\n <div class=\"row\">\n <div class=\"col-10 \">\n {{ $t('message.dataupload.info.selectDisplayLanguage') }}:\n <LanguageSelector class=\"ml-1\" v-model=\"dpiLocale\"></LanguageSelector>\n </div>\n </div>\n </div>\n <div class=\"mb-3\" v-if=\"showDatasetsOverview && overviewPageIsVisible\">\n <DatasetOverview :dpiLocale=\"dpiLocale\" :key=\"dpiLocale\" />\n </div>\n <div class=\"mb-3\" v-if=\"showCatalogsOverview && overviewPageIsVisible\">\n <CatalogueOverview :dpiLocale=\"dpiLocale\" :key=\"dpiLocale\" />\n </div>\n </div>\n\n <div class=\"legalnotice py-5\" style=\"width: 90%; margin: 0 auto;\">\n <div class=\"d-flex align-items-start\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"30px\" height=\"30px\" fill=\"currentColor\"\n class=\"bi bi-info-circle mx-3 mb-3 mt-1 infoboxI\" viewBox=\"0 0 16 16\">\n <path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\" />\n <path\n d=\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\" />\n </svg>\n <div class=\"w-80\">\n <p>For <strong>European</strong>&nbsp;<strong>Commission's datasets</strong>, bear in mind that&nbsp;<a\n class=\"external-link\" href=\"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32011D0833\"\n target=\"_blank\" rel=\"nofollow noopener\"><ins>Decision 2011/833/EU</ins></a> allows for their commercial\n reuse\n without prior authorisation, except for the material subject to the third party intellectual property rights.\n This\n Decision has been implemented under the&nbsp;<a class=\"external-link\"\n href=\"https://ec.europa.eu/transparency/documents-register/detail?ref=C(2019)1655&amp;lang=en\"\n target=\"_blank\" rel=\"nofollow noopener\"><ins>Decision C(2019) 1655 final</ins></a> by which Creative Commons\n Attribution 4.0\n International Public License (CC BY 4.0) is adopted as an open licence for the Commission's reuse policy.\n Additionally, raw data, metadata or other documents of comparable nature may alternatively be distributed\n under\n the provisions of the Creative Commons Universal Public Domain Dedication deed (CC0 1.0).</p>\n <p>The&nbsp;<strong>Council</strong>&nbsp;and the&nbsp;<strong>European Court of Auditors</strong>&nbsp;have\n approved similar decisions on reuse. It is advisable that you check&nbsp;<strong>the reuse policy of your\n organisation</strong>&nbsp;before publishing or submitting your dataset.</p>\n </div>\n </div>\n <!-- <p>&nbsp;</p>\n <hr />\n <p>&nbsp;</p> -->\n\n <div class=\"d-flex align-items-start mt-4\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"30px\" height=\"30px\" fill=\"currentColor\"\n class=\"bi bi-info-circle mx-3 mb-3 mt-1 infoboxI \" viewBox=\"0 0 16 16\">\n <path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\" />\n <path\n d=\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\" />\n </svg>\n <div class=\"w-80\">\n <p>As owner of your dataset, you guarantee that it does not violate the copyright, other intellectual property\n or\n privacy rights of any third party. In particular, if third party material is included in the dataset, you must\n ensure that all necessary permissions have been obtained and appropriate acknowledgment is given, if\n necessary.\n </p>\n <p>If you need further information regarding <strong>licenses or copyright</strong> issues, please contact us\n at&nbsp;<span class=\"nobr\"><a class=\"external-link\" href=\"mailto:op-copyright@publications.europa.eu\"\n target=\"_blank\" rel=\"nofollow noopener\">op-copyright@publications.europa.eu</a></span></p>\n </div>\n </div>\n </div>\n\n</template>\n\n<script>\n/* eslint-disable no-restricted-syntax,guard-for-in */\nimport axios from 'axios';\nimport { mapActions, mapGetters } from 'vuex';\n\nimport LanguageSelector from '../components/LanguageSelector';\nimport DatasetOverview from './OverviewPage/DatasetOverview.vue';\nimport CatalogueOverview from './OverviewPage/CatalogueOverview.vue';\n\nimport { useIntersectionObserver } from '@vueuse/core'\nimport { ref, useTemplateRef } from 'vue'\n\nexport default {\n components: {\n LanguageSelector,\n DatasetOverview,\n CatalogueOverview,\n },\n props: {\n property: {\n type: String\n },\n context: {\n type: Object,\n },\n },\n data() {\n return {\n dpiLocale: this.$route.query?.locale || this.$i18n.locale || this.$i18n.fallbackLocale || 'en',\n }\n },\n computed: {\n ...mapGetters('auth', [\n 'getIsEditMode',\n ]),\n ...mapGetters('dpiStore', [\n 'getData',\n ]),\n showDatasetsOverview() {\n return this.property === 'datasets';\n },\n showCatalogsOverview() {\n return this.property === 'catalogues';\n }\n },\n methods: {\n ...mapActions('dpiStore', [\n 'clearAll',\n 'saveLocalstorageValues',\n ]),\n clear() {\n this.clearAll();\n },\n /*** Overview Page checker functionality ***/\n // checkDatasetMandatory() {\n // if (!JSON.parse(localStorage.getItem('dpi_mandatory'))['datasets']) {\n // this.$router.push({ \n // name: 'DataProviderInterface-Input', \n // params: { \n // property: 'datasets', \n // page: 'step1' \n // }, \n // query: { \n // error: 'mandatoryDataset', \n // locale: this.$route.query.locale \n // } \n // });\n // }\n // },\n // checkDistributionMandatory() {\n // if (!JSON.parse(localStorage.getItem('dpi_mandatory'))['distributions'].length > 0 && !JSON.parse(localStorage.getItem('dpi_mandatory'))['distributions'].every(el => el === true)) {\n // this.$router.push({\n // name: 'DataProviderInterface-Input',\n // path: '/dpi/datasets/distoverview',\n // params: {\n // property: 'datasets',\n // page: 'distoverview',\n // },\n // query: {\n // error: 'mandatoryDistribution',\n // locale: this.$route.query.locale\n // },\n // });\n // }\n // },\n // checkCatalogueMandatory() {\n // if (!JSON.parse(localStorage.getItem('dpi_mandatory'))['catalogues']) {\n // this.$router.push({ \n // name: 'DataProviderInterface-Input', \n // params: { \n // property: 'catalogues', \n // page: 'step1' \n // }, \n // query: { \n // error: 'mandatoryCatalog', \n // locale: this.$route.query.locale\n // } \n // });\n // }\n // },\n checkID(property) {\n // Check uniqueness of Dataset ID\n if (!this.getIsEditMode) {\n this.checkUniqueID(property)\n .then((isUniqueID) => {\n if (!isUniqueID) {\n // Dataset ID not unique / taken in meantime --> Redirect to step1 where the user can choose a new ID\n this.$router.push({\n name: 'DataProviderInterface-Input',\n params: {\n property: property,\n page: 'step1'\n },\n query: {\n error: 'id',\n locale: this.$route.query.locale\n }\n });\n }\n });\n }\n },\n checkUniqueID(property) {\n return new Promise((resolve) => {\n if (this.getData(property)['@id'] !== '') {\n const request = `${this.$env.api.hubUrl}${property}/${this.getData(property)['@id']}?useNormalizedId=true`;\n axios.head(request)\n .then(() => {\n resolve(false);\n })\n .catch(() => {\n resolve(true);\n });\n }\n });\n },\n },\n created() {\n this.$nextTick(() => {\n if (this.property === 'datasets') {\n // this.checkID('datasets');\n // this.checkDatasetMandatory();\n // this.checkDistributionMandatory();\n }\n\n if (this.property === 'catalogues') {\n // this.checkID('catalogues')\n // this.checkCatalogueMandatory();\n }\n });\n },\n setup() {\n const target = useTemplateRef('overview-page')\n const overviewPageIsVisible = ref(false)\n\n // Workaround.\n // Ensure the individual overview pages are only mounted whenever this overview page is visible.\n // For some reason, the form values are not reactive so on initial load, the distribution values are not displayed properly.\n // This workaround delays the initial mount of the overview page until the overview page is visible.\n // We use the IntersectionObserver to check if the overview page is visible, but we could also use more proper datamodels to determine this.\n // todo: figure out why the form values are not reactive on initial load\n useIntersectionObserver(\n target,\n ([{ isIntersecting }]) => {\n overviewPageIsVisible.value = isIntersecting\n },\n {\n rootMargin: '999999px 999999px 999999px 999999px'\n }\n )\n\n return {overviewPageIsVisible}\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.heading,\n.description,\n.arrow {\n cursor: pointer;\n}\n\n.options,\n.download {\n .dropdown-menu {\n min-width: 300px;\n\n .dropdown-item {\n &:hover {\n color: initial;\n background-color: initial;\n }\n }\n }\n}\n\n.legalnotice {\n a {\n color: blue;\n }\n\n padding: 1rem;\n background-color: rgb(171, 225, 165)\n}\n\n.infoboxI {\n width: 5%;\n}\n\n.w-80 {\n width: 80%;\n}\n\n</style>\n"],"names":["_sfc_main","LanguageSelector","DatasetOverview","CatalogueOverview","_a","mapGetters","mapActions","property","isUniqueID","resolve","request","axios","target","useTemplateRef","overviewPageIsVisible","ref","useIntersectionObserver","isIntersecting","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_Fragment","_createElementVNode","_hoisted_1","_createTextVNode","_toDisplayString","_ctx","_createVNode","_component_LanguageSelector","$data","_cache","$event","$options","$setup","_hoisted_5","_createBlock","_component_DatasetOverview","_createCommentVNode","_hoisted_6","_component_CatalogueOverview","_createStaticVNode"],"mappings":"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"}
1
+ {"version":3,"file":"OverviewPage.vue.mjs","sources":["../../../lib/data-provider-interface/views/OverviewPage.vue"],"sourcesContent":["<template>\n <div ref=\"overview-page\" class=\"col-12\">\n <!-- LANGUAGE SELECTOR -->\n <div class=\"mt-5 mb-0\">\n <div class=\"row\">\n <div class=\"col-10 \">\n {{ $t('message.dataupload.info.selectDisplayLanguage') }}:\n <LanguageSelector class=\"ml-1\" v-model=\"dpiLocale\"></LanguageSelector>\n </div>\n </div>\n </div>\n <div class=\"mb-3\" v-if=\"showDatasetsOverview && overviewPageIsVisible\">\n <DatasetOverview :dpiLocale=\"dpiLocale\" :key=\"dpiLocale\" />\n </div>\n <div class=\"mb-3\" v-if=\"showCatalogsOverview && overviewPageIsVisible\">\n <CatalogueOverview :dpiLocale=\"dpiLocale\" :key=\"dpiLocale\" />\n </div>\n </div>\n<!-- Legal notice *** Checks for ANNIF to determine that this UI is DEU -->\n <div v-if=\"instance.content.dataProviderInterface.annifIntegration\" class=\"legalnotice py-5\" style=\"width: 90%; margin: 0 auto;\">\n <div class=\"d-flex align-items-start\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"30px\" height=\"30px\" fill=\"currentColor\"\n class=\"bi bi-info-circle mx-3 mb-3 mt-1 infoboxI\" viewBox=\"0 0 16 16\">\n <path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\" />\n <path\n d=\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\" />\n </svg>\n <div class=\"w-80\">\n <p>For <strong>European</strong>&nbsp;<strong>Commission's datasets</strong>, bear in mind that&nbsp;<a\n class=\"external-link\" href=\"https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32011D0833\"\n target=\"_blank\" rel=\"nofollow noopener\"><ins>Decision 2011/833/EU</ins></a> allows for their commercial\n reuse\n without prior authorisation, except for the material subject to the third party intellectual property rights.\n This\n Decision has been implemented under the&nbsp;<a class=\"external-link\"\n href=\"https://ec.europa.eu/transparency/documents-register/detail?ref=C(2019)1655&amp;lang=en\"\n target=\"_blank\" rel=\"nofollow noopener\"><ins>Decision C(2019) 1655 final</ins></a> by which Creative Commons\n Attribution 4.0\n International Public License (CC BY 4.0) is adopted as an open licence for the Commission's reuse policy.\n Additionally, raw data, metadata or other documents of comparable nature may alternatively be distributed\n under\n the provisions of the Creative Commons Universal Public Domain Dedication deed (CC0 1.0).</p>\n <p>The&nbsp;<strong>Council</strong>&nbsp;and the&nbsp;<strong>European Court of Auditors</strong>&nbsp;have\n approved similar decisions on reuse. It is advisable that you check&nbsp;<strong>the reuse policy of your\n organisation</strong>&nbsp;before publishing or submitting your dataset.</p>\n </div>\n </div>\n <!-- <p>&nbsp;</p>\n <hr />\n <p>&nbsp;</p> -->\n\n <div class=\"d-flex align-items-start mt-4\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"30px\" height=\"30px\" fill=\"currentColor\"\n class=\"bi bi-info-circle mx-3 mb-3 mt-1 infoboxI \" viewBox=\"0 0 16 16\">\n <path d=\"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16\" />\n <path\n d=\"m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0\" />\n </svg>\n <div class=\"w-80\">\n <p>As owner of your dataset, you guarantee that it does not violate the copyright, other intellectual property\n or\n privacy rights of any third party. In particular, if third party material is included in the dataset, you must\n ensure that all necessary permissions have been obtained and appropriate acknowledgment is given, if\n necessary.\n </p>\n <p>If you need further information regarding <strong>licenses or copyright</strong> issues, please contact us\n at&nbsp;<span class=\"nobr\"><a class=\"external-link\" href=\"mailto:op-copyright@publications.europa.eu\"\n target=\"_blank\" rel=\"nofollow noopener\">op-copyright@publications.europa.eu</a></span></p>\n </div>\n </div>\n </div>\n\n</template>\n\n<script>\n/* eslint-disable no-restricted-syntax,guard-for-in */\nimport axios from 'axios';\nimport { mapActions, mapGetters } from 'vuex';\n\nimport LanguageSelector from '../components/LanguageSelector';\nimport DatasetOverview from './OverviewPage/DatasetOverview.vue';\nimport CatalogueOverview from './OverviewPage/CatalogueOverview.vue';\n\nimport { useIntersectionObserver } from '@vueuse/core'\nimport { ref, useTemplateRef } from 'vue'\nimport { getCurrentInstance } from \"vue\";\n\nexport default {\n components: {\n LanguageSelector,\n DatasetOverview,\n CatalogueOverview,\n },\n props: {\n property: {\n type: String\n },\n context: {\n type: Object,\n },\n },\n data() {\n return {\n instance : getCurrentInstance().appContext.app.config.globalProperties.$env,\n dpiLocale: this.$route.query?.locale || this.$i18n.locale || this.$i18n.fallbackLocale || 'en',\n }\n },\n computed: {\n ...mapGetters('auth', [\n 'getIsEditMode',\n ]),\n ...mapGetters('dpiStore', [\n 'getData',\n ]),\n showDatasetsOverview() {\n return this.property === 'datasets';\n },\n showCatalogsOverview() {\n return this.property === 'catalogues';\n }\n },\n methods: {\n ...mapActions('dpiStore', [\n 'clearAll',\n 'saveLocalstorageValues',\n ]),\n clear() {\n this.clearAll();\n },\n /*** Overview Page checker functionality ***/\n // checkDatasetMandatory() {\n // if (!JSON.parse(localStorage.getItem('dpi_mandatory'))['datasets']) {\n // this.$router.push({ \n // name: 'DataProviderInterface-Input', \n // params: { \n // property: 'datasets', \n // page: 'step1' \n // }, \n // query: { \n // error: 'mandatoryDataset', \n // locale: this.$route.query.locale \n // } \n // });\n // }\n // },\n // checkDistributionMandatory() {\n // if (!JSON.parse(localStorage.getItem('dpi_mandatory'))['distributions'].length > 0 && !JSON.parse(localStorage.getItem('dpi_mandatory'))['distributions'].every(el => el === true)) {\n // this.$router.push({\n // name: 'DataProviderInterface-Input',\n // path: '/dpi/datasets/distoverview',\n // params: {\n // property: 'datasets',\n // page: 'distoverview',\n // },\n // query: {\n // error: 'mandatoryDistribution',\n // locale: this.$route.query.locale\n // },\n // });\n // }\n // },\n // checkCatalogueMandatory() {\n // if (!JSON.parse(localStorage.getItem('dpi_mandatory'))['catalogues']) {\n // this.$router.push({ \n // name: 'DataProviderInterface-Input', \n // params: { \n // property: 'catalogues', \n // page: 'step1' \n // }, \n // query: { \n // error: 'mandatoryCatalog', \n // locale: this.$route.query.locale\n // } \n // });\n // }\n // },\n checkID(property) {\n // Check uniqueness of Dataset ID\n if (!this.getIsEditMode) {\n this.checkUniqueID(property)\n .then((isUniqueID) => {\n if (!isUniqueID) {\n // Dataset ID not unique / taken in meantime --> Redirect to step1 where the user can choose a new ID\n this.$router.push({\n name: 'DataProviderInterface-Input',\n params: {\n property: property,\n page: 'step1'\n },\n query: {\n error: 'id',\n locale: this.$route.query.locale\n }\n });\n }\n });\n }\n },\n checkUniqueID(property) {\n return new Promise((resolve) => {\n if (this.getData(property)['@id'] !== '') {\n const request = `${this.$env.api.hubUrl}${property}/${this.getData(property)['@id']}?useNormalizedId=true`;\n axios.head(request)\n .then(() => {\n resolve(false);\n })\n .catch(() => {\n resolve(true);\n });\n }\n });\n },\n },\n created() {\n this.$nextTick(() => {\n if (this.property === 'datasets') {\n // this.checkID('datasets');\n // this.checkDatasetMandatory();\n // this.checkDistributionMandatory();\n }\n\n if (this.property === 'catalogues') {\n // this.checkID('catalogues')\n // this.checkCatalogueMandatory();\n }\n });\n },\n setup() {\n const target = useTemplateRef('overview-page')\n const overviewPageIsVisible = ref(false)\n\n // Workaround.\n // Ensure the individual overview pages are only mounted whenever this overview page is visible.\n // For some reason, the form values are not reactive so on initial load, the distribution values are not displayed properly.\n // This workaround delays the initial mount of the overview page until the overview page is visible.\n // We use the IntersectionObserver to check if the overview page is visible, but we could also use more proper datamodels to determine this.\n // todo: figure out why the form values are not reactive on initial load\n useIntersectionObserver(\n target,\n ([{ isIntersecting }]) => {\n overviewPageIsVisible.value = isIntersecting\n },\n {\n rootMargin: '999999px 999999px 999999px 999999px'\n }\n )\n\n return {overviewPageIsVisible}\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.heading,\n.description,\n.arrow {\n cursor: pointer;\n}\n\n.options,\n.download {\n .dropdown-menu {\n min-width: 300px;\n\n .dropdown-item {\n &:hover {\n color: initial;\n background-color: initial;\n }\n }\n }\n}\n\n.legalnotice {\n a {\n color: blue;\n }\n\n padding: 1rem;\n background-color: rgb(171, 225, 165)\n}\n\n.infoboxI {\n width: 5%;\n}\n\n.w-80 {\n width: 80%;\n}\n\n</style>\n"],"names":["_sfc_main","LanguageSelector","DatasetOverview","CatalogueOverview","getCurrentInstance","_a","mapGetters","mapActions","property","isUniqueID","resolve","request","axios","target","useTemplateRef","overviewPageIsVisible","ref","useIntersectionObserver","isIntersecting","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_Fragment","_createElementVNode","_hoisted_1","_createTextVNode","_toDisplayString","_ctx","_createVNode","_component_LanguageSelector","$data","_cache","$event","$options","$setup","_hoisted_5","_createBlock","_component_DatasetOverview","_createCommentVNode","_hoisted_6","_component_CatalogueOverview","_hoisted_7","_createStaticVNode"],"mappings":"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"}
@@ -1,41 +1,41 @@
1
- import y from "./DatasetDetailsDataset.vue2.mjs";
2
- import { resolveComponent as n, openBlock as o, createElementBlock as u, createVNode as l, createTextVNode as s, createElementVNode as c, createCommentVNode as d, createBlock as b } from "vue";
1
+ import I from "./DatasetDetailsDataset.vue2.mjs";
2
+ import { resolveComponent as n, openBlock as a, createElementBlock as c, createVNode as l, createTextVNode as r, createElementVNode as D, createCommentVNode as d, createBlock as p, withCtx as u, renderSlot as b } from "vue";
3
3
  import "./DatasetDetailsDataset.vue3.mjs";
4
- import f from "../_virtual/_plugin-vue_export-helper.mjs";
5
- const I = ["content"], k = ["content"], A = { key: 0 }, O = {
4
+ import k from "../_virtual/_plugin-vue_export-helper.mjs";
5
+ const v = ["content"], A = ["content"], O = { key: 0 }, U = {
6
6
  key: 1,
7
7
  class: "dsd-dataset"
8
8
  };
9
- function U(a, t, r, _, i, e) {
10
- const D = n("resource-access-popup"), w = n("dataset-details-skeleton"), p = n("dataset-details-description"), g = n("distributions"), m = n("dataset-details-features"), h = n("dataset-details-properties");
11
- return o(), u("div", null, [
12
- l(D, { ref: "externalResourceModal" }, null, 512),
13
- t[3] || (t[3] = s()),
14
- c("span", {
9
+ function _(s, t, o, C, i, e) {
10
+ const w = n("resource-access-popup"), g = n("dataset-details-skeleton"), y = n("dataset-details-description"), m = n("distributions"), h = n("dataset-details-features"), f = n("dataset-details-properties");
11
+ return a(), c("div", null, [
12
+ l(w, { ref: "externalResourceModal" }, null, 512),
13
+ t[6] || (t[6] = r()),
14
+ D("span", {
15
15
  property: "dc:issued",
16
- content: a.getReleaseDate
17
- }, null, 8, I),
18
- t[4] || (t[4] = s()),
19
- c("span", {
16
+ content: s.getReleaseDate
17
+ }, null, 8, v),
18
+ t[7] || (t[7] = r()),
19
+ D("span", {
20
20
  property: "dc:modified",
21
- content: a.getModificationDate
22
- }, null, 8, k),
23
- t[5] || (t[5] = s()),
24
- i.loadingDatasetDetails ? (o(), u("div", A, [
25
- l(w, { type: "DatasetDetails" })
21
+ content: s.getModificationDate
22
+ }, null, 8, A),
23
+ t[8] || (t[8] = r()),
24
+ i.loadingDatasetDetails ? (a(), c("div", O, [
25
+ l(g, { type: "DatasetDetails" })
26
26
  ])) : d("", !0),
27
- t[6] || (t[6] = s()),
28
- i.loadingDatasetDetails ? d("", !0) : (o(), u("div", O, [
29
- r.showDatasetDescription ? (o(), b(p, {
27
+ t[9] || (t[9] = r()),
28
+ i.loadingDatasetDetails ? d("", !0) : (a(), c("div", U, [
29
+ o.showDatasetDescription ? (a(), p(y, {
30
30
  key: 0,
31
31
  dateIncorrect: e.dateIncorrect,
32
32
  machineTranslated: i.machineTranslated,
33
33
  translationNotAvailable: i.translationNotAvailable
34
34
  }, null, 8, ["dateIncorrect", "machineTranslated", "translationNotAvailable"])) : d("", !0),
35
- t[0] || (t[0] = s()),
36
- l(g, {
35
+ t[3] || (t[3] = r()),
36
+ l(m, {
37
37
  openModal: e.openModal,
38
- getDistributions: a.getDistributions,
38
+ getDistributions: s.getDistributions,
39
39
  expandedDistributions: i.expandedDistributions,
40
40
  expandedDistributionDescriptions: i.expandedDistributionDescriptions,
41
41
  displayedDistributions: e.displayedDistributions,
@@ -48,8 +48,8 @@ function U(a, t, r, _, i, e) {
48
48
  getDistributionFormat: e.getDistributionFormat,
49
49
  distributionFormatTruncated: e.distributionFormatTruncated,
50
50
  getDistributionTitle: e.getDistributionTitle,
51
- distributionVisibleContent: r.distributionVisibleContent,
52
- distributionExpandedContent: r.distributionExpandedContent,
51
+ distributionVisibleContent: o.distributionVisibleContent,
52
+ distributionExpandedContent: o.distributionExpandedContent,
53
53
  distributionDescriptionIsExpanded: e.distributionDescriptionIsExpanded,
54
54
  distributionDescriptionIsExpandable: e.distributionDescriptionIsExpandable,
55
55
  distributionIsExpanded: e.distributionIsExpanded,
@@ -75,12 +75,12 @@ function U(a, t, r, _, i, e) {
75
75
  isUrlInvalid: e.isUrlInvalid,
76
76
  openIfValidUrl: e.openIfValidUrl,
77
77
  showTooltipVisualiseButton: e.showTooltipVisualiseButton,
78
- showPublisher: r.showPublisher,
79
- embed: r.embed
78
+ showPublisher: o.showPublisher,
79
+ embed: o.embed
80
80
  }, null, 8, ["openModal", "getDistributions", "expandedDistributions", "expandedDistributionDescriptions", "displayedDistributions", "isDistributionsAllDisplayed", "distributions", "setDistributionsDisplayCount", "pages", "showDownloadUrls", "isOnlyOneUrl", "getDistributionFormat", "distributionFormatTruncated", "getDistributionTitle", "distributionVisibleContent", "distributionExpandedContent", "distributionDescriptionIsExpanded", "distributionDescriptionIsExpandable", "distributionIsExpanded", "showNumber", "showObject", "showDownloadDropdown", "showLicence", "showLicensingAssistant", "filterDateFormatEU", "showArray", "showObjectArray", "getVisualisationLink", "getDownloadUrl", "trackGoto", "showAccessUrls", "replaceHttp", "previewLinkCallback", "toggleDistribution", "toggleDistributionDescription", "increaseNumDisplayedDistributions", "nonOverflowingIncrementsForDistributions", "appendCurrentLocaleToURL", "isUrlInvalid", "openIfValidUrl", "showTooltipVisualiseButton", "showPublisher", "embed"]),
81
- t[1] || (t[1] = s()),
82
- l(m, {
83
- getKeywords: a.getKeywords,
81
+ t[4] || (t[4] = r()),
82
+ l(h, {
83
+ getKeywords: s.getKeywords,
84
84
  pages: i.pages,
85
85
  increaseNumDisplayedPages: e.increaseNumDisplayedPages,
86
86
  nonOverflowingIncrementsForPages: e.nonOverflowingIncrementsForPages,
@@ -90,13 +90,27 @@ function U(a, t, r, _, i, e) {
90
90
  showArray: e.showArray,
91
91
  showObject: e.showObject
92
92
  }, null, 8, ["getKeywords", "pages", "increaseNumDisplayedPages", "nonOverflowingIncrementsForPages", "showKeyword", "trackGoto", "showObjectArray", "showArray", "showObject"]),
93
- t[2] || (t[2] = s()),
94
- r.showDatasetProperties ? (o(), b(h, { key: 1 })) : d("", !0)
93
+ t[5] || (t[5] = r()),
94
+ o.showDatasetProperties ? (a(), p(f, { key: 1 }, {
95
+ "property-header": u(() => [
96
+ b(s.$slots, "property-header", {}, void 0, !0)
97
+ ]),
98
+ "property-table-before": u(() => [
99
+ b(s.$slots, "property-table-before", {}, void 0, !0)
100
+ ]),
101
+ "property-table": u(() => [
102
+ b(s.$slots, "property-table", {}, void 0, !0)
103
+ ]),
104
+ "property-table-after": u(() => [
105
+ b(s.$slots, "property-table-after", {}, void 0, !0)
106
+ ]),
107
+ _: 3
108
+ })) : d("", !0)
95
109
  ]))
96
110
  ]);
97
111
  }
98
- const E = /* @__PURE__ */ f(y, [["render", U], ["__scopeId", "data-v-fe80ed1c"]]);
112
+ const T = /* @__PURE__ */ k(I, [["render", _], ["__scopeId", "data-v-9ed03189"]]);
99
113
  export {
100
- E as default
114
+ T as default
101
115
  };
102
116
  //# sourceMappingURL=DatasetDetailsDataset.vue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatasetDetailsDataset.vue.mjs","sources":["../../lib/datasetDetails/DatasetDetailsDataset.vue"],"sourcesContent":["<template>\n <div>\n <resource-access-popup ref=\"externalResourceModal\" />\n <span property=\"dc:issued\" :content=\"getReleaseDate\"></span>\n <span property=\"dc:modified\" :content=\"getModificationDate\"></span>\n <div v-if=\"loadingDatasetDetails\">\n <dataset-details-skeleton type=\"DatasetDetails\"></dataset-details-skeleton>\n </div>\n <div v-if=\"!loadingDatasetDetails\" class=\"dsd-dataset\">\n <dataset-details-description\n v-if=\"showDatasetDescription\"\n :dateIncorrect=\"dateIncorrect\"\n :machineTranslated=\"machineTranslated\"\n :translationNotAvailable=\"translationNotAvailable\"\n />\n <distributions\n :openModal=\"openModal\"\n :getDistributions=\"getDistributions\"\n :expandedDistributions=\"expandedDistributions\"\n :expandedDistributionDescriptions=\"expandedDistributionDescriptions\"\n :displayedDistributions=\"displayedDistributions\"\n :isDistributionsAllDisplayed=\"isDistributionsAllDisplayed\"\n :distributions=\"distributions\"\n :setDistributionsDisplayCount=\"setDistributionsDisplayCount\"\n :pages=\"pages\"\n :showDownloadUrls=\"showDownloadUrls\"\n :isOnlyOneUrl=\"isOnlyOneUrl\"\n :getDistributionFormat=\"getDistributionFormat\"\n :distributionFormatTruncated=\"distributionFormatTruncated\"\n :getDistributionTitle=\"getDistributionTitle\"\n :distributionVisibleContent=\"distributionVisibleContent\"\n :distributionExpandedContent=\"distributionExpandedContent\"\n :distributionDescriptionIsExpanded=\"distributionDescriptionIsExpanded\"\n :distributionDescriptionIsExpandable=\"distributionDescriptionIsExpandable\"\n :distributionIsExpanded=\"distributionIsExpanded\"\n :showNumber=\"showNumber\"\n :showObject=\"showObject\"\n :showDownloadDropdown=\"showDownloadDropdown\"\n :showLicence=\"showLicence\"\n :showLicensingAssistant=\"showLicensingAssistant\"\n :filterDateFormatEU=\"filterDateFormatEU\"\n :showArray=\"showArray\"\n :showObjectArray=\"showObjectArray\"\n :getVisualisationLink=\"getVisualisationLink\"\n :getDownloadUrl=\"getDownloadUrl\"\n :trackGoto=\"trackGoto\"\n :showAccessUrls=\"showAccessUrls\"\n :replaceHttp=\"replaceHttp\"\n :previewLinkCallback=\"previewLinkCallback\"\n :toggleDistribution=\"toggleDistribution\"\n :toggleDistributionDescription=\"toggleDistributionDescription\"\n :increaseNumDisplayedDistributions=\"increaseNumDisplayedDistributions\"\n :nonOverflowingIncrementsForDistributions=\"nonOverflowingIncrementsForDistributions\"\n :appendCurrentLocaleToURL=\"appendCurrentLocaleToURL\"\n :isUrlInvalid=\"isUrlInvalid\"\n :openIfValidUrl=\"openIfValidUrl\"\n :showTooltipVisualiseButton=\"showTooltipVisualiseButton\"\n :showPublisher=\"showPublisher\"\n :embed=\"embed\"\n />\n\n <dataset-details-features\n :getKeywords=\"getKeywords\"\n :pages=\"pages\"\n :increaseNumDisplayedPages=\"increaseNumDisplayedPages\"\n :nonOverflowingIncrementsForPages=\"nonOverflowingIncrementsForPages\"\n :showKeyword=\"showKeyword\"\n :trackGoto=\"trackGoto\"\n :showObjectArray=\"showObjectArray\"\n :showArray=\"showArray\"\n :showObject=\"showObject\"\n />\n\n <dataset-details-properties\n v-if=\"showDatasetProperties\"\n />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\n // @ts-nocheck\n /* eslint-disable no-confusing-arrow, no-nested-ternary, no-return-assign, no-confusing-arrow */\n import $ from 'jquery';\n import { mapActions, mapGetters } from 'vuex';\n import {\n has,\n isNil,\n isArray,\n isObject,\n isString,\n isNumber,\n isEmpty,\n } from 'lodash';\n import AppLink from '../widgets/AppLink.vue';\n import Tooltip from '../widgets/Tooltip.vue';\n import Distributions from './distributions/Distributions.vue';\n import dateFilters from '../filters/dateFilters';\n import {\n getTranslationFor, getCountryFlagImg, truncate, replaceHttp, appendCurrentLocaleToURL\n } from '../utils/helpers';\n import ResourceAccessPopup from '../widgets/ResourceAccessPopup.vue';\n import DatasetDetailsExtendedMetaData\n from \"../datasetDetails/features/DatasetDetailsIsUsedBy.vue\";\n import DatasetDetailsSkeleton from \"../datasetDetails/DatasetDetailsSkeleton.vue\";\n import * as metaInfo from '../composables/head';\n\n export default {\n name: 'datasetDetailsDataset',\n components: {\n DatasetDetailsSkeleton,\n DatasetDetailsExtendedMetaData,\n AppLink,\n Tooltip,\n Distributions,\n ResourceAccessPopup\n },\n props: {\n distributionVisibleContent: {\n type: Array,\n default: () => ['license', 'licenseAttributionByText', 'modificationDate'],\n },\n distributionExpandedContent: {\n type: Array,\n default: () => [\n 'releaseDate',\n 'language',\n 'availability',\n 'status',\n 'rights',\n 'mediaType',\n 'byteSize',\n 'checksum',\n 'pages',\n 'type',\n 'compressFormat',\n 'packageFormat',\n 'hasPolicy',\n 'conformsTo',\n 'spatialResolutionInMeters',\n 'temporalResolution',\n ],\n },\n showDatasetDescription: {\n type: Boolean,\n default: () => true,\n },\n showDatasetProperties: {\n type: Boolean,\n default: () => true,\n },\n showPublisher: {\n type: Boolean,\n default: () => false,\n },\n embed: {\n type: Boolean,\n default: () => false,\n },\n },\n data() {\n return {\n defaultLocale: this.$env.languages.locale,\n // has to be INITIAL_DATASET_DESCRIPTION_LENGTH\n isDatasetDescriptionExpanded: false,\n loadingDatasetDetails: false,\n machineTranslated: false,\n translationNotAvailable: false,\n expandedDistributions: [],\n expandedDistributionDescriptions: [],\n distributions: {\n displayAll: this.$env.content.datasetDetails.distributions.displayAll,\n displayCount: this.$env.content.datasetDetails.distributions.displayCount,\n incrementSteps: this.$env.content.datasetDetails.distributions.incrementSteps,\n descriptionMaxLines: this.$env.content.datasetDetails.distributions.descriptionMaxLines,\n descriptionMaxChars: this.$env.content.datasetDetails.distributions.descriptionMaxChars,\n },\n pages: {\n isVisible: this.$env.content.datasetDetails.pages.isVisible,\n displayAll: this.$env.content.datasetDetails.pages.displayAll,\n displayCount: this.$env.content.datasetDetails.pages.displayCount,\n incrementSteps: this.$env.content.datasetDetails.pages.incrementSteps,\n descriptionMaxLines: this.$env.content.datasetDetails.pages.descriptionMaxLines,\n descriptionMaxChars: this.$env.content.datasetDetails.pages.descriptionMaxChars,\n },\n showDescription: true,\n };\n },\n computed: {\n // import store-getters\n ...mapGetters('datasetDetails', [\n 'getKeywords',\n 'getAccessRights',\n 'getAccrualPeriodicity',\n 'getCatalog',\n 'getContactPoints',\n 'getDateIncorrect',\n 'getDescription',\n 'getDistributions',\n 'getID',\n 'getLanguages',\n 'getLicences',\n 'getModificationDate',\n 'getOtherIdentifiers',\n 'getPages',\n 'getPublisher',\n 'getReleaseDate',\n 'getSpatial',\n 'getTranslationMetaData',\n 'getTitle'\n ]),\n dateIncorrect() {\n return this.getDateIncorrect;\n },\n displayedDistributions() {\n const sorted = [...this.getDistributions].sort((a, b) => {\n if (getTranslationFor(a.title, this.$route.query.locale, this.getLanguages) < getTranslationFor(b.title, this.$route.query.locale, this.getLanguages)) { return -1; }\n if (getTranslationFor(a.title, this.$route.query.locale, this.getLanguages) > getTranslationFor(b.title, this.$route.query.locale, this.getLanguages)) { return 1; }\n return 0;\n });\n return this.distributions.displayAll\n ? Object.freeze(sorted)\n : Object.freeze(sorted.slice(0, this.distributions.displayCount));\n },\n isDistributionsAllDisplayed() {\n return this.distributions.displayCount === this.getDistributions.length;\n },\n remainingDistributions() {\n return this.getDistributions.length - this.distributions.displayCount;\n }\n },\n methods: {\n ...mapActions('datasetDetails', [\n 'loadDatasetDetails',\n 'setLoading',\n ]),\n has,\n isNil,\n isArray,\n isObject,\n isString,\n isNumber,\n appendCurrentLocaleToURL,\n getTranslationFor,\n getCountryFlagImg,\n truncate,\n replaceHttp,\n initDatasetDetails() {\n this.piwikMetaPush();\n setTimeout(() => {\n if (typeof this.$piwik?.resume === \"function\") this.$piwik.resume();\n }, 500);\n this.$nextTick(() => {\n // Display/hide translation banners\n this.setTranslationBanners();\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n });\n },\n setDistributionsDisplayCount(count: number) {\n this.distributions.displayCount = count;\n },\n openModal(callback, toggleDownloadPopup) {\n this.$refs.externalResourceModal.openModal(callback, toggleDownloadPopup)\n },\n previewLinkCallback(distribution) {\n return () => {\n this.$emit('track-link', this.getVisualisationLink(distribution), 'link');\n window.open(this.getVisualisationLink(distribution), '_blank');\n };\n },\n filterDateFormatEU(date) {\n return dateFilters.formatEU(date);\n },\n /* ABSTRACT SHOW FUNCTIONS */\n showString(string) {\n return !isNil(string) && isString(string);\n },\n showNumber(number) {\n return !isNil(number) && isNumber(number);\n },\n showObject(object) {\n return !isNil(object) && isObject(object) && !Object.values(object).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true);\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 /* SPECIFIC SHOW FUNCTIONS */\n /* for now show all licences */\n showLicence(licence) {\n // return (has(licence, 'id') && !isNil(licence.id))\n // || (has(licence, 'label') && !isNil(licence.label))\n return true\n },\n showLicensingAssistant(distribution) {\n return has(distribution, 'licence.la_url') && this.showString(distribution.licence.la_url);\n },\n showDownloadDropdown(distribution) {\n return this.showAccessUrls(distribution) || this.showDownloadUrls(distribution);\n },\n isOnlyOneUrl(distribution) {\n return (this.showAccessUrls(distribution) && !this.showDownloadUrls(distribution))\n || (!this.showAccessUrls(distribution) && this.showDownloadUrls(distribution) && distribution.downloadUrls.length === 1);\n },\n getDownloadUrl(distribution) {\n let url;\n if (this.showAccessUrls(distribution) && !this.showDownloadUrls(distribution)) {\n url = distribution.accessUrl[0];\n }\n if (!this.showAccessUrls(distribution) && this.showDownloadUrls(distribution) && distribution.downloadUrls.length === 1) {\n url = distribution.downloadUrls[0];\n }\n return url;\n },\n showAccessUrls(distribution) {\n return has(distribution, 'accessUrl') && this.showArray(distribution.accessUrl);\n },\n showDownloadUrls(distribution) {\n return has(distribution, 'downloadUrls') && this.showArray(distribution.downloadUrls);\n },\n showKeyword(keyword) {\n return has(keyword, 'id')\n && has(keyword, 'title')\n && !isNil(keyword.id)\n && !isNil(keyword.title);\n },\n\n /* GETTER / SETTER FUNCTIONS */\n\n setDatasetOriginalLanguage(originalLanguage) {\n this.$i18n.locale = originalLanguage;\n },\n distributionIsExpanded(id) {\n setTimeout(() => {\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n }, 500);\n return this.expandedDistributions.includes(id);\n },\n distributionDescriptionIsExpanded(id) {\n return this.expandedDistributionDescriptions.includes(id);\n },\n distributionDescriptionIsExpandable(description) {\n return isNil(description) ? false : description.length > this.distributions.descriptionMaxChars;\n },\n getDistributionFormat(distribution) {\n return has(distribution, 'format.label') && !isNil(distribution.format.label) ? distribution.format.label : '';\n },\n distributionFormatTruncated(distribution) {\n return this.getDistributionFormat(distribution).length > 4;\n },\n getDistributionTitle(distribution) {\n return distribution.title\n ? getTranslationFor(distribution.title, this.$route.query.locale, this.getLanguages)\n : this.getID || '-';\n },\n getVisualisationLink(distribution) {\n // Return Visualisation Link\n const accessUrl = distribution.downloadUrls && distribution.downloadUrls.length ? distribution.downloadUrls[0] : distribution.accessUrl[0];\n return `/data/visualisation/?file=${encodeURIComponent(accessUrl)}`;\n },\n // getSubjectLink(subject) {\n // return { path: `/datasets?subject=${subject.id}`, query: Object.assign({}, { locale: this.$route.query.locale }) };\n // },\n toggleDistribution(id) {\n const index = this.expandedDistributions.indexOf(id);\n if (index > -1) this.expandedDistributions.splice(index, 1);\n else this.expandedDistributions.push(id);\n },\n toggleDistributionDescription(id) {\n const index = this.expandedDistributionDescriptions.indexOf(id);\n if (index > -1) this.expandedDistributionDescriptions.splice(index, 1);\n else this.expandedDistributionDescriptions.push(id);\n },\n setTranslationBanners() {\n if (!this.$i18n) return;\n const translationMetaData = this.getTranslationMetaData;\n // Check if translation of dataset is available in selected language\n if (!isNil(translationMetaData.details) && has(translationMetaData.details, this.$route.query.locale)) {\n // Check if dataset if machine translated\n this.machineTranslated = translationMetaData.details[this.$route.query.locale].machine_translated;\n } else {\n // No translation of this dataset available for the selected language\n this.translationNotAvailable = true;\n }\n },\n // Emit a Matomo event when user clicks on 'go to resource' element\n trackGoto() {\n const paq = window._paq || []; // eslint-disable-line\n // paq.push(['trackEvent', 'GoToResource', 'Clicked']);\n this.$piwik.trackGotoResource();\n },\n clamp(n, min, max) {\n return Math.min(Math.max(n, min), max);\n },\n // Increases the current number of distributions displayed\n // and clamps the result so that it never exceeds the number of all distributions.\n increaseNumDisplayedDistributions(increment) {\n const clampedSum = this.clamp(this.distributions.displayCount + increment, 0, this.getDistributions.length);\n this.distributions.displayCount = clampedSum;\n },\n nonOverflowingIncrementsForDistributions(incrementStep) {\n return this.distributions.displayCount + incrementStep <= this.getDistributions.length;\n },\n // Increases the current number of distributions displayed\n // and clamps the result so that it never exceeds the number of all distributions.\n increaseNumDisplayedPages(increment) {\n const clampedSum = this.clamp(this.pages.displayCount + increment, 0, this.getPages.length);\n this.pages.displayCount = clampedSum;\n },\n nonOverflowingIncrementsForPages(incrementStep) {\n return this.pages.displayCount + incrementStep <= this.getPages.length;\n },\n piwikMetaPush() {\n this.$piwik.trackDatasetDetailsPageView(null, null, {\n dataset_AccessRights: this.getAccessRights,\n dataset_AccrualPeriodicity: this.getAccrualPeriodicity,\n dataset_Catalog: this.getCatalog,\n // dataset_Categories: this.getCategories,\n // dataset_ConformsTo: this.getConformsTo,\n // dataset_ContactPoints: this.getContactPoints,\n // dataset_Country: this.getCountry,\n // dataset_Creator: this.getCreator,\n // dataset_Description: this.getDescription,\n // dataset_Distributions: this.getDistributions,\n // dataset_DistributionFormats: this.getDistributionFormats,\n // dataset_Documentations: this.getDocumentations,\n // dataset_Frequency: this.getFrequency,\n // dataset_HasVersion: this.getHasVersion,\n dataset_ID: this.getID,\n // dataset_Identifiers: this.getIdentifiers,\n // dataset_IdName: this.getIdName,\n // dataset_IsVersionOf: this.getIsVersionOf,\n // datest_Keywords: this.getKeywords,\n // dataset_LandingPages: this.getLandingPagesResource,\n // dataset_Languages: this.getLanguages,\n // dataset_Licences: this.getLicences,\n // dataset_Loading: this.getLoading,\n // dataset_ModificationDate: this.getModificationDate,\n // dataset_OriginalLanguage: this.getOriginalLanguage,\n // dataset_OtherIdentifiers: this.getOtherIdentifiers,\n // dataset_Pages: this.getPages,\n // dataset_Provenances: this.getProvenances,\n dataset_Publisher: this.getPublisher,\n // dataset_RelatedResources: this.getRelatedResources,\n // dataset_ReleaseDate: this.getReleaseDate,\n // dataset_Sources: this.getSources,\n // dataset_Spatial: this.getSpatial,\n // dataset_SpatialResource: this.getSpatialResource,\n // dataset_Temporal: this.getTemporal,\n dataset_Title: this.getTitle,\n // dataset_TranslationMetaData: this.getTranslationMetaData,\n // dataset_VersionInfo: this.getVersionInfo,\n // dataset_VersionNotes: this.getVersionNotes,\n });\n },\n isUrlInvalid(url) {\n if (url) {\n try {\n /* eslint-disable no-useless-escape */\n return !(new RegExp(\"^((https?:\\/\\/(www\\.)?)([-a-zA-Z0-9@:%._\\+~#=]{1,256})([-a-zA-Z0-9()@:%_\\+.~#?&//=]*))$\", \"i\")).test(decodeURIComponent(url.split(\"=\").pop()));\n /* eslint-enable no-useless-escape */\n } catch (e) {\n console.error(e);\n }\n }\n },\n openIfValidUrl(isValid, previewLinkCallback, distribution, event) {\n if (isValid) {\n // for (let key in this.$children) {\n // if(this.$children[key].$refs[\"externalResourceModal\"]) {\n // this.$children[key].$refs[\"externalResourceModal\"].openModal(previewLinkCallback(distribution), false);\n // }\n // }\n this.openModal(previewLinkCallback(distribution), false);\n } else {\n event.preventDefault();\n event.stopPropagation();\n }\n },\n showTooltipVisualiseButton(invalidUrl) {\n if (invalidUrl) {\n return this.$t('message.tooltip.invalidVisualise');\n }\n return ''\n },\n },\n mounted() {\n // Duplicated API call, execute only if data not already loaded\n if (this.$route.params.ds_id !== this.getID) {\n this.$Progress.start();\n this.loadingDatasetDetails = true;\n this.loadDatasetDetails(this.$route.params.ds_id)\n .then(() => {\n this.$Progress.finish();\n this.loadingDatasetDetails = false;\n this.initDatasetDetails();\n })\n .catch((err) => {\n console.warn(err); // eslint-disable-line\n this.$Progress.fail();\n if (typeof this.$piwik?.resume === \"function\") this.$piwik.resume();\n this.$router.replace({\n name: 'NotFound',\n query: { locale: this.$route.query.locale, dataset: this.$route.params.ds_id },\n });\n })\n .finally(() => this.$root.$emit('contentLoaded'));\n } else {\n this.initDatasetDetails();\n this.$root.$emit('contentLoaded')\n }\n\n const distributionsConf = this.$env.content.datasetDetails && this.$env.content.datasetDetails.distributions;\n if (distributionsConf) {\n this.distributions.displayAll = distributionsConf.displayAll || this.distributions.displayAll;\n this.distributions.displayCount = parseInt(distributionsConf.displayCount, 10) || this.distributions.displayCount;\n\n if (typeof distributionsConf.incrementSteps === 'string') {\n // Need to parse as json array since env variables are string only\n distributionsConf.incrementSteps = JSON.parse(distributionsConf.incrementSteps);\n }\n this.distributions.incrementSteps = distributionsConf.incrementSteps || this.distributions.incrementSteps;\n }\n\n if (this.distributions.displayAll) this.distributions.displayCount = this.getDistributions.length;\n\n const pagesConf = this.$env.content.datasetDetails && this.$env.content.datasetDetails.pages;\n if (pagesConf) {\n this.pages.displayAll = pagesConf.displayAll || this.pages.displayAll;\n this.pages.displayCount = parseInt(pagesConf.displayCount, 10) || this.pages.displayCount;\n\n if (typeof pagesConf.incrementSteps === 'string') {\n // Need to parse as json array since env variables are string only\n pagesConf.incrementSteps = JSON.parse(pagesConf.incrementSteps);\n }\n this.pages.incrementSteps = pagesConf.incrementSteps || this.pages.incrementSteps;\n }\n\n if (this.pages.displayAll) this.pages.displayCount = this.getPages.length;\n },\n beforeUnmount() {\n $('.tooltip').remove();\n },\n setup() {\n metaInfo.useDatasetDetailsDatasetHead();\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n\n .catalogue-label {\n white-space: pre-line;\n }\n\n .cursor-pointer {\n cursor: pointer;\n }\n\n .tag-color {\n background-color: var(--tag-color);\n }\n\n .btn-color {\n &:hover {\n background-color: #196fd2;\n border-color: #196fd2;\n }\n }\n\n .heading, .arrow, .copy-text {\n cursor: pointer;\n }\n\n .details-link {\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n .text-break {\n word-break: break-word;\n }\n\n td {\n padding-left: 0 !important;\n padding-top: 1% !important;\n padding-bottom: 1% !important;\n }\n\n .download-all-btn {\n min-width: 100px;\n height: 31px;\n }\n\n .d-inline-table {\n display: inline-table;\n }\n\n /*** BOOTSTRAP ***/\n button:focus {\n outline:0;\n }\n .options, .download {\n .dropdown-menu {\n .dropdown-item {\n &:hover {\n color: initial;\n background-color: initial;\n }\n }\n }\n }\n.spinner-grow {\n width: 20px;\n height: 20px;\n}\n\n /*** FONT AWESOME ICONS ***/\n .fa-check-square {\n color: #28a745;\n width: 16px;\n height: 16px;\n }\n\n /*** MATERIAL ICONS ***/\n %modal-icon {\n font-size: 18px;\n cursor: default;\n }\n\n .help-icon {\n @extend %modal-icon;\n }\n\n .check-icon {\n @extend %modal-icon;\n color: #28a745;\n }\n\n .material-icons.small-icon {\n font-size: 20px;\n }\n\n .distributions {\n\n &__item {\n position: relative;\n\n &--preview {\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, white 55%);\n z-index: 10;\n }\n }\n\n &__actions {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n height: 100%;\n z-index: 11;\n }\n }\n .mt-4 {\n margin-top: 1.5rem !important;\n }\n\n .keywords {\n\n &__item {\n position: relative;\n }\n\n &__actions {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n height: 100%;\n z-index: 11;\n }\n }\n .sectionList {\n list-style-type: '→ ';\n margin-left:6.5%;\n }\n @media only screen and (max-width: 991px) {\n .sectionList {\n margin-left: 0;\n }\n}\n</style>\n"],"names":["_hoisted_1","_hoisted_3","_hoisted_4","_component_dataset_details_properties","_resolveComponent","_openBlock","_createElementBlock","_createVNode","_component_resource_access_popup","_cache","_createTextVNode","getReleaseDate","_ctx","getModificationDate","_hoisted_2","$data","_component_dataset_details_skeleton","_createCommentVNode","$props","_createBlock","_component_dataset_details_description","$options","_component_distributions","getDistributions","getKeywords","_component_dataset_details_features"],"mappings":"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"}
1
+ {"version":3,"file":"DatasetDetailsDataset.vue.mjs","sources":["../../lib/datasetDetails/DatasetDetailsDataset.vue"],"sourcesContent":["<template>\n <div>\n <resource-access-popup ref=\"externalResourceModal\" />\n <span property=\"dc:issued\" :content=\"getReleaseDate\"></span>\n <span property=\"dc:modified\" :content=\"getModificationDate\"></span>\n <div v-if=\"loadingDatasetDetails\">\n <dataset-details-skeleton type=\"DatasetDetails\"></dataset-details-skeleton>\n </div>\n <div v-if=\"!loadingDatasetDetails\" class=\"dsd-dataset\">\n <dataset-details-description\n v-if=\"showDatasetDescription\"\n :dateIncorrect=\"dateIncorrect\"\n :machineTranslated=\"machineTranslated\"\n :translationNotAvailable=\"translationNotAvailable\"\n />\n <distributions\n :openModal=\"openModal\"\n :getDistributions=\"getDistributions\"\n :expandedDistributions=\"expandedDistributions\"\n :expandedDistributionDescriptions=\"expandedDistributionDescriptions\"\n :displayedDistributions=\"displayedDistributions\"\n :isDistributionsAllDisplayed=\"isDistributionsAllDisplayed\"\n :distributions=\"distributions\"\n :setDistributionsDisplayCount=\"setDistributionsDisplayCount\"\n :pages=\"pages\"\n :showDownloadUrls=\"showDownloadUrls\"\n :isOnlyOneUrl=\"isOnlyOneUrl\"\n :getDistributionFormat=\"getDistributionFormat\"\n :distributionFormatTruncated=\"distributionFormatTruncated\"\n :getDistributionTitle=\"getDistributionTitle\"\n :distributionVisibleContent=\"distributionVisibleContent\"\n :distributionExpandedContent=\"distributionExpandedContent\"\n :distributionDescriptionIsExpanded=\"distributionDescriptionIsExpanded\"\n :distributionDescriptionIsExpandable=\"distributionDescriptionIsExpandable\"\n :distributionIsExpanded=\"distributionIsExpanded\"\n :showNumber=\"showNumber\"\n :showObject=\"showObject\"\n :showDownloadDropdown=\"showDownloadDropdown\"\n :showLicence=\"showLicence\"\n :showLicensingAssistant=\"showLicensingAssistant\"\n :filterDateFormatEU=\"filterDateFormatEU\"\n :showArray=\"showArray\"\n :showObjectArray=\"showObjectArray\"\n :getVisualisationLink=\"getVisualisationLink\"\n :getDownloadUrl=\"getDownloadUrl\"\n :trackGoto=\"trackGoto\"\n :showAccessUrls=\"showAccessUrls\"\n :replaceHttp=\"replaceHttp\"\n :previewLinkCallback=\"previewLinkCallback\"\n :toggleDistribution=\"toggleDistribution\"\n :toggleDistributionDescription=\"toggleDistributionDescription\"\n :increaseNumDisplayedDistributions=\"increaseNumDisplayedDistributions\"\n :nonOverflowingIncrementsForDistributions=\"nonOverflowingIncrementsForDistributions\"\n :appendCurrentLocaleToURL=\"appendCurrentLocaleToURL\"\n :isUrlInvalid=\"isUrlInvalid\"\n :openIfValidUrl=\"openIfValidUrl\"\n :showTooltipVisualiseButton=\"showTooltipVisualiseButton\"\n :showPublisher=\"showPublisher\"\n :embed=\"embed\"\n />\n\n <dataset-details-features\n :getKeywords=\"getKeywords\"\n :pages=\"pages\"\n :increaseNumDisplayedPages=\"increaseNumDisplayedPages\"\n :nonOverflowingIncrementsForPages=\"nonOverflowingIncrementsForPages\"\n :showKeyword=\"showKeyword\"\n :trackGoto=\"trackGoto\"\n :showObjectArray=\"showObjectArray\"\n :showArray=\"showArray\"\n :showObject=\"showObject\"\n />\n\n <dataset-details-properties v-if=\"showDatasetProperties\">\n <template #property-header><slot name=\"property-header\"></slot></template>\n <template #property-table-before><slot name=\"property-table-before\"></slot></template>\n <template #property-table><slot name=\"property-table\"></slot></template>\n <template #property-table-after><slot name=\"property-table-after\"></slot></template>\n </dataset-details-properties>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\n // @ts-nocheck\n /* eslint-disable no-confusing-arrow, no-nested-ternary, no-return-assign, no-confusing-arrow */\n import $ from 'jquery';\n import { mapActions, mapGetters } from 'vuex';\n import {\n has,\n isNil,\n isArray,\n isObject,\n isString,\n isNumber,\n isEmpty,\n } from 'lodash';\n import AppLink from '../widgets/AppLink.vue';\n import Tooltip from '../widgets/Tooltip.vue';\n import Distributions from './distributions/Distributions.vue';\n import dateFilters from '../filters/dateFilters';\n import {\n getTranslationFor, getCountryFlagImg, truncate, replaceHttp, appendCurrentLocaleToURL\n } from '../utils/helpers';\n import ResourceAccessPopup from '../widgets/ResourceAccessPopup.vue';\n import DatasetDetailsExtendedMetaData\n from \"../datasetDetails/features/DatasetDetailsIsUsedBy.vue\";\n import DatasetDetailsSkeleton from \"../datasetDetails/DatasetDetailsSkeleton.vue\";\n import * as metaInfo from '../composables/head';\n\n export default {\n name: 'datasetDetailsDataset',\n components: {\n DatasetDetailsSkeleton,\n DatasetDetailsExtendedMetaData,\n AppLink,\n Tooltip,\n Distributions,\n ResourceAccessPopup\n },\n props: {\n distributionVisibleContent: {\n type: Array,\n default: () => ['license', 'licenseAttributionByText', 'modificationDate'],\n },\n distributionExpandedContent: {\n type: Array,\n default: () => [\n 'releaseDate',\n 'language',\n 'availability',\n 'status',\n 'rights',\n 'mediaType',\n 'byteSize',\n 'checksum',\n 'pages',\n 'type',\n 'compressFormat',\n 'packageFormat',\n 'hasPolicy',\n 'conformsTo',\n 'spatialResolutionInMeters',\n 'temporalResolution',\n ],\n },\n showDatasetDescription: {\n type: Boolean,\n default: () => true,\n },\n showDatasetProperties: {\n type: Boolean,\n default: () => true,\n },\n showPublisher: {\n type: Boolean,\n default: () => false,\n },\n embed: {\n type: Boolean,\n default: () => false,\n },\n },\n data() {\n return {\n defaultLocale: this.$env.languages.locale,\n // has to be INITIAL_DATASET_DESCRIPTION_LENGTH\n isDatasetDescriptionExpanded: false,\n loadingDatasetDetails: false,\n machineTranslated: false,\n translationNotAvailable: false,\n expandedDistributions: [],\n expandedDistributionDescriptions: [],\n distributions: {\n displayAll: this.$env.content.datasetDetails.distributions.displayAll,\n displayCount: this.$env.content.datasetDetails.distributions.displayCount,\n incrementSteps: this.$env.content.datasetDetails.distributions.incrementSteps,\n descriptionMaxLines: this.$env.content.datasetDetails.distributions.descriptionMaxLines,\n descriptionMaxChars: this.$env.content.datasetDetails.distributions.descriptionMaxChars,\n },\n pages: {\n isVisible: this.$env.content.datasetDetails.pages.isVisible,\n displayAll: this.$env.content.datasetDetails.pages.displayAll,\n displayCount: this.$env.content.datasetDetails.pages.displayCount,\n incrementSteps: this.$env.content.datasetDetails.pages.incrementSteps,\n descriptionMaxLines: this.$env.content.datasetDetails.pages.descriptionMaxLines,\n descriptionMaxChars: this.$env.content.datasetDetails.pages.descriptionMaxChars,\n },\n showDescription: true,\n };\n },\n computed: {\n // import store-getters\n ...mapGetters('datasetDetails', [\n 'getKeywords',\n 'getAccessRights',\n 'getAccrualPeriodicity',\n 'getCatalog',\n 'getContactPoints',\n 'getDateIncorrect',\n 'getDescription',\n 'getDistributions',\n 'getID',\n 'getLanguages',\n 'getLicences',\n 'getModificationDate',\n 'getOtherIdentifiers',\n 'getPages',\n 'getPublisher',\n 'getReleaseDate',\n 'getSpatial',\n 'getTranslationMetaData',\n 'getTitle'\n ]),\n dateIncorrect() {\n return this.getDateIncorrect;\n },\n displayedDistributions() {\n const sorted = [...this.getDistributions].sort((a, b) => {\n if (getTranslationFor(a.title, this.$route.query.locale, this.getLanguages) < getTranslationFor(b.title, this.$route.query.locale, this.getLanguages)) { return -1; }\n if (getTranslationFor(a.title, this.$route.query.locale, this.getLanguages) > getTranslationFor(b.title, this.$route.query.locale, this.getLanguages)) { return 1; }\n return 0;\n });\n return this.distributions.displayAll\n ? Object.freeze(sorted)\n : Object.freeze(sorted.slice(0, this.distributions.displayCount));\n },\n isDistributionsAllDisplayed() {\n return this.distributions.displayCount === this.getDistributions.length;\n },\n remainingDistributions() {\n return this.getDistributions.length - this.distributions.displayCount;\n }\n },\n methods: {\n ...mapActions('datasetDetails', [\n 'loadDatasetDetails',\n 'setLoading',\n ]),\n has,\n isNil,\n isArray,\n isObject,\n isString,\n isNumber,\n appendCurrentLocaleToURL,\n getTranslationFor,\n getCountryFlagImg,\n truncate,\n replaceHttp,\n initDatasetDetails() {\n this.piwikMetaPush();\n setTimeout(() => {\n if (typeof this.$piwik?.resume === \"function\") this.$piwik.resume();\n }, 500);\n this.$nextTick(() => {\n // Display/hide translation banners\n this.setTranslationBanners();\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n });\n },\n setDistributionsDisplayCount(count: number) {\n this.distributions.displayCount = count;\n },\n openModal(callback, toggleDownloadPopup) {\n this.$refs.externalResourceModal.openModal(callback, toggleDownloadPopup)\n },\n previewLinkCallback(distribution) {\n return () => {\n this.$emit('track-link', this.getVisualisationLink(distribution), 'link');\n window.open(this.getVisualisationLink(distribution), '_blank');\n };\n },\n filterDateFormatEU(date) {\n return dateFilters.formatEU(date);\n },\n /* ABSTRACT SHOW FUNCTIONS */\n showString(string) {\n return !isNil(string) && isString(string);\n },\n showNumber(number) {\n return !isNil(number) && isNumber(number);\n },\n showObject(object) {\n return !isNil(object) && isObject(object) && !Object.values(object).reduce((keyUndefined, currentValue) => keyUndefined && currentValue === undefined, true);\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 /* SPECIFIC SHOW FUNCTIONS */\n /* for now show all licences */\n showLicence(licence) {\n // return (has(licence, 'id') && !isNil(licence.id))\n // || (has(licence, 'label') && !isNil(licence.label))\n return true\n },\n showLicensingAssistant(distribution) {\n return has(distribution, 'licence.la_url') && this.showString(distribution.licence.la_url);\n },\n showDownloadDropdown(distribution) {\n return this.showAccessUrls(distribution) || this.showDownloadUrls(distribution);\n },\n isOnlyOneUrl(distribution) {\n return (this.showAccessUrls(distribution) && !this.showDownloadUrls(distribution))\n || (!this.showAccessUrls(distribution) && this.showDownloadUrls(distribution) && distribution.downloadUrls.length === 1);\n },\n getDownloadUrl(distribution) {\n let url;\n if (this.showAccessUrls(distribution) && !this.showDownloadUrls(distribution)) {\n url = distribution.accessUrl[0];\n }\n if (!this.showAccessUrls(distribution) && this.showDownloadUrls(distribution) && distribution.downloadUrls.length === 1) {\n url = distribution.downloadUrls[0];\n }\n return url;\n },\n showAccessUrls(distribution) {\n return has(distribution, 'accessUrl') && this.showArray(distribution.accessUrl);\n },\n showDownloadUrls(distribution) {\n return has(distribution, 'downloadUrls') && this.showArray(distribution.downloadUrls);\n },\n showKeyword(keyword) {\n return has(keyword, 'id')\n && has(keyword, 'title')\n && !isNil(keyword.id)\n && !isNil(keyword.title);\n },\n\n /* GETTER / SETTER FUNCTIONS */\n\n setDatasetOriginalLanguage(originalLanguage) {\n this.$i18n.locale = originalLanguage;\n },\n distributionIsExpanded(id) {\n setTimeout(() => {\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n }, 500);\n return this.expandedDistributions.includes(id);\n },\n distributionDescriptionIsExpanded(id) {\n return this.expandedDistributionDescriptions.includes(id);\n },\n distributionDescriptionIsExpandable(description) {\n return isNil(description) ? false : description.length > this.distributions.descriptionMaxChars;\n },\n getDistributionFormat(distribution) {\n return has(distribution, 'format.label') && !isNil(distribution.format.label) ? distribution.format.label : '';\n },\n distributionFormatTruncated(distribution) {\n return this.getDistributionFormat(distribution).length > 4;\n },\n getDistributionTitle(distribution) {\n return distribution.title\n ? getTranslationFor(distribution.title, this.$route.query.locale, this.getLanguages)\n : this.getID || '-';\n },\n getVisualisationLink(distribution) {\n // Return Visualisation Link\n const accessUrl = distribution.downloadUrls && distribution.downloadUrls.length ? distribution.downloadUrls[0] : distribution.accessUrl[0];\n return `/data/visualisation/?file=${encodeURIComponent(accessUrl)}`;\n },\n // getSubjectLink(subject) {\n // return { path: `/datasets?subject=${subject.id}`, query: Object.assign({}, { locale: this.$route.query.locale }) };\n // },\n toggleDistribution(id) {\n const index = this.expandedDistributions.indexOf(id);\n if (index > -1) this.expandedDistributions.splice(index, 1);\n else this.expandedDistributions.push(id);\n },\n toggleDistributionDescription(id) {\n const index = this.expandedDistributionDescriptions.indexOf(id);\n if (index > -1) this.expandedDistributionDescriptions.splice(index, 1);\n else this.expandedDistributionDescriptions.push(id);\n },\n setTranslationBanners() {\n if (!this.$i18n) return;\n const translationMetaData = this.getTranslationMetaData;\n // Check if translation of dataset is available in selected language\n if (!isNil(translationMetaData.details) && has(translationMetaData.details, this.$route.query.locale)) {\n // Check if dataset if machine translated\n this.machineTranslated = translationMetaData.details[this.$route.query.locale].machine_translated;\n } else {\n // No translation of this dataset available for the selected language\n this.translationNotAvailable = true;\n }\n },\n // Emit a Matomo event when user clicks on 'go to resource' element\n trackGoto() {\n const paq = window._paq || []; // eslint-disable-line\n // paq.push(['trackEvent', 'GoToResource', 'Clicked']);\n this.$piwik.trackGotoResource();\n },\n clamp(n, min, max) {\n return Math.min(Math.max(n, min), max);\n },\n // Increases the current number of distributions displayed\n // and clamps the result so that it never exceeds the number of all distributions.\n increaseNumDisplayedDistributions(increment) {\n const clampedSum = this.clamp(this.distributions.displayCount + increment, 0, this.getDistributions.length);\n this.distributions.displayCount = clampedSum;\n },\n nonOverflowingIncrementsForDistributions(incrementStep) {\n return this.distributions.displayCount + incrementStep <= this.getDistributions.length;\n },\n // Increases the current number of distributions displayed\n // and clamps the result so that it never exceeds the number of all distributions.\n increaseNumDisplayedPages(increment) {\n const clampedSum = this.clamp(this.pages.displayCount + increment, 0, this.getPages.length);\n this.pages.displayCount = clampedSum;\n },\n nonOverflowingIncrementsForPages(incrementStep) {\n return this.pages.displayCount + incrementStep <= this.getPages.length;\n },\n piwikMetaPush() {\n this.$piwik.trackDatasetDetailsPageView(null, null, {\n dataset_AccessRights: this.getAccessRights,\n dataset_AccrualPeriodicity: this.getAccrualPeriodicity,\n dataset_Catalog: this.getCatalog,\n // dataset_Categories: this.getCategories,\n // dataset_ConformsTo: this.getConformsTo,\n // dataset_ContactPoints: this.getContactPoints,\n // dataset_Country: this.getCountry,\n // dataset_Creator: this.getCreator,\n // dataset_Description: this.getDescription,\n // dataset_Distributions: this.getDistributions,\n // dataset_DistributionFormats: this.getDistributionFormats,\n // dataset_Documentations: this.getDocumentations,\n // dataset_Frequency: this.getFrequency,\n // dataset_HasVersion: this.getHasVersion,\n dataset_ID: this.getID,\n // dataset_Identifiers: this.getIdentifiers,\n // dataset_IdName: this.getIdName,\n // dataset_IsVersionOf: this.getIsVersionOf,\n // datest_Keywords: this.getKeywords,\n // dataset_LandingPages: this.getLandingPagesResource,\n // dataset_Languages: this.getLanguages,\n // dataset_Licences: this.getLicences,\n // dataset_Loading: this.getLoading,\n // dataset_ModificationDate: this.getModificationDate,\n // dataset_OriginalLanguage: this.getOriginalLanguage,\n // dataset_OtherIdentifiers: this.getOtherIdentifiers,\n // dataset_Pages: this.getPages,\n // dataset_Provenances: this.getProvenances,\n dataset_Publisher: this.getPublisher,\n // dataset_RelatedResources: this.getRelatedResources,\n // dataset_ReleaseDate: this.getReleaseDate,\n // dataset_Sources: this.getSources,\n // dataset_Spatial: this.getSpatial,\n // dataset_SpatialResource: this.getSpatialResource,\n // dataset_Temporal: this.getTemporal,\n dataset_Title: this.getTitle,\n // dataset_TranslationMetaData: this.getTranslationMetaData,\n // dataset_VersionInfo: this.getVersionInfo,\n // dataset_VersionNotes: this.getVersionNotes,\n });\n },\n isUrlInvalid(url) {\n if (url) {\n try {\n /* eslint-disable no-useless-escape */\n return !(new RegExp(\"^((https?:\\/\\/(www\\.)?)([-a-zA-Z0-9@:%._\\+~#=]{1,256})([-a-zA-Z0-9()@:%_\\+.~#?&//=]*))$\", \"i\")).test(decodeURIComponent(url.split(\"=\").pop()));\n /* eslint-enable no-useless-escape */\n } catch (e) {\n console.error(e);\n }\n }\n },\n openIfValidUrl(isValid, previewLinkCallback, distribution, event) {\n if (isValid) {\n // for (let key in this.$children) {\n // if(this.$children[key].$refs[\"externalResourceModal\"]) {\n // this.$children[key].$refs[\"externalResourceModal\"].openModal(previewLinkCallback(distribution), false);\n // }\n // }\n this.openModal(previewLinkCallback(distribution), false);\n } else {\n event.preventDefault();\n event.stopPropagation();\n }\n },\n showTooltipVisualiseButton(invalidUrl) {\n if (invalidUrl) {\n return this.$t('message.tooltip.invalidVisualise');\n }\n return ''\n },\n },\n mounted() {\n // Duplicated API call, execute only if data not already loaded\n if (this.$route.params.ds_id !== this.getID) {\n this.$Progress.start();\n this.loadingDatasetDetails = true;\n this.loadDatasetDetails(this.$route.params.ds_id)\n .then(() => {\n this.$Progress.finish();\n this.loadingDatasetDetails = false;\n this.initDatasetDetails();\n })\n .catch((err) => {\n console.warn(err); // eslint-disable-line\n this.$Progress.fail();\n if (typeof this.$piwik?.resume === \"function\") this.$piwik.resume();\n this.$router.replace({\n name: 'NotFound',\n query: { locale: this.$route.query.locale, dataset: this.$route.params.ds_id },\n });\n })\n .finally(() => this.$root.$emit('contentLoaded'));\n } else {\n this.initDatasetDetails();\n this.$root.$emit('contentLoaded')\n }\n\n const distributionsConf = this.$env.content.datasetDetails && this.$env.content.datasetDetails.distributions;\n if (distributionsConf) {\n this.distributions.displayAll = distributionsConf.displayAll || this.distributions.displayAll;\n this.distributions.displayCount = parseInt(distributionsConf.displayCount, 10) || this.distributions.displayCount;\n\n if (typeof distributionsConf.incrementSteps === 'string') {\n // Need to parse as json array since env variables are string only\n distributionsConf.incrementSteps = JSON.parse(distributionsConf.incrementSteps);\n }\n this.distributions.incrementSteps = distributionsConf.incrementSteps || this.distributions.incrementSteps;\n }\n\n if (this.distributions.displayAll) this.distributions.displayCount = this.getDistributions.length;\n\n const pagesConf = this.$env.content.datasetDetails && this.$env.content.datasetDetails.pages;\n if (pagesConf) {\n this.pages.displayAll = pagesConf.displayAll || this.pages.displayAll;\n this.pages.displayCount = parseInt(pagesConf.displayCount, 10) || this.pages.displayCount;\n\n if (typeof pagesConf.incrementSteps === 'string') {\n // Need to parse as json array since env variables are string only\n pagesConf.incrementSteps = JSON.parse(pagesConf.incrementSteps);\n }\n this.pages.incrementSteps = pagesConf.incrementSteps || this.pages.incrementSteps;\n }\n\n if (this.pages.displayAll) this.pages.displayCount = this.getPages.length;\n },\n beforeUnmount() {\n $('.tooltip').remove();\n },\n setup() {\n metaInfo.useDatasetDetailsDatasetHead();\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n\n .catalogue-label {\n white-space: pre-line;\n }\n\n .cursor-pointer {\n cursor: pointer;\n }\n\n .tag-color {\n background-color: var(--tag-color);\n }\n\n .btn-color {\n &:hover {\n background-color: #196fd2;\n border-color: #196fd2;\n }\n }\n\n .heading, .arrow, .copy-text {\n cursor: pointer;\n }\n\n .details-link {\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n .text-break {\n word-break: break-word;\n }\n\n td {\n padding-left: 0 !important;\n padding-top: 1% !important;\n padding-bottom: 1% !important;\n }\n\n .download-all-btn {\n min-width: 100px;\n height: 31px;\n }\n\n .d-inline-table {\n display: inline-table;\n }\n\n /*** BOOTSTRAP ***/\n button:focus {\n outline:0;\n }\n .options, .download {\n .dropdown-menu {\n .dropdown-item {\n &:hover {\n color: initial;\n background-color: initial;\n }\n }\n }\n }\n.spinner-grow {\n width: 20px;\n height: 20px;\n}\n\n /*** FONT AWESOME ICONS ***/\n .fa-check-square {\n color: #28a745;\n width: 16px;\n height: 16px;\n }\n\n /*** MATERIAL ICONS ***/\n %modal-icon {\n font-size: 18px;\n cursor: default;\n }\n\n .help-icon {\n @extend %modal-icon;\n }\n\n .check-icon {\n @extend %modal-icon;\n color: #28a745;\n }\n\n .material-icons.small-icon {\n font-size: 20px;\n }\n\n .distributions {\n\n &__item {\n position: relative;\n\n &--preview {\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, white 55%);\n z-index: 10;\n }\n }\n\n &__actions {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n height: 100%;\n z-index: 11;\n }\n }\n .mt-4 {\n margin-top: 1.5rem !important;\n }\n\n .keywords {\n\n &__item {\n position: relative;\n }\n\n &__actions {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n height: 100%;\n z-index: 11;\n }\n }\n .sectionList {\n list-style-type: '→ ';\n margin-left:6.5%;\n }\n @media only screen and (max-width: 991px) {\n .sectionList {\n margin-left: 0;\n }\n}\n</style>\n"],"names":["_hoisted_1","_hoisted_3","_hoisted_4","_component_dataset_details_properties","_resolveComponent","_openBlock","_createElementBlock","_createVNode","_component_resource_access_popup","_cache","_createTextVNode","getReleaseDate","_ctx","getModificationDate","_hoisted_2","$data","_component_dataset_details_skeleton","_createCommentVNode","$props","_createBlock","_component_dataset_details_description","$options","_component_distributions","getDistributions","getKeywords","_component_dataset_details_features","_withCtx","_renderSlot"],"mappings":"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"}
@@ -7,8 +7,8 @@ import f from "./distributions/Distributions.vue.mjs";
7
7
  import y from "../filters/dateFilters.mjs";
8
8
  import { getTranslationFor as o, appendCurrentLocaleToURL as b, getCountryFlagImg as w, truncate as $, replaceHttp as A } from "../utils/helpers.mjs";
9
9
  import C from "../widgets/ResourceAccessPopup.vue.mjs";
10
- import x from "./features/DatasetDetailsIsUsedBy.vue.mjs";
11
- import U from "./DatasetDetailsSkeleton.vue.mjs";
10
+ import U from "./features/DatasetDetailsIsUsedBy.vue.mjs";
11
+ import x from "./DatasetDetailsSkeleton.vue.mjs";
12
12
  import "@unhead/vue";
13
13
  import "merge-anything";
14
14
  import "../configurations/config-schema/apiSchema.mjs";
@@ -27,8 +27,8 @@ import { useDatasetDetailsDatasetHead as v } from "../composables/head/useDatase
27
27
  const Y = {
28
28
  name: "datasetDetailsDataset",
29
29
  components: {
30
- DatasetDetailsSkeleton: U,
31
- DatasetDetailsExtendedMetaData: x,
30
+ DatasetDetailsSkeleton: x,
31
+ DatasetDetailsExtendedMetaData: U,
32
32
  AppLink: D,
33
33
  Tooltip: m,
34
34
  Distributions: f,