@piveau/piveau-hub-ui-modules 4.6.65 → 4.6.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/dist/PvBadge/PvBadge.vue.mjs.map +1 -1
  2. package/dist/PvDataInfoBox/PvDataInfoBox.vue.mjs +2 -1
  3. package/dist/PvDataInfoBox/PvDataInfoBox.vue.mjs.map +1 -1
  4. package/dist/PvDataInfoBox/PvDataInfoBoxDescription.vue.mjs.map +1 -1
  5. package/dist/PvDataInfoBox/PvDataInfoBoxFooter.vue.mjs.map +1 -1
  6. package/dist/PvDataInfoBox/PvDataInfoBoxFormats.vue.mjs.map +1 -1
  7. package/dist/catalogues/CatalogPage.vue.mjs.map +1 -1
  8. package/dist/catalogues/CatalogPageDatasetCard.vue.mjs +6 -5
  9. package/dist/catalogues/CatalogPageDatasetCard.vue.mjs.map +1 -1
  10. package/dist/catalogues/Catalogues.vue.mjs.map +1 -1
  11. package/dist/catalogues/cataloguesFacets/CataloguesFacets.vue.mjs.map +1 -1
  12. package/dist/citation/DatasetCitationModal.vue.mjs.map +1 -1
  13. package/dist/citation/DatasetCitationTable.vue.mjs.map +1 -1
  14. package/dist/composables/useRuntimeEnv.d.ts +2 -2
  15. package/dist/configurations/config-schema/apiSchema.mjs +1 -1
  16. package/dist/configurations/config-schema/authenticationSchema.mjs +1 -1
  17. package/dist/configurations/config-schema/configSchema.d.ts +5 -5
  18. package/dist/configurations/config-schema/configSchema.mjs +18 -18
  19. package/dist/configurations/config-schema/contentSchema.mjs +1 -1
  20. package/dist/configurations/config-schema/languagesSchema.d.ts +2 -2
  21. package/dist/configurations/config-schema/languagesSchema.mjs +1 -1
  22. package/dist/configurations/config-schema/metadataSchema.mjs +1 -1
  23. package/dist/configurations/config-schema/routingSchema.mjs +1 -1
  24. package/dist/configurations/config-schema/themesSchema.mjs +1 -1
  25. package/dist/configurations/config-schema/trackerSchema.mjs +1 -1
  26. package/dist/data-provider-interface/CatalogueMQA.vue.mjs.map +1 -1
  27. package/dist/data-provider-interface/DPIMenu.vue.d.ts +10 -10
  28. package/dist/data-provider-interface/DPIMenu.vue.mjs.map +1 -1
  29. package/dist/data-provider-interface/DataProviderInterface.vue.d.ts +15 -17
  30. package/dist/data-provider-interface/DataProviderInterface.vue.mjs.map +1 -1
  31. package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs.map +1 -1
  32. package/dist/data-provider-interface/components/ConditionalInput.vue.mjs.map +1 -1
  33. package/dist/data-provider-interface/components/DataFetchingComponent.vue.d.ts +2 -2
  34. package/dist/data-provider-interface/components/DistributionStepper.vue.mjs +2 -1
  35. package/dist/data-provider-interface/components/DistributionStepper.vue.mjs.map +1 -1
  36. package/dist/data-provider-interface/components/Dropup.vue.d.ts +1 -1
  37. package/dist/data-provider-interface/components/Dropup.vue.mjs.map +1 -1
  38. package/dist/data-provider-interface/components/FileUpload.vue.d.ts +1 -1
  39. package/dist/data-provider-interface/components/FileUpload.vue.mjs.map +1 -1
  40. package/dist/data-provider-interface/components/InfoSlot.vue.mjs.map +1 -1
  41. package/dist/data-provider-interface/components/InputPageStep.vue.mjs.map +1 -1
  42. package/dist/data-provider-interface/components/LanguageSelector.vue.mjs.map +1 -1
  43. package/dist/data-provider-interface/components/Navigation.vue.d.ts +8 -8
  44. package/dist/data-provider-interface/components/Navigation.vue.mjs.map +1 -1
  45. package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs +2 -1
  46. package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs.map +1 -1
  47. package/dist/data-provider-interface/components/SimpleAccessURLInput.vue.mjs.map +1 -1
  48. package/dist/data-provider-interface/components/SimpleInput.vue.mjs.map +1 -1
  49. package/dist/data-provider-interface/components/SimpleSelect.vue.mjs.map +1 -1
  50. package/dist/data-provider-interface/components/SpatialInput.vue.mjs.map +1 -1
  51. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.mjs.map +1 -1
  52. package/dist/data-provider-interface/components/WidgetInput.vue.mjs.map +1 -1
  53. package/dist/data-provider-interface/views/DistributionInputPage.vue.mjs.map +1 -1
  54. package/dist/data-provider-interface/views/DistributionOverview.vue.d.ts +2 -2
  55. package/dist/data-provider-interface/views/DistributionOverview.vue.mjs.map +1 -1
  56. package/dist/data-provider-interface/views/DraftsPage.vue.d.ts +5 -5
  57. package/dist/data-provider-interface/views/DraftsPage.vue.mjs +19 -14
  58. package/dist/data-provider-interface/views/DraftsPage.vue.mjs.map +1 -1
  59. package/dist/data-provider-interface/views/InputPage.vue.d.ts +12 -14
  60. package/dist/data-provider-interface/views/InputPage.vue.mjs +4 -2
  61. package/dist/data-provider-interface/views/InputPage.vue.mjs.map +1 -1
  62. package/dist/data-provider-interface/views/LinkedDataViewer.vue.mjs.map +1 -1
  63. package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.mjs.map +1 -1
  64. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.mjs.map +1 -1
  65. package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.mjs.map +1 -1
  66. package/dist/data-provider-interface/views/OverviewPage/Properties/MultilingualProp.vue.mjs.map +1 -1
  67. package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.mjs.map +1 -1
  68. package/dist/data-provider-interface/views/OverviewPage/Properties/StringProp.vue.mjs.map +1 -1
  69. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs.map +1 -1
  70. package/dist/data-provider-interface/views/OverviewPage/Properties/URLProp.vue.mjs.map +1 -1
  71. package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.mjs.map +1 -1
  72. package/dist/data-provider-interface/views/OverviewPage.vue.d.ts +3 -5
  73. package/dist/data-provider-interface/views/OverviewPage.vue.mjs.map +1 -1
  74. package/dist/data-provider-interface/views/PropertyChooser.vue.mjs.map +1 -1
  75. package/dist/data-provider-interface/views/UserCataloguesPage.vue.mjs.map +1 -1
  76. package/dist/data-provider-interface/views/UserProfilePage.vue.mjs.map +1 -1
  77. package/dist/datasetDetails/AppMarkdownContent.vue.mjs.map +1 -1
  78. package/dist/datasetDetails/DatasetDetails.vue.mjs.map +1 -1
  79. package/dist/datasetDetails/DatasetDetailsActivityStream.vue.mjs.map +1 -1
  80. package/dist/datasetDetails/DatasetDetailsBanners.vue.d.ts +1 -3
  81. package/dist/datasetDetails/DatasetDetailsBanners.vue.mjs.map +1 -1
  82. package/dist/datasetDetails/DatasetDetailsCSVLinter.vue.mjs.map +1 -1
  83. package/dist/datasetDetails/DatasetDetailsCategories.vue.mjs.map +1 -1
  84. package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs +2 -1
  85. package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs.map +1 -1
  86. package/dist/datasetDetails/DatasetDetailsDescription.vue.d.ts +1 -3
  87. package/dist/datasetDetails/DatasetDetailsDescription.vue.mjs.map +1 -1
  88. package/dist/datasetDetails/DatasetDetailsFeedbackButton.vue.mjs.map +1 -1
  89. package/dist/datasetDetails/DatasetDetailsLinkedMetricsButton.vue.mjs.map +1 -1
  90. package/dist/datasetDetails/DatasetDetailsQuality.vue.mjs.map +1 -1
  91. package/dist/datasetDetails/DatasetDetailsShareButton.vue.mjs.map +1 -1
  92. package/dist/datasetDetails/DatasetDetailsSimilarDatasets.vue.mjs.map +1 -1
  93. package/dist/datasetDetails/DatasetDetailsSkeleton.vue.mjs.map +1 -1
  94. package/dist/datasetDetails/distributions/Distribution.vue.mjs.map +1 -1
  95. package/dist/datasetDetails/distributions/DistributionAdded.vue.mjs.map +1 -1
  96. package/dist/datasetDetails/distributions/DistributionDownloadAsModal.vue.mjs.map +1 -1
  97. package/dist/datasetDetails/distributions/DistributionFormat.vue.d.ts +2 -2
  98. package/dist/datasetDetails/distributions/DistributionFormat.vue.mjs.map +1 -1
  99. package/dist/datasetDetails/distributions/Distributions.vue.mjs.map +1 -1
  100. package/dist/datasetDetails/distributions/DistributionsHeader.vue.d.ts +4 -4
  101. package/dist/datasetDetails/distributions/DistributionsHeader.vue.mjs.map +1 -1
  102. package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.d.ts +8 -8
  103. package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.mjs +2 -1
  104. package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.mjs.map +1 -1
  105. package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.mjs +7 -5
  106. package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.mjs.map +1 -1
  107. package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs +6 -5
  108. package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs.map +1 -1
  109. package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.d.ts +2 -2
  110. package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs +15 -12
  111. package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs.map +1 -1
  112. package/dist/datasetDetails/distributions/distributionActions/DistributionDownloadAs.vue.mjs.map +1 -1
  113. package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.d.ts +2 -2
  114. package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.mjs.map +1 -1
  115. package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.d.ts +4 -4
  116. package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.mjs +6 -5
  117. package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.mjs.map +1 -1
  118. package/dist/datasetDetails/distributions/distributionActions/DistributionPreview.vue.d.ts +4 -4
  119. package/dist/datasetDetails/distributions/distributionActions/DistributionPreview.vue.mjs.map +1 -1
  120. package/dist/datasetDetails/distributions/distributionActions/DistributionVisualizeButton.vue.d.ts +4 -4
  121. package/dist/datasetDetails/distributions/distributionActions/DistributionVisualizeButton.vue.mjs.map +1 -1
  122. package/dist/datasetDetails/distributions/distributionActions/LinkedDataButtonsDropdown.vue.mjs.map +1 -1
  123. package/dist/datasetDetails/distributions/distributionDetails/DistributionContent.vue.mjs +22 -21
  124. package/dist/datasetDetails/distributions/distributionDetails/DistributionContent.vue.mjs.map +1 -1
  125. package/dist/datasetDetails/distributions/distributionDetails/DistributionDescription.vue.d.ts +6 -6
  126. package/dist/datasetDetails/distributions/distributionDetails/DistributionDescription.vue.mjs.map +1 -1
  127. package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.d.ts +16 -16
  128. package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.mjs.map +1 -1
  129. package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.d.ts +2 -2
  130. package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.mjs.map +1 -1
  131. package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.d.ts +1 -1
  132. package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.mjs.map +1 -1
  133. package/dist/datasetDetails/features/DatasetDetailsDataServices.vue.mjs.map +1 -1
  134. package/dist/datasetDetails/features/DatasetDetailsFeatureHeader.vue.mjs.map +1 -1
  135. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.d.ts +2 -2
  136. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.mjs.map +1 -1
  137. package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.d.ts +1 -1
  138. package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.mjs.map +1 -1
  139. package/dist/datasetDetails/features/DatasetDetailsIsUsedBy.vue.mjs.map +1 -1
  140. package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.d.ts +1 -1
  141. package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.mjs.map +1 -1
  142. package/dist/datasetDetails/features/DatasetDetailsMap.vue.mjs.map +1 -1
  143. package/dist/datasetDetails/features/DatasetDetailsPages.vue.mjs.map +1 -1
  144. package/dist/datasetDetails/features/DatasetDetailsRelations.vue.mjs.map +1 -1
  145. package/dist/datasetDetails/features/DatasetDetailsSubject.vue.d.ts +1 -1
  146. package/dist/datasetDetails/features/DatasetDetailsSubject.vue.mjs.map +1 -1
  147. package/dist/datasetDetails/features/DatasetDetailsVisualisations.vue.mjs.map +1 -1
  148. package/dist/datasetDetails/header/DatasetDetailsHeader.vue.mjs.map +1 -1
  149. package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.d.ts +2 -2
  150. package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.mjs.map +1 -1
  151. package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.d.ts +2 -2
  152. package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.mjs.map +1 -1
  153. package/dist/datasetDetails/navigation/DatasetDetailsNavigation.vue.mjs.map +1 -1
  154. package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.d.ts +2 -2
  155. package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.mjs.map +1 -1
  156. package/dist/datasetDetails/navigation/DatasetDetailsNavigationPage.vue.mjs.map +1 -1
  157. package/dist/datasetDetails/navigation/DatasetDetailsNavigationPages.vue.d.ts +7 -1
  158. package/dist/datasetDetails/navigation/DatasetDetailsNavigationPages.vue.mjs.map +1 -1
  159. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.d.ts +200 -1
  160. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.mjs.map +1 -1
  161. package/dist/datasetDetails/properties/DatasetDetailsProperty.vue.mjs.map +1 -1
  162. package/dist/datasetDetails/properties/ValuesList.vue.mjs.map +1 -1
  163. package/dist/datasets/DatasetDate.vue.mjs.map +1 -1
  164. package/dist/datasets/DatasetList.vue.mjs.map +1 -1
  165. package/dist/datasets/Datasets.vue.mjs.map +1 -1
  166. package/dist/datasets/DatasetsFilters.vue.d.ts +1 -1
  167. package/dist/datasets/DatasetsFilters.vue.mjs.map +1 -1
  168. package/dist/datasets/DatasetsFiltersTabs.vue.d.ts +2 -2
  169. package/dist/datasets/DatasetsFiltersTabs.vue.mjs.map +1 -1
  170. package/dist/datasets/DatasetsTopControls.vue.d.ts +5 -5
  171. package/dist/datasets/DatasetsTopControls.vue.mjs +8 -6
  172. package/dist/datasets/DatasetsTopControls.vue.mjs.map +1 -1
  173. package/dist/datasets/datasetsFacets/DatasetsFacets.vue.mjs.map +1 -1
  174. package/dist/datasets/datasetsFacets/DatasetsFacetsItem.vue.mjs.map +1 -1
  175. package/dist/datasets/datasetsFacets/DatasetsMapFacet.vue.mjs.map +1 -1
  176. package/dist/embed/DatasetEmbedModal.vue.mjs.map +1 -1
  177. package/dist/embed/EmbedDataset.vue.mjs.map +1 -1
  178. package/dist/embed/EmbedDatasetSnippet.vue.mjs.map +1 -1
  179. package/dist/external/zod/dist/esm/v3/ZodError +84 -0
  180. package/dist/external/zod/dist/esm/v3/ZodError.map +1 -0
  181. package/dist/external/zod/dist/esm/v3/errors +10 -0
  182. package/dist/external/zod/dist/esm/v3/errors.map +1 -0
  183. package/dist/external/zod/dist/esm/v3/helpers/errorUtil +8 -0
  184. package/dist/external/zod/dist/esm/v3/helpers/errorUtil.map +1 -0
  185. package/dist/external/zod/dist/esm/v3/helpers/parseUtil +98 -0
  186. package/dist/external/zod/dist/esm/v3/helpers/parseUtil.map +1 -0
  187. package/dist/external/zod/dist/esm/v3/helpers/util +95 -0
  188. package/dist/external/zod/dist/esm/v3/helpers/util.map +1 -0
  189. package/dist/external/zod/dist/esm/v3/locales/en +62 -0
  190. package/dist/external/zod/dist/esm/v3/locales/en.map +1 -0
  191. package/dist/external/zod/dist/esm/v3/types +2440 -0
  192. package/dist/external/zod/dist/esm/v3/types.map +1 -0
  193. package/dist/facets/CatalogDetailsFacet.vue.mjs.map +1 -1
  194. package/dist/facets/ExpandableSelectFacet.vue.mjs.map +1 -1
  195. package/dist/facets/Facet.vue.mjs.map +1 -1
  196. package/dist/facets/FacetTitle.vue.mjs.map +1 -1
  197. package/dist/facets/RadioFacet.vue.mjs.map +1 -1
  198. package/dist/facets/SelectedFacetsOverview.vue.d.ts +2 -2
  199. package/dist/facets/SelectedFacetsOverview.vue.mjs.map +1 -1
  200. package/dist/form/FormKitGroup.vue.mjs.map +1 -1
  201. package/dist/form/Repeatable.vue2.mjs +2 -1
  202. package/dist/form/Repeatable.vue2.mjs.map +1 -1
  203. package/dist/map/MapBasic.vue.mjs.map +1 -1
  204. package/dist/map/MapBoundsReceiver.vue.mjs.map +1 -1
  205. package/dist/map/MapBoundsSender.vue.mjs.map +1 -1
  206. package/dist/modal/AppConfirmationDialog.vue.mjs.map +1 -1
  207. package/dist/modal/AppSnackbar.vue.mjs.map +1 -1
  208. package/dist/modal/AppToast.vue.mjs.map +1 -1
  209. package/dist/navigation/SubNavigation.vue.mjs.map +1 -1
  210. package/dist/pages/NotFound.vue.mjs.map +1 -1
  211. package/dist/pages/SparqlSearch.vue.mjs.map +1 -1
  212. package/dist/pages/user/UserImprint.vue.mjs.map +1 -1
  213. package/dist/pages/user/UserPrivacyPolicy.vue.mjs.map +1 -1
  214. package/dist/piveau-hub-ui-modules.css +1 -1
  215. package/dist/search/Search.vue.mjs.map +1 -1
  216. package/dist/services/bulkDownloadCorsProxyService.mjs +37 -20
  217. package/dist/services/bulkDownloadCorsProxyService.mjs.map +1 -1
  218. package/dist/services/datasetService.d.ts +1 -1
  219. package/dist/widgets/AppLink.vue.mjs.map +1 -1
  220. package/dist/widgets/Dropdown.vue.mjs.map +1 -1
  221. package/dist/widgets/Pagination.vue.d.ts +1 -1
  222. package/dist/widgets/Pagination.vue.mjs.map +1 -1
  223. package/dist/widgets/PropertyValue.vue.mjs.map +1 -1
  224. package/dist/widgets/PvBanner.vue.mjs.map +1 -1
  225. package/dist/widgets/PvButton.vue.mjs.map +1 -1
  226. package/dist/widgets/PvShowMore.vue.mjs.map +1 -1
  227. package/dist/widgets/ResourceAccessPopup.vue.d.ts +1 -1
  228. package/dist/widgets/ResourceAccessPopup.vue.mjs.map +1 -1
  229. package/dist/widgets/ResourceDetailsLinkedDataButton.vue.mjs.map +1 -1
  230. package/dist/widgets/Tooltip.vue.mjs.map +1 -1
  231. package/package.json +1 -1
  232. package/dist/external/zod/lib/index +0 -2849
  233. package/dist/external/zod/lib/index.map +0 -1
@@ -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 >\n <div class=\"loading-spinner\"></div>\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <pv-button v-else class=\"download-all-btn\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\" :action=\"openRessourceAccessPopup\">\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <div class=\"modal fade\" data-backdrop=\"static\" data-keyboard=\"false\" id=\"downloadAllModal\" ref=\"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-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 $('#downloadAllModal').modal('show');\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 openRessourceAccessPopup() {\n // const modal = this.$refs.downloadAllModal;\n // const modal = document.getElementById('externalAccess');\n // console.log(\"openRessourceAccessPopup\", modal)\n // modal.addEventListener('shown.bs.modal', function() {\n // console.log(\"CLOSING\");\n // });\n this.openModal(this.trackAndDownloadAllDistributions, true);\n },\n onClose(e) {\n console.log(\"CLOSING\");\n }\n },\n created() {\n window.addEventListener('beforeunload', this.beforeWindowUnload);\n },\n // mounted() {\n // setTimeout(() => {\n // const modal = document.getElementById('externalAccess');\n // modal.addEventListener('click', function() {\n // console.log(\"CLOSING\");\n // });\n // })\n // },\n beforeUnmount() {\n window.removeEventListener('beforeunload', this.beforeWindowUnload);\n // const modal = this.$refs.downloadAllModal.$el;\n // modal.removeEventListener('hide.bs.modal', this.onClose);\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","_createElementVNode","_createTextVNode","$options","_toDisplayString","_cache","_hoisted_2","_hoisted_3","_normalizeStyle","_hoisted_13","_hoisted_14","_createCommentVNode","_hoisted_15","_hoisted_16","$event","_hoisted_18"],"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 >\n <div class=\"loading-spinner\"></div>\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <pv-button v-else class=\"download-all-btn\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\" :action=\"openRessourceAccessPopup\">\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <div class=\"modal fade\" data-backdrop=\"static\" data-keyboard=\"false\" id=\"downloadAllModal\" ref=\"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-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 $('#downloadAllModal').modal('show');\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 openRessourceAccessPopup() {\n // const modal = this.$refs.downloadAllModal;\n // const modal = document.getElementById('externalAccess');\n // console.log(\"openRessourceAccessPopup\", modal)\n // modal.addEventListener('shown.bs.modal', function() {\n // console.log(\"CLOSING\");\n // });\n this.openModal(this.trackAndDownloadAllDistributions, true);\n },\n onClose(e) {\n console.log(\"CLOSING\");\n }\n },\n created() {\n window.addEventListener('beforeunload', this.beforeWindowUnload);\n },\n // mounted() {\n // setTimeout(() => {\n // const modal = document.getElementById('externalAccess');\n // modal.addEventListener('click', function() {\n // console.log(\"CLOSING\");\n // });\n // })\n // },\n beforeUnmount() {\n window.removeEventListener('beforeunload', this.beforeWindowUnload);\n // const modal = this.$refs.downloadAllModal.$el;\n // modal.removeEventListener('hide.bs.modal', this.onClose);\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_10","_hoisted_12","_hoisted_17","_ctx","_openBlock","_createElementBlock","_hoisted_1","$data","_createBlock","_component_pv_button","$props","_createElementVNode","_createTextVNode","$options","_hoisted_2","_hoisted_3","_toDisplayString","_hoisted_11","_hoisted_15","_cache","_hoisted_16","$event","_hoisted_18"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { mapGetters as m } from "vuex";
2
2
  import { resolveComponent as c, openBlock as o, createElementBlock as l, createElementVNode as n, Fragment as b, renderList as p, createBlock as f, withCtx as d, createTextVNode as r, toDisplayString as a, createVNode as D } from "vue";
3
3
  import "./FadingDistributionOverlay.vue2.mjs";
4
- import g from "../../_virtual/_plugin-vue_export-helper.mjs";
5
- const _ = {
4
+ import _ from "../../_virtual/_plugin-vue_export-helper.mjs";
5
+ const g = {
6
6
  name: "FadingDistributionOverlay",
7
7
  props: {
8
8
  distributions: Object,
@@ -30,7 +30,8 @@ function w(i, t, s, F, h, N) {
30
30
  t[0] || (t[0] = n("i", { class: "fas fa-chevron-down" }, null, -1)),
31
31
  r(" " + a(i.$t("message.metadata.showXMore", { increment: e })), 1)
32
32
  ]),
33
- _: 2
33
+ _: 2,
34
+ __: [0]
34
35
  }, 1032, ["action"]))), 128)),
35
36
  t[2] || (t[2] = r()),
36
37
  D(u, {
@@ -43,12 +44,13 @@ function w(i, t, s, F, h, N) {
43
44
  t[1] || (t[1] = n("i", { class: "fas fa-eye" }, null, -1)),
44
45
  r(" " + a(i.$t("message.metadata.showAll")) + " " + a(`(${i.getDistributions.length.toLocaleString("fi")})`), 1)
45
46
  ]),
46
- _: 1
47
+ _: 1,
48
+ __: [1]
47
49
  }, 8, ["action"])
48
50
  ])
49
51
  ]);
50
52
  }
51
- const I = /* @__PURE__ */ g(_, [["render", w], ["__scopeId", "data-v-90409b43"]]);
53
+ const I = /* @__PURE__ */ _(g, [["render", w], ["__scopeId", "data-v-90409b43"]]);
52
54
  export {
53
55
  I as default
54
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FadingDistributionOverlay.vue.mjs","sources":["../../../lib/datasetDetails/distributions/FadingDistributionOverlay.vue"],"sourcesContent":["<template>\n <div\n class=\"distributions__item--preview\"\n >\n <!-- Fade out the last item so it has a preview feel -->\n <!-- Render actions on top of it -->\n <div class=\"distributions__actions pb-md-3\">\n <pv-button\n class=\"mr-3 distributions-show-more-button\"\n v-for=\"increment in distributions.incrementSteps.filter(nonOverflowingIncrementsForDistributions)\"\n :key=\"increment\"\n :small=\"true\"\n :action=\"() => increaseNumDisplayedDistributions(increment)\"\n >\n <i class=\"fas fa-chevron-down\"/> {{ $t('message.metadata.showXMore', { increment }) }}\n </pv-button>\n <pv-button\n class=\"mr-3 distributions-show-more-button\"\n :primary=\"true\"\n :small=\"true\"\n :action=\"() => setDistributionsDisplayCount(getDistributions.length)\"\n >\n <i class=\"fas fa-eye\"/> {{ $t('message.metadata.showAll') }} {{ `(${(getDistributions.length.toLocaleString('fi'))})` }}\n </pv-button>\n </div>\n </div>\n</template>\n\n<script>\nimport {mapGetters} from \"vuex\";\n\nexport default {\n name: \"FadingDistributionOverlay\",\n props: {\n distributions: Object,\n setDistributionsDisplayCount: Function,\n increaseNumDisplayedDistributions: Function,\n nonOverflowingIncrementsForDistributions: Function\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions'\n ])\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.distributions {\n\n &__item--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 &__actions {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n height: 100%;\n z-index: 11;\n }\n}\n</style>\n"],"names":["_sfc_main","mapGetters","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_createElementVNode","_Fragment","_renderList","$props","increment","_createBlock","_component_pv_button","_withCtx","_createTextVNode","_toDisplayString","_ctx","_cache","_createVNode"],"mappings":";;;;AA+BA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO;AAAA,IACL,eAAe;AAAA,IACf,8BAA8B;AAAA,IAC9B,mCAAmC;AAAA,IACnC,0CAA0C;AAAA,EAC3C;AAAA,EACD,UAAU;AAAA,IACR,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,KACD;AAAA,EACH;AACF,GA1CIC,IAAA,EAAA,OAAM,+BAA8B,GAI/BC,IAAA,EAAA,OAAM,iCAAgC;;;AAL7C,SAAAC,EAAA,GAAAC,EAwBM,OAxBNH,GAwBM;AAAA,IAnBJI,EAkBM,OAlBNH,GAkBM;AAAA,cAjBJE,EAQYE,GAAA,MAflBC,EAS4BC,EAAA,cAAc,eAAe,OAAOA,EAAA,wCAAwC,GATxG,CASeC,YAFTC,EAQYC,GAAA;AAAA,QAPV,OAAM;AAAA,QAEL,KAAKF;AAAA,QACL,OAAO;AAAA,QACP,QAAM,MAAQD,EAAiC,kCAACC,CAAS;AAAA;QAZlE,SAAAG,EAcQ,MAAgC;AAAA,0BAAhCP,EAAgC,KAAA,EAA7B,OAAM,sBAAqB,GAAA,MAAA,EAAA;AAAA,UAdtCQ,EAcwC,MAACC,EAAGC,EAAE,GAAA,8BAAA,EAAiC,WAAAN,EAAS,CAAA,CAAA,GAAA,CAAA;AAAA;QAdxF,GAAA;AAAA;MAAAO,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAH,EAAA;AAAA,MAgBMI,EAOYN,GAAA;AAAA,QANV,OAAM;AAAA,QACL,SAAS;AAAA,QACT,OAAO;AAAA,QACP,QAAc,MAAAH,EAAA,6BAA6BO,EAAA,iBAAiB,MAAM;AAAA;QApB3E,SAAAH,EAsBQ,MAAuB;AAAA,0BAAvBP,EAAuB,KAAA,EAApB,OAAM,aAAY,GAAA,MAAA,EAAA;AAAA,UAtB7BQ,EAsB+B,MAAIC,EAAAC,EAAA,GAAiC,0BAAA,CAAA,IAAA,YAASA,EAAgB,iBAAC,OAAO,eAAc,IAAA,CAAA,GAAA,GAAA,CAAA;AAAA;QAtBnH,GAAA;AAAA;;;;;"}
1
+ {"version":3,"file":"FadingDistributionOverlay.vue.mjs","sources":["../../../lib/datasetDetails/distributions/FadingDistributionOverlay.vue"],"sourcesContent":["<template>\n <div\n class=\"distributions__item--preview\"\n >\n <!-- Fade out the last item so it has a preview feel -->\n <!-- Render actions on top of it -->\n <div class=\"distributions__actions pb-md-3\">\n <pv-button\n class=\"mr-3 distributions-show-more-button\"\n v-for=\"increment in distributions.incrementSteps.filter(nonOverflowingIncrementsForDistributions)\"\n :key=\"increment\"\n :small=\"true\"\n :action=\"() => increaseNumDisplayedDistributions(increment)\"\n >\n <i class=\"fas fa-chevron-down\"/> {{ $t('message.metadata.showXMore', { increment }) }}\n </pv-button>\n <pv-button\n class=\"mr-3 distributions-show-more-button\"\n :primary=\"true\"\n :small=\"true\"\n :action=\"() => setDistributionsDisplayCount(getDistributions.length)\"\n >\n <i class=\"fas fa-eye\"/> {{ $t('message.metadata.showAll') }} {{ `(${(getDistributions.length.toLocaleString('fi'))})` }}\n </pv-button>\n </div>\n </div>\n</template>\n\n<script>\nimport {mapGetters} from \"vuex\";\n\nexport default {\n name: \"FadingDistributionOverlay\",\n props: {\n distributions: Object,\n setDistributionsDisplayCount: Function,\n increaseNumDisplayedDistributions: Function,\n nonOverflowingIncrementsForDistributions: Function\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions'\n ])\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n.distributions {\n\n &__item--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 &__actions {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n height: 100%;\n z-index: 11;\n }\n}\n</style>\n"],"names":["_sfc_main","mapGetters","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_createElementVNode","_Fragment","_renderList","$props","increment","_createBlock","_component_pv_button","_toDisplayString","_ctx","_createVNode"],"mappings":";;;;AA+BA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO;AAAA,IACL,eAAe;AAAA,IACf,8BAA8B;AAAA,IAC9B,mCAAmC;AAAA,IACnC,0CAA0C;AAAA,EAC3C;AAAA,EACD,UAAU;AAAA,IACR,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,KACD;AAAA,EACH;AACF,GA1CIC,IAAA,EAAA,OAAM,+BAA8B,GAI/BC,IAAA,EAAA,OAAM,iCAAgC;;;AAL7C,SAAAC,EAAA,GAAAC,EAwBM,OAxBNH,GAwBM;AAAA,IAnBJI,EAkBM,OAlBNH,GAkBM;AAAA,cAjBJE,EAQYE,GAAA,MAAAC,EANUC,gBAAc,eAAe,OAAOA,EAAwC,wCAAA,GAAA,CAAzFC,YAFTC,EAQYC,GAAA;AAAA,QAPV,OAAM;AAAA,QAEL,KAAKF;AAAA,QACL,OAAO;AAAA,QACP,QAAM,MAAQD,EAAiC,kCAACC,CAAS;AAAA;mBAE1D,MAAgC;AAAA,0BAAhCJ,EAAgC,KAAA,EAA7B,OAAM,sBAAqB,GAAA,MAAA,EAAA;AAAA,YAAE,MAACO,EAAGC,EAAE,GAAA,8BAAA,EAAiC,WAAAJ,EAAS,CAAA,CAAA,GAAA,CAAA;AAAA;;;;;MAElFK,EAOYH,GAAA;AAAA,QANV,OAAM;AAAA,QACL,SAAS;AAAA,QACT,OAAO;AAAA,QACP,QAAc,MAAAH,EAAA,6BAA6BK,EAAA,iBAAiB,MAAM;AAAA;mBAEnE,MAAuB;AAAA,0BAAvBR,EAAuB,KAAA,EAApB,OAAM,aAAY,GAAA,MAAA,EAAA;AAAA,YAAE,MAACO,EAAGC,KAAiC,0BAAA,CAAA,IAAA,YAASA,EAAgB,iBAAC,OAAO,eAAc,IAAA,CAAA,GAAA,GAAA,CAAA;AAAA;;;;;;;;"}
@@ -3,8 +3,8 @@ import D from "./DistributionVisualizeButton.vue.mjs";
3
3
  import U from "./DistributionPreview.vue.mjs";
4
4
  import g from "./DistributionDownload.vue.mjs";
5
5
  import p from "./LinkedDataButtonsDropdown.vue.mjs";
6
- import { mapGetters as F } from "vuex";
7
- import { has as _, isNil as d } from "lodash-es";
6
+ import { mapGetters as _ } from "vuex";
7
+ import { has as F, isNil as d } from "lodash-es";
8
8
  import { resolveComponent as a, openBlock as l, createElementBlock as L, createBlock as r, withCtx as m, createTextVNode as e, toDisplayString as h, createCommentVNode as u, createVNode as y, createElementVNode as B } from "vue";
9
9
  import "./DistributionActions.vue2.mjs";
10
10
  import I from "../../../_virtual/_plugin-vue_export-helper.mjs";
@@ -40,7 +40,7 @@ const x = {
40
40
  };
41
41
  },
42
42
  computed: {
43
- ...F("datasetDetails", [
43
+ ..._("datasetDetails", [
44
44
  "getCatalog"
45
45
  ]),
46
46
  showValidateButton() {
@@ -55,7 +55,7 @@ const x = {
55
55
  methods: {
56
56
  showVisualisationLink(i) {
57
57
  var t, o, s;
58
- if (!_(i, "format.label") || d((t = i == null ? void 0 : i.format) == null ? void 0 : t.label) || d(i == null ? void 0 : i.downloadUrls[0]) && d(i == null ? void 0 : i.accessUrl[0]))
58
+ if (!F(i, "format.label") || d((t = i == null ? void 0 : i.format) == null ? void 0 : t.label) || d(i == null ? void 0 : i.downloadUrls[0]) && d(i == null ? void 0 : i.accessUrl[0]))
59
59
  return !1;
60
60
  const n = (s = (o = i == null ? void 0 : i.format) == null ? void 0 : o.id) == null ? void 0 : s.toLowerCase();
61
61
  return n && this.visualisationLinkFormats.includes(n);
@@ -119,7 +119,8 @@ function O(i, n, t, o, s, c) {
119
119
  Validate
120
120
  `)
121
121
  ])),
122
- _: 1
122
+ _: 1,
123
+ __: [1]
123
124
  }, 8, ["to"])) : u("", !0)
124
125
  ])
125
126
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"DistributionActions.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionActions.vue"],"sourcesContent":["<template>\n <div class=\"d-flex flex-sm-row flex-md-column flex-lg-row justify-content-start\n justify-content-lg-end mt-2 text-md-right col text-left distribution-actions\">\n <!-- button of new visualization tool -->\n <distribution-visualize-button v-if=\"showVisualisationButton\" class=\"distribution-action\" @displayVisualisation=\"$emit('displayVisualisation', getDownloadUrl)\" :isUrlInvalid=\"isUrlInvalid\"\n :getVisualisationLink=\"getVisualisationLink\" :distribution=\"distribution\" :openIfValidUrl=\"openIfValidUrl\">{{ $t('message.datasetDetails.preview') }}</distribution-visualize-button>\n <!-- TODO: remove distribution-preview button once the new visualisation service is online -->\n <distribution-preview v-if=\"!hidePreviewButton && getCatalog.is_part_of !== 'erpd' && !showVisualisationButton\" :isUrlInvalid=\"isUrlInvalid\"\n :getVisualisationLink=\"getVisualisationLink\" :distribution=\"distribution\" :openIfValidUrl=\"openIfValidUrl\"\n :previewLinkCallback=\"previewLinkCallback\" class=\"distribution-action\" />\n <distribution-download v-if=\"showDownloadDropdown(distribution)\" :getDownloadUrl=\"getDownloadUrl\"\n :showAccessUrls=\"showAccessUrls\" :isOnlyOneUrl=\"isOnlyOneUrl\" :trackGoto=\"trackGoto\"\n :getDistributionFormat=\"getDistributionFormat\" :replaceHttp=\"replaceHttp\" :distribution=\"distribution\"\n class=\"distribution-action distribution-download\" />\n <linked-data-buttons-dropdown :distributions=\"distributions\" :distribution=\"distribution\"\n class=\"distribution-action\" />\n <div>\n <app-link v-if=\"showValidateButton\" class=\"btn btn-sm validate-btn pt-0\"\n :to=\"{ name: 'DatasetDetailsQuality', query: { locale: $route.query.locale, validate: distribution.id } }\">\n Validate\n </app-link>\n </div>\n </div>\n</template>\n\n<script>\nimport AppLink from \"../../../widgets/AppLink\";\nimport DistributionVisualizeButton from \"../../../datasetDetails/distributions/distributionActions/DistributionVisualizeButton\";\nimport DistributionPreview from \"../../../datasetDetails/distributions/distributionActions/DistributionPreview\";\nimport DistributionDownload from \"../../../datasetDetails/distributions/distributionActions/DistributionDownload\";\nimport LinkedDataButtonsDropdown\n from \"../../../datasetDetails/distributions/distributionActions/LinkedDataButtonsDropdown\";\nimport {mapGetters} from \"vuex\";\nimport {has, isNil} from \"lodash\";\n\nexport default {\n name: \"DistributionActions\",\n components: { AppLink, LinkedDataButtonsDropdown, DistributionDownload, DistributionPreview, DistributionVisualizeButton },\n props: {\n distribution: Object,\n distributions: Object,\n isUrlInvalid: Function,\n getVisualisationLink: Function,\n showTooltipVisualiseButton: Function,\n previewLinkCallback: Function,\n openIfValidUrl: Function,\n showDownloadDropdown: Function,\n getDownloadUrl: Function,\n showAccessUrls: Function,\n isOnlyOneUrl: Function,\n trackGoto: Function,\n getDistributionFormat: Function,\n replaceHttp: Function,\n },\n data() {\n return {\n showVisualisationButton: this.$env.content.datasetDetails.distributions.showVisualisation,\n visualisationLinkFormats: [\n 'csv',\n 'tsv',\n 'ods',\n 'xlsx',\n 'xls',\n ],\n }\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getCatalog',\n ]),\n showValidateButton() {\n return this.$env?.content?.datasetDetails?.distributions?.showValidationButton;\n },\n hidePreviewButton() {\n // only returns true if the config variable hidePreviewButton exists and is set to true\n return this.$env?.content?.datasetDetails?.distributions?.hidePreviewButton;\n }\n },\n methods: {\n showVisualisationLink(distribution) {\n if (!has(distribution, 'format.label') || isNil(distribution?.format?.label)\n || (isNil(distribution?.downloadUrls[0]) && isNil(distribution?.accessUrl[0]))) return false;\n const f = distribution?.format?.id?.toLowerCase();\n return f && this.visualisationLinkFormats.includes(f);\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.validate-btn {\n color: #0e47cb;\n vertical-align: text-bottom;\n text-decoration: none;\n}\n</style>\n"],"names":["_sfc_main","AppLink","LinkedDataButtonsDropdown","DistributionDownload","DistributionPreview","DistributionVisualizeButton","mapGetters","_d","_c","_b","_a","distribution","has","isNil","f","_hoisted_1","_openBlock","_createElementBlock","$data","_createBlock","_component_distribution_visualize_button","_cache","$event","_ctx","$props","_withCtx","_createTextVNode","_toDisplayString","_createCommentVNode","$options","_component_distribution_preview","_component_distribution_download","_createVNode","_component_linked_data_buttons_dropdown","_createElementVNode","_component_app_link"],"mappings":"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"}
1
+ {"version":3,"file":"DistributionActions.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionActions.vue"],"sourcesContent":["<template>\n <div class=\"d-flex flex-sm-row flex-md-column flex-lg-row justify-content-start\n justify-content-lg-end mt-2 text-md-right col text-left distribution-actions\">\n <!-- button of new visualization tool -->\n <distribution-visualize-button v-if=\"showVisualisationButton\" class=\"distribution-action\" @displayVisualisation=\"$emit('displayVisualisation', getDownloadUrl)\" :isUrlInvalid=\"isUrlInvalid\"\n :getVisualisationLink=\"getVisualisationLink\" :distribution=\"distribution\" :openIfValidUrl=\"openIfValidUrl\">{{ $t('message.datasetDetails.preview') }}</distribution-visualize-button>\n <!-- TODO: remove distribution-preview button once the new visualisation service is online -->\n <distribution-preview v-if=\"!hidePreviewButton && getCatalog.is_part_of !== 'erpd' && !showVisualisationButton\" :isUrlInvalid=\"isUrlInvalid\"\n :getVisualisationLink=\"getVisualisationLink\" :distribution=\"distribution\" :openIfValidUrl=\"openIfValidUrl\"\n :previewLinkCallback=\"previewLinkCallback\" class=\"distribution-action\" />\n <distribution-download v-if=\"showDownloadDropdown(distribution)\" :getDownloadUrl=\"getDownloadUrl\"\n :showAccessUrls=\"showAccessUrls\" :isOnlyOneUrl=\"isOnlyOneUrl\" :trackGoto=\"trackGoto\"\n :getDistributionFormat=\"getDistributionFormat\" :replaceHttp=\"replaceHttp\" :distribution=\"distribution\"\n class=\"distribution-action distribution-download\" />\n <linked-data-buttons-dropdown :distributions=\"distributions\" :distribution=\"distribution\"\n class=\"distribution-action\" />\n <div>\n <app-link v-if=\"showValidateButton\" class=\"btn btn-sm validate-btn pt-0\"\n :to=\"{ name: 'DatasetDetailsQuality', query: { locale: $route.query.locale, validate: distribution.id } }\">\n Validate\n </app-link>\n </div>\n </div>\n</template>\n\n<script>\nimport AppLink from \"../../../widgets/AppLink\";\nimport DistributionVisualizeButton from \"../../../datasetDetails/distributions/distributionActions/DistributionVisualizeButton\";\nimport DistributionPreview from \"../../../datasetDetails/distributions/distributionActions/DistributionPreview\";\nimport DistributionDownload from \"../../../datasetDetails/distributions/distributionActions/DistributionDownload\";\nimport LinkedDataButtonsDropdown\n from \"../../../datasetDetails/distributions/distributionActions/LinkedDataButtonsDropdown\";\nimport {mapGetters} from \"vuex\";\nimport {has, isNil} from \"lodash\";\n\nexport default {\n name: \"DistributionActions\",\n components: { AppLink, LinkedDataButtonsDropdown, DistributionDownload, DistributionPreview, DistributionVisualizeButton },\n props: {\n distribution: Object,\n distributions: Object,\n isUrlInvalid: Function,\n getVisualisationLink: Function,\n showTooltipVisualiseButton: Function,\n previewLinkCallback: Function,\n openIfValidUrl: Function,\n showDownloadDropdown: Function,\n getDownloadUrl: Function,\n showAccessUrls: Function,\n isOnlyOneUrl: Function,\n trackGoto: Function,\n getDistributionFormat: Function,\n replaceHttp: Function,\n },\n data() {\n return {\n showVisualisationButton: this.$env.content.datasetDetails.distributions.showVisualisation,\n visualisationLinkFormats: [\n 'csv',\n 'tsv',\n 'ods',\n 'xlsx',\n 'xls',\n ],\n }\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getCatalog',\n ]),\n showValidateButton() {\n return this.$env?.content?.datasetDetails?.distributions?.showValidationButton;\n },\n hidePreviewButton() {\n // only returns true if the config variable hidePreviewButton exists and is set to true\n return this.$env?.content?.datasetDetails?.distributions?.hidePreviewButton;\n }\n },\n methods: {\n showVisualisationLink(distribution) {\n if (!has(distribution, 'format.label') || isNil(distribution?.format?.label)\n || (isNil(distribution?.downloadUrls[0]) && isNil(distribution?.accessUrl[0]))) return false;\n const f = distribution?.format?.id?.toLowerCase();\n return f && this.visualisationLinkFormats.includes(f);\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.validate-btn {\n color: #0e47cb;\n vertical-align: text-bottom;\n text-decoration: none;\n}\n</style>\n"],"names":["_sfc_main","AppLink","LinkedDataButtonsDropdown","DistributionDownload","DistributionPreview","DistributionVisualizeButton","mapGetters","_d","_c","_b","_a","distribution","has","isNil","f","_hoisted_1","_openBlock","_createElementBlock","$data","_createBlock","_component_distribution_visualize_button","_cache","$event","_ctx","$props","$options","_component_distribution_preview","_component_distribution_download","_createVNode","_component_linked_data_buttons_dropdown","_createElementVNode","_component_app_link"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  declare const _default: import('vue').DefineComponent<{
2
2
  getDistributionFormat?: any;
3
- distribution?: any;
4
3
  isOnlyOneUrl?: any;
5
4
  getDownloadUrl?: any;
6
5
  trackGoto?: any;
7
6
  showAccessUrls?: any;
8
7
  replaceHttp?: any;
8
+ distribution?: any;
9
9
  }, {}, {
10
10
  showUrlCopiedPopup: boolean;
11
11
  }, {}, {
@@ -13,12 +13,12 @@ declare const _default: import('vue').DefineComponent<{
13
13
  popupCopyUrlAlert(): void;
14
14
  }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
15
15
  getDistributionFormat?: any;
16
- distribution?: any;
17
16
  isOnlyOneUrl?: any;
18
17
  getDownloadUrl?: any;
19
18
  trackGoto?: any;
20
19
  showAccessUrls?: any;
21
20
  replaceHttp?: any;
21
+ distribution?: any;
22
22
  }> & Readonly<{}>, {}, {}, {
23
23
  DistributionDropdownDownload: any;
24
24
  DistributionDownloadAs: any;
@@ -1,7 +1,7 @@
1
1
  import T from "./DistributionDropdownDownload.vue.mjs";
2
2
  import H from "./DistributionDownloadAs.vue.mjs";
3
3
  import N from "../../../widgets/AppLink.vue.mjs";
4
- import { resolveComponent as m, openBlock as a, createBlock as D, withCtx as s, createElementBlock as u, createVNode as d, createElementVNode as e, createTextVNode as i, toDisplayString as x, createCommentVNode as v, normalizeClass as P, Fragment as j, renderList as V } from "vue";
4
+ import { resolveComponent as m, openBlock as a, createBlock as D, withCtx as s, createElementBlock as u, createVNode as d, createElementVNode as e, createTextVNode as i, toDisplayString as _, createCommentVNode as x, normalizeClass as P, Fragment as j, renderList as V } from "vue";
5
5
  import "./DistributionDownload.vue2.mjs";
6
6
  import B from "../../../_virtual/_plugin-vue_export-helper.mjs";
7
7
  const E = {
@@ -43,8 +43,8 @@ const E = {
43
43
  class: "px-2",
44
44
  property: "dcat:mediaType"
45
45
  };
46
- function S(n, t, o, q, A, p) {
47
- const r = m("app-link"), _ = m("distribution-download-as"), G = m("distribution-dropdown-download");
46
+ function S(n, t, o, q, v, p) {
47
+ const r = m("app-link"), A = m("distribution-download-as"), G = m("distribution-dropdown-download");
48
48
  return a(), D(G, {
49
49
  distribution: o.distribution,
50
50
  title: n.$t("message.tooltip.datasetDetails.distributions.download"),
@@ -72,7 +72,8 @@ function S(n, t, o, q, A, p) {
72
72
  e("i", { class: "material-icons align-bottom" }, "open_in_new")
73
73
  ], -1)
74
74
  ])),
75
- _: 1
75
+ _: 1,
76
+ __: [5]
76
77
  }, 8, ["to", "matomo-track-download"]),
77
78
  t[6] || (t[6] = i()),
78
79
  e("span", null, [
@@ -97,15 +98,15 @@ function S(n, t, o, q, A, p) {
97
98
  class: "px-2",
98
99
  property: "dcat:mediaType",
99
100
  content: o.getDistributionFormat
100
- }, x(n.$t("message.metadata.accessUrl")), 9, I)
101
+ }, _(n.$t("message.metadata.accessUrl")), 9, I)
101
102
  ])
102
103
  ]),
103
104
  _: 1
104
105
  }, 8, ["to", "matomo-track-download"])
105
- ])) : v("", !0),
106
+ ])) : x("", !0),
106
107
  t[12] || (t[12] = i()),
107
108
  e("span", {
108
- class: P([A.showUrlCopiedPopup ? "display" : "hide", "copy-url-popup"])
109
+ class: P([v.showUrlCopiedPopup ? "display" : "hide", "copy-url-popup"])
109
110
  }, t[8] || (t[8] = [
110
111
  e("i", { class: "material-icons align-bottom" }, "done_all", -1),
111
112
  i(` URL copied
@@ -131,7 +132,8 @@ function S(n, t, o, q, A, p) {
131
132
  e("i", { class: "open_in_new material-icons align-bottom" }, "open_in_new")
132
133
  ], -1)
133
134
  ])),
134
- _: 2
135
+ _: 2,
136
+ __: [9]
135
137
  }, 1032, ["to", "matomo-track-download"]),
136
138
  t[10] || (t[10] = i()),
137
139
  e("span", null, [
@@ -151,7 +153,7 @@ function S(n, t, o, q, A, p) {
151
153
  }, {
152
154
  default: s(() => [
153
155
  e("span", null, [
154
- e("small", z, x(n.$t("message.metadata.downloadUrl")), 1)
156
+ e("small", z, _(n.$t("message.metadata.downloadUrl")), 1)
155
157
  ])
156
158
  ]),
157
159
  _: 2
@@ -159,13 +161,14 @@ function S(n, t, o, q, A, p) {
159
161
  ]);
160
162
  }), 128)),
161
163
  t[14] || (t[14] = i()),
162
- this.$env.content.datasetDetails.downloadAs.enable ? (a(), D(_, {
164
+ this.$env.content.datasetDetails.downloadAs.enable ? (a(), D(A, {
163
165
  key: 1,
164
166
  distribution: o.distribution
165
- }, null, 8, ["distribution"])) : v("", !0)
167
+ }, null, 8, ["distribution"])) : x("", !0)
166
168
  ];
167
169
  }),
168
- _: 1
170
+ _: 1,
171
+ __: [12, 13, 14]
169
172
  }, 8, ["distribution", "title", "message", "isOnlyOneUrl", "getDownloadUrl", "onTrackGoto"]);
170
173
  }
171
174
  const Y = /* @__PURE__ */ B(E, [["render", S], ["__scopeId", "data-v-95a28986"]]);
@@ -1 +1 @@
1
- {"version":3,"file":"DistributionDownload.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionDownload.vue"],"sourcesContent":["<template>\n <distribution-dropdown-download :distribution=\"distribution\"\n :title=\"$t('message.tooltip.datasetDetails.distributions.download')\"\n :message=\"$t('message.datasetDetails.download')\"\n :isOnlyOneUrl=\"isOnlyOneUrl(distribution)\" :getDownloadUrl=\"getDownloadUrl\"\n @trackGoto=\"trackGoto\" bgLight=\"true\">\n\n <span class=\"dropdown-item px-3 d-flex align-items-center d-block\" v-if=\"showAccessUrls(distribution)\">\n <app-link class=\"text-decoration-none d-flex justify-content-between access-uri-link\"\n :to=\"replaceHttp(distribution.accessUrl[0])\" target=\"_blank\" rel=\"dcat:distribution noopener\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <i class=\"material-icons align-bottom\">open_in_new</i>\n <!-- <i class=\" copy-text material-icons align-bottom\" @click=\"setClipboard(distribution.accessUrl[0])\">file_copy</i> copy -->\n </span>\n <!-- <span>\n <small class=\"px-2\" property=\"dcat:mediaType\" :content=\"getDistributionFormat\">Access URL</small>\n </span> -->\n </app-link>\n <span>\n <!-- <i class=\"material-icons align-bottom\">open_in_new</i> down -->\n <i class=\"copy-text material-icons align-bottom\" @click=\"setClipboard(distribution.accessUrl[0])\">file_copy</i>\n </span>\n\n <app-link class=\"text-decoration-none d-flex justify-content-between access-uri-link\"\n :to=\"replaceHttp(distribution.accessUrl[0])\" target=\"_blank\" rel=\"dcat:distribution noopener\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <small class=\"px-2\" property=\"dcat:mediaType\" :content=\"getDistributionFormat\">{{\n $t('message.metadata.accessUrl')\n }}</small>\n </span>\n </app-link>\n <!-- <i class=\"material-icons help-icon ml-3\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.accessURLTooltip')\">help_outline</i> -->\n </span>\n\n <span :class=\"(showUrlCopiedPopup) ? 'display' : 'hide'\" class=\"copy-url-popup\">\n <i class=\"material-icons align-bottom\">done_all</i> URL copied\n </span>\n\n <span class=\"dropdown-item d-block px-3 d-flex align-items-center\"\n v-for=\"(downloadURL, i) in distribution.downloadUrls\" :key=\"i\">\n <app-link class=\"text-decoration-none d-flex justify-content-between\" :to=\"replaceHttp(downloadURL)\"\n target=\"_blank\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <i class=\"open_in_new material-icons align-bottom\" >open_in_new</i>\n <!-- <i class=\" copy-text material-icons align-bottom\" @click=\"setClipboard(downloadURL)\">file_copy</i> -->\n </span>\n <!-- <span>\n <small class=\"px-2\" property=\"dcat:mediaType\">Download URL</small>\n </span> -->\n </app-link>\n <span>\n <!-- <i class=\"material-icons align-bottom\">open_in_new</i> -->\n <i class=\"copy-text material-icons align-bottom\" @click=\"setClipboard(downloadURL)\">file_copy</i>\n </span>\n <app-link class=\"text-decoration-none d-flex justify-content-between\" :to=\"replaceHttp(downloadURL)\"\n target=\"_blank\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <small class=\"px-2\" property=\"dcat:mediaType\">{{ $t('message.metadata.downloadUrl') }}</small>\n </span>\n </app-link>\n <!-- <i class=\"material-icons help-icon ml-3\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.downloadURLTooltip')\">help_outline</i> -->\n </span>\n\n <distribution-download-as v-if=\"this.$env.content.datasetDetails.downloadAs.enable\" :distribution=\"distribution\"/>\n </distribution-dropdown-download>\n</template>\n\n<script>\nimport DistributionDropdownDownload\n from \"../../../datasetDetails/distributions/distributionActions/DistributionDropdownDownload\";\nimport DistributionDownloadAs from \"../../../datasetDetails/distributions/distributionActions/DistributionDownloadAs\";\nimport AppLink from \"../../../widgets/AppLink\";\n\nexport default {\n name: \"DistributionDownload\",\n data() {\n return {\n showUrlCopiedPopup: false\n }\n },\n props: [\n \"getDownloadUrl\",\n \"showAccessUrls\",\n \"isOnlyOneUrl\",\n \"trackGoto\",\n \"replaceHttp\",\n \"getDistributionFormat\",\n \"distribution\"\n ],\n components: {\n DistributionDropdownDownload,\n DistributionDownloadAs,\n AppLink\n },\n methods: {\n setClipboard(value) {\n const input = document.createElement('INPUT');\n // input.style = \"position: absolute; left: -1000px; top: -1000px\";\n input.value = value;\n document.body.appendChild(input);\n input.select();\n document.execCommand('copy');\n document.body.removeChild(input);\n\n this.popupCopyUrlAlert()\n },\n popupCopyUrlAlert() {\n this.showUrlCopiedPopup = true\n setTimeout(function () {\n this.showUrlCopiedPopup = false\n }.bind(this), 3500)\n }\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n/*** MATERIAL ICONS ***/\n%modal-icon {\n font-size: 18px;\n cursor: default;\n}\n\n.dropdown-item {\n .access-uri-link,\n .open_in_new {\n color: #0e47cb;\n }\n .copy-text {\n color: #0e47cb;\n }\n}\n\n.help-icon {\n @extend %modal-icon;\n}\n\n.copy-text {\n cursor: pointer;\n}\n\n.copy-url-popup {\n position: fixed !important;\n bottom: 10vh;\n left: 50vw;\n background-color: #F3F6FC;\n padding: .5rem 1.5rem;\n border-radius: .25rem;\n}\n\n.copy-url-popup.display {\n display: block;\n}\n\n.copy-url-popup.hide {\n display: none;\n}\n\n\n</style>\n"],"names":["_sfc_main","DistributionDropdownDownload","DistributionDownloadAs","AppLink","value","input","_hoisted_2","_hoisted_3","_createBlock","_component_distribution_dropdown_download","$props","_ctx","_withCtx","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_component_app_link","_b","_a","_cache","_createElementVNode","_createTextVNode","$event","$options","_d","_c","_toDisplayString","_createCommentVNode","_normalizeClass","$data","_Fragment","_renderList","downloadURL","i","_hoisted_4","_component_distribution_download_as"],"mappings":"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"}
1
+ {"version":3,"file":"DistributionDownload.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionDownload.vue"],"sourcesContent":["<template>\n <distribution-dropdown-download :distribution=\"distribution\"\n :title=\"$t('message.tooltip.datasetDetails.distributions.download')\"\n :message=\"$t('message.datasetDetails.download')\"\n :isOnlyOneUrl=\"isOnlyOneUrl(distribution)\" :getDownloadUrl=\"getDownloadUrl\"\n @trackGoto=\"trackGoto\" bgLight=\"true\">\n\n <span class=\"dropdown-item px-3 d-flex align-items-center d-block\" v-if=\"showAccessUrls(distribution)\">\n <app-link class=\"text-decoration-none d-flex justify-content-between access-uri-link\"\n :to=\"replaceHttp(distribution.accessUrl[0])\" target=\"_blank\" rel=\"dcat:distribution noopener\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <i class=\"material-icons align-bottom\">open_in_new</i>\n <!-- <i class=\" copy-text material-icons align-bottom\" @click=\"setClipboard(distribution.accessUrl[0])\">file_copy</i> copy -->\n </span>\n <!-- <span>\n <small class=\"px-2\" property=\"dcat:mediaType\" :content=\"getDistributionFormat\">Access URL</small>\n </span> -->\n </app-link>\n <span>\n <!-- <i class=\"material-icons align-bottom\">open_in_new</i> down -->\n <i class=\"copy-text material-icons align-bottom\" @click=\"setClipboard(distribution.accessUrl[0])\">file_copy</i>\n </span>\n\n <app-link class=\"text-decoration-none d-flex justify-content-between access-uri-link\"\n :to=\"replaceHttp(distribution.accessUrl[0])\" target=\"_blank\" rel=\"dcat:distribution noopener\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <small class=\"px-2\" property=\"dcat:mediaType\" :content=\"getDistributionFormat\">{{\n $t('message.metadata.accessUrl')\n }}</small>\n </span>\n </app-link>\n <!-- <i class=\"material-icons help-icon ml-3\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.accessURLTooltip')\">help_outline</i> -->\n </span>\n\n <span :class=\"(showUrlCopiedPopup) ? 'display' : 'hide'\" class=\"copy-url-popup\">\n <i class=\"material-icons align-bottom\">done_all</i> URL copied\n </span>\n\n <span class=\"dropdown-item d-block px-3 d-flex align-items-center\"\n v-for=\"(downloadURL, i) in distribution.downloadUrls\" :key=\"i\">\n <app-link class=\"text-decoration-none d-flex justify-content-between\" :to=\"replaceHttp(downloadURL)\"\n target=\"_blank\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <i class=\"open_in_new material-icons align-bottom\" >open_in_new</i>\n <!-- <i class=\" copy-text material-icons align-bottom\" @click=\"setClipboard(downloadURL)\">file_copy</i> -->\n </span>\n <!-- <span>\n <small class=\"px-2\" property=\"dcat:mediaType\">Download URL</small>\n </span> -->\n </app-link>\n <span>\n <!-- <i class=\"material-icons align-bottom\">open_in_new</i> -->\n <i class=\"copy-text material-icons align-bottom\" @click=\"setClipboard(downloadURL)\">file_copy</i>\n </span>\n <app-link class=\"text-decoration-none d-flex justify-content-between\" :to=\"replaceHttp(downloadURL)\"\n target=\"_blank\" is-tooltip=\"true\"\n :matomo-track-download=\"{ format: distribution?.format?.id }\" @after-click=\"$emit('trackGoto')\">\n <span>\n <small class=\"px-2\" property=\"dcat:mediaType\">{{ $t('message.metadata.downloadUrl') }}</small>\n </span>\n </app-link>\n <!-- <i class=\"material-icons help-icon ml-3\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.downloadURLTooltip')\">help_outline</i> -->\n </span>\n\n <distribution-download-as v-if=\"this.$env.content.datasetDetails.downloadAs.enable\" :distribution=\"distribution\"/>\n </distribution-dropdown-download>\n</template>\n\n<script>\nimport DistributionDropdownDownload\n from \"../../../datasetDetails/distributions/distributionActions/DistributionDropdownDownload\";\nimport DistributionDownloadAs from \"../../../datasetDetails/distributions/distributionActions/DistributionDownloadAs\";\nimport AppLink from \"../../../widgets/AppLink\";\n\nexport default {\n name: \"DistributionDownload\",\n data() {\n return {\n showUrlCopiedPopup: false\n }\n },\n props: [\n \"getDownloadUrl\",\n \"showAccessUrls\",\n \"isOnlyOneUrl\",\n \"trackGoto\",\n \"replaceHttp\",\n \"getDistributionFormat\",\n \"distribution\"\n ],\n components: {\n DistributionDropdownDownload,\n DistributionDownloadAs,\n AppLink\n },\n methods: {\n setClipboard(value) {\n const input = document.createElement('INPUT');\n // input.style = \"position: absolute; left: -1000px; top: -1000px\";\n input.value = value;\n document.body.appendChild(input);\n input.select();\n document.execCommand('copy');\n document.body.removeChild(input);\n\n this.popupCopyUrlAlert()\n },\n popupCopyUrlAlert() {\n this.showUrlCopiedPopup = true\n setTimeout(function () {\n this.showUrlCopiedPopup = false\n }.bind(this), 3500)\n }\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n/*** MATERIAL ICONS ***/\n%modal-icon {\n font-size: 18px;\n cursor: default;\n}\n\n.dropdown-item {\n .access-uri-link,\n .open_in_new {\n color: #0e47cb;\n }\n .copy-text {\n color: #0e47cb;\n }\n}\n\n.help-icon {\n @extend %modal-icon;\n}\n\n.copy-text {\n cursor: pointer;\n}\n\n.copy-url-popup {\n position: fixed !important;\n bottom: 10vh;\n left: 50vw;\n background-color: #F3F6FC;\n padding: .5rem 1.5rem;\n border-radius: .25rem;\n}\n\n.copy-url-popup.display {\n display: block;\n}\n\n.copy-url-popup.hide {\n display: none;\n}\n\n\n</style>\n"],"names":["_sfc_main","DistributionDropdownDownload","DistributionDownloadAs","AppLink","value","input","_createBlock","_component_distribution_dropdown_download","$props","_ctx","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_component_app_link","_b","_a","_cache","_createElementVNode","$event","$options","_d","_c","_hoisted_2","_normalizeClass","$data","_Fragment","downloadURL","i","_hoisted_3","_hoisted_4","_toDisplayString","_component_distribution_download_as"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DistributionDownloadAs.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionDownloadAs.vue"],"sourcesContent":["<template>\n <span v-if=\"ifFormatMatches\" class=\"dropdown-item d-block px-3 d-flex justify-content-end align-items-center\">\n <a @click=\"openModal()\" class=\"download-btn text-dark text-decoration-none px-2\" data-toggle=\"modal\" data-target=\"#downloadAsModal\">{{ $t('message.datasetDetails.datasets.modal.downloadAs') }}</a>\n </span>\n</template>\n<script>\nimport { isEmpty } from 'lodash';\nimport { mapActions } from 'vuex'\n\nexport default {\n name: \"DownloadAs\",\n props: {\n distribution: Object\n },\n data() {\n return {\n ifFormatMatches: false,\n selectOptions: [],\n conversionFormats: this.$env.content.datasetDetails.downloadAs.conversionFormats\n }\n },\n mounted() {\n this.ifMatchesFormat(this.distribution.format.id);\n },\n methods: {\n ...mapActions('datasetDetails', [\n 'selectDistributionForDownloadAs'\n ]),\n ifMatchesFormat(format) {\n if (isEmpty(format)) {\n return false\n } else {\n this.conversionFormats.forEach(convertionFormat => {\n if (convertionFormat.sourceFileFormat.toLowerCase() === format.toLowerCase()) {\n this.ifFormatMatches = true;\n this.selectOptions = convertionFormat.targetFileFormat;\n }\n });\n }\n },\n openModal() {\n const distribution = this.distribution;\n const selectOptions = this.selectOptions;\n this.selectDistributionForDownloadAs({distribution, selectOptions});\n }\n },\n}\n</script>\n<style scoped lang=\"scss\">\n .download-btn {font-size: 13px; cursor: pointer;}\n</style>\n\n"],"names":["_sfc_main","mapActions","format","isEmpty","convertionFormat","distribution","selectOptions","$data","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","$options","_ctx","_createCommentVNode"],"mappings":";;;;;AASA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO;AAAA,IACL,cAAc;AAAA,EACf;AAAA,EACD,OAAO;AACL,WAAO;AAAA,MACL,iBAAiB;AAAA,MACjB,eAAe,CAAE;AAAA,MACjB,mBAAmB,KAAK,KAAK,QAAQ,eAAe,WAAW;AAAA,IACjE;AAAA,EACD;AAAA,EACD,UAAU;AACR,SAAK,gBAAgB,KAAK,aAAa,OAAO,EAAE;AAAA,EACjD;AAAA,EACD,SAAS;AAAA,IACP,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,IACF,CAAC;AAAA,IACD,gBAAgBC,GAAQ;AACtB,UAAIC,EAAQD,CAAM;AAChB,eAAO;AAEP,WAAK,kBAAkB,QAAQ,CAAAE,MAAoB;AACjD,QAAIA,EAAiB,iBAAiB,YAAc,MAAIF,EAAO,YAAW,MACxE,KAAK,kBAAkB,IACvB,KAAK,gBAAgBE,EAAiB;AAAA,MAE5C,CAAC;AAAA,IAEF;AAAA,IACD,YAAY;AACV,YAAMC,IAAe,KAAK,cACpBC,IAAgB,KAAK;AAC3B,WAAK,gCAAgC,EAAC,cAAAD,GAAc,eAAAC,EAAa,CAAC;AAAA,IACpE;AAAA,EACD;AACH;EA9CA,KAAA;AAAA,EACgC,OAAM;;;SAAvBC,EAAe,mBAA3BC,KAAAC,EAEO,QAFPC,GAEO;AAAA,IADJC,EAAoM,KAAA;AAAA,MAAhM,gCAAOC,EAAS,UAAA;AAAA,MAAI,OAAM;AAAA,MAAmD,eAAY;AAAA,MAAQ,eAAY;AAAA,SAAsBC,EAAE,GAAA,kDAAA,CAAA,GAAA,CAAA;AAAA,QAF/IC,EAAA,IAAA,EAAA;;;"}
1
+ {"version":3,"file":"DistributionDownloadAs.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionDownloadAs.vue"],"sourcesContent":["<template>\n <span v-if=\"ifFormatMatches\" class=\"dropdown-item d-block px-3 d-flex justify-content-end align-items-center\">\n <a @click=\"openModal()\" class=\"download-btn text-dark text-decoration-none px-2\" data-toggle=\"modal\" data-target=\"#downloadAsModal\">{{ $t('message.datasetDetails.datasets.modal.downloadAs') }}</a>\n </span>\n</template>\n<script>\nimport { isEmpty } from 'lodash';\nimport { mapActions } from 'vuex'\n\nexport default {\n name: \"DownloadAs\",\n props: {\n distribution: Object\n },\n data() {\n return {\n ifFormatMatches: false,\n selectOptions: [],\n conversionFormats: this.$env.content.datasetDetails.downloadAs.conversionFormats\n }\n },\n mounted() {\n this.ifMatchesFormat(this.distribution.format.id);\n },\n methods: {\n ...mapActions('datasetDetails', [\n 'selectDistributionForDownloadAs'\n ]),\n ifMatchesFormat(format) {\n if (isEmpty(format)) {\n return false\n } else {\n this.conversionFormats.forEach(convertionFormat => {\n if (convertionFormat.sourceFileFormat.toLowerCase() === format.toLowerCase()) {\n this.ifFormatMatches = true;\n this.selectOptions = convertionFormat.targetFileFormat;\n }\n });\n }\n },\n openModal() {\n const distribution = this.distribution;\n const selectOptions = this.selectOptions;\n this.selectDistributionForDownloadAs({distribution, selectOptions});\n }\n },\n}\n</script>\n<style scoped lang=\"scss\">\n .download-btn {font-size: 13px; cursor: pointer;}\n</style>\n\n"],"names":["_sfc_main","mapActions","format","isEmpty","convertionFormat","distribution","selectOptions","$data","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","$options","_ctx"],"mappings":";;;;;AASA,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,OAAO;AAAA,IACL,cAAc;AAAA,EACf;AAAA,EACD,OAAO;AACL,WAAO;AAAA,MACL,iBAAiB;AAAA,MACjB,eAAe,CAAE;AAAA,MACjB,mBAAmB,KAAK,KAAK,QAAQ,eAAe,WAAW;AAAA,IACjE;AAAA,EACD;AAAA,EACD,UAAU;AACR,SAAK,gBAAgB,KAAK,aAAa,OAAO,EAAE;AAAA,EACjD;AAAA,EACD,SAAS;AAAA,IACP,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,IACF,CAAC;AAAA,IACD,gBAAgBC,GAAQ;AACtB,UAAIC,EAAQD,CAAM;AAChB,eAAO;AAEP,WAAK,kBAAkB,QAAQ,CAAAE,MAAoB;AACjD,QAAIA,EAAiB,iBAAiB,YAAc,MAAIF,EAAO,YAAW,MACxE,KAAK,kBAAkB,IACvB,KAAK,gBAAgBE,EAAiB;AAAA,MAE5C,CAAC;AAAA,IAEF;AAAA,IACD,YAAY;AACV,YAAMC,IAAe,KAAK,cACpBC,IAAgB,KAAK;AAC3B,WAAK,gCAAgC,EAAC,cAAAD,GAAc,eAAAC,EAAa,CAAC;AAAA,IACpE;AAAA,EACD;AACH;;EA7CgC,OAAM;;;SAAvBC,EAAe,mBAA3BC,KAAAC,EAEO,QAFPC,GAEO;AAAA,IADJC,EAAoM,KAAA;AAAA,MAAhM,gCAAOC,EAAS,UAAA;AAAA,MAAI,OAAM;AAAA,MAAmD,eAAY;AAAA,MAAQ,eAAY;AAAA,SAAsBC,EAAE,GAAA,kDAAA,CAAA,GAAA,CAAA;AAAA;;;"}
@@ -2,9 +2,9 @@ import { replaceHttp } from '../../../utils/helpers';
2
2
  declare const _default: import('vue').DefineComponent<{
3
3
  title?: any;
4
4
  message?: any;
5
- distribution?: any;
6
5
  isOnlyOneUrl?: any;
7
6
  getDownloadUrl?: any;
7
+ distribution?: any;
8
8
  bgLight?: any;
9
9
  }, {}, {
10
10
  open: boolean;
@@ -16,9 +16,9 @@ declare const _default: import('vue').DefineComponent<{
16
16
  }, any, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
17
17
  title?: any;
18
18
  message?: any;
19
- distribution?: any;
20
19
  isOnlyOneUrl?: any;
21
20
  getDownloadUrl?: any;
21
+ distribution?: any;
22
22
  bgLight?: any;
23
23
  }> & Readonly<{}>, {}, {}, {
24
24
  AppLink: any;
@@ -1 +1 @@
1
- {"version":3,"file":"DistributionDropdownDownload.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue"],"sourcesContent":["<template>\n <div class=\"position-relative d-inline-block ml-1 mb-1\">\n <button @click=\"openDropdown\" class=\"distribution-download dsd-action-button btn btn-sm btn-primary p-0 pl-2 w-100 rounded-lg btn-color dropdown-button d-flex justify-content-between\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <span data-toggle=\"tooltip\"\n :title=\"title\"\n data-placement=\"top\">\n {{ message }}\n </span>\n <i class=\"material-icons small-icon float-right align-bottom\">keyboard_arrow_down</i>\n </button>\n\n <div v-if=\"open\" v-click-away=\"away\" class=\"dropdownMenu\" :class=\"{ bglight: bgLight }\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable */\nimport $ from 'jquery';\nimport { mixin as clickaway } from 'vue3-click-away';\nimport { replaceHttp } from '../../../utils/helpers';\nimport AppLink from \"../../../widgets/AppLink\";\n\nexport default {\n mixins: [clickaway],\n name: 'DistributionDropdownDownload',\n props: ['distribution', 'title', 'message', 'bgLight', 'isOnlyOneUrl', 'getDownloadUrl'],\n components: {\n AppLink,\n },\n methods: {\n openDropdown() {\n this.open = true;\n setTimeout(() => {\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n }, 500);\n },\n away() {\n this.open = false;\n },\n replaceHttp,\n setClipboard(value) {\n const input = document.createElement('INPUT');\n // input.style = \"position: absolute; left: -1000px; top: -1000px\";\n input.value = value;\n document.body.appendChild(input);\n input.select();\n document.execCommand('copy');\n document.body.removeChild(input);\n },\n },\n data() {\n return {\n open: false,\n };\n },\n};\n</script>\n<style lang=\"scss\" scoped>\n .material-icons.small-icon {\n font-size: 20px;\n }\n .dropdownMenu {\n z-index: 1000;\n max-width: 15rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0,0,0,.15);\n transform-origin: top right;\n position: absolute;\n right: 0;\n }\n button:hover {\n background-color: #196fd2;\n border-color: #196fd2;\n }\n .bglight {\n background:#f8f9fa;\n }\n</style>\n"],"names":["_sfc_main","clickaway","AppLink","$","replaceHttp","value","input","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_createElementVNode","$options","args","$props","_toDisplayString","_cache","_createTextVNode","$data","_normalizeClass","_renderSlot","_ctx","_createCommentVNode"],"mappings":";;;;;;;AA2BA,MAAKA,IAAU;AAAA,EACb,QAAQ,CAACC,CAAS;AAAA,EAClB,MAAM;AAAA,EACN,OAAO,CAAC,gBAAgB,SAAS,WAAW,WAAW,gBAAgB,gBAAgB;AAAA,EACvF,YAAY;AAAA,IACX,SAAAC;AAAA,EACA;AAAA,EACD,SAAS;AAAA,IACP,eAAe;AACb,WAAK,OAAO,IACZ,WAAW,MAAM;AACf,QAAAC,EAAE,yBAAyB,EAAE,QAAQ;AAAA,UACnC,WAAW;AAAA,QACb,CAAC;AAAA,MACF,GAAE,GAAG;AAAA,IACP;AAAA,IACD,OAAO;AACL,WAAK,OAAO;AAAA,IACb;AAAA,IACD,aAAAC;AAAA,IACA,aAAaC,GAAO;AAClB,YAAMC,IAAQ,SAAS,cAAc,OAAO;AAE5C,MAAAA,EAAM,QAAQD,GACd,SAAS,KAAK,YAAYC,CAAK,GAC/BA,EAAM,OAAM,GACZ,SAAS,YAAY,MAAM,GAC3B,SAAS,KAAK,YAAYA,CAAK;AAAA,IAChC;AAAA,EACF;AAAA,EACD,OAAO;AACL,WAAO;AAAA,MACL,MAAM;AAAA;EAET;AACH,GA7DOC,IAAA,EAAA,OAAM,6CAA4C,GADzDC,IAAA,CAAA,OAAA;;;AACE,SAAAC,EAAA,GAAAC,EAgBM,OAhBNH,GAgBM;AAAA,IAfJI,EAUS,UAAA;AAAA,MAVA,mCAAOC,EAAY,gBAAAA,EAAA,aAAA,GAAAC,CAAA;AAAA,MAAE,OAAM;AAAA,MAClC,MAAK;AAAA,MACL,iBAAc;AAAA,MACd,iBAAc;AAAA;MACdF,EAIO,QAAA;AAAA,QAJD,eAAY;AAAA,QACf,OAAOG,EAAK;AAAA,QACb,kBAAe;AAAA,MACd,GAAAC,EAAAD,EAAA,OAAO,GAThB,GAAAN,CAAA;AAAA,MAAAQ,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,MAWMD,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAL,EAAqF,KAAlF,EAAA,OAAM,qDAAoD,GAAC,uBAAmB,EAAA;AAAA;IAXvFK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAC,EAAA;AAAA,IAceC,EAAI,eAAfR,EAEM,OAAA;AAAA,MAhBV,KAAA;AAAA,MAcyC,OAdzCS,EAAA,CAc+C,gBAAc,EAAA,SAAoBL,EAAO,QAAA,CAAA,CAAA;AAAA;MAClFM,EAAaC,EAAA,QAAA,WAAA,CAAA,GAAA,QAAA,EAAA;AAAA;UADgBT,EAAI,IAAA;AAAA,SAdvCU,EAAA,IAAA,EAAA;AAAA;;;"}
1
+ {"version":3,"file":"DistributionDropdownDownload.vue.mjs","sources":["../../../../lib/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue"],"sourcesContent":["<template>\n <div class=\"position-relative d-inline-block ml-1 mb-1\">\n <button @click=\"openDropdown\" class=\"distribution-download dsd-action-button btn btn-sm btn-primary p-0 pl-2 w-100 rounded-lg btn-color dropdown-button d-flex justify-content-between\"\n type=\"button\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\">\n <span data-toggle=\"tooltip\"\n :title=\"title\"\n data-placement=\"top\">\n {{ message }}\n </span>\n <i class=\"material-icons small-icon float-right align-bottom\">keyboard_arrow_down</i>\n </button>\n\n <div v-if=\"open\" v-click-away=\"away\" class=\"dropdownMenu\" :class=\"{ bglight: bgLight }\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script>\n/* eslint-disable */\nimport $ from 'jquery';\nimport { mixin as clickaway } from 'vue3-click-away';\nimport { replaceHttp } from '../../../utils/helpers';\nimport AppLink from \"../../../widgets/AppLink\";\n\nexport default {\n mixins: [clickaway],\n name: 'DistributionDropdownDownload',\n props: ['distribution', 'title', 'message', 'bgLight', 'isOnlyOneUrl', 'getDownloadUrl'],\n components: {\n AppLink,\n },\n methods: {\n openDropdown() {\n this.open = true;\n setTimeout(() => {\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n }, 500);\n },\n away() {\n this.open = false;\n },\n replaceHttp,\n setClipboard(value) {\n const input = document.createElement('INPUT');\n // input.style = \"position: absolute; left: -1000px; top: -1000px\";\n input.value = value;\n document.body.appendChild(input);\n input.select();\n document.execCommand('copy');\n document.body.removeChild(input);\n },\n },\n data() {\n return {\n open: false,\n };\n },\n};\n</script>\n<style lang=\"scss\" scoped>\n .material-icons.small-icon {\n font-size: 20px;\n }\n .dropdownMenu {\n z-index: 1000;\n max-width: 15rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0,0,0,.15);\n transform-origin: top right;\n position: absolute;\n right: 0;\n }\n button:hover {\n background-color: #196fd2;\n border-color: #196fd2;\n }\n .bglight {\n background:#f8f9fa;\n }\n</style>\n"],"names":["_sfc_main","clickaway","AppLink","$","replaceHttp","value","input","_hoisted_1","_openBlock","_createElementBlock","_createElementVNode","$options","args","$props","_hoisted_2","_cache","$data","_normalizeClass","_renderSlot","_ctx"],"mappings":";;;;;;;AA2BA,MAAKA,IAAU;AAAA,EACb,QAAQ,CAACC,CAAS;AAAA,EAClB,MAAM;AAAA,EACN,OAAO,CAAC,gBAAgB,SAAS,WAAW,WAAW,gBAAgB,gBAAgB;AAAA,EACvF,YAAY;AAAA,IACX,SAAAC;AAAA,EACA;AAAA,EACD,SAAS;AAAA,IACP,eAAe;AACb,WAAK,OAAO,IACZ,WAAW,MAAM;AACf,QAAAC,EAAE,yBAAyB,EAAE,QAAQ;AAAA,UACnC,WAAW;AAAA,QACb,CAAC;AAAA,MACF,GAAE,GAAG;AAAA,IACP;AAAA,IACD,OAAO;AACL,WAAK,OAAO;AAAA,IACb;AAAA,IACD,aAAAC;AAAA,IACA,aAAaC,GAAO;AAClB,YAAMC,IAAQ,SAAS,cAAc,OAAO;AAE5C,MAAAA,EAAM,QAAQD,GACd,SAAS,KAAK,YAAYC,CAAK,GAC/BA,EAAM,OAAM,GACZ,SAAS,YAAY,MAAM,GAC3B,SAAS,KAAK,YAAYA,CAAK;AAAA,IAChC;AAAA,EACF;AAAA,EACD,OAAO;AACL,WAAO;AAAA,MACL,MAAM;AAAA;EAET;AACH,GA7DOC,IAAA,EAAA,OAAM,6CAA4C;;;AAAvD,SAAAC,EAAA,GAAAC,EAgBM,OAhBNF,GAgBM;AAAA,IAfJG,EAUS,UAAA;AAAA,MAVA,mCAAOC,EAAY,gBAAAA,EAAA,aAAA,GAAAC,CAAA;AAAA,MAAE,OAAM;AAAA,MAClC,MAAK;AAAA,MACL,iBAAc;AAAA,MACd,iBAAc;AAAA;MACdF,EAIO,QAAA;AAAA,QAJD,eAAY;AAAA,QACf,OAAOG,EAAK;AAAA,QACb,kBAAe;AAAA,WACdA,EAAO,OAAA,GAAA,GAAAC,CAAA;AAAA;MAEVC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAL,EAAqF,KAAlF,EAAA,OAAM,qDAAoD,GAAC,uBAAmB,EAAA;AAAA;;IAGxEM,EAAI,eAAfP,EAEM,OAAA;AAAA;MAF+B,OAAKQ,EAAA,CAAC,gBAAc,EAAA,SAAoBJ,EAAO,QAAA,CAAA,CAAA;AAAA;MAClFK,EAAaC,EAAA,QAAA,WAAA,CAAA,GAAA,QAAA,EAAA;AAAA;UADgBR,EAAI,IAAA;AAAA;;;;"}
@@ -1,10 +1,10 @@
1
1
  declare const _default: import('vue').DefineComponent<{
2
- isUrlInvalid?: any;
3
- distribution?: any;
4
2
  getVisualisationLink?: any;
5
3
  previewLinkCallback?: any;
4
+ isUrlInvalid?: any;
6
5
  openIfValidUrl?: any;
7
6
  showTooltipVisualiseButton?: any;
7
+ distribution?: any;
8
8
  }, {}, {
9
9
  visualisationLinkFormats: string[];
10
10
  geoLinkFormats: {
@@ -23,12 +23,12 @@ declare const _default: import('vue').DefineComponent<{
23
23
  showGeoLink(distribution: any): boolean;
24
24
  showVisualisationLink(distribution: any): any;
25
25
  }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
26
- isUrlInvalid?: any;
27
- distribution?: any;
28
26
  getVisualisationLink?: any;
29
27
  previewLinkCallback?: any;
28
+ isUrlInvalid?: any;
30
29
  openIfValidUrl?: any;
31
30
  showTooltipVisualiseButton?: any;
31
+ distribution?: any;
32
32
  }> & Readonly<{}>, {}, {}, {
33
33
  Dropdown: any;
34
34
  AppLink: any;
@@ -5,7 +5,7 @@ import { mapGetters as h } from "vuex";
5
5
  import { resolveComponent as b, openBlock as d, createBlock as V, withCtx as v, createElementVNode as o, createElementBlock as k, withModifiers as D, normalizeClass as p, toDisplayString as c, createTextVNode as m, createCommentVNode as g } from "vue";
6
6
  import "./DistributionOptionsDropdown.vue2.mjs";
7
7
  import C from "../../../_virtual/_plugin-vue_export-helper.mjs";
8
- const U = {
8
+ const _ = {
9
9
  name: "DistributionOptionsDropdown",
10
10
  components: {
11
11
  Dropdown: w,
@@ -78,7 +78,7 @@ const U = {
78
78
  return i && this.visualisationLinkFormats.includes(i);
79
79
  }
80
80
  }
81
- }, _ = ["title"], y = ["href"], I = ["disabled"], x = { class: "px-2" }, G = ["href"], O = { class: "px-2" };
81
+ }, U = ["title"], y = ["href"], I = ["disabled"], x = { class: "px-2" }, G = ["href"], O = { class: "px-2" };
82
82
  function B(t, i, e, a, s, n) {
83
83
  const u = b("dropdown");
84
84
  return n.showOptionsDropdown(e.distribution) ? (d(), V(u, {
@@ -111,7 +111,7 @@ function B(t, i, e, a, s, n) {
111
111
  i[3] || (i[3] = o("i", { class: "material-icons align-bottom" }, "bar_chart", -1))
112
112
  ], 8, I)
113
113
  ], 10, y)) : g("", !0)
114
- ], 8, _),
114
+ ], 8, U),
115
115
  i[6] || (i[6] = m()),
116
116
  n.showGeoLink(e.distribution) ? (d(), k("a", {
117
117
  key: 0,
@@ -125,10 +125,11 @@ function B(t, i, e, a, s, n) {
125
125
  i[5] || (i[5] = o("i", { class: "material-icons float-right align-bottom" }, "public", -1))
126
126
  ], 8, G)) : g("", !0)
127
127
  ]),
128
- _: 1
128
+ _: 1,
129
+ __: [6]
129
130
  }, 8, ["title", "message"])) : g("", !0);
130
131
  }
131
- const M = /* @__PURE__ */ C(U, [["render", B], ["__scopeId", "data-v-caf49a5f"]]);
132
+ const M = /* @__PURE__ */ C(_, [["render", B], ["__scopeId", "data-v-caf49a5f"]]);
132
133
  export {
133
134
  M as default
134
135
  };