@piveau/piveau-hub-ui-modules 4.4.4 → 4.4.6

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 (374) hide show
  1. package/dist/PvBadge/PvBadge.vue.d.ts +4 -4
  2. package/dist/PvDataInfoBox/PvDataInfoBox.vue.d.ts +135 -4
  3. package/dist/PvDataInfoBox/PvDataInfoBox.vue.mjs +45 -45
  4. package/dist/PvDataInfoBox/PvDataInfoBox.vue.mjs.map +1 -1
  5. package/dist/PvDataInfoBox/PvDataInfoBoxDescription.vue.d.ts +4 -4
  6. package/dist/PvDataInfoBox/PvDataInfoBoxFooter.vue.d.ts +33 -4
  7. package/dist/PvDataInfoBox/PvDataInfoBoxFooter.vue.mjs +34 -34
  8. package/dist/PvDataInfoBox/PvDataInfoBoxFooter.vue.mjs.map +1 -1
  9. package/dist/PvDataInfoBox/PvDataInfoBoxFormats.vue.d.ts +17 -3
  10. package/dist/PvDataInfoBox/PvDataInfoBoxFormats.vue.mjs +18 -18
  11. package/dist/PvDataInfoBox/PvDataInfoBoxFormats.vue.mjs.map +1 -1
  12. package/dist/auth/Auth.vue.d.ts +1 -1
  13. package/dist/catalogues/CatalogPage.vue.mjs +139 -139
  14. package/dist/catalogues/CatalogPage.vue.mjs.map +1 -1
  15. package/dist/catalogues/CatalogPageDatasetCard.vue.d.ts +6 -4
  16. package/dist/catalogues/CatalogPageDatasetCard.vue.mjs +37 -37
  17. package/dist/catalogues/CatalogPageDatasetCard.vue.mjs.map +1 -1
  18. package/dist/catalogues/Catalogues.vue.mjs +202 -202
  19. package/dist/catalogues/Catalogues.vue.mjs.map +1 -1
  20. package/dist/catalogues/cataloguesFacets/CataloguesFacets.vue.mjs +44 -44
  21. package/dist/catalogues/cataloguesFacets/CataloguesFacets.vue.mjs.map +1 -1
  22. package/dist/citation/DatasetCitationModal.vue.d.ts +46 -4
  23. package/dist/citation/DatasetCitationModal.vue.mjs +36 -36
  24. package/dist/citation/DatasetCitationModal.vue.mjs.map +1 -1
  25. package/dist/citation/DatasetCitationTable.vue.d.ts +4 -4
  26. package/dist/citation/DatasetCitationTable.vue.mjs +32 -32
  27. package/dist/citation/DatasetCitationTable.vue.mjs.map +1 -1
  28. package/dist/composables/head/useRootHead.d.ts +1 -1
  29. package/dist/composables/useRuntimeEnv.d.ts +1 -1
  30. package/dist/configurations/config-schema/configSchema.d.ts +4 -4
  31. package/dist/configurations/config-schema/languagesSchema.d.ts +2 -2
  32. package/dist/data-provider-interface/DPIMenu.vue.d.ts +4 -8
  33. package/dist/data-provider-interface/DPIMenu.vue.mjs +96 -96
  34. package/dist/data-provider-interface/DPIMenu.vue.mjs.map +1 -1
  35. package/dist/data-provider-interface/DataProviderInterface.vue.d.ts +1297 -4
  36. package/dist/data-provider-interface/components/AutocompleteInput.vue.d.ts +1 -1
  37. package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs +101 -101
  38. package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs.map +1 -1
  39. package/dist/data-provider-interface/components/ConditionalInput.vue.d.ts +1 -1
  40. package/dist/data-provider-interface/components/ConditionalInput.vue.mjs +113 -154
  41. package/dist/data-provider-interface/components/ConditionalInput.vue.mjs.map +1 -1
  42. package/dist/data-provider-interface/components/DataFetchingComponent.vue.d.ts +4 -8
  43. package/dist/data-provider-interface/components/DataFetchingComponent.vue.mjs +13 -13
  44. package/dist/data-provider-interface/components/DataFetchingComponent.vue.mjs.map +1 -1
  45. package/dist/data-provider-interface/components/DistributionStepper.vue.d.ts +43 -40
  46. package/dist/data-provider-interface/components/DistributionStepper.vue.mjs +101 -101
  47. package/dist/data-provider-interface/components/DistributionStepper.vue.mjs.map +1 -1
  48. package/dist/data-provider-interface/components/Dropup.vue.d.ts +4 -4
  49. package/dist/data-provider-interface/components/Dropup.vue.mjs +22 -22
  50. package/dist/data-provider-interface/components/Dropup.vue.mjs.map +1 -1
  51. package/dist/data-provider-interface/components/FileUpload.vue.d.ts +3 -3
  52. package/dist/data-provider-interface/components/FileUpload.vue.mjs +114 -114
  53. package/dist/data-provider-interface/components/FileUpload.vue.mjs.map +1 -1
  54. package/dist/data-provider-interface/components/InfoSlot.vue.d.ts +4 -4
  55. package/dist/data-provider-interface/components/InfoSlot.vue.mjs +14 -14
  56. package/dist/data-provider-interface/components/InfoSlot.vue.mjs.map +1 -1
  57. package/dist/data-provider-interface/components/InputPageStep.vue.d.ts +3 -3
  58. package/dist/data-provider-interface/components/LanguageSelector.vue.d.ts +5 -5
  59. package/dist/data-provider-interface/components/Navigation.vue.d.ts +5 -11
  60. package/dist/data-provider-interface/components/Navigation.vue.mjs +58 -58
  61. package/dist/data-provider-interface/components/Navigation.vue.mjs.map +1 -1
  62. package/dist/data-provider-interface/components/SelectControlledGroup.vue.d.ts +3 -3
  63. package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs +22 -22
  64. package/dist/data-provider-interface/components/SimpleAccessURLInput.vue.d.ts +1 -1
  65. package/dist/data-provider-interface/components/SimpleAccessURLInput.vue.mjs.map +1 -1
  66. package/dist/data-provider-interface/components/SimpleInput.vue.d.ts +1 -1
  67. package/dist/data-provider-interface/components/SimpleInput.vue.mjs +13 -13
  68. package/dist/data-provider-interface/components/SimpleInput.vue.mjs.map +1 -1
  69. package/dist/data-provider-interface/components/SimpleSelect.vue.d.ts +1 -1
  70. package/dist/data-provider-interface/components/SimpleSelect.vue.mjs +40 -40
  71. package/dist/data-provider-interface/components/SimpleSelect.vue.mjs.map +1 -1
  72. package/dist/data-provider-interface/components/SpatialInput.vue.d.ts +1 -1
  73. package/dist/data-provider-interface/components/SpatialInput.vue.mjs +101 -101
  74. package/dist/data-provider-interface/components/SpatialInput.vue.mjs.map +1 -1
  75. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.d.ts +3 -5
  76. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.mjs +37 -42
  77. package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.mjs.map +1 -1
  78. package/dist/data-provider-interface/composables/useDpiEditMode.d.ts +1 -1
  79. package/dist/data-provider-interface/composables/useDpiStepper.d.ts +3 -3
  80. package/dist/data-provider-interface/views/DistributionInputPage.vue.d.ts +1 -1
  81. package/dist/data-provider-interface/views/DistributionInputPage.vue.mjs +56 -56
  82. package/dist/data-provider-interface/views/DistributionInputPage.vue.mjs.map +1 -1
  83. package/dist/data-provider-interface/views/DistributionOverview.vue.d.ts +4 -6
  84. package/dist/data-provider-interface/views/DistributionOverview.vue.mjs +128 -128
  85. package/dist/data-provider-interface/views/DistributionOverview.vue.mjs.map +1 -1
  86. package/dist/data-provider-interface/views/DraftsPage.vue.d.ts +5 -3
  87. package/dist/data-provider-interface/views/DraftsPage.vue.mjs +136 -136
  88. package/dist/data-provider-interface/views/DraftsPage.vue.mjs.map +1 -1
  89. package/dist/data-provider-interface/views/InputPage.vue.d.ts +1209 -9
  90. package/dist/data-provider-interface/views/InputPage.vue.mjs +107 -107
  91. package/dist/data-provider-interface/views/InputPage.vue.mjs.map +1 -1
  92. package/dist/data-provider-interface/views/LinkedDataViewer.vue.d.ts +3 -3
  93. package/dist/data-provider-interface/views/LinkedDataViewer.vue.mjs +12 -12
  94. package/dist/data-provider-interface/views/LinkedDataViewer.vue.mjs.map +1 -1
  95. package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.d.ts +120 -3
  96. package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.mjs +38 -38
  97. package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.mjs.map +1 -1
  98. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.d.ts +369 -3
  99. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.mjs +83 -83
  100. package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.mjs.map +1 -1
  101. package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.d.ts +120 -3
  102. package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.mjs +127 -127
  103. package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.mjs.map +1 -1
  104. package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.d.ts +26 -4
  105. package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.mjs +312 -312
  106. package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.mjs.map +1 -1
  107. package/dist/data-provider-interface/views/OverviewPage/Properties/StringProp.vue.d.ts +3 -3
  108. package/dist/data-provider-interface/views/OverviewPage/Properties/StringProp.vue.mjs +31 -31
  109. package/dist/data-provider-interface/views/OverviewPage/Properties/StringProp.vue.mjs.map +1 -1
  110. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.d.ts +3 -3
  111. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs +52 -52
  112. package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs.map +1 -1
  113. package/dist/data-provider-interface/views/OverviewPage/Properties/URLProp.vue.d.ts +5 -3
  114. package/dist/data-provider-interface/views/OverviewPage/Properties/URLProp.vue.mjs +35 -35
  115. package/dist/data-provider-interface/views/OverviewPage/Properties/URLProp.vue.mjs.map +1 -1
  116. package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.d.ts +98 -3
  117. package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.mjs +40 -40
  118. package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.mjs.map +1 -1
  119. package/dist/data-provider-interface/views/OverviewPage.vue.d.ts +783 -4
  120. package/dist/data-provider-interface/views/OverviewPage.vue.mjs +72 -48
  121. package/dist/data-provider-interface/views/OverviewPage.vue.mjs.map +1 -1
  122. package/dist/data-provider-interface/views/PropertyChooser.vue.mjs +31 -31
  123. package/dist/data-provider-interface/views/PropertyChooser.vue.mjs.map +1 -1
  124. package/dist/data-provider-interface/views/UserCataloguesPage.vue.d.ts +1 -1
  125. package/dist/data-provider-interface/views/UserCataloguesPage.vue.mjs +17 -17
  126. package/dist/data-provider-interface/views/UserCataloguesPage.vue.mjs.map +1 -1
  127. package/dist/data-provider-interface/views/UserProfilePage.vue.d.ts +2 -2
  128. package/dist/data-provider-interface/views/UserProfilePage.vue.mjs +27 -27
  129. package/dist/data-provider-interface/views/UserProfilePage.vue.mjs.map +1 -1
  130. package/dist/datasetDetails/AppMarkdownContent.vue.d.ts +4 -4
  131. package/dist/datasetDetails/AppMarkdownContent.vue.mjs +20 -20
  132. package/dist/datasetDetails/AppMarkdownContent.vue.mjs.map +1 -1
  133. package/dist/datasetDetails/DatasetDetails.vue.mjs +35 -35
  134. package/dist/datasetDetails/DatasetDetails.vue.mjs.map +1 -1
  135. package/dist/datasetDetails/DatasetDetailsActivityStream.vue.d.ts +1 -1
  136. package/dist/datasetDetails/DatasetDetailsActivityStream.vue.mjs +11 -12
  137. package/dist/datasetDetails/DatasetDetailsActivityStream.vue.mjs.map +1 -1
  138. package/dist/datasetDetails/DatasetDetailsBanners.vue.d.ts +9 -5
  139. package/dist/datasetDetails/DatasetDetailsBanners.vue.mjs +33 -33
  140. package/dist/datasetDetails/DatasetDetailsBanners.vue.mjs.map +1 -1
  141. package/dist/datasetDetails/DatasetDetailsCSVLinter.vue.mjs +93 -93
  142. package/dist/datasetDetails/DatasetDetailsCSVLinter.vue.mjs.map +1 -1
  143. package/dist/datasetDetails/DatasetDetailsCategories.vue.mjs +23 -23
  144. package/dist/datasetDetails/DatasetDetailsCategories.vue.mjs.map +1 -1
  145. package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs +42 -42
  146. package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs.map +1 -1
  147. package/dist/datasetDetails/DatasetDetailsDescription.vue.d.ts +31 -4
  148. package/dist/datasetDetails/DatasetDetailsDescription.vue.mjs +34 -34
  149. package/dist/datasetDetails/DatasetDetailsDescription.vue.mjs.map +1 -1
  150. package/dist/datasetDetails/DatasetDetailsLinkedMetricsButton.vue.d.ts +6 -4
  151. package/dist/datasetDetails/DatasetDetailsQuality.vue.mjs +416 -416
  152. package/dist/datasetDetails/DatasetDetailsQuality.vue.mjs.map +1 -1
  153. package/dist/datasetDetails/DatasetDetailsShareButton.vue.d.ts +6 -4
  154. package/dist/datasetDetails/DatasetDetailsSimilarDatasets.vue.mjs +40 -40
  155. package/dist/datasetDetails/DatasetDetailsSimilarDatasets.vue.mjs.map +1 -1
  156. package/dist/datasetDetails/DatasetDetailsSkeleton.vue.d.ts +4 -6
  157. package/dist/datasetDetails/DatasetDetailsSkeleton.vue.mjs +40 -40
  158. package/dist/datasetDetails/DatasetDetailsSkeleton.vue.mjs.map +1 -1
  159. package/dist/datasetDetails/distributions/Distribution.vue.mjs +34 -34
  160. package/dist/datasetDetails/distributions/Distribution.vue.mjs.map +1 -1
  161. package/dist/datasetDetails/distributions/DistributionAdded.vue.d.ts +3 -5
  162. package/dist/datasetDetails/distributions/DistributionAdded.vue.mjs +12 -12
  163. package/dist/datasetDetails/distributions/DistributionAdded.vue.mjs.map +1 -1
  164. package/dist/datasetDetails/distributions/DistributionDownloadAsModal.vue.d.ts +3 -1
  165. package/dist/datasetDetails/distributions/DistributionDownloadAsModal.vue.mjs +177 -177
  166. package/dist/datasetDetails/distributions/DistributionDownloadAsModal.vue.mjs.map +1 -1
  167. package/dist/datasetDetails/distributions/DistributionFormat.vue.d.ts +4 -9
  168. package/dist/datasetDetails/distributions/Distributions.vue.d.ts +7 -4
  169. package/dist/datasetDetails/distributions/Distributions.vue.mjs +41 -41
  170. package/dist/datasetDetails/distributions/Distributions.vue.mjs.map +1 -1
  171. package/dist/datasetDetails/distributions/DistributionsHeader.vue.d.ts +6 -10
  172. package/dist/datasetDetails/distributions/DistributionsHeader.vue.mjs +25 -25
  173. package/dist/datasetDetails/distributions/DistributionsHeader.vue.mjs.map +1 -1
  174. package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.d.ts +4 -12
  175. package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.mjs +128 -128
  176. package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.mjs.map +1 -1
  177. package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.d.ts +3 -3
  178. package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.mjs +23 -23
  179. package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.mjs.map +1 -1
  180. package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.d.ts +9 -4
  181. package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs +31 -31
  182. package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs.map +1 -1
  183. package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.d.ts +8 -12
  184. package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs +79 -79
  185. package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs.map +1 -1
  186. package/dist/datasetDetails/distributions/distributionActions/DistributionDownloadAs.vue.d.ts +3 -3
  187. package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.d.ts +6 -11
  188. package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.mjs +26 -26
  189. package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.mjs.map +1 -1
  190. package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.d.ts +7 -11
  191. package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.mjs +41 -41
  192. package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.mjs.map +1 -1
  193. package/dist/datasetDetails/distributions/distributionActions/DistributionPreview.vue.d.ts +6 -11
  194. package/dist/datasetDetails/distributions/distributionActions/LinkedDataButtonsDropdown.vue.d.ts +7 -7
  195. package/dist/datasetDetails/distributions/distributionDetails/DistributionContent.vue.mjs +311 -311
  196. package/dist/datasetDetails/distributions/distributionDetails/DistributionContent.vue.mjs.map +1 -1
  197. package/dist/datasetDetails/distributions/distributionDetails/DistributionDescription.vue.d.ts +4 -11
  198. package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.d.ts +9 -24
  199. package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.mjs +11 -11
  200. package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.mjs.map +1 -1
  201. package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.d.ts +3 -8
  202. package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.mjs +18 -18
  203. package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.mjs.map +1 -1
  204. package/dist/datasetDetails/distributions/distributionPreview/DistributionVisualisationSlot.vue.d.ts +1 -1
  205. package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.d.ts +5 -3
  206. package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.mjs +40 -40
  207. package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.mjs.map +1 -1
  208. package/dist/datasetDetails/features/DatasetDetailsDataServices.vue.d.ts +5 -3
  209. package/dist/datasetDetails/features/DatasetDetailsDataServices.vue.mjs +93 -93
  210. package/dist/datasetDetails/features/DatasetDetailsDataServices.vue.mjs.map +1 -1
  211. package/dist/datasetDetails/features/DatasetDetailsFeatureHeader.vue.d.ts +4 -4
  212. package/dist/datasetDetails/features/DatasetDetailsFeatureHeader.vue.mjs +5 -5
  213. package/dist/datasetDetails/features/DatasetDetailsFeatureHeader.vue.mjs.map +1 -1
  214. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.d.ts +42 -3
  215. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.mjs +85 -85
  216. package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.mjs.map +1 -1
  217. package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.d.ts +4 -8
  218. package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.mjs +45 -45
  219. package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.mjs.map +1 -1
  220. package/dist/datasetDetails/features/DatasetDetailsIsUsedBy.vue.d.ts +1 -1
  221. package/dist/datasetDetails/features/DatasetDetailsIsUsedBy.vue.mjs +26 -26
  222. package/dist/datasetDetails/features/DatasetDetailsIsUsedBy.vue.mjs.map +1 -1
  223. package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.d.ts +5 -3
  224. package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.mjs +45 -45
  225. package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.mjs.map +1 -1
  226. package/dist/datasetDetails/features/DatasetDetailsMap.vue.d.ts +3 -1
  227. package/dist/datasetDetails/features/DatasetDetailsMap.vue.mjs +23 -23
  228. package/dist/datasetDetails/features/DatasetDetailsMap.vue.mjs.map +1 -1
  229. package/dist/datasetDetails/features/DatasetDetailsPages.vue.d.ts +5 -3
  230. package/dist/datasetDetails/features/DatasetDetailsPages.vue.mjs +95 -95
  231. package/dist/datasetDetails/features/DatasetDetailsPages.vue.mjs.map +1 -1
  232. package/dist/datasetDetails/features/DatasetDetailsRelations.vue.d.ts +1 -1
  233. package/dist/datasetDetails/features/DatasetDetailsRelations.vue.mjs +27 -27
  234. package/dist/datasetDetails/features/DatasetDetailsRelations.vue.mjs.map +1 -1
  235. package/dist/datasetDetails/features/DatasetDetailsSubject.vue.d.ts +4 -1
  236. package/dist/datasetDetails/features/DatasetDetailsSubject.vue.mjs +20 -20
  237. package/dist/datasetDetails/features/DatasetDetailsSubject.vue.mjs.map +1 -1
  238. package/dist/datasetDetails/features/DatasetDetailsVisualisations.vue.d.ts +5 -3
  239. package/dist/datasetDetails/features/DatasetDetailsVisualisations.vue.mjs +92 -92
  240. package/dist/datasetDetails/features/DatasetDetailsVisualisations.vue.mjs.map +1 -1
  241. package/dist/datasetDetails/header/DatasetDetailsHeader.vue.mjs +24 -24
  242. package/dist/datasetDetails/header/DatasetDetailsHeader.vue.mjs.map +1 -1
  243. package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.d.ts +7 -5
  244. package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.mjs +31 -31
  245. package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.mjs.map +1 -1
  246. package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.d.ts +4 -4
  247. package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.mjs +24 -24
  248. package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.mjs.map +1 -1
  249. package/dist/datasetDetails/navigation/DatasetDetailsNavigation.vue.d.ts +81 -3
  250. package/dist/datasetDetails/navigation/DatasetDetailsNavigation.vue.mjs +24 -24
  251. package/dist/datasetDetails/navigation/DatasetDetailsNavigation.vue.mjs.map +1 -1
  252. package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.d.ts +11 -3
  253. package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.mjs +148 -148
  254. package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.mjs.map +1 -1
  255. package/dist/datasetDetails/navigation/DatasetDetailsNavigationPage.vue.d.ts +6 -4
  256. package/dist/datasetDetails/navigation/DatasetDetailsNavigationPages.vue.d.ts +1 -1
  257. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.d.ts +3 -1
  258. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.mjs +29 -29
  259. package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.mjs.map +1 -1
  260. package/dist/datasetDetails/properties/DatasetDetailsProperty.vue.mjs +47 -47
  261. package/dist/datasetDetails/properties/DatasetDetailsProperty.vue.mjs.map +1 -1
  262. package/dist/datasetDetails/properties/ValuesList.vue.d.ts +5 -3
  263. package/dist/datasetDetails/properties/ValuesList.vue.mjs +46 -46
  264. package/dist/datasetDetails/properties/ValuesList.vue.mjs.map +1 -1
  265. package/dist/datasets/DatasetDate.vue.d.ts +4 -7
  266. package/dist/datasets/DatasetDate.vue.mjs +22 -22
  267. package/dist/datasets/DatasetDate.vue.mjs.map +1 -1
  268. package/dist/datasets/DatasetList.vue.d.ts +4 -4
  269. package/dist/datasets/Datasets.vue.mjs +44 -44
  270. package/dist/datasets/Datasets.vue.mjs.map +1 -1
  271. package/dist/datasets/DatasetsFilters.vue.d.ts +3 -1
  272. package/dist/datasets/DatasetsFilters.vue.mjs +48 -48
  273. package/dist/datasets/DatasetsFilters.vue.mjs.map +1 -1
  274. package/dist/datasets/DatasetsFiltersTabs.vue.d.ts +5 -5
  275. package/dist/datasets/DatasetsFiltersTabs.vue.mjs +53 -53
  276. package/dist/datasets/DatasetsFiltersTabs.vue.mjs.map +1 -1
  277. package/dist/datasets/DatasetsTopControls.vue.d.ts +6 -8
  278. package/dist/datasets/DatasetsTopControls.vue.mjs +19 -19
  279. package/dist/datasets/DatasetsTopControls.vue.mjs.map +1 -1
  280. package/dist/datasets/datasetsFacets/DatasetsFacets.vue.mjs +16 -16
  281. package/dist/datasets/datasetsFacets/DatasetsFacets.vue.mjs.map +1 -1
  282. package/dist/datasets/datasetsFacets/DatasetsFacetsItem.vue.d.ts +4 -4
  283. package/dist/datasets/datasetsFacets/DatasetsFacetsItem.vue.mjs +12 -12
  284. package/dist/datasets/datasetsFacets/DatasetsFacetsItem.vue.mjs.map +1 -1
  285. package/dist/datasets/datasetsFacets/DatasetsMapFacet.vue.d.ts +131 -6
  286. package/dist/datasets/datasetsFacets/DatasetsMapFacet.vue.mjs +104 -104
  287. package/dist/datasets/datasetsFacets/DatasetsMapFacet.vue.mjs.map +1 -1
  288. package/dist/datasets/datasetsFacets/SettingsFacet.vue.d.ts +1 -1
  289. package/dist/embed/DatasetEmbedModal.vue.d.ts +1 -1
  290. package/dist/embed/DatasetEmbedModal.vue.mjs +103 -103
  291. package/dist/embed/DatasetEmbedModal.vue.mjs.map +1 -1
  292. package/dist/embed/EmbedDataset.vue.mjs +56 -56
  293. package/dist/embed/EmbedDataset.vue.mjs.map +1 -1
  294. package/dist/embed/EmbedDatasetSnippet.vue.mjs +50 -50
  295. package/dist/embed/EmbedDatasetSnippet.vue.mjs.map +1 -1
  296. package/dist/external/@vueuse/core/index +196 -137
  297. package/dist/external/@vueuse/core/index.map +1 -1
  298. package/dist/external/@vueuse/shared/index +44 -43
  299. package/dist/external/@vueuse/shared/index.map +1 -1
  300. package/dist/facets/CatalogDetailsFacet.vue.mjs +252 -252
  301. package/dist/facets/CatalogDetailsFacet.vue.mjs.map +1 -1
  302. package/dist/facets/ExpandableSelectFacet.vue.d.ts +55 -4
  303. package/dist/facets/ExpandableSelectFacet.vue.mjs +28 -28
  304. package/dist/facets/ExpandableSelectFacet.vue.mjs.map +1 -1
  305. package/dist/facets/Facet.vue.d.ts +4 -4
  306. package/dist/facets/Facet.vue.mjs +38 -38
  307. package/dist/facets/Facet.vue.mjs.map +1 -1
  308. package/dist/facets/FacetTitle.vue.d.ts +4 -4
  309. package/dist/facets/FacetTitle.vue.mjs +12 -12
  310. package/dist/facets/FacetTitle.vue.mjs.map +1 -1
  311. package/dist/facets/RadioFacet.vue.d.ts +21 -3
  312. package/dist/facets/RadioFacet.vue.mjs +26 -26
  313. package/dist/facets/RadioFacet.vue.mjs.map +1 -1
  314. package/dist/facets/SelectedFacetsOverview.vue.d.ts +4 -4
  315. package/dist/facets/SelectedFacetsOverview.vue.mjs +1 -1
  316. package/dist/facets/SelectedFacetsOverview.vue.mjs.map +1 -1
  317. package/dist/form/FormKitGroup.vue.d.ts +3 -3
  318. package/dist/form/FormKitGroup.vue.mjs +9 -9
  319. package/dist/form/FormKitGroup.vue.mjs.map +1 -1
  320. package/dist/form/Repeatable.vue.d.ts +1 -1
  321. package/dist/form/Repeatable.vue.mjs +19 -19
  322. package/dist/form/Repeatable.vue.mjs.map +1 -1
  323. package/dist/map/MapBasic.vue.d.ts +4 -4
  324. package/dist/map/MapBoundsReceiver.vue.d.ts +3 -3
  325. package/dist/map/MapBoundsSender.vue.d.ts +3 -3
  326. package/dist/mixins/useRouteMetaBreadcrumbs.d.ts +1 -1
  327. package/dist/modal/AppConfirmationDialog.vue.d.ts +4 -4
  328. package/dist/modal/AppConfirmationDialog.vue.mjs +44 -44
  329. package/dist/modal/AppConfirmationDialog.vue.mjs.map +1 -1
  330. package/dist/modal/AppSnackbar.vue.d.ts +41 -1
  331. package/dist/modal/AppToast.vue.d.ts +4 -4
  332. package/dist/modal/AppToast.vue.mjs +54 -54
  333. package/dist/modal/AppToast.vue.mjs.map +1 -1
  334. package/dist/navigation/SubNavigation.vue.d.ts +4 -4
  335. package/dist/navigation/SubNavigation.vue.mjs +25 -25
  336. package/dist/navigation/SubNavigation.vue.mjs.map +1 -1
  337. package/dist/pages/Imprint.vue.d.ts +3 -1
  338. package/dist/pages/NotFound.vue.d.ts +3 -1
  339. package/dist/pages/NotFound.vue.mjs +23 -23
  340. package/dist/pages/NotFound.vue.mjs.map +1 -1
  341. package/dist/pages/PrivacyPolicy.vue.d.ts +3 -1
  342. package/dist/pages/SparqlSearch.vue.d.ts +1 -1
  343. package/dist/pages/SparqlSearch.vue.mjs +22 -22
  344. package/dist/pages/SparqlSearch.vue.mjs.map +1 -1
  345. package/dist/pages/user/UserImprint.vue.d.ts +1 -1
  346. package/dist/pages/user/UserImprint.vue.mjs +10 -10
  347. package/dist/pages/user/UserImprint.vue.mjs.map +1 -1
  348. package/dist/pages/user/UserPrivacyPolicy.vue.d.ts +1 -1
  349. package/dist/pages/user/UserPrivacyPolicy.vue.mjs +10 -10
  350. package/dist/pages/user/UserPrivacyPolicy.vue.mjs.map +1 -1
  351. package/dist/piveau-hub-ui-modules.css +1 -1
  352. package/dist/widgets/Dropdown.vue.d.ts +4 -8
  353. package/dist/widgets/Dropdown.vue.mjs +20 -20
  354. package/dist/widgets/Dropdown.vue.mjs.map +1 -1
  355. package/dist/widgets/Pagination.vue.d.ts +4 -4
  356. package/dist/widgets/Pagination.vue.mjs +74 -74
  357. package/dist/widgets/Pagination.vue.mjs.map +1 -1
  358. package/dist/widgets/PropertyValue.vue.d.ts +6 -4
  359. package/dist/widgets/PropertyValue.vue.mjs +17 -17
  360. package/dist/widgets/PropertyValue.vue.mjs.map +1 -1
  361. package/dist/widgets/PvBanner.vue.d.ts +3 -3
  362. package/dist/widgets/PvBanner.vue.mjs +29 -29
  363. package/dist/widgets/PvBanner.vue.mjs.map +1 -1
  364. package/dist/widgets/PvButton.vue.d.ts +4 -4
  365. package/dist/widgets/PvShowMore.vue.d.ts +4 -4
  366. package/dist/widgets/ResourceAccessPopup.vue.d.ts +1 -1
  367. package/dist/widgets/ResourceAccessPopup.vue.mjs +48 -48
  368. package/dist/widgets/ResourceAccessPopup.vue.mjs.map +1 -1
  369. package/dist/widgets/ResourceDetailsLinkedDataButton.vue.d.ts +6 -4
  370. package/dist/widgets/Tooltip.vue.d.ts +3 -3
  371. package/package.json +2 -2
  372. package/dist/datasetDetails/DatasetDetails.vue.d.ts +0 -25
  373. package/dist/embed/EmbedDataset.vue.d.ts +0 -7
  374. package/dist/embed/EmbedDatasetSnippet.vue.d.ts +0 -9
@@ -1,7 +1,7 @@
1
- import { mapGetters as L } from "vuex";
2
- import { onUnmounted as E, resolveComponent as C, openBlock as m, createElementBlock as g, createBlock as v, withCtx as y, createTextVNode as h, toDisplayString as d, createElementVNode as o, normalizeStyle as I, createCommentVNode as f } from "vue";
1
+ import { mapGetters as E } from "vuex";
2
+ import { onUnmounted as C, resolveComponent as _, openBlock as w, createElementBlock as h, createBlock as y, withCtx as F, createElementVNode as i, createTextVNode as m, toDisplayString as u, normalizeStyle as I, createCommentVNode as f } from "vue";
3
3
  import { useRouter as S } from "vue-router";
4
- import { has as F, isNil as U } from "lodash-es";
4
+ import { has as T, isNil as U } from "lodash-es";
5
5
  import M from "axios";
6
6
  import { saveAs as O } from "file-saver";
7
7
  import Z from "jquery";
@@ -19,25 +19,25 @@ const $ = {
19
19
  "small"
20
20
  ],
21
21
  computed: {
22
- ...L("datasetDetails", [
22
+ ...E("datasetDetails", [
23
23
  "getDistributions",
24
24
  "getTitle",
25
25
  "getCatalog",
26
26
  "getLanguages"
27
27
  ]),
28
28
  files() {
29
- const t = (e) => e.lastIndexOf(".") !== -1 ? e.substring(0, e.lastIndexOf(".")) : e, c = (e) => {
30
- if (F(e, "format.id") && !U(e.format.id)) {
31
- const a = e.format.id;
32
- return a.lastIndexOf(".") === -1 ? a.toLowerCase() : a.substring(a.lastIndexOf(".") + 1, a.length).toLowerCase();
29
+ const s = (e) => e.lastIndexOf(".") !== -1 ? e.substring(0, e.lastIndexOf(".")) : e, t = (e) => {
30
+ if (T(e, "format.id") && !U(e.format.id)) {
31
+ const n = e.format.id;
32
+ return n.lastIndexOf(".") === -1 ? n.toLowerCase() : n.substring(n.lastIndexOf(".") + 1, n.length).toLowerCase();
33
33
  }
34
34
  return "";
35
- }, i = (e, a) => `${t(this.getDistributionTitle(e)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH).replace(/\//g, " ").trim()}-${a}` || `${t(this.getDistributionDescription(e)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH).replace(/\//g, " ").trim()}-${a}`, l = (e) => this.showDownloadUrls(e) ? { accessUrl: `${e.accessUrl[0]}`, downloadUrl: `${e.downloadUrls[0]}` } : { accessUrl: `${e.accessUrl[0]}` }, s = (e) => this.getDistributionTitle(e).replace(/,/g, "") || this.getDistributionDescription(e).replace(/,/g, "");
36
- return this.getDistributions.map((e, a) => ({
37
- title: i(e, a + 1),
38
- ...l(e),
39
- format: c(e),
40
- csvReportTitle: s(e)
35
+ }, l = (e, n) => `${s(this.getDistributionTitle(e)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH).replace(/\//g, " ").trim()}-${n}` || `${s(this.getDistributionDescription(e)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH).replace(/\//g, " ").trim()}-${n}`, a = (e) => this.showDownloadUrls(e) ? { accessUrl: `${e.accessUrl[0]}`, downloadUrl: `${e.downloadUrls[0]}` } : { accessUrl: `${e.accessUrl[0]}` }, o = (e) => this.getDistributionTitle(e).replace(/,/g, "") || this.getDistributionDescription(e).replace(/,/g, "");
36
+ return this.getDistributions.map((e, n) => ({
37
+ title: l(e, n + 1),
38
+ ...a(e),
39
+ format: t(e),
40
+ csvReportTitle: o(e)
41
41
  }));
42
42
  }
43
43
  },
@@ -62,51 +62,51 @@ const $ = {
62
62
  },
63
63
  methods: {
64
64
  getTranslationFor: R,
65
- async fetchDistributionFiles(t, c, i, l) {
66
- const s = [];
67
- let r = `filename,status, issue_cause downloadURL, issue_cause accessURL
65
+ async fetchDistributionFiles(s, t, l, a) {
66
+ const o = [];
67
+ let d = `filename,status, issue_cause downloadURL, issue_cause accessURL
68
68
  `, e;
69
- const a = ["wms", "wfs"], T = M.CancelToken;
70
- this.cancelDownloadAllAxiosRequestSource = T.source();
71
- const b = this.$bulkDownloadAxiosInstance, A = { responseType: "blob", cancelToken: this.cancelDownloadAllAxiosRequestSource.token, timeout: this.bulkDownload.TIMEOUT_MS }, k = c.map(async (n) => {
72
- const _ = a.find((w) => w === n.format);
73
- if (_)
74
- s.push([n.csvReportTitle, "issue", `We can't download ${_} files using the download all button. Please try to download this file using the download button next to the file name.`]);
69
+ const n = ["wms", "wfs"], k = M.CancelToken;
70
+ this.cancelDownloadAllAxiosRequestSource = k.source();
71
+ const b = this.$bulkDownloadAxiosInstance, A = { responseType: "blob", cancelToken: this.cancelDownloadAllAxiosRequestSource.token, timeout: this.bulkDownload.TIMEOUT_MS }, L = t.map(async (r) => {
72
+ const v = n.find((g) => g === r.format);
73
+ if (v)
74
+ o.push([r.csvReportTitle, "issue", `We can't download ${v} files using the download all button. Please try to download this file using the download button next to the file name.`]);
75
75
  else {
76
- let w = !0, D, p = n.format;
77
- F(n, "downloadUrl") ? D = await b.get(n.downloadUrl, A).then((u) => u.status === 200 ? (w = !1, !n.format.length > 0 && (p = l(u.headers["content-type"])), s.push([n.csvReportTitle, "delivered"]), u.data) : Promise.reject(new Error(u.statusText))).catch((u) => {
78
- w = !0, e = u;
79
- }) : e = "no download url available", this.isUrlInvalid(n.downloadUrl) && s.push([n.csvReportTitle, "issue", "url is invalid"]), w && (D = await b.get(n.accessUrl, A).then((u) => u.status === 200 ? (w = !1, n.format.length > 0 && (p = l(u.headers["content-type"])), s.push([n.csvReportTitle, "delivered", e]), u.data) : Promise.reject(new Error(u.statusText))).catch((u) => {
80
- w = !0, s.push([n.csvReportTitle, "issue", e, u]);
81
- })), w || i.file(`${n.title}.${p}`, D, { binary: !0 }), this.isDownloadAllDistributionsCanceled ? (this.downloadedFilesCounter = 0, this.downloadProgress = 0, this.failedDownloads = 0) : (this.downloadedFilesCounter += 1, this.downloadProgress = Math.floor(100 * this.downloadedFilesCounter / this.getDistributions.length), w && (this.failedDownloads += 1));
76
+ let g = !0, D, p = r.format;
77
+ T(r, "downloadUrl") ? D = await b.get(r.downloadUrl, A).then((c) => c.status === 200 ? (g = !1, !r.format.length > 0 && (p = a(c.headers["content-type"])), o.push([r.csvReportTitle, "delivered"]), c.data) : Promise.reject(new Error(c.statusText))).catch((c) => {
78
+ g = !0, e = c;
79
+ }) : e = "no download url available", this.isUrlInvalid(r.downloadUrl) && o.push([r.csvReportTitle, "issue", "url is invalid"]), g && (D = await b.get(r.accessUrl, A).then((c) => c.status === 200 ? (g = !1, r.format.length > 0 && (p = a(c.headers["content-type"])), o.push([r.csvReportTitle, "delivered", e]), c.data) : Promise.reject(new Error(c.statusText))).catch((c) => {
80
+ g = !0, o.push([r.csvReportTitle, "issue", e, c]);
81
+ })), g || l.file(`${r.title}.${p}`, D, { binary: !0 }), this.isDownloadAllDistributionsCanceled ? (this.downloadedFilesCounter = 0, this.downloadProgress = 0, this.failedDownloads = 0) : (this.downloadedFilesCounter += 1, this.downloadProgress = Math.floor(100 * this.downloadedFilesCounter / this.getDistributions.length), g && (this.failedDownloads += 1));
82
82
  }
83
83
  });
84
- await Promise.all(k), s.forEach((n) => {
85
- r += n.join(","), r += `
84
+ await Promise.all(L), o.forEach((r) => {
85
+ d += r.join(","), d += `
86
86
  `;
87
- }), t.file("file_report.csv", r, { binary: !0 });
87
+ }), s.file("file_report.csv", d, { binary: !0 });
88
88
  },
89
89
  hideDownloadAllModal() {
90
90
  Z("#downloadAllModal").modal("hide");
91
91
  },
92
- generateAndSaveZip(t, c) {
93
- this.isDownloadAllDistributionsCanceled || (this.numberOfFilesToZip = Object.keys(t.files).length, this.isGeneratingZip = !0);
94
- class i {
95
- constructor(s) {
96
- this.message = s, this.name = "UserInterruptException";
92
+ generateAndSaveZip(s, t) {
93
+ this.isDownloadAllDistributionsCanceled || (this.numberOfFilesToZip = Object.keys(s.files).length, this.isGeneratingZip = !0);
94
+ class l {
95
+ constructor(o) {
96
+ this.message = o, this.name = "UserInterruptException";
97
97
  }
98
98
  }
99
- t.generateAsync({ type: "blob", compression: "DEFLATE" }, () => {
99
+ s.generateAsync({ type: "blob", compression: "DEFLATE" }, () => {
100
100
  if (this.isDownloadAllDistributionsCanceled)
101
- throw new i("user canceled generate zip operation");
102
- }).then((l) => {
103
- this.isGeneratingZip = !1, this.isGeneratingZipDone = !0, this.isLoadingAllDistributionFiles = !1, this.downloadAllSuccess = !0, O(l, c);
104
- }).catch((l) => {
105
- this.isGeneratingZip = !1, this.isDownloadAllDistributionsCanceled = !1, this.isLoadingAllDistributionFiles = !1, this.downloadAllError = !0, this.downloadedFilesCounter = 0, this.downloadProgress = 0, this.numberOfFilesToZip = 0, console.warn(l);
101
+ throw new l("user canceled generate zip operation");
102
+ }).then((a) => {
103
+ this.isGeneratingZip = !1, this.isGeneratingZipDone = !0, this.isLoadingAllDistributionFiles = !1, this.downloadAllSuccess = !0, O(a, t);
104
+ }).catch((a) => {
105
+ this.isGeneratingZip = !1, this.isDownloadAllDistributionsCanceled = !1, this.isLoadingAllDistributionFiles = !1, this.downloadAllError = !0, this.downloadedFilesCounter = 0, this.downloadProgress = 0, this.numberOfFilesToZip = 0, console.warn(a);
106
106
  });
107
107
  },
108
- cancelDownloadAll(t) {
109
- t.cancel("user canceled axios operation"), this.isDownloadAllDistributionsCanceled = !0;
108
+ cancelDownloadAll(s) {
109
+ s.cancel("user canceled axios operation"), this.isDownloadAllDistributionsCanceled = !0;
110
110
  },
111
111
  async trackAndDownloadAllDistributions() {
112
112
  return this.$piwik && this.$piwik.trackDownload && this.$piwik.trackDownload(
@@ -120,15 +120,15 @@ const $ = {
120
120
  },
121
121
  async downloadAllDistributions() {
122
122
  this.downloadedFilesCounter = 0, this.downloadProgress = 0, this.failedDownloads = 0, this.numberOfFilesToZip = 0, this.isGeneratingZip = !1, this.isGeneratingZipDone = !1, this.isLoadingAllDistributionFiles = !0, this.isDownloadAllDistributionsCanceled = !1, this.downloadAllSuccess = !1, this.downloadAllError = !1;
123
- const t = (r) => {
124
- const e = r.lastIndexOf("/") + 1, a = r.indexOf(";") !== -1 ? r.indexOf(";") : r.length;
125
- return r.substring(e, a);
126
- }, { default: c } = await import("jszip"), i = new c(), l = `${this.getTranslationFor(this.getTitle, this.$route.query.locale, this.getLanguages)}.zip`, s = i.folder(this.getTranslationFor(this.getCatalog.title, this.$route.query.locale, this.getLanguages));
127
- await this.fetchDistributionFiles(i, this.files, s, t), await this.generateAndSaveZip(i, l);
123
+ const s = (d) => {
124
+ const e = d.lastIndexOf("/") + 1, n = d.indexOf(";") !== -1 ? d.indexOf(";") : d.length;
125
+ return d.substring(e, n);
126
+ }, { default: t } = await import("jszip"), l = new t(), a = `${this.getTranslationFor(this.getTitle, this.$route.query.locale, this.getLanguages)}.zip`, o = l.folder(this.getTranslationFor(this.getCatalog.title, this.$route.query.locale, this.getLanguages));
127
+ await this.fetchDistributionFiles(l, this.files, o, s), await this.generateAndSaveZip(l, a);
128
128
  },
129
129
  // handle navigation to extern website (cancel bulk download and hide modal)
130
- beforeWindowUnload(t) {
131
- this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled && (t.preventDefault(), t.returnValue = "");
130
+ beforeWindowUnload(s) {
131
+ this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled && (s.preventDefault(), s.returnValue = "");
132
132
  }
133
133
  },
134
134
  created() {
@@ -138,151 +138,151 @@ const $ = {
138
138
  window.removeEventListener("beforeunload", this.beforeWindowUnload);
139
139
  },
140
140
  setup() {
141
- const t = S();
142
- E(() => {
143
- t.beforeEach((c, i, l) => {
144
- this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled ? window.confirm(this.$t("message.datasetDetails.datasets.leavePageWindow.text")) ? (this.hideDownloadAllModal(), this.cancelDownloadAll(this.cancelDownloadAllAxiosRequestSource), l()) : l(!1) : (this.hideDownloadAllModal(), l());
141
+ const s = S();
142
+ C(() => {
143
+ s.beforeEach((t, l, a) => {
144
+ this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled ? window.confirm(this.$t("message.datasetDetails.datasets.leavePageWindow.text")) ? (this.hideDownloadAllModal(), this.cancelDownloadAll(this.cancelDownloadAllAxiosRequestSource), a()) : a(!1) : (this.hideDownloadAllModal(), a());
145
145
  })();
146
146
  });
147
147
  }
148
148
  }, G = {
149
149
  key: 0,
150
150
  class: "dsd-download-all-distributions-button"
151
- }, N = /* @__PURE__ */ o("div", { class: "loading-spinner" }, null, -1), P = {
151
+ }, N = {
152
152
  class: "modal fade",
153
153
  id: "downloadAllModal",
154
154
  tabindex: "-1",
155
155
  role: "dialog",
156
156
  "aria-labelledby": "download progress",
157
157
  "aria-hidden": "true"
158
- }, q = {
158
+ }, P = {
159
159
  class: "modal-dialog",
160
160
  role: "document"
161
- }, j = { class: "modal-content" }, z = { class: "modal-header" }, V = { class: "modal-title" }, W = /* @__PURE__ */ o("button", {
162
- type: "button",
163
- class: "close",
164
- "data-dismiss": "modal",
165
- "aria-label": "Close"
166
- }, [
167
- /* @__PURE__ */ o("span", { "aria-hidden": "true" }, "×")
168
- ], -1), H = { class: "modal-body" }, X = { class: "progress" }, B = ["aria-valuenow"], J = { class: "d-flex justify-content-between align-items-center" }, K = ["title"], Q = { class: "d-flex justify-content-between align-items-center" }, Y = { key: 0 }, ee = { key: 1 }, te = {
161
+ }, q = { class: "modal-content" }, j = { class: "modal-header" }, z = { class: "modal-title" }, V = { class: "modal-body" }, W = { class: "progress" }, H = ["aria-valuenow"], X = { class: "d-flex justify-content-between align-items-center" }, B = ["title"], J = { class: "d-flex justify-content-between align-items-center" }, K = { key: 0 }, Q = { key: 1 }, Y = {
169
162
  key: 0,
170
163
  class: "spinner-grow text-primary",
171
164
  role: "status"
172
- }, se = /* @__PURE__ */ o("span", { class: "sr-only" }, "Loading...", -1), oe = [
173
- se
174
- ], ie = {
165
+ }, tt = {
175
166
  key: 1,
176
167
  class: "material-icons check-icon"
177
- }, le = { class: "modal-footer" }, ae = {
168
+ }, et = { class: "modal-footer" }, st = {
178
169
  type: "button",
179
170
  class: "btn btn-secondary",
180
171
  "data-dismiss": "modal"
181
- }, ne = {
172
+ }, ot = {
182
173
  key: 2,
183
174
  type: "button",
184
175
  class: "btn btn-success",
185
176
  "data-dismiss": "modal"
186
177
  };
187
- function re(t, c, i, l, s, r) {
188
- const e = C("pv-button");
189
- return t.getDistributions.length > 1 && t.getCatalog.is_part_of !== "erpd" ? (m(), g("div", G, [
190
- s.isLoadingAllDistributionFiles ? (m(), v(e, {
178
+ function it(s, t, l, a, o, d) {
179
+ const e = _("pv-button");
180
+ return s.getDistributions.length > 1 && s.getCatalog.is_part_of !== "erpd" ? (w(), h("div", G, [
181
+ o.isLoadingAllDistributionFiles ? (w(), y(e, {
191
182
  key: 0,
192
- small: i.small,
183
+ small: l.small,
193
184
  rounded: !0,
194
- primary: i.primary,
185
+ primary: l.primary,
195
186
  download: !0,
196
187
  class: "download-all-btn",
197
188
  "data-toggle": "modal",
198
189
  "data-target": "#downloadAllModal"
199
190
  }, {
200
- default: y(() => [
201
- N
202
- ]),
191
+ default: F(() => t[2] || (t[2] = [
192
+ i("div", { class: "loading-spinner" }, null, -1)
193
+ ])),
203
194
  _: 1
204
- }, 8, ["small", "primary"])) : (m(), v(e, {
195
+ }, 8, ["small", "primary"])) : (w(), y(e, {
205
196
  key: 1,
206
197
  class: "download-all-btn",
207
- small: i.small,
198
+ small: l.small,
208
199
  rounded: !0,
209
- primary: i.primary,
200
+ primary: l.primary,
210
201
  download: !0,
211
- action: () => i.openModal(r.trackAndDownloadAllDistributions, !0)
202
+ action: () => l.openModal(d.trackAndDownloadAllDistributions, !0)
212
203
  }, {
213
- default: y(() => [
214
- h(d(t.$t("message.datasetDetails.datasets.downloadAll")), 1)
204
+ default: F(() => [
205
+ m(u(s.$t("message.datasetDetails.datasets.downloadAll")), 1)
215
206
  ]),
216
207
  _: 1
217
208
  }, 8, ["small", "primary", "action"])),
218
- h(),
219
- o("div", P, [
220
- o("div", q, [
221
- o("div", j, [
222
- o("div", z, [
223
- o("h3", V, d(t.$t("message.datasetDetails.datasets.modal.downloadProgress")), 1),
224
- h(),
225
- W
209
+ t[14] || (t[14] = m()),
210
+ i("div", N, [
211
+ i("div", P, [
212
+ i("div", q, [
213
+ i("div", j, [
214
+ i("h3", z, u(s.$t("message.datasetDetails.datasets.modal.downloadProgress")), 1),
215
+ t[3] || (t[3] = m()),
216
+ t[4] || (t[4] = i("button", {
217
+ type: "button",
218
+ class: "close",
219
+ "data-dismiss": "modal",
220
+ "aria-label": "Close"
221
+ }, [
222
+ i("span", { "aria-hidden": "true" }, "×")
223
+ ], -1))
226
224
  ]),
227
- h(),
228
- o("div", H, [
229
- o("div", X, [
230
- o("div", {
225
+ t[12] || (t[12] = m()),
226
+ i("div", V, [
227
+ i("div", W, [
228
+ i("div", {
231
229
  class: "progress-bar",
232
230
  role: "progressbar",
233
- style: I({ width: `${s.downloadProgress}%` }),
234
- "aria-valuenow": s.downloadProgress,
231
+ style: I({ width: `${o.downloadProgress}%` }),
232
+ "aria-valuenow": o.downloadProgress,
235
233
  "aria-valuemin": "0",
236
234
  "aria-valuemax": "100"
237
- }, null, 12, B)
235
+ }, null, 12, H)
238
236
  ]),
239
- h(),
240
- o("div", null, d(t.$t("message.datasetDetails.datasets.modal.downloadingFiles")) + " " + d(s.downloadedFilesCounter.toLocaleString("fi")) + "/" + d(t.getDistributions.length.toLocaleString("fi")), 1),
241
- h(),
242
- o("div", J, [
243
- o("div", null, d(t.$t("message.datasetDetails.datasets.modal.notDownloaded")) + " " + d(s.failedDownloads.toLocaleString("fi")), 1),
244
- h(),
245
- o("i", {
237
+ t[8] || (t[8] = m()),
238
+ i("div", null, u(s.$t("message.datasetDetails.datasets.modal.downloadingFiles")) + " " + u(o.downloadedFilesCounter.toLocaleString("fi")) + "/" + u(s.getDistributions.length.toLocaleString("fi")), 1),
239
+ t[9] || (t[9] = m()),
240
+ i("div", X, [
241
+ i("div", null, u(s.$t("message.datasetDetails.datasets.modal.notDownloaded")) + " " + u(o.failedDownloads.toLocaleString("fi")), 1),
242
+ t[5] || (t[5] = m()),
243
+ i("i", {
246
244
  class: "material-icons help-icon",
247
245
  "data-toggle": "tooltip",
248
246
  "data-placement": "bottom",
249
- title: t.$t("message.datasetDetails.datasets.modal.notDownloadedTooltip")
250
- }, "help", 8, K)
247
+ title: s.$t("message.datasetDetails.datasets.modal.notDownloadedTooltip")
248
+ }, "help", 8, B)
251
249
  ]),
252
- h(),
253
- o("div", Q, [
254
- o("div", null, [
255
- h(d(t.$t("message.datasetDetails.datasets.modal.zipNumberOfFiles", { number: s.numberOfFilesToZip.toLocaleString("fi") })) + " ", 1),
256
- s.isLoadingAllDistributionFiles && s.numberOfFilesToZip > 0 ? (m(), g("span", Y, d(t.$t("message.datasetDetails.datasets.modal.coupleOfMinutes")), 1)) : s.isLoadingAllDistributionFiles ? (m(), g("span", ee, d(t.$t("message.datasetDetails.datasets.modal.waitingForDownload")), 1)) : f("", !0)
250
+ t[10] || (t[10] = m()),
251
+ i("div", J, [
252
+ i("div", null, [
253
+ m(u(s.$t("message.datasetDetails.datasets.modal.zipNumberOfFiles", { number: o.numberOfFilesToZip.toLocaleString("fi") })) + " ", 1),
254
+ o.isLoadingAllDistributionFiles && o.numberOfFilesToZip > 0 ? (w(), h("span", K, u(s.$t("message.datasetDetails.datasets.modal.coupleOfMinutes")), 1)) : o.isLoadingAllDistributionFiles ? (w(), h("span", Q, u(s.$t("message.datasetDetails.datasets.modal.waitingForDownload")), 1)) : f("", !0)
257
255
  ]),
258
- h(),
259
- s.isGeneratingZip ? (m(), g("div", te, oe)) : s.isGeneratingZipDone ? (m(), g("i", ie, "check_circle")) : f("", !0)
256
+ t[7] || (t[7] = m()),
257
+ o.isGeneratingZip ? (w(), h("div", Y, t[6] || (t[6] = [
258
+ i("span", { class: "sr-only" }, "Loading...", -1)
259
+ ]))) : o.isGeneratingZipDone ? (w(), h("i", tt, "check_circle")) : f("", !0)
260
260
  ])
261
261
  ]),
262
- h(),
263
- o("div", le, [
264
- o("button", ae, d(t.$t("message.datasetDetails.datasets.modal.close")), 1),
265
- h(),
266
- !s.downloadAllSuccess && !s.downloadAllError ? (m(), g("button", {
262
+ t[13] || (t[13] = m()),
263
+ i("div", et, [
264
+ i("button", st, u(s.$t("message.datasetDetails.datasets.modal.close")), 1),
265
+ t[11] || (t[11] = m()),
266
+ !o.downloadAllSuccess && !o.downloadAllError ? (w(), h("button", {
267
267
  key: 0,
268
268
  type: "button",
269
269
  class: "btn btn-danger",
270
270
  "data-dismiss": "modal",
271
- onClick: c[0] || (c[0] = (a) => r.cancelDownloadAll(s.cancelDownloadAllAxiosRequestSource))
272
- }, d(t.$t("message.datasetDetails.datasets.modal.cancel")), 1)) : s.downloadAllError ? (m(), g("button", {
271
+ onClick: t[0] || (t[0] = (n) => d.cancelDownloadAll(o.cancelDownloadAllAxiosRequestSource))
272
+ }, u(s.$t("message.datasetDetails.datasets.modal.cancel")), 1)) : o.downloadAllError ? (w(), h("button", {
273
273
  key: 1,
274
274
  type: "button",
275
275
  class: "btn btn-danger",
276
- onClick: c[1] || (c[1] = (a) => r.trackAndDownloadAllDistributions())
277
- }, d(t.$t("message.datasetDetails.datasets.modal.error")), 1)) : s.downloadAllSuccess ? (m(), g("button", ne, d(t.$t("message.datasetDetails.datasets.modal.okay")), 1)) : f("", !0)
276
+ onClick: t[1] || (t[1] = (n) => d.trackAndDownloadAllDistributions())
277
+ }, u(s.$t("message.datasetDetails.datasets.modal.error")), 1)) : o.downloadAllSuccess ? (w(), h("button", ot, u(s.$t("message.datasetDetails.datasets.modal.okay")), 1)) : f("", !0)
278
278
  ])
279
279
  ])
280
280
  ])
281
281
  ])
282
282
  ])) : f("", !0);
283
283
  }
284
- const pe = /* @__PURE__ */ x($, [["render", re]]);
284
+ const gt = /* @__PURE__ */ x($, [["render", it]]);
285
285
  export {
286
- pe as default
286
+ gt as default
287
287
  };
288
288
  //# sourceMappingURL=DownloadAllDistributions.vue.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"DownloadAllDistributions.vue.mjs","sources":["../../../lib/datasetDetails/distributions/DownloadAllDistributions.vue"],"sourcesContent":["<template>\n <div v-if=\"getDistributions.length > 1 && getCatalog.is_part_of !== 'erpd'\" class=\"dsd-download-all-distributions-button\">\n <pv-button v-if=\"isLoadingAllDistributionFiles\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\"\n class=\"download-all-btn\"\n data-toggle=\"modal\" data-target=\"#downloadAllModal\"\n >\n <div class=\"loading-spinner\"></div>\n </pv-button>\n <pv-button v-else class=\"download-all-btn\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\" :action=\"() => openModal(trackAndDownloadAllDistributions, true)\">\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <div class=\"modal fade\" id=\"downloadAllModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"download progress\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ $t('message.datasetDetails.datasets.modal.downloadProgress') }}</h3>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"progress\">\n <div class=\"progress-bar\" role=\"progressbar\" :style=\"{width: `${downloadProgress}%`}\" :aria-valuenow=\"downloadProgress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n </div>\n <div>\n {{ $t('message.datasetDetails.datasets.modal.downloadingFiles') }} {{ downloadedFilesCounter.toLocaleString('fi') }}/{{getDistributions.length.toLocaleString('fi')}}\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.notDownloaded') }} {{ failedDownloads.toLocaleString('fi') }}</div>\n <i class=\"material-icons help-icon\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.datasets.modal.notDownloadedTooltip')\">help</i>\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.zipNumberOfFiles', { number: numberOfFilesToZip.toLocaleString('fi') }) }}\n <span v-if=\"isLoadingAllDistributionFiles && numberOfFilesToZip > 0\">\n {{ $t('message.datasetDetails.datasets.modal.coupleOfMinutes') }}\n </span> <span v-else-if=\"isLoadingAllDistributionFiles\">\n {{ $t('message.datasetDetails.datasets.modal.waitingForDownload')}}\n </span>\n </div>\n <div v-if=\"isGeneratingZip\" class=\"spinner-grow text-primary\" role=\"status\">\n <span class=\"sr-only\">Loading...</span>\n </div>\n <i v-else-if=\"isGeneratingZipDone\" class=\"material-icons check-icon\">check_circle</i>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.close') }}</button>\n <button v-if=\"!downloadAllSuccess && !downloadAllError\" type=\"button\" class=\"btn btn-danger\" data-dismiss=\"modal\" @click=\"cancelDownloadAll(cancelDownloadAllAxiosRequestSource)\">\n {{ $t('message.datasetDetails.datasets.modal.cancel') }}\n </button>\n <button v-else-if=\"downloadAllError\" type=\"button\" class=\"btn btn-danger\" @click=\"trackAndDownloadAllDistributions()\">{{ $t('message.datasetDetails.datasets.modal.error') }}</button>\n <button v-else-if=\"downloadAllSuccess\" type=\"button\" class=\"btn btn-success\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.okay') }}</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from \"vuex\";\nimport { onUnmounted } from 'vue';\nimport { useRouter } from 'vue-router';\n\nimport {has, isNil} from \"lodash\";\nimport axios from \"axios\";\nimport { saveAs } from 'file-saver';\nimport $ from \"jquery\";\nimport { getTranslationFor } from \"../../utils/helpers\";\n\n\nexport default {\n name: \"DownloadAllDistributions\",\n props: [\n 'getDistributionDescription',\n 'getDistributionTitle',\n 'openModal',\n 'isUrlInvalid',\n 'showDownloadUrls',\n 'primary',\n 'small'\n ],\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions',\n 'getTitle',\n 'getCatalog',\n 'getLanguages'\n ]),\n files() {\n const cutFormatEnding = string => (string.lastIndexOf('.') !== -1 ? string.substring(0, string.lastIndexOf('.')) : string);\n const getFormat = (distribution) => {\n if (has(distribution, 'format.id') && !isNil(distribution.format.id)) {\n const type = distribution.format.id;\n return type.lastIndexOf('.') === -1 ? type.toLowerCase() : type.substring(type.lastIndexOf('.') + 1, type.length).toLowerCase();\n }\n return '';\n };\n const getFileName = (distribution, i) =>\n `${cutFormatEnding(this.getDistributionTitle(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`\n || `${cutFormatEnding(this.getDistributionDescription(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`;\n const getUrls = distribution => (this.showDownloadUrls(distribution) ?\n { accessUrl: `${distribution.accessUrl[0]}`, downloadUrl: `${distribution.downloadUrls[0]}` }\n : { accessUrl: `${distribution.accessUrl[0]}` });\n const getFileNameForCSV = distribution => this.getDistributionTitle(distribution).replace(/,/g, '')\n || this.getDistributionDescription(distribution).replace(/,/g, '');\n const files = this.getDistributions\n .map((distribution, i) => ({\n title: getFileName(distribution, i + 1), ...getUrls(distribution), format: getFormat(distribution), csvReportTitle: getFileNameForCSV(distribution),\n }));\n return files\n }\n },\n data() {\n return {\n downloadedFilesCounter: 0,\n numberOfFilesToZip: 0,\n downloadProgress: 0,\n failedDownloads: 0,\n isGeneratingZip: false,\n isGeneratingZipDone: false,\n isLoadingAllDistributionFiles: false,\n cancelDownloadAllAxiosRequestSource: null,\n isDownloadAllDistributionsCanceled: false,\n downloadAllSuccess: false,\n downloadAllError: false,\n bulkDownload: {\n MAX_FILE_TITLE_LENGTH: this.$env.content.datasetDetails.bulkDownload.MAX_FILE_TITLE_LENGTH,\n TIMEOUT_MS: this.$env.content.datasetDetails.bulkDownload.TIMEOUT_MS,\n }\n }\n },\n methods: {\n getTranslationFor,\n async fetchDistributionFiles(zip, files, folder, getContentTypeFormat) {\n const csvReportArray = [];\n let csvReport = 'filename,status, issue_cause downloadURL, issue_cause accessURL\\n';\n let csvDownloadURLIssue;\n const problematicFormats = ['wms', 'wfs'];\n\n const CancelToken = axios.CancelToken;\n this.cancelDownloadAllAxiosRequestSource = CancelToken.source();\n const axiosInstance = this.$bulkDownloadAxiosInstance;\n const requestSettings = { responseType: 'blob', cancelToken: this.cancelDownloadAllAxiosRequestSource.token, timeout: this.bulkDownload.TIMEOUT_MS };\n\n const promises = files.map(async (file) => {\n const problematicFormat = problematicFormats.find(format => format === file.format);\n if (!problematicFormat) {\n let isRejected = true;\n let responseData;\n let fileFormat = file.format;\n\n // try to download from download url\n if (has(file, 'downloadUrl')) {\n responseData = await axiosInstance.get(file.downloadUrl, requestSettings).then((responseDownloadUrl) => {\n if (responseDownloadUrl.status === 200) {\n isRejected = false;\n if (!file.format.length > 0) fileFormat = getContentTypeFormat(responseDownloadUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered']);\n return responseDownloadUrl.data;\n }\n return Promise.reject(new Error(responseDownloadUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvDownloadURLIssue = error;\n });\n } else csvDownloadURLIssue = 'no download url available';\n if (this.isUrlInvalid(file.downloadUrl)) {\n csvReportArray.push([file.csvReportTitle, 'issue', 'url is invalid']);\n }\n // try to download from access url\n if (isRejected) {\n responseData = await axiosInstance.get(file.accessUrl, requestSettings).then((responseAccessUrl) => {\n if (responseAccessUrl.status === 200) {\n isRejected = false;\n if (file.format.length > 0) fileFormat = getContentTypeFormat(responseAccessUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered', csvDownloadURLIssue]);\n return responseAccessUrl.data;\n }\n return Promise.reject(new Error(responseAccessUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvReportArray.push([file.csvReportTitle, 'issue', csvDownloadURLIssue, error]);\n });\n }\n if (!isRejected) folder.file(`${file.title}.${fileFormat}`, responseData, { binary: true });\n if (!this.isDownloadAllDistributionsCanceled) {\n this.downloadedFilesCounter += 1;\n this.downloadProgress = Math.floor(100 * this.downloadedFilesCounter / this.getDistributions.length);\n if (isRejected) this.failedDownloads += 1;\n } else {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n }\n } else csvReportArray.push([file.csvReportTitle, 'issue', `We can't download ${problematicFormat} files using the download all button. Please try to download this file using the download button next to the file name.`]);\n });\n\n await Promise.all(promises);\n csvReportArray.forEach((row) => {\n csvReport += row.join(',');\n csvReport += '\\n';\n });\n zip.file('file_report.csv', csvReport, { binary: true });\n },\n hideDownloadAllModal() {\n $('#downloadAllModal').modal('hide');\n },\n generateAndSaveZip(zip, zipName) {\n if (!this.isDownloadAllDistributionsCanceled) {\n this.numberOfFilesToZip = Object.keys(zip.files).length;\n this.isGeneratingZip = true;\n }\n\n class UserInterruptException {\n constructor(message) {\n this.message = message;\n this.name = 'UserInterruptException';\n }\n }\n\n zip.generateAsync({ type: 'blob', compression: 'DEFLATE' }, () => {\n if (this.isDownloadAllDistributionsCanceled) throw new UserInterruptException('user canceled generate zip operation');\n })\n .then((blob) => {\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = true;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllSuccess = true;\n saveAs(blob, zipName);\n })\n .catch((e) => {\n this.isGeneratingZip = false;\n this.isDownloadAllDistributionsCanceled = false;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllError = true;\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.numberOfFilesToZip = 0;\n console.warn(e); // eslint-disable-line\n });\n\n // works with chrome => to make it compatible to more browsers look here https://jimmywarting.github.io/StreamSaver.js/examples/saving-multiple-files.html open developer tools and find saving-multiple-files.html\n // install stream saver and import it + script src=\"https://cdn.jsdelivr.net/npm/web-streams-polyfill@2.0.2/dist/ponyfill.min.js\"\n // if we don't want to use his service worker we can configure something (I think we have to change the mitm url) => read the api https://jimmywarting.github.io/StreamSaver.js\n // I think IE will never work with this solution\n /* const writeStream = streamSaver.createWriteStream(zipName).getWriter();\n zip.generateInternalStream({ type: 'uint8array', streamFiles: true })\n .on('data', data => writeStream.write(data))\n .on('error', err => console.error(err))\n .on('end', () => writeStream.close())\n .resume(); */\n },\n cancelDownloadAll(source) {\n // stops axios operations\n source.cancel('user canceled axios operation');\n // stops zip operation\n this.isDownloadAllDistributionsCanceled = true;\n },\n async trackAndDownloadAllDistributions() {\n if (this.$piwik && this.$piwik.trackDownload) {\n this.$piwik.trackDownload(\n window.location.href,\n {\n files: JSON.stringify(this.files),\n downloadAll: 'true',\n format: 'all',\n }\n );\n }\n return await this.downloadAllDistributions();\n },\n async downloadAllDistributions() {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n this.numberOfFilesToZip = 0;\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = false;\n this.isLoadingAllDistributionFiles = true;\n this.isDownloadAllDistributionsCanceled = false;\n this.downloadAllSuccess = false;\n this.downloadAllError = false;\n const getContentTypeFormat = (contentType) => {\n const startIndex = contentType.lastIndexOf('/') + 1;\n const endIndex = contentType.indexOf(';') !== -1 ? contentType.indexOf(';') : contentType.length;\n return contentType.substring(startIndex, endIndex);\n };\n\n const {default: JSZip} = await import('jszip');\n const zip = new JSZip();\n const zipName = `${this.getTranslationFor(this.getTitle, this.$route.query.locale, this.getLanguages)}.zip`;\n const folder = zip.folder(this.getTranslationFor(this.getCatalog.title, this.$route.query.locale, this.getLanguages));\n await this.fetchDistributionFiles(zip, this.files, folder, getContentTypeFormat);\n await this.generateAndSaveZip(zip, zipName);\n },\n // handle navigation to extern website (cancel bulk download and hide modal)\n beforeWindowUnload(e) {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n e.preventDefault();\n // Chrome requires returnValue to be set\n e.returnValue = ''; // eslint-disable-line\n }\n }\n },\n created() {\n window.addEventListener('beforeunload', this.beforeWindowUnload);\n },\n beforeUnmount() {\n window.removeEventListener('beforeunload', this.beforeWindowUnload);\n },\n setup() {\n const router = useRouter();\n \n onUnmounted(() => {\n router.beforeEach((to, from, next) => {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n const answer = window.confirm(this.$t('message.datasetDetails.datasets.leavePageWindow.text')); // eslint-disable-line\n if (answer) {\n // if modal is open we have to hide it when user tries to navigate back\n this.hideDownloadAllModal();\n this.cancelDownloadAll(this.cancelDownloadAllAxiosRequestSource);\n next();\n } else {\n next(false);\n }\n } else {\n this.hideDownloadAllModal();\n next();\n }\n })();\n })\n },\n}\n</script>\n\n<style scoped>\n\n</style>\n"],"names":["_sfc_main","mapGetters","cutFormatEnding","string","getFormat","distribution","has","isNil","type","getFileName","i","getUrls","getFileNameForCSV","getTranslationFor","zip","files","folder","getContentTypeFormat","csvReportArray","csvReport","csvDownloadURLIssue","problematicFormats","CancelToken","axios","axiosInstance","requestSettings","promises","file","problematicFormat","format","isRejected","responseData","fileFormat","responseDownloadUrl","error","responseAccessUrl","row","$","zipName","UserInterruptException","message","blob","saveAs","e","source","contentType","startIndex","endIndex","JSZip","router","useRouter","onUnmounted","to","from","next","_createElementVNode","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_18","_hoisted_21","_ctx","_openBlock","_createElementBlock","_hoisted_1","$data","_createBlock","_component_pv_button","$props","_withCtx","_hoisted_2","$options","_createTextVNode","_toDisplayString","_hoisted_3","_hoisted_4","_hoisted_8","_normalizeStyle","_hoisted_15","_hoisted_16","_createCommentVNode","_hoisted_17","_hoisted_19","_hoisted_20","_hoisted_22","_cache","$event","_hoisted_23"],"mappings":"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"}
1
+ {"version":3,"file":"DownloadAllDistributions.vue.mjs","sources":["../../../lib/datasetDetails/distributions/DownloadAllDistributions.vue"],"sourcesContent":["<template>\n <div v-if=\"getDistributions.length > 1 && getCatalog.is_part_of !== 'erpd'\" class=\"dsd-download-all-distributions-button\">\n <pv-button v-if=\"isLoadingAllDistributionFiles\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\"\n class=\"download-all-btn\"\n data-toggle=\"modal\" data-target=\"#downloadAllModal\"\n >\n <div class=\"loading-spinner\"></div>\n </pv-button>\n <pv-button v-else class=\"download-all-btn\" :small=\"small\" :rounded=\"true\" :primary=\"primary\" :download=\"true\" :action=\"() => openModal(trackAndDownloadAllDistributions, true)\">\n {{ $t('message.datasetDetails.datasets.downloadAll') }}\n </pv-button>\n <div class=\"modal fade\" id=\"downloadAllModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"download progress\" aria-hidden=\"true\">\n <div class=\"modal-dialog\" role=\"document\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h3 class=\"modal-title\">{{ $t('message.datasetDetails.datasets.modal.downloadProgress') }}</h3>\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <div class=\"progress\">\n <div class=\"progress-bar\" role=\"progressbar\" :style=\"{width: `${downloadProgress}%`}\" :aria-valuenow=\"downloadProgress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n </div>\n <div>\n {{ $t('message.datasetDetails.datasets.modal.downloadingFiles') }} {{ downloadedFilesCounter.toLocaleString('fi') }}/{{getDistributions.length.toLocaleString('fi')}}\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.notDownloaded') }} {{ failedDownloads.toLocaleString('fi') }}</div>\n <i class=\"material-icons help-icon\" data-toggle=\"tooltip\" data-placement=\"bottom\" :title=\"$t('message.datasetDetails.datasets.modal.notDownloadedTooltip')\">help</i>\n </div>\n <div class=\"d-flex justify-content-between align-items-center\">\n <div>{{ $t('message.datasetDetails.datasets.modal.zipNumberOfFiles', { number: numberOfFilesToZip.toLocaleString('fi') }) }}\n <span v-if=\"isLoadingAllDistributionFiles && numberOfFilesToZip > 0\">\n {{ $t('message.datasetDetails.datasets.modal.coupleOfMinutes') }}\n </span> <span v-else-if=\"isLoadingAllDistributionFiles\">\n {{ $t('message.datasetDetails.datasets.modal.waitingForDownload')}}\n </span>\n </div>\n <div v-if=\"isGeneratingZip\" class=\"spinner-grow text-primary\" role=\"status\">\n <span class=\"sr-only\">Loading...</span>\n </div>\n <i v-else-if=\"isGeneratingZipDone\" class=\"material-icons check-icon\">check_circle</i>\n </div>\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.close') }}</button>\n <button v-if=\"!downloadAllSuccess && !downloadAllError\" type=\"button\" class=\"btn btn-danger\" data-dismiss=\"modal\" @click=\"cancelDownloadAll(cancelDownloadAllAxiosRequestSource)\">\n {{ $t('message.datasetDetails.datasets.modal.cancel') }}\n </button>\n <button v-else-if=\"downloadAllError\" type=\"button\" class=\"btn btn-danger\" @click=\"trackAndDownloadAllDistributions()\">{{ $t('message.datasetDetails.datasets.modal.error') }}</button>\n <button v-else-if=\"downloadAllSuccess\" type=\"button\" class=\"btn btn-success\" data-dismiss=\"modal\">{{ $t('message.datasetDetails.datasets.modal.okay') }}</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from \"vuex\";\nimport { onUnmounted } from 'vue';\nimport { useRouter } from 'vue-router';\n\nimport {has, isNil} from \"lodash\";\nimport axios from \"axios\";\nimport { saveAs } from 'file-saver';\nimport $ from \"jquery\";\nimport { getTranslationFor } from \"../../utils/helpers\";\n\n\nexport default {\n name: \"DownloadAllDistributions\",\n props: [\n 'getDistributionDescription',\n 'getDistributionTitle',\n 'openModal',\n 'isUrlInvalid',\n 'showDownloadUrls',\n 'primary',\n 'small'\n ],\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDistributions',\n 'getTitle',\n 'getCatalog',\n 'getLanguages'\n ]),\n files() {\n const cutFormatEnding = string => (string.lastIndexOf('.') !== -1 ? string.substring(0, string.lastIndexOf('.')) : string);\n const getFormat = (distribution) => {\n if (has(distribution, 'format.id') && !isNil(distribution.format.id)) {\n const type = distribution.format.id;\n return type.lastIndexOf('.') === -1 ? type.toLowerCase() : type.substring(type.lastIndexOf('.') + 1, type.length).toLowerCase();\n }\n return '';\n };\n const getFileName = (distribution, i) =>\n `${cutFormatEnding(this.getDistributionTitle(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`\n || `${cutFormatEnding(this.getDistributionDescription(distribution)).substring(0, this.bulkDownload.MAX_FILE_TITLE_LENGTH)\n .replace(/\\//g, ' ').trim()}-${i}`;\n const getUrls = distribution => (this.showDownloadUrls(distribution) ?\n { accessUrl: `${distribution.accessUrl[0]}`, downloadUrl: `${distribution.downloadUrls[0]}` }\n : { accessUrl: `${distribution.accessUrl[0]}` });\n const getFileNameForCSV = distribution => this.getDistributionTitle(distribution).replace(/,/g, '')\n || this.getDistributionDescription(distribution).replace(/,/g, '');\n const files = this.getDistributions\n .map((distribution, i) => ({\n title: getFileName(distribution, i + 1), ...getUrls(distribution), format: getFormat(distribution), csvReportTitle: getFileNameForCSV(distribution),\n }));\n return files\n }\n },\n data() {\n return {\n downloadedFilesCounter: 0,\n numberOfFilesToZip: 0,\n downloadProgress: 0,\n failedDownloads: 0,\n isGeneratingZip: false,\n isGeneratingZipDone: false,\n isLoadingAllDistributionFiles: false,\n cancelDownloadAllAxiosRequestSource: null,\n isDownloadAllDistributionsCanceled: false,\n downloadAllSuccess: false,\n downloadAllError: false,\n bulkDownload: {\n MAX_FILE_TITLE_LENGTH: this.$env.content.datasetDetails.bulkDownload.MAX_FILE_TITLE_LENGTH,\n TIMEOUT_MS: this.$env.content.datasetDetails.bulkDownload.TIMEOUT_MS,\n }\n }\n },\n methods: {\n getTranslationFor,\n async fetchDistributionFiles(zip, files, folder, getContentTypeFormat) {\n const csvReportArray = [];\n let csvReport = 'filename,status, issue_cause downloadURL, issue_cause accessURL\\n';\n let csvDownloadURLIssue;\n const problematicFormats = ['wms', 'wfs'];\n\n const CancelToken = axios.CancelToken;\n this.cancelDownloadAllAxiosRequestSource = CancelToken.source();\n const axiosInstance = this.$bulkDownloadAxiosInstance;\n const requestSettings = { responseType: 'blob', cancelToken: this.cancelDownloadAllAxiosRequestSource.token, timeout: this.bulkDownload.TIMEOUT_MS };\n\n const promises = files.map(async (file) => {\n const problematicFormat = problematicFormats.find(format => format === file.format);\n if (!problematicFormat) {\n let isRejected = true;\n let responseData;\n let fileFormat = file.format;\n\n // try to download from download url\n if (has(file, 'downloadUrl')) {\n responseData = await axiosInstance.get(file.downloadUrl, requestSettings).then((responseDownloadUrl) => {\n if (responseDownloadUrl.status === 200) {\n isRejected = false;\n if (!file.format.length > 0) fileFormat = getContentTypeFormat(responseDownloadUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered']);\n return responseDownloadUrl.data;\n }\n return Promise.reject(new Error(responseDownloadUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvDownloadURLIssue = error;\n });\n } else csvDownloadURLIssue = 'no download url available';\n if (this.isUrlInvalid(file.downloadUrl)) {\n csvReportArray.push([file.csvReportTitle, 'issue', 'url is invalid']);\n }\n // try to download from access url\n if (isRejected) {\n responseData = await axiosInstance.get(file.accessUrl, requestSettings).then((responseAccessUrl) => {\n if (responseAccessUrl.status === 200) {\n isRejected = false;\n if (file.format.length > 0) fileFormat = getContentTypeFormat(responseAccessUrl.headers['content-type']);\n csvReportArray.push([file.csvReportTitle, 'delivered', csvDownloadURLIssue]);\n return responseAccessUrl.data;\n }\n return Promise.reject(new Error(responseAccessUrl.statusText));\n }).catch((error) => {\n isRejected = true;\n csvReportArray.push([file.csvReportTitle, 'issue', csvDownloadURLIssue, error]);\n });\n }\n if (!isRejected) folder.file(`${file.title}.${fileFormat}`, responseData, { binary: true });\n if (!this.isDownloadAllDistributionsCanceled) {\n this.downloadedFilesCounter += 1;\n this.downloadProgress = Math.floor(100 * this.downloadedFilesCounter / this.getDistributions.length);\n if (isRejected) this.failedDownloads += 1;\n } else {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n }\n } else csvReportArray.push([file.csvReportTitle, 'issue', `We can't download ${problematicFormat} files using the download all button. Please try to download this file using the download button next to the file name.`]);\n });\n\n await Promise.all(promises);\n csvReportArray.forEach((row) => {\n csvReport += row.join(',');\n csvReport += '\\n';\n });\n zip.file('file_report.csv', csvReport, { binary: true });\n },\n hideDownloadAllModal() {\n $('#downloadAllModal').modal('hide');\n },\n generateAndSaveZip(zip, zipName) {\n if (!this.isDownloadAllDistributionsCanceled) {\n this.numberOfFilesToZip = Object.keys(zip.files).length;\n this.isGeneratingZip = true;\n }\n\n class UserInterruptException {\n constructor(message) {\n this.message = message;\n this.name = 'UserInterruptException';\n }\n }\n\n zip.generateAsync({ type: 'blob', compression: 'DEFLATE' }, () => {\n if (this.isDownloadAllDistributionsCanceled) throw new UserInterruptException('user canceled generate zip operation');\n })\n .then((blob) => {\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = true;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllSuccess = true;\n saveAs(blob, zipName);\n })\n .catch((e) => {\n this.isGeneratingZip = false;\n this.isDownloadAllDistributionsCanceled = false;\n this.isLoadingAllDistributionFiles = false;\n this.downloadAllError = true;\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.numberOfFilesToZip = 0;\n console.warn(e); // eslint-disable-line\n });\n\n // works with chrome => to make it compatible to more browsers look here https://jimmywarting.github.io/StreamSaver.js/examples/saving-multiple-files.html open developer tools and find saving-multiple-files.html\n // install stream saver and import it + script src=\"https://cdn.jsdelivr.net/npm/web-streams-polyfill@2.0.2/dist/ponyfill.min.js\"\n // if we don't want to use his service worker we can configure something (I think we have to change the mitm url) => read the api https://jimmywarting.github.io/StreamSaver.js\n // I think IE will never work with this solution\n /* const writeStream = streamSaver.createWriteStream(zipName).getWriter();\n zip.generateInternalStream({ type: 'uint8array', streamFiles: true })\n .on('data', data => writeStream.write(data))\n .on('error', err => console.error(err))\n .on('end', () => writeStream.close())\n .resume(); */\n },\n cancelDownloadAll(source) {\n // stops axios operations\n source.cancel('user canceled axios operation');\n // stops zip operation\n this.isDownloadAllDistributionsCanceled = true;\n },\n async trackAndDownloadAllDistributions() {\n if (this.$piwik && this.$piwik.trackDownload) {\n this.$piwik.trackDownload(\n window.location.href,\n {\n files: JSON.stringify(this.files),\n downloadAll: 'true',\n format: 'all',\n }\n );\n }\n return await this.downloadAllDistributions();\n },\n async downloadAllDistributions() {\n this.downloadedFilesCounter = 0;\n this.downloadProgress = 0;\n this.failedDownloads = 0;\n this.numberOfFilesToZip = 0;\n this.isGeneratingZip = false;\n this.isGeneratingZipDone = false;\n this.isLoadingAllDistributionFiles = true;\n this.isDownloadAllDistributionsCanceled = false;\n this.downloadAllSuccess = false;\n this.downloadAllError = false;\n const getContentTypeFormat = (contentType) => {\n const startIndex = contentType.lastIndexOf('/') + 1;\n const endIndex = contentType.indexOf(';') !== -1 ? contentType.indexOf(';') : contentType.length;\n return contentType.substring(startIndex, endIndex);\n };\n\n const {default: JSZip} = await import('jszip');\n const zip = new JSZip();\n const zipName = `${this.getTranslationFor(this.getTitle, this.$route.query.locale, this.getLanguages)}.zip`;\n const folder = zip.folder(this.getTranslationFor(this.getCatalog.title, this.$route.query.locale, this.getLanguages));\n await this.fetchDistributionFiles(zip, this.files, folder, getContentTypeFormat);\n await this.generateAndSaveZip(zip, zipName);\n },\n // handle navigation to extern website (cancel bulk download and hide modal)\n beforeWindowUnload(e) {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n e.preventDefault();\n // Chrome requires returnValue to be set\n e.returnValue = ''; // eslint-disable-line\n }\n }\n },\n created() {\n window.addEventListener('beforeunload', this.beforeWindowUnload);\n },\n beforeUnmount() {\n window.removeEventListener('beforeunload', this.beforeWindowUnload);\n },\n setup() {\n const router = useRouter();\n \n onUnmounted(() => {\n router.beforeEach((to, from, next) => {\n if (this.isLoadingAllDistributionFiles && !this.isDownloadAllDistributionsCanceled) {\n const answer = window.confirm(this.$t('message.datasetDetails.datasets.leavePageWindow.text')); // eslint-disable-line\n if (answer) {\n // if modal is open we have to hide it when user tries to navigate back\n this.hideDownloadAllModal();\n this.cancelDownloadAll(this.cancelDownloadAllAxiosRequestSource);\n next();\n } else {\n next(false);\n }\n } else {\n this.hideDownloadAllModal();\n next();\n }\n })();\n })\n },\n}\n</script>\n\n<style scoped>\n\n</style>\n"],"names":["_sfc_main","mapGetters","cutFormatEnding","string","getFormat","distribution","has","isNil","type","getFileName","i","getUrls","getFileNameForCSV","getTranslationFor","zip","files","folder","getContentTypeFormat","csvReportArray","csvReport","csvDownloadURLIssue","problematicFormats","CancelToken","axios","axiosInstance","requestSettings","promises","file","problematicFormat","format","isRejected","responseData","fileFormat","responseDownloadUrl","error","responseAccessUrl","row","$","zipName","UserInterruptException","message","blob","saveAs","e","source","contentType","startIndex","endIndex","JSZip","router","useRouter","onUnmounted","to","from","next","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_17","_ctx","_openBlock","_createElementBlock","_hoisted_1","$data","_createBlock","_component_pv_button","$props","_withCtx","_cache","_createElementVNode","$options","_createTextVNode","_toDisplayString","_hoisted_2","_hoisted_3","_normalizeStyle","_hoisted_13","_hoisted_14","_createCommentVNode","_hoisted_15","_hoisted_16","_hoisted_18","$event","_hoisted_19"],"mappings":"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"}
@@ -1,14 +1,14 @@
1
- declare const _default: import('vue').DefineComponent<{
1
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
2
2
  distributions: ObjectConstructor;
3
3
  setDistributionsDisplayCount: FunctionConstructor;
4
4
  increaseNumDisplayedDistributions: FunctionConstructor;
5
5
  nonOverflowingIncrementsForDistributions: FunctionConstructor;
6
- }, any, any, {
6
+ }>, {}, {}, {
7
7
  getDistributions: import('vuex').Computed;
8
8
  }, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
9
9
  distributions: ObjectConstructor;
10
10
  setDistributionsDisplayCount: FunctionConstructor;
11
11
  increaseNumDisplayedDistributions: FunctionConstructor;
12
12
  nonOverflowingIncrementsForDistributions: FunctionConstructor;
13
- }>>, {}, {}>;
13
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
14
14
  export default _default;