@piveau/piveau-hub-ui-modules 4.5.5 → 4.5.7

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.
@@ -1,6 +1,6 @@
1
1
  import { mapGetters as d } from "vuex";
2
2
  import u from "./DownloadAllDistributions.vue.mjs";
3
- import { resolveComponent as b, openBlock as n, createElementBlock as D, createElementVNode as i, toDisplayString as r, createTextVNode as s, createBlock as c, createCommentVNode as m } from "vue";
3
+ import { resolveComponent as b, openBlock as n, createElementBlock as D, createElementVNode as i, toDisplayString as r, createTextVNode as s, createBlock as m, createCommentVNode as c } from "vue";
4
4
  import "./DistributionsHeader.vue2.mjs";
5
5
  import p from "../../_virtual/_plugin-vue_export-helper.mjs";
6
6
  const g = {
@@ -24,26 +24,29 @@ const g = {
24
24
  "getLanguages"
25
25
  ])
26
26
  }
27
- }, h = { class: "distributions-header-container w-100" }, w = { class: "distributions-header-title-container dsd-item d-flex justify-content-between align-items-center" }, _ = { class: "distributions-header-title" }, f = ["title"], v = { class: "distributions-header-title-count-container" }, U = { class: "distributions-header-title-count" };
27
+ }, h = { class: "distributions-header-container w-100" }, w = {
28
+ class: "distributions-header-title-container dsd-item d-flex flex-column align-items-start",
29
+ style: { position: "relative", left: "-15px" }
30
+ }, f = { class: "distributions-header-title" }, _ = ["title"], v = { class: "distributions-header-title-count-container" }, U = { class: "distributions-header-title-count" };
28
31
  function T(o, t, e, k, l, y) {
29
32
  const a = b("download-all-distributions");
30
33
  return n(), D("div", h, [
31
34
  i("div", w, [
32
- i("div", _, [
35
+ i("div", f, [
33
36
  i("h2", {
34
37
  title: o.$t("message.tooltip.datasetDetails.distribution"),
35
38
  "data-toggle": "tooltip",
36
39
  "data-placement": "top",
37
40
  "data-cy": "dataset-distributions",
38
41
  class: "distributions-header-title-title"
39
- }, r(o.$t("message.metadata.distributions")), 9, f),
42
+ }, r(o.$t("message.metadata.distributions")), 9, _),
40
43
  t[0] || (t[0] = s()),
41
44
  i("div", v, [
42
45
  i("h3", U, r(o.getDistributions ? o.getDistributions.length.toLocaleString("fi") : 0), 1)
43
46
  ])
44
47
  ]),
45
48
  t[1] || (t[1] = s()),
46
- l.downloadAllTop ? (n(), c(a, {
49
+ l.downloadAllTop ? (n(), m(a, {
47
50
  key: 0,
48
51
  primary: !0,
49
52
  small: !0,
@@ -53,13 +56,13 @@ function T(o, t, e, k, l, y) {
53
56
  getDistributionTitle: e.getDistributionTitle,
54
57
  showDownloadUrls: e.showDownloadUrls,
55
58
  isUrlInvalid: e.isUrlInvalid
56
- }, null, 8, ["getDistributions", "getDistributionDescription", "openModal", "getDistributionTitle", "showDownloadUrls", "isUrlInvalid"])) : m("", !0)
59
+ }, null, 8, ["getDistributions", "getDistributionDescription", "openModal", "getDistributionTitle", "showDownloadUrls", "isUrlInvalid"])) : c("", !0)
57
60
  ]),
58
61
  t[2] || (t[2] = s()),
59
62
  t[3] || (t[3] = i("hr", { class: "distributions-header-bottom-hr" }, null, -1))
60
63
  ]);
61
64
  }
62
- const V = /* @__PURE__ */ p(g, [["render", T], ["__scopeId", "data-v-98e2c004"]]);
65
+ const V = /* @__PURE__ */ p(g, [["render", T], ["__scopeId", "data-v-990d4ce1"]]);
63
66
  export {
64
67
  V as default
65
68
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DistributionsHeader.vue.mjs","sources":["../../../lib/datasetDetails/distributions/DistributionsHeader.vue"],"sourcesContent":["<template>\n <div class=\"distributions-header-container w-100\">\n <div class=\"distributions-header-title-container dsd-item d-flex justify-content-between align-items-center\">\n <div class=\"distributions-header-title\">\n <h2 :title=\"$t('message.tooltip.datasetDetails.distribution')\"\n data-toggle=\"tooltip\"\n data-placement=\"top\"\n data-cy=\"dataset-distributions\"\n class=\"distributions-header-title-title\">\n {{ $t('message.metadata.distributions') }} \n </h2>\n \n <div class=\"distributions-header-title-count-container\">\n <h3 class=\"distributions-header-title-count\">{{ getDistributions ? getDistributions.length.toLocaleString('fi') : 0 }}</h3>\n </div>\n \n </div>\n <download-all-distributions\n v-if=\"downloadAllTop\"\n :primary=\"true\"\n :small=\"true\"\n :getDistributions=\"getDistributions\"\n :getDistributionDescription=\"getDistributionDescription\"\n :openModal=\"openModal\"\n :getDistributionTitle=\"getDistributionTitle\"\n :showDownloadUrls=\"showDownloadUrls\"\n :isUrlInvalid=\"isUrlInvalid\"\n />\n </div>\n <hr class=\"distributions-header-bottom-hr\">\n </div>\n</template>\n\n<script>\nimport {mapGetters} from \"vuex\";\nimport DownloadAllDistributions\n from \"../../datasetDetails/distributions/DownloadAllDistributions\";\n\nexport default {\n name: \"DistributionsHeader\",\n components: {DownloadAllDistributions},\n props: [\n 'getDistributionDescription',\n 'openModal',\n 'getDistributionTitle',\n 'showDownloadUrls',\n 'isUrlInvalid',\n ],\n data() {\n return {\n downloadAllTop: this.$env.content.datasetDetails.bulkDownload.buttonPosition === \"top\"\n };\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions',\n 'getLanguages'\n ])\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n .distributions-header-title {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n }\n\n .distributions-header-title-title {\n margin-right: 8px;\n }\n\n .distributions-header-title-count {\n &::before {\n content: '('\n }\n &::after {\n content: ')'\n }\n }\n</style>\n"],"names":["_sfc_main","DownloadAllDistributions","mapGetters","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_openBlock","_createElementBlock","_createElementVNode","_ctx","_toDisplayString","_cache","_createTextVNode","$data","_createBlock","_component_download_all_distributions","$props","_createCommentVNode"],"mappings":";;;;;AAsCA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY,EAAC,0BAAAC,EAAwB;AAAA,EACrC,OAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,OAAO;AACL,WAAO;AAAA,MACL,gBAAgB,KAAK,KAAK,QAAQ,eAAe,aAAa,mBAAmB;AAAA;EAEpF;AAAA,EACD,UAAU;AAAA,IACR,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,MACA;AAAA,KACD;AAAA,EACF;AACH,GA1DOC,IAAA,EAAA,OAAM,uCAAsC,GAC5CC,IAAA,EAAA,OAAM,kGAAiG,GACnGC,IAAA,EAAA,OAAM,6BAA4B,GAH7CC,IAAA,CAAA,OAAA,GAYaC,IAAA,EAAA,OAAM,6CAA4C,GACjDC,IAAA,EAAA,OAAM,mCAAkC;;;AAZpD,SAAAC,EAAA,GAAAC,EA6BM,OA7BNP,GA6BM;AAAA,IA5BNQ,EA0BQ,OA1BRP,GA0BQ;AAAA,MAzBJO,EAaM,OAbNN,GAaM;AAAA,QAZJM,EAMK,MAAA;AAAA,UANA,OAAOC,EAAE,GAAA,6CAAA;AAAA,UACV,eAAY;AAAA,UACZ,kBAAe;AAAA,UACf,WAAQ;AAAA,UACR,OAAM;AAAA,QACL,GAAAC,EAAAD,EAAA,GATb,gCAAA,CAAA,GAAA,GAAAN,CAAA;AAAA,QAAAQ,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,QAYQJ,EAEM,OAFNJ,GAEM;AAAA,UADJI,EAA2H,MAA3HH,GAAgDK,EAAAD,EAAA,mBAAmBA,EAAgB,iBAAC,OAAO,eAAc,IAAA,IAAA,CAAA,GAAA,CAAA;AAAA;;MAbnHE,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,MAkBcC,EAAc,uBADtBC,EAUEC,GAAA;AAAA,QA3BR,KAAA;AAAA,QAmBS,SAAS;AAAA,QACT,OAAO;AAAA,QACP,kBAAkBN,EAAgB;AAAA,QAClC,4BAA4BO,EAA0B;AAAA,QACtD,WAAWA,EAAS;AAAA,QACpB,sBAAsBA,EAAoB;AAAA,QAC1C,kBAAkBA,EAAgB;AAAA,QAClC,cAAcA,EAAY;AAAA,kJA1BnCC,EAAA,IAAA,EAAA;AAAA;IAAAN,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,oBA6BIJ,EAA2C,MAAA,EAAvC,OAAM,iCAAgC,GAAA,MAAA,EAAA;AAAA;;;"}
1
+ {"version":3,"file":"DistributionsHeader.vue.mjs","sources":["../../../lib/datasetDetails/distributions/DistributionsHeader.vue"],"sourcesContent":["<template>\n <div class=\"distributions-header-container w-100\">\n <!-- Adjusting the container for correct alignment -->\n <div class=\"distributions-header-title-container dsd-item d-flex flex-column align-items-start\" style=\"position: relative; left: -15px;\">\n <div class=\"distributions-header-title\">\n <h2 :title=\"$t('message.tooltip.datasetDetails.distribution')\"\n data-toggle=\"tooltip\"\n data-placement=\"top\"\n data-cy=\"dataset-distributions\"\n class=\"distributions-header-title-title\">\n {{ $t('message.metadata.distributions') }} \n </h2>\n \n <div class=\"distributions-header-title-count-container\">\n <h3 class=\"distributions-header-title-count\">{{ getDistributions ? getDistributions.length.toLocaleString('fi') : 0 }}</h3>\n </div>\n \n </div>\n <download-all-distributions\n v-if=\"downloadAllTop\"\n :primary=\"true\"\n :small=\"true\"\n :getDistributions=\"getDistributions\"\n :getDistributionDescription=\"getDistributionDescription\"\n :openModal=\"openModal\"\n :getDistributionTitle=\"getDistributionTitle\"\n :showDownloadUrls=\"showDownloadUrls\"\n :isUrlInvalid=\"isUrlInvalid\"\n />\n </div>\n <hr class=\"distributions-header-bottom-hr\">\n </div>\n</template>\n\n<script>\nimport {mapGetters} from \"vuex\";\nimport DownloadAllDistributions\n from \"../../datasetDetails/distributions/DownloadAllDistributions\";\n\nexport default {\n name: \"DistributionsHeader\",\n components: {DownloadAllDistributions},\n props: [\n 'getDistributionDescription',\n 'openModal',\n 'getDistributionTitle',\n 'showDownloadUrls',\n 'isUrlInvalid',\n ],\n data() {\n return {\n downloadAllTop: this.$env.content.datasetDetails.bulkDownload.buttonPosition === \"top\"\n };\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions',\n 'getLanguages'\n ])\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n .distributions-header-title {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n }\n\n .distributions-header-title-title {\n margin-right: 8px;\n }\n\n .distributions-header-title-count {\n &::before {\n content: '('\n }\n &::after {\n content: ')'\n }\n }\n</style>\n"],"names":["_sfc_main","DownloadAllDistributions","mapGetters","_hoisted_1","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_openBlock","_createElementBlock","_createElementVNode","_hoisted_2","_ctx","_toDisplayString","_cache","_createTextVNode","$data","_createBlock","_component_download_all_distributions","$props","_createCommentVNode"],"mappings":";;;;;AAuCA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY,EAAC,0BAAAC,EAAwB;AAAA,EACrC,OAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA,EACD,OAAO;AACL,WAAO;AAAA,MACL,gBAAgB,KAAK,KAAK,QAAQ,eAAe,aAAa,mBAAmB;AAAA;EAEpF;AAAA,EACD,UAAU;AAAA,IACR,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,MACA;AAAA,KACD;AAAA,EACF;AACH,GA3DOC,IAAA,EAAA,OAAM,uCAAsC;EAE1C,OAAM;AAAA,EAAqF,OAAA,EAAwC,UAAA,YAAA,MAAA,QAAA;GACjIC,IAAA,EAAA,OAAM,6BAA4B,GAJ7CC,IAAA,CAAA,OAAA,GAaaC,IAAA,EAAA,OAAM,6CAA4C,GACjDC,IAAA,EAAA,OAAM,mCAAkC;;;AAbpD,SAAAC,EAAA,GAAAC,EA8BM,OA9BNN,GA8BM;AAAA,IA5BJO,EA0BM,OA1BNC,GA0BM;AAAA,MAzBJD,EAaM,OAbNN,GAaM;AAAA,QAZJM,EAMK,MAAA;AAAA,UANA,OAAOE,EAAE,GAAA,6CAAA;AAAA,UACV,eAAY;AAAA,UACZ,kBAAe;AAAA,UACf,WAAQ;AAAA,UACR,OAAM;AAAA,QACL,GAAAC,EAAAD,EAAA,GAVb,gCAAA,CAAA,GAAA,GAAAP,CAAA;AAAA,QAAAS,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,QAaQL,EAEM,OAFNJ,GAEM;AAAA,UADJI,EAA2H,MAA3HH,GAAgDM,EAAAD,EAAA,mBAAmBA,EAAgB,iBAAC,OAAO,eAAc,IAAA,IAAA,CAAA,GAAA,CAAA;AAAA;;MAdnHE,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,MAmBcC,EAAc,uBADtBC,EAUEC,GAAA;AAAA,QA5BR,KAAA;AAAA,QAoBS,SAAS;AAAA,QACT,OAAO;AAAA,QACP,kBAAkBN,EAAgB;AAAA,QAClC,4BAA4BO,EAA0B;AAAA,QACtD,WAAWA,EAAS;AAAA,QACpB,sBAAsBA,EAAoB;AAAA,QAC1C,kBAAkBA,EAAgB;AAAA,QAClC,cAAcA,EAAY;AAAA,kJA3BnCC,EAAA,IAAA,EAAA;AAAA;IAAAN,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,oBA8BIL,EAA2C,MAAA,EAAvC,OAAM,iCAAgC,GAAA,MAAA,EAAA;AAAA;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DownloadAllDistributions.vue.mjs","sources":["../../../lib/datasetDetails/distributions/DownloadAllDistributions.vue"],"sourcesContent":["<template>\n <div v-if=\"getDistributions.length > 1 && getCatalog.is_part_of !== 'erpd'\" class=\"dsd-download-all-distributions-button\">\n <pv-button v-if=\"isLoadingAllDistributionFiles\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\"\n class=\"download-all-btn\"\n data-toggle=\"modal\" data-target=\"#downloadAllModal\"\n >\n <div class=\"loading-spinner\"></div>\n </pv-button>\n <pv-button v-else class=\"download-all-btn\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\" :action=\"() => openModal(trackAndDownloadAllDistributions, true)\">\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <div class=\"modal fade\" id=\"downloadAllModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"download progress\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ $t('message.datasetDetails.datasets.modal.downloadProgress') }}</h3>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"progress\">\n <div class=\"progress-bar\" role=\"progressbar\" :style=\"{width: `${downloadProgress}%`}\" :aria-valuenow=\"downloadProgress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n </div>\n <div>\n {{ $t('message.datasetDetails.datasets.modal.downloadingFiles') }} {{ downloadedFilesCounter.toLocaleString('fi') }}/{{getDistributions.length.toLocaleString('fi')}}\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.notDownloaded') }} {{ failedDownloads.toLocaleString('fi') }}</div>\n <i class=\"material-icons help-icon\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.datasets.modal.notDownloadedTooltip')\">help</i>\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.zipNumberOfFiles', { number: numberOfFilesToZip.toLocaleString('fi') }) }}\n <span v-if=\"isLoadingAllDistributionFiles && numberOfFilesToZip > 0\">\n {{ $t('message.datasetDetails.datasets.modal.coupleOfMinutes') }}\n </span> <span v-else-if=\"isLoadingAllDistributionFiles\">\n {{ $t('message.datasetDetails.datasets.modal.waitingForDownload')}}\n </span>\n </div>\n <div v-if=\"isGeneratingZip\" class=\"spinner-grow text-primary\" role=\"status\">\n <span class=\"sr-only\">Loading...</span>\n </div>\n <i v-else-if=\"isGeneratingZipDone\" class=\"material-icons check-icon\">check_circle</i>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.close') }}</button>\n <button v-if=\"!downloadAllSuccess && !downloadAllError\" type=\"button\" class=\"btn btn-danger\" data-dismiss=\"modal\" @click=\"cancelDownloadAll(cancelDownloadAllAxiosRequestSource)\">\n {{ $t('message.datasetDetails.datasets.modal.cancel') }}\n </button>\n <button v-else-if=\"downloadAllError\" type=\"button\" class=\"btn btn-danger\" @click=\"trackAndDownloadAllDistributions()\">{{ $t('message.datasetDetails.datasets.modal.error') }}</button>\n <button v-else-if=\"downloadAllSuccess\" type=\"button\" class=\"btn btn-success\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.okay') }}</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from \"vuex\";\nimport { onUnmounted } from 'vue';\nimport { useRouter } from 'vue-router';\n\nimport {has, isNil} from \"lodash\";\nimport axios from \"axios\";\nimport { saveAs } from 'file-saver';\nimport $ from \"jquery\";\nimport { getTranslationFor } from \"../../utils/helpers\";\n\n\nexport default {\n name: \"DownloadAllDistributions\",\n props: [\n 'getDistributionDescription',\n 'getDistributionTitle',\n 'openModal',\n 'isUrlInvalid',\n 'showDownloadUrls',\n 'primary',\n 'small'\n ],\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions',\n 'getTitle',\n 'getCatalog',\n 'getLanguages'\n ]),\n files() {\n const cutFormatEnding = string => (string.lastIndexOf('.') !== -1 ? string.substring(0, string.lastIndexOf('.')) : string);\n const getFormat = (distribution) => {\n if (has(distribution, 'format.id') && !isNil(distribution.format.id)) {\n const type = distribution.format.id;\n return type.lastIndexOf('.') === -1 ? type.toLowerCase() : type.substring(type.lastIndexOf('.') + 1, type.length).toLowerCase();\n }\n return '';\n };\n const getFileName = (distribution, i) =>\n `${cutFormatEnding(this.getDistributionTitle(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`\n || `${cutFormatEnding(this.getDistributionDescription(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`;\n const getUrls = distribution => (this.showDownloadUrls(distribution) ?\n { accessUrl: `${distribution.accessUrl[0]}`, downloadUrl: `${distribution.downloadUrls[0]}` }\n : { accessUrl: `${distribution.accessUrl[0]}` });\n const getFileNameForCSV = distribution => this.getDistributionTitle(distribution).replace(/,/g, '')\n || this.getDistributionDescription(distribution).replace(/,/g, '');\n const files = this.getDistributions\n .map((distribution, i) => ({\n title: getFileName(distribution, i + 1), ...getUrls(distribution), format: getFormat(distribution), csvReportTitle: getFileNameForCSV(distribution),\n }));\n return files\n }\n },\n data() {\n return {\n downloadedFilesCounter: 0,\n numberOfFilesToZip: 0,\n downloadProgress: 0,\n failedDownloads: 0,\n isGeneratingZip: false,\n isGeneratingZipDone: false,\n isLoadingAllDistributionFiles: false,\n cancelDownloadAllAxiosRequestSource: null,\n isDownloadAllDistributionsCanceled: false,\n downloadAllSuccess: false,\n downloadAllError: false,\n bulkDownload: {\n MAX_FILE_TITLE_LENGTH: this.$env.content.datasetDetails.bulkDownload.MAX_FILE_TITLE_LENGTH,\n TIMEOUT_MS: this.$env.content.datasetDetails.bulkDownload.TIMEOUT_MS,\n }\n }\n },\n methods: {\n getTranslationFor,\n async fetchDistributionFiles(zip, files, folder, getContentTypeFormat) {\n const csvReportArray = [];\n let csvReport = 'filename,status, issue_cause downloadURL, issue_cause accessURL\\n';\n let csvDownloadURLIssue;\n const problematicFormats = ['wms', 'wfs'];\n\n const CancelToken = axios.CancelToken;\n this.cancelDownloadAllAxiosRequestSource = CancelToken.source();\n const axiosInstance = this.$bulkDownloadAxiosInstance;\n const requestSettings = { responseType: 'blob', cancelToken: this.cancelDownloadAllAxiosRequestSource.token, timeout: this.bulkDownload.TIMEOUT_MS };\n\n const promises = files.map(async (file) => {\n const problematicFormat = problematicFormats.find(format => format === file.format);\n if (!problematicFormat) {\n let isRejected = true;\n let responseData;\n let fileFormat = file.format;\n\n // try to download from download url\n if (has(file, 'downloadUrl')) {\n responseData = await axiosInstance.get(file.downloadUrl, requestSettings).then((responseDownloadUrl) => {\n if (responseDownloadUrl.status === 200) {\n isRejected = false;\n if (!file.format.length > 0) fileFormat = getContentTypeFormat(responseDownloadUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered']);\n return responseDownloadUrl.data;\n }\n return Promise.reject(new Error(responseDownloadUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvDownloadURLIssue = error;\n });\n } else csvDownloadURLIssue = 'no download url available';\n if (this.isUrlInvalid(file.downloadUrl)) {\n csvReportArray.push([file.csvReportTitle, 'issue', 'url is invalid']);\n }\n // try to download from access url\n if (isRejected) {\n responseData = await axiosInstance.get(file.accessUrl, requestSettings).then((responseAccessUrl) => {\n if (responseAccessUrl.status === 200) {\n isRejected = false;\n if (file.format.length > 0) fileFormat = getContentTypeFormat(responseAccessUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered', csvDownloadURLIssue]);\n return responseAccessUrl.data;\n }\n return Promise.reject(new Error(responseAccessUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvReportArray.push([file.csvReportTitle, 'issue', csvDownloadURLIssue, error]);\n });\n }\n if (!isRejected) folder.file(`${file.title}.${fileFormat}`, responseData, { binary: true });\n if (!this.isDownloadAllDistributionsCanceled) {\n this.downloadedFilesCounter += 1;\n this.downloadProgress = Math.floor(100 * this.downloadedFilesCounter / this.getDistributions.length);\n if (isRejected) this.failedDownloads += 1;\n } else {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n }\n } else csvReportArray.push([file.csvReportTitle, 'issue', `We can't download ${problematicFormat} files using the download all button. Please try to download this file using the download button next to the file name.`]);\n });\n\n await Promise.all(promises);\n csvReportArray.forEach((row) => {\n csvReport += row.join(',');\n csvReport += '\\n';\n });\n zip.file('file_report.csv', csvReport, { binary: true });\n },\n hideDownloadAllModal() {\n $('#downloadAllModal').modal('hide');\n },\n generateAndSaveZip(zip, zipName) {\n if (!this.isDownloadAllDistributionsCanceled) {\n this.numberOfFilesToZip = Object.keys(zip.files).length;\n this.isGeneratingZip = true;\n }\n\n class UserInterruptException {\n constructor(message) {\n this.message = message;\n this.name = 'UserInterruptException';\n }\n }\n\n zip.generateAsync({ type: 'blob', compression: 'DEFLATE' }, () => {\n if (this.isDownloadAllDistributionsCanceled) throw new UserInterruptException('user canceled generate zip operation');\n })\n .then((blob) => {\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = true;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllSuccess = true;\n saveAs(blob, zipName);\n })\n .catch((e) => {\n this.isGeneratingZip = false;\n this.isDownloadAllDistributionsCanceled = false;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllError = true;\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.numberOfFilesToZip = 0;\n console.warn(e); // eslint-disable-line\n });\n\n // works with chrome => to make it compatible to more browsers look here https://jimmywarting.github.io/StreamSaver.js/examples/saving-multiple-files.html open developer tools and find saving-multiple-files.html\n // install stream saver and import it + script src=\"https://cdn.jsdelivr.net/npm/web-streams-polyfill@2.0.2/dist/ponyfill.min.js\"\n // if we don't want to use his service worker we can configure something (I think we have to change the mitm url) => read the api https://jimmywarting.github.io/StreamSaver.js\n // I think IE will never work with this solution\n /* const writeStream = streamSaver.createWriteStream(zipName).getWriter();\n zip.generateInternalStream({ type: 'uint8array', streamFiles: true })\n .on('data', data => writeStream.write(data))\n .on('error', err => console.error(err))\n .on('end', () => writeStream.close())\n .resume(); */\n },\n cancelDownloadAll(source) {\n // stops axios operations\n source.cancel('user canceled axios operation');\n // stops zip operation\n this.isDownloadAllDistributionsCanceled = true;\n },\n async trackAndDownloadAllDistributions() {\n if (this.$piwik && this.$piwik.trackDownload) {\n this.$piwik.trackDownload(\n window.location.href,\n {\n files: JSON.stringify(this.files),\n downloadAll: 'true',\n format: 'all',\n }\n );\n }\n return await this.downloadAllDistributions();\n },\n async downloadAllDistributions() {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n this.numberOfFilesToZip = 0;\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = false;\n this.isLoadingAllDistributionFiles = true;\n this.isDownloadAllDistributionsCanceled = false;\n this.downloadAllSuccess = false;\n this.downloadAllError = false;\n const getContentTypeFormat = (contentType) => {\n const startIndex = contentType.lastIndexOf('/') + 1;\n const endIndex = contentType.indexOf(';') !== -1 ? contentType.indexOf(';') : contentType.length;\n return contentType.substring(startIndex, endIndex);\n };\n\n const {default: JSZip} = await import('jszip');\n const zip = new JSZip();\n const zipName = `${this.getTranslationFor(this.getTitle, this.$route.query.locale, this.getLanguages)}.zip`;\n const folder = zip.folder(this.getTranslationFor(this.getCatalog.title, this.$route.query.locale, this.getLanguages));\n await this.fetchDistributionFiles(zip, this.files, folder, getContentTypeFormat);\n await this.generateAndSaveZip(zip, zipName);\n },\n // handle navigation to extern website (cancel bulk download and hide modal)\n beforeWindowUnload(e) {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n e.preventDefault();\n // Chrome requires returnValue to be set\n e.returnValue = ''; // eslint-disable-line\n }\n }\n },\n created() {\n window.addEventListener('beforeunload', this.beforeWindowUnload);\n },\n beforeUnmount() {\n window.removeEventListener('beforeunload', this.beforeWindowUnload);\n },\n setup() {\n const router = useRouter();\n \n onUnmounted(() => {\n router.beforeEach((to, from, next) => {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n const answer = window.confirm(this.$t('message.datasetDetails.datasets.leavePageWindow.text')); // eslint-disable-line\n if (answer) {\n // if modal is open we have to hide it when user tries to navigate back\n this.hideDownloadAllModal();\n this.cancelDownloadAll(this.cancelDownloadAllAxiosRequestSource);\n next();\n } else {\n next(false);\n }\n } else {\n this.hideDownloadAllModal();\n next();\n }\n })();\n })\n },\n}\n</script>\n\n<style scoped>\n\n</style>\n"],"names":["_sfc_main","mapGetters","cutFormatEnding","string","getFormat","distribution","has","isNil","type","getFileName","i","getUrls","getFileNameForCSV","getTranslationFor","zip","files","folder","getContentTypeFormat","csvReportArray","csvReport","csvDownloadURLIssue","problematicFormats","CancelToken","axios","axiosInstance","requestSettings","promises","file","problematicFormat","format","isRejected","responseData","fileFormat","responseDownloadUrl","error","responseAccessUrl","row","$","zipName","UserInterruptException","message","blob","saveAs","e","source","contentType","startIndex","endIndex","JSZip","router","useRouter","onUnmounted","to","from","next","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_17","_ctx","_openBlock","_createElementBlock","_hoisted_1","$data","_createBlock","_component_pv_button","$props","_withCtx","_cache","_createElementVNode","$options","_createTextVNode","_toDisplayString","_hoisted_2","_hoisted_3","_normalizeStyle","_hoisted_13","_hoisted_14","_createCommentVNode","_hoisted_15","_hoisted_16","_hoisted_18","$event","_hoisted_19"],"mappings":"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"}
1
+ {"version":3,"file":"DownloadAllDistributions.vue.mjs","sources":["../../../lib/datasetDetails/distributions/DownloadAllDistributions.vue"],"sourcesContent":["<template>\n <div v-if=\"getDistributions.length > 1 && getCatalog.is_part_of !== 'erpd'\" class=\"dsd-download-all-distributions-button\">\n <pv-button v-if=\"isLoadingAllDistributionFiles\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\"\n class=\"download-all-btn\"\n data-toggle=\"modal\" data-target=\"#downloadAllModal\"\n > \n <div class=\"loading-spinner\"></div>\n </pv-button>\n <pv-button v-else class=\"download-all-btn\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\" :action=\"() => openModal(trackAndDownloadAllDistributions, true)\">\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <div class=\"modal fade\" id=\"downloadAllModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"download progress\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ $t('message.datasetDetails.datasets.modal.downloadProgress') }}</h3>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"progress\">\n <div class=\"progress-bar\" role=\"progressbar\" :style=\"{width: `${downloadProgress}%`}\" :aria-valuenow=\"downloadProgress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n </div>\n <div>\n {{ $t('message.datasetDetails.datasets.modal.downloadingFiles') }} {{ downloadedFilesCounter.toLocaleString('fi') }}/{{getDistributions.length.toLocaleString('fi')}}\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.notDownloaded') }} {{ failedDownloads.toLocaleString('fi') }}</div>\n <i class=\"material-icons help-icon\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.datasets.modal.notDownloadedTooltip')\">help</i>\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.zipNumberOfFiles', { number: numberOfFilesToZip.toLocaleString('fi') }) }}\n <span v-if=\"isLoadingAllDistributionFiles && numberOfFilesToZip > 0\">\n {{ $t('message.datasetDetails.datasets.modal.coupleOfMinutes') }}\n </span> <span v-else-if=\"isLoadingAllDistributionFiles\">\n {{ $t('message.datasetDetails.datasets.modal.waitingForDownload')}}\n </span>\n </div>\n <div v-if=\"isGeneratingZip\" class=\"spinner-grow text-primary\" role=\"status\">\n <span class=\"sr-only\">Loading...</span>\n </div>\n <i v-else-if=\"isGeneratingZipDone\" class=\"material-icons check-icon\">check_circle</i>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.close') }}</button>\n <button v-if=\"!downloadAllSuccess && !downloadAllError\" type=\"button\" class=\"btn btn-danger\" data-dismiss=\"modal\" @click=\"cancelDownloadAll(cancelDownloadAllAxiosRequestSource)\">\n {{ $t('message.datasetDetails.datasets.modal.cancel') }}\n </button>\n <button v-else-if=\"downloadAllError\" type=\"button\" class=\"btn btn-danger\" @click=\"trackAndDownloadAllDistributions()\">{{ $t('message.datasetDetails.datasets.modal.error') }}</button>\n <button v-else-if=\"downloadAllSuccess\" type=\"button\" class=\"btn btn-success\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.okay') }}</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from \"vuex\";\nimport { onUnmounted } from 'vue';\nimport { useRouter } from 'vue-router';\n\nimport {has, isNil} from \"lodash\";\nimport axios from \"axios\";\nimport { saveAs } from 'file-saver';\nimport $ from \"jquery\";\nimport { getTranslationFor } from \"../../utils/helpers\";\n\n\nexport default {\n name: \"DownloadAllDistributions\",\n props: [\n 'getDistributionDescription',\n 'getDistributionTitle',\n 'openModal',\n 'isUrlInvalid',\n 'showDownloadUrls',\n 'primary',\n 'small'\n ],\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions',\n 'getTitle',\n 'getCatalog',\n 'getLanguages'\n ]),\n files() {\n const cutFormatEnding = string => (string.lastIndexOf('.') !== -1 ? string.substring(0, string.lastIndexOf('.')) : string);\n const getFormat = (distribution) => {\n if (has(distribution, 'format.id') && !isNil(distribution.format.id)) {\n const type = distribution.format.id;\n return type.lastIndexOf('.') === -1 ? type.toLowerCase() : type.substring(type.lastIndexOf('.') + 1, type.length).toLowerCase();\n }\n return '';\n };\n const getFileName = (distribution, i) =>\n `${cutFormatEnding(this.getDistributionTitle(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`\n || `${cutFormatEnding(this.getDistributionDescription(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`;\n const getUrls = distribution => (this.showDownloadUrls(distribution) ?\n { accessUrl: `${distribution.accessUrl[0]}`, downloadUrl: `${distribution.downloadUrls[0]}` }\n : { accessUrl: `${distribution.accessUrl[0]}` });\n const getFileNameForCSV = distribution => this.getDistributionTitle(distribution).replace(/,/g, '')\n || this.getDistributionDescription(distribution).replace(/,/g, '');\n const files = this.getDistributions\n .map((distribution, i) => ({\n title: getFileName(distribution, i + 1), ...getUrls(distribution), format: getFormat(distribution), csvReportTitle: getFileNameForCSV(distribution),\n }));\n return files\n }\n },\n data() {\n return {\n downloadedFilesCounter: 0,\n numberOfFilesToZip: 0,\n downloadProgress: 0,\n failedDownloads: 0,\n isGeneratingZip: false,\n isGeneratingZipDone: false,\n isLoadingAllDistributionFiles: false,\n cancelDownloadAllAxiosRequestSource: null,\n isDownloadAllDistributionsCanceled: false,\n downloadAllSuccess: false,\n downloadAllError: false,\n bulkDownload: {\n MAX_FILE_TITLE_LENGTH: this.$env.content.datasetDetails.bulkDownload.MAX_FILE_TITLE_LENGTH,\n TIMEOUT_MS: this.$env.content.datasetDetails.bulkDownload.TIMEOUT_MS,\n }\n }\n },\n methods: {\n getTranslationFor,\n async fetchDistributionFiles(zip, files, folder, getContentTypeFormat) {\n const csvReportArray = [];\n let csvReport = 'filename,status, issue_cause downloadURL, issue_cause accessURL\\n';\n let csvDownloadURLIssue;\n const problematicFormats = ['wms', 'wfs'];\n\n const CancelToken = axios.CancelToken;\n this.cancelDownloadAllAxiosRequestSource = CancelToken.source();\n const axiosInstance = this.$bulkDownloadAxiosInstance;\n const requestSettings = { responseType: 'blob', cancelToken: this.cancelDownloadAllAxiosRequestSource.token, timeout: this.bulkDownload.TIMEOUT_MS };\n\n const promises = files.map(async (file) => {\n const problematicFormat = problematicFormats.find(format => format === file.format);\n if (!problematicFormat) {\n let isRejected = true;\n let responseData;\n let fileFormat = file.format;\n\n // try to download from download url\n if (has(file, 'downloadUrl')) {\n responseData = await axiosInstance.get(file.downloadUrl, requestSettings).then((responseDownloadUrl) => {\n if (responseDownloadUrl.status === 200) {\n isRejected = false;\n if (!file.format.length > 0) fileFormat = getContentTypeFormat(responseDownloadUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered']);\n return responseDownloadUrl.data;\n }\n return Promise.reject(new Error(responseDownloadUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvDownloadURLIssue = error;\n });\n } else csvDownloadURLIssue = 'no download url available';\n if (this.isUrlInvalid(file.downloadUrl)) {\n csvReportArray.push([file.csvReportTitle, 'issue', 'url is invalid']);\n }\n // try to download from access url\n if (isRejected) {\n responseData = await axiosInstance.get(file.accessUrl, requestSettings).then((responseAccessUrl) => {\n if (responseAccessUrl.status === 200) {\n isRejected = false;\n if (file.format.length > 0) fileFormat = getContentTypeFormat(responseAccessUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered', csvDownloadURLIssue]);\n return responseAccessUrl.data;\n }\n return Promise.reject(new Error(responseAccessUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvReportArray.push([file.csvReportTitle, 'issue', csvDownloadURLIssue, error]);\n });\n }\n if (!isRejected) folder.file(`${file.title}.${fileFormat}`, responseData, { binary: true });\n if (!this.isDownloadAllDistributionsCanceled) {\n this.downloadedFilesCounter += 1;\n this.downloadProgress = Math.floor(100 * this.downloadedFilesCounter / this.getDistributions.length);\n if (isRejected) this.failedDownloads += 1;\n } else {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n }\n } else csvReportArray.push([file.csvReportTitle, 'issue', `We can't download ${problematicFormat} files using the download all button. Please try to download this file using the download button next to the file name.`]);\n });\n\n await Promise.all(promises);\n csvReportArray.forEach((row) => {\n csvReport += row.join(',');\n csvReport += '\\n';\n });\n zip.file('file_report.csv', csvReport, { binary: true });\n },\n hideDownloadAllModal() {\n $('#downloadAllModal').modal('hide');\n },\n generateAndSaveZip(zip, zipName) {\n if (!this.isDownloadAllDistributionsCanceled) {\n this.numberOfFilesToZip = Object.keys(zip.files).length;\n this.isGeneratingZip = true;\n }\n\n class UserInterruptException {\n constructor(message) {\n this.message = message;\n this.name = 'UserInterruptException';\n }\n }\n\n zip.generateAsync({ type: 'blob', compression: 'DEFLATE' }, () => {\n if (this.isDownloadAllDistributionsCanceled) throw new UserInterruptException('user canceled generate zip operation');\n })\n .then((blob) => {\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = true;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllSuccess = true;\n saveAs(blob, zipName);\n })\n .catch((e) => {\n this.isGeneratingZip = false;\n this.isDownloadAllDistributionsCanceled = false;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllError = true;\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.numberOfFilesToZip = 0;\n console.warn(e); // eslint-disable-line\n });\n\n // works with chrome => to make it compatible to more browsers look here https://jimmywarting.github.io/StreamSaver.js/examples/saving-multiple-files.html open developer tools and find saving-multiple-files.html\n // install stream saver and import it + script src=\"https://cdn.jsdelivr.net/npm/web-streams-polyfill@2.0.2/dist/ponyfill.min.js\"\n // if we don't want to use his service worker we can configure something (I think we have to change the mitm url) => read the api https://jimmywarting.github.io/StreamSaver.js\n // I think IE will never work with this solution\n /* const writeStream = streamSaver.createWriteStream(zipName).getWriter();\n zip.generateInternalStream({ type: 'uint8array', streamFiles: true })\n .on('data', data => writeStream.write(data))\n .on('error', err => console.error(err))\n .on('end', () => writeStream.close())\n .resume(); */\n },\n cancelDownloadAll(source) {\n // stops axios operations\n source.cancel('user canceled axios operation');\n // stops zip operation\n this.isDownloadAllDistributionsCanceled = true;\n },\n async trackAndDownloadAllDistributions() {\n if (this.$piwik && this.$piwik.trackDownload) {\n this.$piwik.trackDownload(\n window.location.href,\n {\n files: JSON.stringify(this.files),\n downloadAll: 'true',\n format: 'all',\n }\n );\n }\n return await this.downloadAllDistributions();\n },\n async downloadAllDistributions() {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n this.numberOfFilesToZip = 0;\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = false;\n this.isLoadingAllDistributionFiles = true;\n this.isDownloadAllDistributionsCanceled = false;\n this.downloadAllSuccess = false;\n this.downloadAllError = false;\n const getContentTypeFormat = (contentType) => {\n const startIndex = contentType.lastIndexOf('/') + 1;\n const endIndex = contentType.indexOf(';') !== -1 ? contentType.indexOf(';') : contentType.length;\n return contentType.substring(startIndex, endIndex);\n };\n\n const {default: JSZip} = await import('jszip');\n const zip = new JSZip();\n const zipName = `${this.getTranslationFor(this.getTitle, this.$route.query.locale, this.getLanguages)}.zip`;\n const folder = zip.folder(this.getTranslationFor(this.getCatalog.title, this.$route.query.locale, this.getLanguages));\n await this.fetchDistributionFiles(zip, this.files, folder, getContentTypeFormat);\n await this.generateAndSaveZip(zip, zipName);\n },\n // handle navigation to extern website (cancel bulk download and hide modal)\n beforeWindowUnload(e) {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n e.preventDefault();\n // Chrome requires returnValue to be set\n e.returnValue = ''; // eslint-disable-line\n }\n }\n },\n created() {\n window.addEventListener('beforeunload', this.beforeWindowUnload);\n },\n beforeUnmount() {\n window.removeEventListener('beforeunload', this.beforeWindowUnload);\n },\n setup() {\n const router = useRouter();\n \n onUnmounted(() => {\n router.beforeEach((to, from, next) => {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n const answer = window.confirm(this.$t('message.datasetDetails.datasets.leavePageWindow.text')); // eslint-disable-line\n if (answer) {\n // if modal is open we have to hide it when user tries to navigate back\n this.hideDownloadAllModal();\n this.cancelDownloadAll(this.cancelDownloadAllAxiosRequestSource);\n next();\n } else {\n next(false);\n }\n } else {\n this.hideDownloadAllModal();\n next();\n }\n })();\n })\n },\n}\n</script>\n\n<style scoped>\n\n</style>\n"],"names":["_sfc_main","mapGetters","cutFormatEnding","string","getFormat","distribution","has","isNil","type","getFileName","i","getUrls","getFileNameForCSV","getTranslationFor","zip","files","folder","getContentTypeFormat","csvReportArray","csvReport","csvDownloadURLIssue","problematicFormats","CancelToken","axios","axiosInstance","requestSettings","promises","file","problematicFormat","format","isRejected","responseData","fileFormat","responseDownloadUrl","error","responseAccessUrl","row","$","zipName","UserInterruptException","message","blob","saveAs","e","source","contentType","startIndex","endIndex","JSZip","router","useRouter","onUnmounted","to","from","next","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_17","_ctx","_openBlock","_createElementBlock","_hoisted_1","$data","_createBlock","_component_pv_button","$props","_withCtx","_cache","_createElementVNode","$options","_createTextVNode","_toDisplayString","_hoisted_2","_hoisted_3","_normalizeStyle","_hoisted_13","_hoisted_14","_createCommentVNode","_hoisted_15","_hoisted_16","_hoisted_18","$event","_hoisted_19"],"mappings":"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"}
@@ -40,7 +40,10 @@ const B = {
40
40
  return i.label ? i.label : i.resource;
41
41
  }
42
42
  }
43
- }, I = { class: "col-12 table table-borderless table-responsive small pl-0 mt-2 mb-1 distribution-details-table" }, O = {
43
+ }, I = {
44
+ class: "col-12 table table-borderless table-responsive small pl-0 mt-2 mb-1 distribution-details-table",
45
+ style: { "margin-left": "-10px" }
46
+ }, O = {
44
47
  key: 0,
45
48
  class: "distribution-license-tr distribution-content-tr"
46
49
  }, _ = { class: "w-25 font-weight-bold" }, M = { key: 0 }, P = { key: 1 }, E = {
@@ -85,7 +88,7 @@ const B = {
85
88
  }, bt = { class: "w-25 font-weight-bold" }, mt = { key: 0 }, gt = {
86
89
  key: 14,
87
90
  class: "distribution-compressFormat-tr distribution-content-tr"
88
- }, kt = { class: "w-25 font-weight-bold" }, yt = { key: 0 }, ft = { key: 1 }, ct = {
91
+ }, yt = { class: "w-25 font-weight-bold" }, kt = { key: 0 }, ft = { key: 1 }, ct = {
89
92
  key: 15,
90
93
  class: "distribution-packageFormat-tr distribution-content-tr"
91
94
  }, wt = { class: "w-25 font-weight-bold" }, ht = { key: 0 }, Dt = { key: 1 }, vt = {
@@ -105,12 +108,12 @@ const B = {
105
108
  class: "distribution-validate-tr distribution-content-tr"
106
109
  }, Mt = { key: 0 };
107
110
  function Pt(s, i, t, Et, St, a) {
108
- const k = h("tooltip"), y = h("app-link");
111
+ const y = h("tooltip"), k = h("app-link");
109
112
  return n(), o("table", I, [
110
113
  (n(!0), o(c, null, w(t.contentList, (m) => (n(), o(c, null, [
111
114
  m === "license" ? (n(), o("tr", O, [
112
115
  d("td", _, [
113
- b(k, {
116
+ b(y, {
114
117
  title: s.$t("message.tooltip.datasetDetails.distributions.licence")
115
118
  }, {
116
119
  default: u(() => [
@@ -121,7 +124,7 @@ function Pt(s, i, t, Et, St, a) {
121
124
  ]),
122
125
  i[9] || (i[9] = e()),
123
126
  t.showObject(t.distribution.licence) && t.showLicence(t.distribution.licence) ? (n(), o("td", M, [
124
- b(y, {
127
+ b(k, {
125
128
  to: t.distribution.licence.resource,
126
129
  target: "_blank",
127
130
  onClick: i[0] || (i[0] = (g) => s.$emit("track-link", t.distribution.licence.resource, "link"))
@@ -132,7 +135,7 @@ function Pt(s, i, t, Et, St, a) {
132
135
  _: 1
133
136
  }, 8, ["to"]),
134
137
  i[6] || (i[6] = e()),
135
- b(y, {
138
+ b(k, {
136
139
  to: t.distribution.licence.resource,
137
140
  target: "_blank",
138
141
  "data-toggle": "tooltip",
@@ -146,7 +149,7 @@ function Pt(s, i, t, Et, St, a) {
146
149
  _: 1
147
150
  }, 8, ["to", "title"]),
148
151
  i[7] || (i[7] = e()),
149
- t.showLicensingAssistant(t.distribution) ? (n(), D(y, {
152
+ t.showLicensingAssistant(t.distribution) ? (n(), D(k, {
150
153
  key: 0,
151
154
  to: t.distribution.licence.la_url,
152
155
  target: "_blank",
@@ -158,7 +161,7 @@ function Pt(s, i, t, Et, St, a) {
158
161
  _: 1
159
162
  }, 8, ["to"])) : r("", !0),
160
163
  i[8] || (i[8] = e()),
161
- t.showLicensingAssistant(t.distribution) ? (n(), D(y, {
164
+ t.showLicensingAssistant(t.distribution) ? (n(), D(k, {
162
165
  key: 1,
163
166
  to: t.distribution.licence.la_url,
164
167
  target: "_blank",
@@ -174,7 +177,7 @@ function Pt(s, i, t, Et, St, a) {
174
177
  i[33] || (i[33] = e()),
175
178
  m === "licenseAttributionByText" && a.has(t.distribution, "licenseAttributionByText") && !a.isNil(t.distribution.licenseAttributionByText) && !a.isNil(a.getTranslationFor(t.distribution.licenseAttributionByText)) ? (n(), o("tr", E, [
176
179
  d("td", S, [
177
- b(k, {
180
+ b(y, {
178
181
  title: s.$t("message.tooltip.datasetDetails.distributions.licenseAttributionByText")
179
182
  }, {
180
183
  default: u(() => [
@@ -189,7 +192,7 @@ function Pt(s, i, t, Et, St, a) {
189
192
  i[34] || (i[34] = e()),
190
193
  m === "updateDate" ? (n(), o("tr", U, [
191
194
  d("td", z, [
192
- b(k, {
195
+ b(y, {
193
196
  title: s.$t("message.tooltip.datasetDetails.distributions.updated")
194
197
  }, {
195
198
  default: u(() => [
@@ -206,7 +209,7 @@ function Pt(s, i, t, Et, St, a) {
206
209
  i[35] || (i[35] = e()),
207
210
  m === "modificationDate" && a.has(t.distribution, "modificationDate") && !a.isNil(t.distribution.modificationDate) ? (n(), o("tr", H, [
208
211
  d("td", J, [
209
- b(k, {
212
+ b(y, {
210
213
  title: s.$t("message.tooltip.datasetDetails.distributions.updated")
211
214
  }, {
212
215
  default: u(() => [
@@ -221,7 +224,7 @@ function Pt(s, i, t, Et, St, a) {
221
224
  i[36] || (i[36] = e()),
222
225
  m === "releaseDate" && a.has(t.distribution, "releaseDate") && !a.isNil(t.distribution.releaseDate) ? (n(), o("tr", K, [
223
226
  d("td", Q, [
224
- b(k, {
227
+ b(y, {
225
228
  title: s.$t("message.tooltip.datasetDetails.distributions.created")
226
229
  }, {
227
230
  default: u(() => [
@@ -236,7 +239,7 @@ function Pt(s, i, t, Et, St, a) {
236
239
  i[37] || (i[37] = e()),
237
240
  m === "language" && a.has(t.distribution, "languages") && t.showArray(t.distribution.languages) ? (n(), o("tr", W, [
238
241
  d("td", X, [
239
- b(k, {
242
+ b(y, {
240
243
  title: s.$t("message.tooltip.datasetDetails.distributions.language")
241
244
  }, {
242
245
  default: u(() => [
@@ -255,7 +258,7 @@ function Pt(s, i, t, Et, St, a) {
255
258
  i[38] || (i[38] = e()),
256
259
  m === "availability" && a.has(t.distribution, "availability") && t.showObject(t.distribution.availability) && !a.isNil(t.distribution.availability.label) ? (n(), o("tr", Y, [
257
260
  d("td", Z, [
258
- b(k, {
261
+ b(y, {
259
262
  title: s.$t("message.tooltip.datasetDetails.distributions.availability")
260
263
  }, {
261
264
  default: u(() => [
@@ -270,7 +273,7 @@ function Pt(s, i, t, Et, St, a) {
270
273
  i[39] || (i[39] = e()),
271
274
  m === "status" && a.has(t.distribution, "status") && t.showObject(t.distribution.status) ? (n(), o("tr", x, [
272
275
  d("td", $, [
273
- b(k, {
276
+ b(y, {
274
277
  title: s.$t("message.tooltip.datasetDetails.distributions.status")
275
278
  }, {
276
279
  default: u(() => [
@@ -287,7 +290,7 @@ function Pt(s, i, t, Et, St, a) {
287
290
  i[40] || (i[40] = e()),
288
291
  m === "rights" && a.has(t.distribution, "rights") && t.showObject(t.distribution.rights) ? (n(), o("tr", tt, [
289
292
  d("td", it, [
290
- b(k, {
293
+ b(y, {
291
294
  title: s.$t("message.tooltip.datasetDetails.distributions.rights")
292
295
  }, {
293
296
  default: u(() => [
@@ -304,7 +307,7 @@ function Pt(s, i, t, Et, St, a) {
304
307
  i[41] || (i[41] = e()),
305
308
  m === "mediaType" && a.has(t.distribution, "mediaType") && !a.isNil(t.distribution.mediaType) ? (n(), o("tr", et, [
306
309
  d("td", st, [
307
- b(k, {
310
+ b(y, {
308
311
  title: s.$t("message.tooltip.datasetDetails.distributions.mediaType")
309
312
  }, {
310
313
  default: u(() => [
@@ -319,7 +322,7 @@ function Pt(s, i, t, Et, St, a) {
319
322
  i[42] || (i[42] = e()),
320
323
  m === "byteSize" && a.has(t.distribution, "byteSize") && !a.isNil(t.distribution.byteSize) ? (n(), o("tr", at, [
321
324
  d("td", lt, [
322
- b(k, {
325
+ b(y, {
323
326
  title: s.$t("message.tooltip.datasetDetails.distributions.byteSize")
324
327
  }, {
325
328
  default: u(() => [
@@ -334,7 +337,7 @@ function Pt(s, i, t, Et, St, a) {
334
337
  i[43] || (i[43] = e()),
335
338
  m === "checksum" && a.has(t.distribution, "checksum") && !a.isNil(t.distribution.checksum) && a.has(t.distribution.checksum, "algorithm") && !a.isNil(t.distribution.checksum.algorithm) && a.has(t.distribution.checksum, "checksum_value") && !a.isNil(t.distribution.checksum.checksum_value) ? (n(), o("tr", nt, [
336
339
  d("td", ot, [
337
- b(k, {
340
+ b(y, {
338
341
  title: s.$t("message.tooltip.datasetDetails.distributions.checksum")
339
342
  }, {
340
343
  default: u(() => [
@@ -356,7 +359,7 @@ function Pt(s, i, t, Et, St, a) {
356
359
  i[22] || (i[22] = e()),
357
360
  d("td", null, [
358
361
  (n(!0), o(c, null, w(t.distribution.pages, (g, f) => (n(), o("div", { key: f }, [
359
- b(y, {
362
+ b(k, {
360
363
  to: g.resource
361
364
  }, {
362
365
  default: u(() => [
@@ -370,7 +373,7 @@ function Pt(s, i, t, Et, St, a) {
370
373
  i[45] || (i[45] = e()),
371
374
  m === "type" && a.has(t.distribution, "type") && t.showObject(t.distribution.type) ? (n(), o("tr", ut, [
372
375
  d("td", bt, [
373
- b(k, {
376
+ b(y, {
374
377
  title: s.$t("message.tooltip.datasetDetails.distributions.type")
375
378
  }, {
376
379
  default: u(() => [
@@ -386,8 +389,8 @@ function Pt(s, i, t, Et, St, a) {
386
389
  ])) : r("", !0),
387
390
  i[46] || (i[46] = e()),
388
391
  m === "compressFormat" && a.has(t.distribution, "compressFormat") && t.showObject(t.distribution.compressFormat) ? (n(), o("tr", gt, [
389
- d("td", kt, [
390
- b(k, {
392
+ d("td", yt, [
393
+ b(y, {
391
394
  title: s.$t("message.tooltip.datasetDetails.distributions.compressFormat")
392
395
  }, {
393
396
  default: u(() => [
@@ -398,7 +401,7 @@ function Pt(s, i, t, Et, St, a) {
398
401
  ]),
399
402
  i[25] || (i[25] = e()),
400
403
  d("td", null, [
401
- a.isNil(t.distribution.compressFormat.label) ? r("", !0) : (n(), o("div", yt, l(t.distribution.compressFormat.label), 1)),
404
+ a.isNil(t.distribution.compressFormat.label) ? r("", !0) : (n(), o("div", kt, l(t.distribution.compressFormat.label), 1)),
402
405
  i[24] || (i[24] = e()),
403
406
  a.isNil(t.distribution.compressFormat.resource) ? r("", !0) : (n(), o("div", ft, l(t.distribution.compressFormat.resource), 1))
404
407
  ])
@@ -406,7 +409,7 @@ function Pt(s, i, t, Et, St, a) {
406
409
  i[47] || (i[47] = e()),
407
410
  m === "packageFormat" && a.has(t.distribution, "packageFormat") && t.showObject(t.distribution.packageFormat) ? (n(), o("tr", ct, [
408
411
  d("td", wt, [
409
- b(k, {
412
+ b(y, {
410
413
  title: s.$t("message.tooltip.datasetDetails.distributions.packageFormat")
411
414
  }, {
412
415
  default: u(() => [
@@ -425,7 +428,7 @@ function Pt(s, i, t, Et, St, a) {
425
428
  i[48] || (i[48] = e()),
426
429
  m === "hasPolicy" && a.has(t.distribution, "hasPolicy") && !a.isNil(t.distribution.hasPolicy) ? (n(), o("tr", vt, [
427
430
  d("td", Ft, [
428
- b(k, {
431
+ b(y, {
429
432
  title: s.$t("message.tooltip.datasetDetails.distributions.hasPolicy")
430
433
  }, {
431
434
  default: u(() => [
@@ -446,7 +449,7 @@ function Pt(s, i, t, Et, St, a) {
446
449
  i[49] || (i[49] = e()),
447
450
  m === "conformsTo" && a.has(t.distribution, "conformsTo") && t.showObjectArray(t.distribution.conformsTo) ? (n(), o("tr", Tt, [
448
451
  d("td", At, [
449
- b(k, {
452
+ b(y, {
450
453
  title: s.$t("message.tooltip.datasetDetails.conformsTo")
451
454
  }, {
452
455
  default: u(() => [
@@ -464,7 +467,7 @@ function Pt(s, i, t, Et, St, a) {
464
467
  a.has(g, "resource") && !a.isNil(g.resource) ? (n(), o("div", Lt, [
465
468
  e(l(s.$t("message.metadata.resource")) + `:
466
469
  `, 1),
467
- b(y, {
470
+ b(k, {
468
471
  to: g.resource,
469
472
  target: "_blank",
470
473
  onClick: (Ut) => s.$emit("track-link", g.resource, "link")
@@ -481,7 +484,7 @@ function Pt(s, i, t, Et, St, a) {
481
484
  i[50] || (i[50] = e()),
482
485
  m === "spatialResolutionInMeters" && a.has(t.distribution, "spatialResolutionInMeters") && t.showArray(t.distribution.spatialResolutionInMeters) ? (n(), o("tr", Ct, [
483
486
  d("td", jt, [
484
- b(k, {
487
+ b(y, {
485
488
  title: s.$t("message.tooltip.datasetDetails.spatialResolutionInMeters")
486
489
  }, {
487
490
  default: u(() => [
@@ -498,7 +501,7 @@ function Pt(s, i, t, Et, St, a) {
498
501
  i[51] || (i[51] = e()),
499
502
  m === "temporalResolution" && a.has(t.distribution, "temporalResolution") && t.showArray(t.distribution.temporalResolution) ? (n(), o("tr", It, [
500
503
  d("td", Ot, [
501
- b(k, {
504
+ b(y, {
502
505
  title: s.$t("message.tooltip.datasetDetails.temporalResolution")
503
506
  }, {
504
507
  default: u(() => [
@@ -515,7 +518,7 @@ function Pt(s, i, t, Et, St, a) {
515
518
  i[52] || (i[52] = e()),
516
519
  m === "validate" ? (n(), o("tr", _t, [
517
520
  this.$env.content.datasetDetails.distributions.showValidationButton ? (n(), o("td", Mt, [
518
- b(y, {
521
+ b(k, {
519
522
  class: "ecl-button--secondary row pt-0 pb-0 pl-4 pr-4 mt-2 text-decoration-none",
520
523
  to: { path: `${s.getID}/quality/`, query: Object.assign({}, { locale: s.$route.query.locale }) }
521
524
  }, {