@piveau/piveau-hub-ui-modules 4.6.106 → 4.6.108
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs +10 -10
- package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs +95 -50
- package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue2.mjs.map +1 -1
- package/dist/datasets/DatasetList.vue.mjs +10 -10
- package/dist/datasets/DatasetList.vue.mjs.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.mjs +200 -198
- package/dist/index.mjs.map +1 -1
- package/dist/piveau-hub-ui-modules.css +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { defineComponent as m, reactive as V, openBlock as f, createElementBlock as x, createElementVNode as a, toDisplayString as c, createTextVNode as i, createVNode as r, unref as
|
|
2
|
-
import { FormKit as
|
|
1
|
+
import { defineComponent as m, reactive as V, openBlock as f, createElementBlock as x, createElementVNode as a, toDisplayString as c, createTextVNode as i, createVNode as r, unref as s, withCtx as d, renderSlot as g } from "vue";
|
|
2
|
+
import { FormKit as p } from "@formkit/vue";
|
|
3
3
|
const k = { class: "formkitProperty" }, y = { class: "formkitCmpWrap d-flex" }, b = /* @__PURE__ */ m({
|
|
4
4
|
__name: "SelectControlledGroup",
|
|
5
5
|
props: {
|
|
@@ -13,16 +13,16 @@ const k = { class: "formkitProperty" }, y = { class: "formkitCmpWrap d-flex" },
|
|
|
13
13
|
placeholder: {},
|
|
14
14
|
info: {}
|
|
15
15
|
},
|
|
16
|
-
setup(
|
|
17
|
-
const t =
|
|
16
|
+
setup(u) {
|
|
17
|
+
const t = u, l = V({
|
|
18
18
|
groupValue: {},
|
|
19
19
|
selectValue: t.initialValue ?? Object.keys(t.options)[0]
|
|
20
20
|
});
|
|
21
|
-
return (
|
|
21
|
+
return (n, e) => (f(), x("div", k, [
|
|
22
22
|
a("h4", null, c(t.label), 1),
|
|
23
23
|
e[4] || (e[4] = i()),
|
|
24
24
|
a("div", y, [
|
|
25
|
-
r(
|
|
25
|
+
r(s(p), {
|
|
26
26
|
id: t.id,
|
|
27
27
|
type: "group",
|
|
28
28
|
name: n.name,
|
|
@@ -30,19 +30,19 @@ const k = { class: "formkitProperty" }, y = { class: "formkitCmpWrap d-flex" },
|
|
|
30
30
|
modelValue: l.groupValue,
|
|
31
31
|
"onUpdate:modelValue": e[1] || (e[1] = (o) => l.groupValue = o)
|
|
32
32
|
}, {
|
|
33
|
-
default:
|
|
34
|
-
r(
|
|
33
|
+
default: d(() => [
|
|
34
|
+
r(s(p), {
|
|
35
35
|
modelValue: l.selectValue,
|
|
36
36
|
"onUpdate:modelValue": e[0] || (e[0] = (o) => l.selectValue = o),
|
|
37
37
|
type: "select",
|
|
38
38
|
options: t.options,
|
|
39
39
|
name: t.selectName
|
|
40
40
|
}, {
|
|
41
|
-
prefix:
|
|
41
|
+
prefix: d(() => [...e[2] || (e[2] = [])]),
|
|
42
42
|
_: 1
|
|
43
43
|
}, 8, ["modelValue", "options", "name"]),
|
|
44
44
|
e[3] || (e[3] = i()),
|
|
45
|
-
g(
|
|
45
|
+
g(n.$slots, "default", {
|
|
46
46
|
selectValue: l.selectValue
|
|
47
47
|
})
|
|
48
48
|
]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectControlledGroup.vue.mjs","sources":["../../../lib/data-provider-interface/components/SelectControlledGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * `SelectControlledGroup` is a Vue component wrapping the FormKit group input. \n * It features a central select input that dictates the behavior of all child inputs within the group. \n * This setup allows for conditional display and interaction of child components based on the select input's value. \n * \n * Note that this is not a FormKit input itself, but rather a wrapper around the FormKit group input.\n */\n\nimport { reactive } from 'vue';\nimport { FormKit } from '@formkit/vue';\n\nconst props = defineProps<{\n name?: string;\n selectName: string;\n initialValue?: string;\n options: Record<string, string>;\n index?: number;\n id?: any;\n label?: string;\n placeholder?: string;\n info?: string;\n}>();\n\nconst data = reactive({\n groupValue: {},\n selectValue: props.initialValue ?? Object.keys(props.options)[0],\n});\n</script>\n\n<template>\n <div class=\"formkitProperty\">\n <h4>{{ props.label }}</h4>\n <div class=\"formkitCmpWrap d-flex\">\n <FormKit :id=\"props.id\" type=\"group\" :name=\"name\" :index=\"props.index\" v-model=\"data.groupValue\">\n <FormKit v-model=\"data.selectValue\" type=\"select\" :options=\"props.options\" :name=\"props.selectName\">\n <template #prefix>\n <!-- <div v-if=\"props.info\" class=\"infoI\">\n <div class=\"tooltipFormkit\">\n {{ props.info }}\n </div>\n </div> -->\n </template>\n </FormKit>\n <slot :select-value=\"data.selectValue\" />\n </FormKit>\n </div>\n\n </div>\n\n</template>"],"names":["props","__props","data","reactive","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_toDisplayString","_hoisted_2","_createVNode","_unref","FormKit","_cache","$event","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;;;;AAYA,UAAMA,IAAQC,GAYRC,IAAOC,EAAS;AAAA,MACpB,YAAY,CAAC;AAAA,MACb,aAAaH,EAAM,gBAAgB,OAAO,KAAKA,EAAM,OAAO,EAAE,CAAC;AAAA,IAAA,CAChE;sBAICI,EAAA,GAAAC,EAiBM,OAjBNC,GAiBM;AAAA,MAhBJC,EAA0B,MAAA,MAAAC,EAAnBR,EAAM,KAAK,GAAA,CAAA;AAAA;MAClBO,EAaM,OAbNE,GAaM;AAAA,QAZJC,EAWUC,EAAAC,CAAA,GAAA;AAAA,UAXA,IAAIZ,EAAM;AAAA,UAAI,MAAK;AAAA,UAAS,
|
|
1
|
+
{"version":3,"file":"SelectControlledGroup.vue.mjs","sources":["../../../lib/data-provider-interface/components/SelectControlledGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\n/**\n * `SelectControlledGroup` is a Vue component wrapping the FormKit group input. \n * It features a central select input that dictates the behavior of all child inputs within the group. \n * This setup allows for conditional display and interaction of child components based on the select input's value. \n * \n * Note that this is not a FormKit input itself, but rather a wrapper around the FormKit group input.\n */\n\nimport { reactive } from 'vue';\nimport { FormKit } from '@formkit/vue';\n\nconst props = defineProps<{\n name?: string;\n selectName: string;\n initialValue?: string;\n options: Record<string, string>;\n index?: number;\n id?: any;\n label?: string;\n placeholder?: string;\n info?: string;\n}>();\n\nconst data = reactive({\n groupValue: {},\n selectValue: props.initialValue ?? Object.keys(props.options)[0],\n});\n</script>\n\n<template>\n <div class=\"formkitProperty\">\n <h4>{{ props.label }}</h4>\n <div class=\"formkitCmpWrap d-flex\">\n <FormKit :id=\"props.id\" type=\"group\" :name=\"name\" :index=\"props.index\" v-model=\"data.groupValue\">\n <FormKit v-model=\"data.selectValue\" type=\"select\" :options=\"props.options\" :name=\"props.selectName\">\n <template #prefix>\n <!-- <div v-if=\"props.info\" class=\"infoI\">\n <div class=\"tooltipFormkit\">\n {{ props.info }}\n </div>\n </div> -->\n </template>\n </FormKit>\n <slot :select-value=\"data.selectValue\" />\n </FormKit>\n </div>\n\n </div>\n\n</template>"],"names":["props","__props","data","reactive","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_toDisplayString","_hoisted_2","_createVNode","_unref","FormKit","name","_cache","$event","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;;;;AAYA,UAAMA,IAAQC,GAYRC,IAAOC,EAAS;AAAA,MACpB,YAAY,CAAC;AAAA,MACb,aAAaH,EAAM,gBAAgB,OAAO,KAAKA,EAAM,OAAO,EAAE,CAAC;AAAA,IAAA,CAChE;sBAICI,EAAA,GAAAC,EAiBM,OAjBNC,GAiBM;AAAA,MAhBJC,EAA0B,MAAA,MAAAC,EAAnBR,EAAM,KAAK,GAAA,CAAA;AAAA;MAClBO,EAaM,OAbNE,GAaM;AAAA,QAZJC,EAWUC,EAAAC,CAAA,GAAA;AAAA,UAXA,IAAIZ,EAAM;AAAA,UAAI,MAAK;AAAA,UAAS,MAAMa,EAAI;AAAA,UAAG,OAAOb,EAAM;AAAA,UAAgB,YAAAE,EAAK;AAAA,UAAL,uBAAAY,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAb,EAAK,aAAUa;AAAA,QAAA;qBAC7F,MAQU;AAAA,YARVL,EAQUC,EAAAC,CAAA,GAAA;AAAA,cARQ,YAAAV,EAAK;AAAA,cAAL,uBAAAY,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAb,EAAK,cAAWa;AAAA,cAAE,MAAK;AAAA,cAAU,SAASf,EAAM;AAAA,cAAU,MAAMA,EAAM;AAAA,YAAA;cAC3E,UAAX,MAMW,CAAA,GAAAc,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,GAAA,CAAA;AAAA;;;YAEbE,EAAyCC,EAAA,QAAA,WAAA;AAAA,cAAlC,aAAcf,EAAK;AAAA,YAAA;;;;;;;;"}
|
|
@@ -1,61 +1,105 @@
|
|
|
1
1
|
import I from "./DatasetDetailsDataset.vue2.mjs";
|
|
2
|
-
import { resolveComponent as
|
|
2
|
+
import { resolveComponent as o, openBlock as a, createElementBlock as D, createVNode as d, createTextVNode as n, createElementVNode as c, createCommentVNode as u, createBlock as w, renderSlot as l, withCtx as b } from "vue";
|
|
3
3
|
import "./DatasetDetailsDataset.vue3.mjs";
|
|
4
|
-
import
|
|
5
|
-
const
|
|
4
|
+
import f from "../_virtual/_plugin-vue_export-helper.mjs";
|
|
5
|
+
const A = ["content"], O = ["content"], k = { key: 0 }, v = {
|
|
6
6
|
key: 1,
|
|
7
7
|
class: "dsd-dataset"
|
|
8
8
|
};
|
|
9
|
-
function
|
|
10
|
-
const
|
|
11
|
-
return a(),
|
|
12
|
-
d(
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
function L(s, i, r, C, t, e) {
|
|
10
|
+
const p = o("resource-access-popup"), g = o("dataset-details-skeleton"), h = o("dataset-details-description"), m = o("distributions"), y = o("dataset-details-features"), U = o("dataset-details-properties");
|
|
11
|
+
return a(), D("div", null, [
|
|
12
|
+
d(p, { ref: "externalResourceModal" }, null, 512),
|
|
13
|
+
i[6] || (i[6] = n()),
|
|
14
|
+
c("span", {
|
|
15
15
|
property: "dc:issued",
|
|
16
|
-
content:
|
|
17
|
-
}, null, 8, v),
|
|
18
|
-
t[7] || (t[7] = r()),
|
|
19
|
-
D("span", {
|
|
20
|
-
property: "dc:modified",
|
|
21
|
-
content: i.getModificationDate
|
|
16
|
+
content: s.getReleaseDate
|
|
22
17
|
}, null, 8, A),
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
i[7] || (i[7] = n()),
|
|
19
|
+
c("span", {
|
|
20
|
+
property: "dc:modified",
|
|
21
|
+
content: s.getModificationDate
|
|
22
|
+
}, null, 8, O),
|
|
23
|
+
i[8] || (i[8] = n()),
|
|
24
|
+
t.loadingDatasetDetails ? (a(), D("div", k, [
|
|
25
25
|
d(g, { type: "DatasetDetails" })
|
|
26
26
|
])) : u("", !0),
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
i[9] || (i[9] = n()),
|
|
28
|
+
t.loadingDatasetDetails ? u("", !0) : (a(), D("div", v, [
|
|
29
|
+
r.showDatasetDescription ? (a(), w(h, {
|
|
30
30
|
key: 0,
|
|
31
31
|
dateIncorrect: e.dateIncorrect,
|
|
32
|
-
machineTranslated:
|
|
33
|
-
translationNotAvailable:
|
|
32
|
+
machineTranslated: t.machineTranslated,
|
|
33
|
+
translationNotAvailable: t.translationNotAvailable
|
|
34
34
|
}, null, 8, ["dateIncorrect", "machineTranslated", "translationNotAvailable"])) : u("", !0),
|
|
35
|
-
|
|
36
|
-
l(
|
|
35
|
+
i[3] || (i[3] = n()),
|
|
36
|
+
l(s.$slots, "distributions", {
|
|
37
|
+
openModal: e.openModal,
|
|
38
|
+
expandedDistributions: t.expandedDistributions,
|
|
39
|
+
expandedDistributionDescriptions: t.expandedDistributionDescriptions,
|
|
40
|
+
displayedDistributions: e.displayedDistributions,
|
|
41
|
+
isDistributionsAllDisplayed: e.isDistributionsAllDisplayed,
|
|
42
|
+
distributions: t.distributions,
|
|
43
|
+
setDistributionsDisplayCount: e.setDistributionsDisplayCount,
|
|
44
|
+
pages: t.pages,
|
|
45
|
+
showDownloadUrls: e.showDownloadUrls,
|
|
46
|
+
getDistributionFormat: e.getDistributionFormat,
|
|
47
|
+
distributionFormatTruncated: e.distributionFormatTruncated,
|
|
48
|
+
getDistributionTitle: e.getDistributionTitle,
|
|
49
|
+
distributionVisibleContent: r.distributionVisibleContent,
|
|
50
|
+
distributionExpandedContent: r.distributionExpandedContent,
|
|
51
|
+
distributionDescriptionIsExpanded: e.distributionDescriptionIsExpanded,
|
|
52
|
+
distributionDescriptionIsExpandable: e.distributionDescriptionIsExpandable,
|
|
53
|
+
distributionIsExpanded: e.distributionIsExpanded,
|
|
54
|
+
showNumber: e.showNumber,
|
|
55
|
+
showObject: e.showObject,
|
|
56
|
+
showDownloadDropdown: e.showDownloadDropdown,
|
|
57
|
+
showLicence: e.showLicence,
|
|
58
|
+
showLicensingAssistant: e.showLicensingAssistant,
|
|
59
|
+
filterDateFormatEU: e.filterDateFormatEU,
|
|
60
|
+
showArray: e.showArray,
|
|
61
|
+
showObjectArray: e.showObjectArray,
|
|
62
|
+
getVisualisationLink: e.getVisualisationLink,
|
|
63
|
+
isOnlyOneUrl: e.isOnlyOneUrl,
|
|
64
|
+
getDownloadUrl: e.getDownloadUrl,
|
|
65
|
+
trackGoto: e.trackGoto,
|
|
66
|
+
showAccessUrls: e.showAccessUrls,
|
|
67
|
+
replaceHttp: e.replaceHttp,
|
|
68
|
+
previewLinkCallback: e.previewLinkCallback,
|
|
69
|
+
toggleDistribution: e.toggleDistribution,
|
|
70
|
+
toggleDistributionDescription: e.toggleDistributionDescription,
|
|
71
|
+
increaseNumDisplayedDistributions: e.increaseNumDisplayedDistributions,
|
|
72
|
+
nonOverflowingIncrementsForDistributions: e.nonOverflowingIncrementsForDistributions,
|
|
73
|
+
appendCurrentLocaleToURL: e.appendCurrentLocaleToURL,
|
|
74
|
+
isUrlInvalid: e.isUrlInvalid,
|
|
75
|
+
openIfValidUrl: e.openIfValidUrl,
|
|
76
|
+
showTooltipVisualiseButton: e.showTooltipVisualiseButton,
|
|
77
|
+
showPublisher: r.showPublisher,
|
|
78
|
+
embed: r.embed,
|
|
79
|
+
remainingDistributions: e.remainingDistributions,
|
|
80
|
+
getDistributionDescription: s.getDistributionDescription
|
|
81
|
+
}, () => [
|
|
37
82
|
d(m, {
|
|
83
|
+
embed: r.embed,
|
|
38
84
|
openModal: e.openModal,
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
expandedDistributionDescriptions: s.expandedDistributionDescriptions,
|
|
85
|
+
expandedDistributions: t.expandedDistributions,
|
|
86
|
+
expandedDistributionDescriptions: t.expandedDistributionDescriptions,
|
|
42
87
|
displayedDistributions: e.displayedDistributions,
|
|
43
|
-
|
|
44
|
-
distributions: s.distributions,
|
|
88
|
+
distributions: t.distributions,
|
|
45
89
|
setDistributionsDisplayCount: e.setDistributionsDisplayCount,
|
|
46
|
-
|
|
90
|
+
isDistributionsAllDisplayed: e.isDistributionsAllDisplayed,
|
|
91
|
+
pages: t.pages,
|
|
47
92
|
showDownloadUrls: e.showDownloadUrls,
|
|
48
|
-
isOnlyOneUrl: e.isOnlyOneUrl,
|
|
49
93
|
getDistributionFormat: e.getDistributionFormat,
|
|
50
94
|
distributionFormatTruncated: e.distributionFormatTruncated,
|
|
51
95
|
getDistributionTitle: e.getDistributionTitle,
|
|
52
|
-
distributionVisibleContent:
|
|
53
|
-
distributionExpandedContent:
|
|
96
|
+
distributionVisibleContent: r.distributionVisibleContent,
|
|
97
|
+
distributionExpandedContent: r.distributionExpandedContent,
|
|
54
98
|
distributionDescriptionIsExpanded: e.distributionDescriptionIsExpanded,
|
|
55
99
|
distributionDescriptionIsExpandable: e.distributionDescriptionIsExpandable,
|
|
56
100
|
distributionIsExpanded: e.distributionIsExpanded,
|
|
57
|
-
showNumber: e.showNumber,
|
|
58
101
|
showObject: e.showObject,
|
|
102
|
+
showNumber: e.showNumber,
|
|
59
103
|
showDownloadDropdown: e.showDownloadDropdown,
|
|
60
104
|
showLicence: e.showLicence,
|
|
61
105
|
showLicensingAssistant: e.showLicensingAssistant,
|
|
@@ -63,6 +107,7 @@ function C(i, t, o, L, s, e) {
|
|
|
63
107
|
showArray: e.showArray,
|
|
64
108
|
showObjectArray: e.showObjectArray,
|
|
65
109
|
getVisualisationLink: e.getVisualisationLink,
|
|
110
|
+
isOnlyOneUrl: e.isOnlyOneUrl,
|
|
66
111
|
getDownloadUrl: e.getDownloadUrl,
|
|
67
112
|
trackGoto: e.trackGoto,
|
|
68
113
|
showAccessUrls: e.showAccessUrls,
|
|
@@ -72,18 +117,18 @@ function C(i, t, o, L, s, e) {
|
|
|
72
117
|
toggleDistributionDescription: e.toggleDistributionDescription,
|
|
73
118
|
increaseNumDisplayedDistributions: e.increaseNumDisplayedDistributions,
|
|
74
119
|
nonOverflowingIncrementsForDistributions: e.nonOverflowingIncrementsForDistributions,
|
|
75
|
-
appendCurrentLocaleToURL: e.appendCurrentLocaleToURL,
|
|
76
120
|
isUrlInvalid: e.isUrlInvalid,
|
|
77
121
|
openIfValidUrl: e.openIfValidUrl,
|
|
78
122
|
showTooltipVisualiseButton: e.showTooltipVisualiseButton,
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
123
|
+
appendCurrentLocaleToURL: e.appendCurrentLocaleToURL,
|
|
124
|
+
showPublisher: r.showPublisher,
|
|
125
|
+
getDistributionDescription: s.getDistributionDescription
|
|
126
|
+
}, null, 8, ["embed", "openModal", "expandedDistributions", "expandedDistributionDescriptions", "displayedDistributions", "distributions", "setDistributionsDisplayCount", "isDistributionsAllDisplayed", "pages", "showDownloadUrls", "getDistributionFormat", "distributionFormatTruncated", "getDistributionTitle", "distributionVisibleContent", "distributionExpandedContent", "distributionDescriptionIsExpanded", "distributionDescriptionIsExpandable", "distributionIsExpanded", "showObject", "showNumber", "showDownloadDropdown", "showLicence", "showLicensingAssistant", "filterDateFormatEU", "showArray", "showObjectArray", "getVisualisationLink", "isOnlyOneUrl", "getDownloadUrl", "trackGoto", "showAccessUrls", "replaceHttp", "previewLinkCallback", "toggleDistribution", "toggleDistributionDescription", "increaseNumDisplayedDistributions", "nonOverflowingIncrementsForDistributions", "isUrlInvalid", "openIfValidUrl", "showTooltipVisualiseButton", "appendCurrentLocaleToURL", "showPublisher", "getDistributionDescription"])
|
|
82
127
|
], !0),
|
|
83
|
-
|
|
84
|
-
d(
|
|
85
|
-
getKeywords:
|
|
86
|
-
pages:
|
|
128
|
+
i[4] || (i[4] = n()),
|
|
129
|
+
d(y, {
|
|
130
|
+
getKeywords: s.getKeywords,
|
|
131
|
+
pages: t.pages,
|
|
87
132
|
increaseNumDisplayedPages: e.increaseNumDisplayedPages,
|
|
88
133
|
nonOverflowingIncrementsForPages: e.nonOverflowingIncrementsForPages,
|
|
89
134
|
showKeyword: e.showKeyword,
|
|
@@ -92,27 +137,27 @@ function C(i, t, o, L, s, e) {
|
|
|
92
137
|
showArray: e.showArray,
|
|
93
138
|
showObject: e.showObject
|
|
94
139
|
}, null, 8, ["getKeywords", "pages", "increaseNumDisplayedPages", "nonOverflowingIncrementsForPages", "showKeyword", "trackGoto", "showObjectArray", "showArray", "showObject"]),
|
|
95
|
-
|
|
96
|
-
|
|
140
|
+
i[5] || (i[5] = n()),
|
|
141
|
+
r.showDatasetProperties ? (a(), w(U, { key: 1 }, {
|
|
97
142
|
"property-header": b(() => [
|
|
98
|
-
l(
|
|
143
|
+
l(s.$slots, "property-header", {}, void 0, !0)
|
|
99
144
|
]),
|
|
100
145
|
"property-table-before": b(() => [
|
|
101
|
-
l(
|
|
146
|
+
l(s.$slots, "property-table-before", {}, void 0, !0)
|
|
102
147
|
]),
|
|
103
148
|
"property-table": b(() => [
|
|
104
|
-
l(
|
|
149
|
+
l(s.$slots, "property-table", {}, void 0, !0)
|
|
105
150
|
]),
|
|
106
151
|
"property-table-after": b(() => [
|
|
107
|
-
l(
|
|
152
|
+
l(s.$slots, "property-table-after", {}, void 0, !0)
|
|
108
153
|
]),
|
|
109
154
|
_: 3
|
|
110
155
|
})) : u("", !0)
|
|
111
156
|
]))
|
|
112
157
|
]);
|
|
113
158
|
}
|
|
114
|
-
const
|
|
159
|
+
const F = /* @__PURE__ */ f(I, [["render", L], ["__scopeId", "data-v-c6079882"]]);
|
|
115
160
|
export {
|
|
116
|
-
|
|
161
|
+
F as default
|
|
117
162
|
};
|
|
118
163
|
//# 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 <slot name=\"distributions\">\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 </slot>\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 <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 licencingAssistantUrl: this.$env.content.datasetDetails.distributions.licencingAssistantUrl,\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 'getIsHvd',\n 'getHvdCategories',\n 'getCountry',\n 'getCategories',\n 'getLoading',\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 watch: {\n getLoading: {\n handler(newVal, oldVal) {\n const isLoadingStopped = !newVal && oldVal;\n const isAlreadyLoadedSuccessfully = !newVal && !oldVal && this.getID;\n if (isLoadingStopped || isAlreadyLoadedSuccessfully) {\n this.piwikMetaPush();\n }\n },\n immediate: true\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 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 async piwikMetaPush() {\n await this.$nextTick();\n const obj = {\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 dataset_type: this.getIsHvd ? 'High-Value Dataset' : 'Dataset',\n dataset_scope: this.getCountry?.id === 'io'\n ? 'International Data'\n : this.getCountry?.id === 'eu'\n ? 'European Union Data'\n : 'National Data',\n dataset_provenance: this.getCountry?.name || this.getCountry?.id || '',\n dataset_category: (\n this.getCategories?.map(category => category.label?.en || category.id).filter(Boolean).length > 0\n ? this.getCategories.map(category => category.label?.en || category.id).filter(Boolean)\n : ['N/A']\n )\n };\n this.$piwik.trackDatasetDetailsPageView(null, null, obj);\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_4","_component_dataset_details_properties","_resolveComponent","_createVNode","_component_resource_access_popup","_cache","_createTextVNode","getReleaseDate","_hoisted_1","getModificationDate","_hoisted_2","$data","_openBlock","_createElementBlock","_hoisted_3","_createCommentVNode","$props","_createBlock","_component_dataset_details_description","$options","_renderSlot","_ctx","_component_distributions","getDistributions","getKeywords","_component_dataset_details_features","_withCtx"],"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 <slot name=\"distributions\" \n :openModal=\"openModal\"\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 :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 :isOnlyOneUrl=\"isOnlyOneUrl\"\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 :remainingDistributions=\"remainingDistributions\"\n :getDistributionDescription=\"getDistributionDescription\"\n >\n <distributions\n :embed=\"embed\"\n :openModal=\"openModal\"\n :expandedDistributions=\"expandedDistributions\"\n :expandedDistributionDescriptions=\"expandedDistributionDescriptions\"\n :displayedDistributions=\"displayedDistributions\"\n :distributions=\"distributions\"\n :setDistributionsDisplayCount=\"setDistributionsDisplayCount\"\n :isDistributionsAllDisplayed=\"isDistributionsAllDisplayed\"\n :pages=\"pages\"\n :showDownloadUrls=\"showDownloadUrls\"\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 :showObject=\"showObject\"\n :showNumber=\"showNumber\"\n :showDownloadDropdown=\"showDownloadDropdown\"\n :showLicence=\"showLicence\"\n :showLicensingAssistant=\"showLicensingAssistant\"\n :filterDateFormatEU=\"filterDateFormatEU\"\n :showArray=\"showArray\"\n :showObjectArray=\"showObjectArray\"\n :getVisualisationLink=\"getVisualisationLink\"\n :isOnlyOneUrl=\"isOnlyOneUrl\"\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 :isUrlInvalid=\"isUrlInvalid\"\n :openIfValidUrl=\"openIfValidUrl\"\n :showTooltipVisualiseButton=\"showTooltipVisualiseButton\"\n :appendCurrentLocaleToURL=\"appendCurrentLocaleToURL\"\n :showPublisher=\"showPublisher\"\n :getDistributionDescription=\"getDistributionDescription\"\n />\n </slot>\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 <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 licencingAssistantUrl: this.$env.content.datasetDetails.distributions.licencingAssistantUrl,\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 'getIsHvd',\n 'getHvdCategories',\n 'getCountry',\n 'getCategories',\n 'getLoading',\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 watch: {\n getLoading: {\n handler(newVal, oldVal) {\n const isLoadingStopped = !newVal && oldVal;\n const isAlreadyLoadedSuccessfully = !newVal && !oldVal && this.getID;\n if (isLoadingStopped || isAlreadyLoadedSuccessfully) {\n this.piwikMetaPush();\n }\n },\n immediate: true\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 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 async piwikMetaPush() {\n await this.$nextTick();\n const obj = {\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 dataset_type: this.getIsHvd ? 'High-Value Dataset' : 'Dataset',\n dataset_scope: this.getCountry?.id === 'io'\n ? 'International Data'\n : this.getCountry?.id === 'eu'\n ? 'European Union Data'\n : 'National Data',\n dataset_provenance: this.getCountry?.name || this.getCountry?.id || '',\n dataset_category: (\n this.getCategories?.map(category => category.label?.en || category.id).filter(Boolean).length > 0\n ? this.getCategories.map(category => category.label?.en || category.id).filter(Boolean)\n : ['N/A']\n )\n };\n this.$piwik.trackDatasetDetailsPageView(null, null, obj);\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_4","_component_dataset_details_properties","_resolveComponent","_createVNode","_component_resource_access_popup","_cache","_createTextVNode","getReleaseDate","_hoisted_1","getModificationDate","_hoisted_2","$data","_openBlock","_createElementBlock","_hoisted_3","_createCommentVNode","$props","_createBlock","_component_dataset_details_description","$options","_renderSlot","_ctx","_component_distributions","getDistributionDescription","getKeywords","_component_dataset_details_features","_withCtx"],"mappings":"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"}
|