@piveau/piveau-hub-ui-modules 4.6.55 → 4.6.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/PvBadge/PvBadge.vue.mjs.map +1 -1
- package/dist/PvDataInfoBox/PvDataInfoBox.vue.mjs +2 -1
- package/dist/PvDataInfoBox/PvDataInfoBox.vue.mjs.map +1 -1
- package/dist/PvDataInfoBox/PvDataInfoBoxDescription.vue.mjs.map +1 -1
- package/dist/PvDataInfoBox/PvDataInfoBoxFooter.vue.mjs.map +1 -1
- package/dist/PvDataInfoBox/PvDataInfoBoxFormats.vue.mjs.map +1 -1
- package/dist/catalogues/CatalogPage.vue.mjs.map +1 -1
- package/dist/catalogues/CatalogPageDatasetCard.vue.mjs +6 -5
- package/dist/catalogues/CatalogPageDatasetCard.vue.mjs.map +1 -1
- package/dist/catalogues/Catalogues.vue.mjs.map +1 -1
- package/dist/catalogues/cataloguesFacets/CataloguesFacets.vue.mjs.map +1 -1
- package/dist/citation/DatasetCitationModal.vue.mjs.map +1 -1
- package/dist/citation/DatasetCitationTable.vue.mjs.map +1 -1
- package/dist/composables/useRuntimeEnv.d.ts +2 -2
- package/dist/configurations/config-schema/apiSchema.mjs +1 -1
- package/dist/configurations/config-schema/authenticationSchema.mjs +1 -1
- package/dist/configurations/config-schema/configSchema.d.ts +5 -5
- package/dist/configurations/config-schema/configSchema.mjs +18 -18
- package/dist/configurations/config-schema/contentSchema.mjs +1 -1
- package/dist/configurations/config-schema/languagesSchema.d.ts +2 -2
- package/dist/configurations/config-schema/languagesSchema.mjs +1 -1
- package/dist/configurations/config-schema/metadataSchema.mjs +1 -1
- package/dist/configurations/config-schema/routingSchema.mjs +1 -1
- package/dist/configurations/config-schema/themesSchema.mjs +1 -1
- package/dist/configurations/config-schema/trackerSchema.mjs +1 -1
- package/dist/data-provider-interface/CatalogueMQA.vue.mjs.map +1 -1
- package/dist/data-provider-interface/DPIMenu.vue.d.ts +10 -10
- package/dist/data-provider-interface/DPIMenu.vue.mjs.map +1 -1
- package/dist/data-provider-interface/DataProviderInterface.vue.d.ts +15 -17
- package/dist/data-provider-interface/DataProviderInterface.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/AutocompleteInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/ConditionalInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/DataFetchingComponent.vue.d.ts +2 -2
- package/dist/data-provider-interface/components/DistributionStepper.vue.mjs +2 -1
- package/dist/data-provider-interface/components/DistributionStepper.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/Dropup.vue.d.ts +1 -1
- package/dist/data-provider-interface/components/Dropup.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/FileUpload.vue.d.ts +1 -1
- package/dist/data-provider-interface/components/FileUpload.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/InfoSlot.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/InputPageStep.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/LanguageSelector.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/Navigation.vue.d.ts +8 -8
- package/dist/data-provider-interface/components/Navigation.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs +2 -1
- package/dist/data-provider-interface/components/SelectControlledGroup.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/SimpleAccessURLInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/SimpleInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/SimpleSelect.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/SpatialInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/UniqueIdentifierInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/components/WidgetInput.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/DistributionInputPage.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/DistributionOverview.vue.d.ts +2 -2
- package/dist/data-provider-interface/views/DistributionOverview.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/DraftsPage.vue.d.ts +5 -5
- package/dist/data-provider-interface/views/DraftsPage.vue.mjs +19 -14
- package/dist/data-provider-interface/views/DraftsPage.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/InputPage.vue.d.ts +12 -14
- package/dist/data-provider-interface/views/InputPage.vue.mjs +4 -2
- package/dist/data-provider-interface/views/InputPage.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/LinkedDataViewer.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/CatalogueOverview.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/DatasetOverview.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/DistributionOverview.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/Properties/MultilingualProp.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/Properties/SpecialProp.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/Properties/StringProp.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/Properties/URIProp.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/Properties/URLProp.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage/PropertyEntry.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/OverviewPage.vue.d.ts +3 -5
- package/dist/data-provider-interface/views/OverviewPage.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/PropertyChooser.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/UserCataloguesPage.vue.mjs.map +1 -1
- package/dist/data-provider-interface/views/UserProfilePage.vue.mjs.map +1 -1
- package/dist/datasetDetails/AppMarkdownContent.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetails.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsActivityStream.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsBanners.vue.d.ts +1 -3
- package/dist/datasetDetails/DatasetDetailsBanners.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsCSVLinter.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsCategories.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs +2 -1
- package/dist/datasetDetails/DatasetDetailsDataset.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsDescription.vue.d.ts +1 -3
- package/dist/datasetDetails/DatasetDetailsDescription.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsFeedbackButton.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsLinkedMetricsButton.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsQuality.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsShareButton.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsSimilarDatasets.vue.mjs.map +1 -1
- package/dist/datasetDetails/DatasetDetailsSkeleton.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/Distribution.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/DistributionAdded.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/DistributionDownloadAsModal.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/DistributionFormat.vue.d.ts +2 -2
- package/dist/datasetDetails/distributions/DistributionFormat.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/Distributions.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/DistributionsHeader.vue.d.ts +4 -4
- package/dist/datasetDetails/distributions/DistributionsHeader.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.d.ts +8 -8
- package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.mjs +2 -1
- package/dist/datasetDetails/distributions/DownloadAllDistributions.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.mjs +7 -5
- package/dist/datasetDetails/distributions/FadingDistributionOverlay.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs +6 -5
- package/dist/datasetDetails/distributions/distributionActions/DistributionActions.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.d.ts +2 -2
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs +15 -12
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownload.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionDownloadAs.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.d.ts +2 -2
- package/dist/datasetDetails/distributions/distributionActions/DistributionDropdownDownload.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.d.ts +4 -4
- package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.mjs +6 -5
- package/dist/datasetDetails/distributions/distributionActions/DistributionOptionsDropdown.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionPreview.vue.d.ts +4 -4
- package/dist/datasetDetails/distributions/distributionActions/DistributionPreview.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/DistributionVisualizeButton.vue.d.ts +4 -4
- package/dist/datasetDetails/distributions/distributionActions/DistributionVisualizeButton.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionActions/LinkedDataButtonsDropdown.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionDetails/DistributionContent.vue.mjs +22 -21
- package/dist/datasetDetails/distributions/distributionDetails/DistributionContent.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionDetails/DistributionDescription.vue.d.ts +6 -6
- package/dist/datasetDetails/distributions/distributionDetails/DistributionDescription.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.d.ts +16 -16
- package/dist/datasetDetails/distributions/distributionDetails/DistributionDetails.vue.mjs.map +1 -1
- package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.d.ts +2 -2
- package/dist/datasetDetails/distributions/distributionDetails/DistributionExpand.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.d.ts +1 -1
- package/dist/datasetDetails/features/DatasetDetailsCategoriesKey.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsDataServices.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsFeatureHeader.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.d.ts +2 -2
- package/dist/datasetDetails/features/DatasetDetailsFeatures.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.d.ts +1 -1
- package/dist/datasetDetails/features/DatasetDetailsHvdThemes.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsIsUsedBy.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.d.ts +1 -1
- package/dist/datasetDetails/features/DatasetDetailsKeywords.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsMap.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsPages.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsRelations.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsSubject.vue.d.ts +1 -1
- package/dist/datasetDetails/features/DatasetDetailsSubject.vue.mjs.map +1 -1
- package/dist/datasetDetails/features/DatasetDetailsVisualisations.vue.mjs.map +1 -1
- package/dist/datasetDetails/header/DatasetDetailsHeader.vue.mjs.map +1 -1
- package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.d.ts +2 -2
- package/dist/datasetDetails/header/DatasetDetailsHeaderCatalogue.vue.mjs.map +1 -1
- package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.d.ts +2 -2
- package/dist/datasetDetails/header/DatasetDetailsHeaderTitle.vue.mjs.map +1 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigation.vue.mjs.map +1 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.d.ts +2 -2
- package/dist/datasetDetails/navigation/DatasetDetailsNavigationLinks.vue.mjs.map +1 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigationPage.vue.mjs.map +1 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigationPages.vue.d.ts +7 -1
- package/dist/datasetDetails/navigation/DatasetDetailsNavigationPages.vue.mjs.map +1 -1
- package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.d.ts +200 -1
- package/dist/datasetDetails/properties/DatasetDetailsProperties.vue.mjs.map +1 -1
- package/dist/datasetDetails/properties/DatasetDetailsProperty.vue.mjs.map +1 -1
- package/dist/datasetDetails/properties/ValuesList.vue.mjs.map +1 -1
- package/dist/datasetDetails/properties/specification.mjs +1 -1
- package/dist/datasetDetails/properties/specification.mjs.map +1 -1
- package/dist/datasets/DatasetDate.vue.mjs.map +1 -1
- package/dist/datasets/DatasetList.vue.mjs.map +1 -1
- package/dist/datasets/Datasets.vue.mjs.map +1 -1
- package/dist/datasets/DatasetsFilters.vue.d.ts +1 -1
- package/dist/datasets/DatasetsFilters.vue.mjs.map +1 -1
- package/dist/datasets/DatasetsFiltersTabs.vue.d.ts +2 -2
- package/dist/datasets/DatasetsFiltersTabs.vue.mjs.map +1 -1
- package/dist/datasets/DatasetsTopControls.vue.d.ts +5 -5
- package/dist/datasets/DatasetsTopControls.vue.mjs +8 -6
- package/dist/datasets/DatasetsTopControls.vue.mjs.map +1 -1
- package/dist/datasets/datasetsFacets/DatasetsFacets.vue.mjs.map +1 -1
- package/dist/datasets/datasetsFacets/DatasetsFacetsItem.vue.mjs.map +1 -1
- package/dist/datasets/datasetsFacets/DatasetsMapFacet.vue.mjs.map +1 -1
- package/dist/embed/DatasetEmbedModal.vue.mjs.map +1 -1
- package/dist/embed/EmbedDataset.vue.mjs.map +1 -1
- package/dist/embed/EmbedDatasetSnippet.vue.mjs.map +1 -1
- package/dist/external/zod/dist/esm/v3/ZodError +84 -0
- package/dist/external/zod/dist/esm/v3/ZodError.map +1 -0
- package/dist/external/zod/dist/esm/v3/errors +10 -0
- package/dist/external/zod/dist/esm/v3/errors.map +1 -0
- package/dist/external/zod/dist/esm/v3/helpers/errorUtil +8 -0
- package/dist/external/zod/dist/esm/v3/helpers/errorUtil.map +1 -0
- package/dist/external/zod/dist/esm/v3/helpers/parseUtil +98 -0
- package/dist/external/zod/dist/esm/v3/helpers/parseUtil.map +1 -0
- package/dist/external/zod/dist/esm/v3/helpers/util +95 -0
- package/dist/external/zod/dist/esm/v3/helpers/util.map +1 -0
- package/dist/external/zod/dist/esm/v3/locales/en +62 -0
- package/dist/external/zod/dist/esm/v3/locales/en.map +1 -0
- package/dist/external/zod/dist/esm/v3/types +2440 -0
- package/dist/external/zod/dist/esm/v3/types.map +1 -0
- package/dist/facets/CatalogDetailsFacet.vue.mjs.map +1 -1
- package/dist/facets/ExpandableSelectFacet.vue.mjs.map +1 -1
- package/dist/facets/Facet.vue.mjs.map +1 -1
- package/dist/facets/FacetTitle.vue.mjs.map +1 -1
- package/dist/facets/RadioFacet.vue.mjs.map +1 -1
- package/dist/facets/SelectedFacetsOverview.vue.d.ts +2 -2
- package/dist/facets/SelectedFacetsOverview.vue.mjs.map +1 -1
- package/dist/form/FormKitGroup.vue.mjs.map +1 -1
- package/dist/form/Repeatable.vue2.mjs +2 -1
- package/dist/form/Repeatable.vue2.mjs.map +1 -1
- package/dist/map/MapBasic.vue.mjs.map +1 -1
- package/dist/map/MapBoundsReceiver.vue.mjs.map +1 -1
- package/dist/map/MapBoundsSender.vue.mjs.map +1 -1
- package/dist/modal/AppConfirmationDialog.vue.mjs.map +1 -1
- package/dist/modal/AppSnackbar.vue.mjs.map +1 -1
- package/dist/modal/AppToast.vue.mjs.map +1 -1
- package/dist/navigation/SubNavigation.vue.mjs.map +1 -1
- package/dist/pages/NotFound.vue.mjs.map +1 -1
- package/dist/pages/SparqlSearch.vue.mjs.map +1 -1
- package/dist/pages/user/UserImprint.vue.mjs.map +1 -1
- package/dist/pages/user/UserPrivacyPolicy.vue.mjs.map +1 -1
- package/dist/piveau-hub-ui-modules.css +1 -1
- package/dist/search/Search.vue.mjs.map +1 -1
- package/dist/services/datasetService.d.ts +1 -1
- package/dist/services/datasetService.mjs +1 -1
- package/dist/services/datasetService.mjs.map +1 -1
- package/dist/widgets/AppLink.vue.mjs.map +1 -1
- package/dist/widgets/Dropdown.vue.mjs.map +1 -1
- package/dist/widgets/Pagination.vue.d.ts +1 -1
- package/dist/widgets/Pagination.vue.mjs.map +1 -1
- package/dist/widgets/PropertyValue.vue.mjs.map +1 -1
- package/dist/widgets/PvBanner.vue.mjs.map +1 -1
- package/dist/widgets/PvButton.vue.mjs.map +1 -1
- package/dist/widgets/PvShowMore.vue.mjs.map +1 -1
- package/dist/widgets/ResourceAccessPopup.vue.d.ts +1 -1
- package/dist/widgets/ResourceAccessPopup.vue.mjs.map +1 -1
- package/dist/widgets/ResourceDetailsLinkedDataButton.vue.mjs.map +1 -1
- package/dist/widgets/Tooltip.vue.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/external/zod/lib/index +0 -2849
- package/dist/external/zod/lib/index.map +0 -1
|
@@ -4,7 +4,206 @@ declare const _default: import('vue').DefineComponent<{}, {}, {
|
|
|
4
4
|
restrictedHeight: number;
|
|
5
5
|
expanded: boolean;
|
|
6
6
|
}, {
|
|
7
|
-
fieldSchema():
|
|
7
|
+
fieldSchema(): {
|
|
8
|
+
releaseDate: {
|
|
9
|
+
type: string;
|
|
10
|
+
translate: string;
|
|
11
|
+
};
|
|
12
|
+
modificationDate: {
|
|
13
|
+
type: string;
|
|
14
|
+
translate: string;
|
|
15
|
+
};
|
|
16
|
+
landingPages: {
|
|
17
|
+
type: string;
|
|
18
|
+
translate: string;
|
|
19
|
+
};
|
|
20
|
+
sources: {
|
|
21
|
+
type: string;
|
|
22
|
+
translate: string;
|
|
23
|
+
};
|
|
24
|
+
languages: {
|
|
25
|
+
type: string;
|
|
26
|
+
translate: string;
|
|
27
|
+
};
|
|
28
|
+
publisher: {
|
|
29
|
+
type: string;
|
|
30
|
+
fields: string;
|
|
31
|
+
};
|
|
32
|
+
contactPoints: {
|
|
33
|
+
type: string;
|
|
34
|
+
translate: string;
|
|
35
|
+
fields: string;
|
|
36
|
+
};
|
|
37
|
+
catalogRecord: {
|
|
38
|
+
type: string;
|
|
39
|
+
translate: string;
|
|
40
|
+
fields: string;
|
|
41
|
+
};
|
|
42
|
+
spatial: {
|
|
43
|
+
type: string;
|
|
44
|
+
fields: string;
|
|
45
|
+
};
|
|
46
|
+
spatialResource: {
|
|
47
|
+
type: string;
|
|
48
|
+
translate: string;
|
|
49
|
+
fields: string;
|
|
50
|
+
};
|
|
51
|
+
conformsTo: {
|
|
52
|
+
type: string;
|
|
53
|
+
fields: string;
|
|
54
|
+
track: string;
|
|
55
|
+
};
|
|
56
|
+
provenances: {
|
|
57
|
+
type: string;
|
|
58
|
+
translate: string;
|
|
59
|
+
fields: string;
|
|
60
|
+
};
|
|
61
|
+
identifiers: {
|
|
62
|
+
type: string;
|
|
63
|
+
translate: string;
|
|
64
|
+
};
|
|
65
|
+
otherIdentifiers: {
|
|
66
|
+
type: string;
|
|
67
|
+
translate: string;
|
|
68
|
+
fields: string;
|
|
69
|
+
};
|
|
70
|
+
resource: {
|
|
71
|
+
type: string;
|
|
72
|
+
translate: string;
|
|
73
|
+
};
|
|
74
|
+
frequency: {
|
|
75
|
+
type: string;
|
|
76
|
+
fields: string;
|
|
77
|
+
};
|
|
78
|
+
accessRights: {
|
|
79
|
+
type: string;
|
|
80
|
+
translate: string;
|
|
81
|
+
fields: string;
|
|
82
|
+
};
|
|
83
|
+
accrualPeriodicity: {
|
|
84
|
+
type: string;
|
|
85
|
+
translate: string;
|
|
86
|
+
fields: string;
|
|
87
|
+
};
|
|
88
|
+
creator: {
|
|
89
|
+
type: string;
|
|
90
|
+
fields: string;
|
|
91
|
+
};
|
|
92
|
+
hasVersion: {
|
|
93
|
+
type: string;
|
|
94
|
+
};
|
|
95
|
+
isVersionOf: {
|
|
96
|
+
type: string;
|
|
97
|
+
translate: string;
|
|
98
|
+
};
|
|
99
|
+
temporal: {
|
|
100
|
+
type: string;
|
|
101
|
+
translate: string;
|
|
102
|
+
fields: string;
|
|
103
|
+
itemstyles: string;
|
|
104
|
+
};
|
|
105
|
+
versionInfo: {
|
|
106
|
+
type: string;
|
|
107
|
+
};
|
|
108
|
+
versionNotes: {
|
|
109
|
+
type: string;
|
|
110
|
+
};
|
|
111
|
+
attributes: {
|
|
112
|
+
type: string;
|
|
113
|
+
translate: string;
|
|
114
|
+
};
|
|
115
|
+
dimensions: {
|
|
116
|
+
type: string;
|
|
117
|
+
translate: string;
|
|
118
|
+
};
|
|
119
|
+
numSeries: {
|
|
120
|
+
type: string;
|
|
121
|
+
};
|
|
122
|
+
hasQualityAnnotations: {
|
|
123
|
+
type: string;
|
|
124
|
+
translate: string;
|
|
125
|
+
};
|
|
126
|
+
statUnitMeasures: {
|
|
127
|
+
type: string;
|
|
128
|
+
translate: string;
|
|
129
|
+
};
|
|
130
|
+
isReferencedBy: {
|
|
131
|
+
type: string;
|
|
132
|
+
};
|
|
133
|
+
qualifiedAttributions: {
|
|
134
|
+
type: string;
|
|
135
|
+
translate: string;
|
|
136
|
+
};
|
|
137
|
+
wasGeneratedBy: {
|
|
138
|
+
type: string;
|
|
139
|
+
};
|
|
140
|
+
qualifiedRelations: {
|
|
141
|
+
type: string;
|
|
142
|
+
translate: string;
|
|
143
|
+
fields: string;
|
|
144
|
+
};
|
|
145
|
+
sample: {
|
|
146
|
+
type: string;
|
|
147
|
+
};
|
|
148
|
+
spatialResolutionInMeters: {
|
|
149
|
+
type: string;
|
|
150
|
+
translate: string;
|
|
151
|
+
transform: (value: any) => any;
|
|
152
|
+
};
|
|
153
|
+
type: {
|
|
154
|
+
type: string;
|
|
155
|
+
fields: string;
|
|
156
|
+
};
|
|
157
|
+
temporalResolution: {
|
|
158
|
+
type: string;
|
|
159
|
+
};
|
|
160
|
+
} & {
|
|
161
|
+
politicalGeocodingLevelURI: {
|
|
162
|
+
type: string;
|
|
163
|
+
fields: string;
|
|
164
|
+
};
|
|
165
|
+
politicalGeocodingURI: {
|
|
166
|
+
type: string;
|
|
167
|
+
fields: string;
|
|
168
|
+
};
|
|
169
|
+
availability: {
|
|
170
|
+
type: string;
|
|
171
|
+
translate: string;
|
|
172
|
+
fields: string;
|
|
173
|
+
};
|
|
174
|
+
contributorID: {
|
|
175
|
+
type: string;
|
|
176
|
+
fields: string;
|
|
177
|
+
};
|
|
178
|
+
geocodingDescriptionDe: {
|
|
179
|
+
type: string;
|
|
180
|
+
};
|
|
181
|
+
legalBasis: {
|
|
182
|
+
type: string;
|
|
183
|
+
};
|
|
184
|
+
qualityProcessURI: {
|
|
185
|
+
type: string;
|
|
186
|
+
};
|
|
187
|
+
typeDe: {
|
|
188
|
+
type: string;
|
|
189
|
+
translate: string;
|
|
190
|
+
};
|
|
191
|
+
references: {
|
|
192
|
+
type: string;
|
|
193
|
+
};
|
|
194
|
+
contributor: {
|
|
195
|
+
type: string;
|
|
196
|
+
fields: string;
|
|
197
|
+
};
|
|
198
|
+
originator: {
|
|
199
|
+
type: string;
|
|
200
|
+
fields: string;
|
|
201
|
+
};
|
|
202
|
+
maintainer: {
|
|
203
|
+
type: string;
|
|
204
|
+
fields: string;
|
|
205
|
+
};
|
|
206
|
+
};
|
|
8
207
|
propertyFields(): string;
|
|
9
208
|
fieldsArray(): string[];
|
|
10
209
|
showMoreVisible(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatasetDetailsProperties.vue.mjs","sources":["../../../lib/datasetDetails/properties/DatasetDetailsProperties.vue"],"sourcesContent":["<template>\n <div class=\"mt-5 dsd-properties\">\n <div class=\"col-12 mb-2 p-0 dsd-properties-list\">\n <slot name=\"property-header\">\n <dataset-details-feature-header\n :title=\"$t('message.datasetDetails.additionalInfo')\"\n :arrowDown=\"!infoVisible\"\n tag=\"additional-information-toggle\"\n :onClick=\"toggleInfo\"\n />\n </slot>\n <div class=\"position-relative dsd-item additional-information\"\n data-cy=\"additional-information\"\n v-show=\"infoVisible\">\n <slot name=\"property-table-before\"></slot>\n <slot name=\"property-table\">\n <table class=\"table table-borderless table-responsive\" ref=\"dsdProperties\" role=\"tablist\" id=\"myTab\">\n <dataset-details-property v-for='(name, index) in fieldsArray'\n :name=\"name\"\n :translate=\"fieldSchema[name]?.translate\"\n :type=\"fieldSchema[name]?.type\"\n :propertyFields=\"fieldSchema[name]?.fields\"\n :track=\"fieldSchema[name]?.track\"\n :itemstyles=\"fieldSchema[name]?.itemstyles\"\n :preTransform=\"fieldSchema[name]?.preTransform\"\n :transform=\"fieldSchema[name]?.transform\"\n :key=\"index\"/>\n </table>\n </slot>\n <div class=\"additional-information-overlay\" ref=\"overlay\" v-show=\"showMoreVisible && !expanded\"></div>\n <slot name=\"property-table-after\"></slot>\n </div>\n </div>\n <pv-show-more\n v-if=\"showMoreVisible\"\n :label=\"expanded? $t('message.metadata.showLess') : $t('message.metadata.showMore')\"\n :upArrow=\"expanded\"\n :action=\"toggleExpanded\"\n class=\"row text-primary\"\n />\n </div>\n</template>\n\n<script>\nimport {mapGetters} from \"vuex\";\nimport DatasetDetailsProperty from \"./DatasetDetailsProperty\";\nimport {dcatDeFields, dcatFields, dcatSchema, dcatDeSchema} from \"./specification.ts\";\n\nexport default {\n name: \"DatasetDetailsProperties\",\n components: {\n DatasetDetailsProperty\n },\n data() {\n return {\n infoVisible: true,\n initialHeight: 0,\n restrictedHeight: 100,\n expanded: false,\n };\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDatasetDescriptionHeight'\n ]),\n fieldSchema() {\n return Object.assign(dcatSchema(this.i18n.global.t), dcatDeSchema())\n },\n propertyFields() {\n let properties = this.$env.content?.datasetDetails?.properties;\n if (!properties || properties === \"\") {\n properties = dcatFields;\n if (this.$env.content.dataProviderInterface.specification === 'dcatapde') {\n properties += \",\" + dcatDeFields;\n }\n }\n return properties;\n },\n fieldsArray() {\n return this.propertyFields.split(',').map(item => item.trim());\n },\n showMoreVisible() {\n return this.initialHeight > this.restrictedHeight;\n }\n },\n methods: {\n toggleInfo() {\n this.infoVisible = !this.infoVisible;\n },\n toggleExpanded() {\n this.expanded = ! this.expanded;\n this.adaptHeight();\n },\n adaptHeight() {\n this.$refs.dsdProperties.style['flex'] = this.expanded ? \"0 0 100%\": `0 0 ${this.restrictedHeight}px`;\n this.$refs.dsdProperties.style['max-height'] = this.expanded ? \"100%\": `${this.restrictedHeight}px`;\n // this.$refs.dsdProperties.style['overflow-y'] = this.expanded ? \"auto\": \"hidden\";\n }\n },\n mounted() {\n this.initialHeight = this.$refs.dsdProperties.clientHeight;\n this.$refs.overlay.style.bottom = (this.$refs.dsdProperties.offsetHeight - this.$refs.dsdProperties.clientHeight) + \"px\";\n if (this.getDatasetDescriptionHeight >= this.initialHeight) {\n this.restrictedHeight = this.getDatasetDescriptionHeight;\n this.toggleExpanded()\n } else if ((this.getDatasetDescriptionHeight >= this.restrictedHeight) && (this.getDatasetDescriptionHeight <= this.initialHeight)) {\n this.restrictedHeight = this.getDatasetDescriptionHeight\n }\n this.adaptHeight();\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.arrow {\n cursor: pointer;\n}\n\n.additional-information-overlay {\n width: 100%;\n height: 100px;\n position: absolute;\n left: 0;\n background: linear-gradient(to bottom, rgba(0,0,0,0) 0, white 100%);\n pointer-events: none;\n}\ntable {\n background: #F5F5F5;\n}\n\n</style>\n"],"names":["_sfc_main","DatasetDetailsProperty","mapGetters","dcatSchema","dcatDeSchema","properties","_b","_a","dcatFields","dcatDeFields","item","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_createElementVNode","_renderSlot","_ctx","_createVNode","_component_dataset_details_feature_header","$data","$options","
|
|
1
|
+
{"version":3,"file":"DatasetDetailsProperties.vue.mjs","sources":["../../../lib/datasetDetails/properties/DatasetDetailsProperties.vue"],"sourcesContent":["<template>\n <div class=\"mt-5 dsd-properties\">\n <div class=\"col-12 mb-2 p-0 dsd-properties-list\">\n <slot name=\"property-header\">\n <dataset-details-feature-header\n :title=\"$t('message.datasetDetails.additionalInfo')\"\n :arrowDown=\"!infoVisible\"\n tag=\"additional-information-toggle\"\n :onClick=\"toggleInfo\"\n />\n </slot>\n <div class=\"position-relative dsd-item additional-information\"\n data-cy=\"additional-information\"\n v-show=\"infoVisible\">\n <slot name=\"property-table-before\"></slot>\n <slot name=\"property-table\">\n <table class=\"table table-borderless table-responsive\" ref=\"dsdProperties\" role=\"tablist\" id=\"myTab\">\n <dataset-details-property v-for='(name, index) in fieldsArray'\n :name=\"name\"\n :translate=\"fieldSchema[name]?.translate\"\n :type=\"fieldSchema[name]?.type\"\n :propertyFields=\"fieldSchema[name]?.fields\"\n :track=\"fieldSchema[name]?.track\"\n :itemstyles=\"fieldSchema[name]?.itemstyles\"\n :preTransform=\"fieldSchema[name]?.preTransform\"\n :transform=\"fieldSchema[name]?.transform\"\n :key=\"index\"/>\n </table>\n </slot>\n <div class=\"additional-information-overlay\" ref=\"overlay\" v-show=\"showMoreVisible && !expanded\"></div>\n <slot name=\"property-table-after\"></slot>\n </div>\n </div>\n <pv-show-more\n v-if=\"showMoreVisible\"\n :label=\"expanded? $t('message.metadata.showLess') : $t('message.metadata.showMore')\"\n :upArrow=\"expanded\"\n :action=\"toggleExpanded\"\n class=\"row text-primary\"\n />\n </div>\n</template>\n\n<script>\nimport {mapGetters} from \"vuex\";\nimport DatasetDetailsProperty from \"./DatasetDetailsProperty\";\nimport {dcatDeFields, dcatFields, dcatSchema, dcatDeSchema} from \"./specification.ts\";\n\nexport default {\n name: \"DatasetDetailsProperties\",\n components: {\n DatasetDetailsProperty\n },\n data() {\n return {\n infoVisible: true,\n initialHeight: 0,\n restrictedHeight: 100,\n expanded: false,\n };\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getDatasetDescriptionHeight'\n ]),\n fieldSchema() {\n return Object.assign(dcatSchema(this.i18n.global.t), dcatDeSchema())\n },\n propertyFields() {\n let properties = this.$env.content?.datasetDetails?.properties;\n if (!properties || properties === \"\") {\n properties = dcatFields;\n if (this.$env.content.dataProviderInterface.specification === 'dcatapde') {\n properties += \",\" + dcatDeFields;\n }\n }\n return properties;\n },\n fieldsArray() {\n return this.propertyFields.split(',').map(item => item.trim());\n },\n showMoreVisible() {\n return this.initialHeight > this.restrictedHeight;\n }\n },\n methods: {\n toggleInfo() {\n this.infoVisible = !this.infoVisible;\n },\n toggleExpanded() {\n this.expanded = ! this.expanded;\n this.adaptHeight();\n },\n adaptHeight() {\n this.$refs.dsdProperties.style['flex'] = this.expanded ? \"0 0 100%\": `0 0 ${this.restrictedHeight}px`;\n this.$refs.dsdProperties.style['max-height'] = this.expanded ? \"100%\": `${this.restrictedHeight}px`;\n // this.$refs.dsdProperties.style['overflow-y'] = this.expanded ? \"auto\": \"hidden\";\n }\n },\n mounted() {\n this.initialHeight = this.$refs.dsdProperties.clientHeight;\n this.$refs.overlay.style.bottom = (this.$refs.dsdProperties.offsetHeight - this.$refs.dsdProperties.clientHeight) + \"px\";\n if (this.getDatasetDescriptionHeight >= this.initialHeight) {\n this.restrictedHeight = this.getDatasetDescriptionHeight;\n this.toggleExpanded()\n } else if ((this.getDatasetDescriptionHeight >= this.restrictedHeight) && (this.getDatasetDescriptionHeight <= this.initialHeight)) {\n this.restrictedHeight = this.getDatasetDescriptionHeight\n }\n this.adaptHeight();\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.arrow {\n cursor: pointer;\n}\n\n.additional-information-overlay {\n width: 100%;\n height: 100px;\n position: absolute;\n left: 0;\n background: linear-gradient(to bottom, rgba(0,0,0,0) 0, white 100%);\n pointer-events: none;\n}\ntable {\n background: #F5F5F5;\n}\n\n</style>\n"],"names":["_sfc_main","DatasetDetailsProperty","mapGetters","dcatSchema","dcatDeSchema","properties","_b","_a","dcatFields","dcatDeFields","item","_hoisted_1","_hoisted_2","_openBlock","_createElementBlock","_createElementVNode","_renderSlot","_ctx","_createVNode","_component_dataset_details_feature_header","$data","$options","_withDirectives","_hoisted_3","_hoisted_4","_Fragment","_renderList","name","index","_createBlock","_component_dataset_details_property","_c","_d","_e","_f","_g","_hoisted_5","_vShow","_component_pv_show_more"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatasetDetailsProperty.vue.mjs","sources":["../../../lib/datasetDetails/properties/DatasetDetailsProperty.vue"],"sourcesContent":["<template>\n <tr v-if=\"show\">\n <td class=\"w-25 text-break font-weight-bold\">\n <tooltip :title=\"labelDisplay[0]\">\n {{ labelDisplay[1] }}\n </tooltip>\n </td>\n <td v-if=\"['string', 'date', 'number', 'first:number', 'translation'].includes(type)\">{{ value }}</td>\n <td v-if=\"type==='uri'\"><a :href='value'>{{ value }}</a></td>\n <td v-if=\"type==='links'\">\n <div v-for=\"(v, i) of value\" :key=\"i\">\n <app-link v-if=\"!isNil(v) && v.link && name !== 'languages'\" :to=\"v.link\">{{ truncate(v.label, 75) }}</app-link>\n <div v-if=\"(!isNil(v) && !v.link) || name === 'languages'\">{{ truncate(v.label, 75) }}</div>\n </div>\n </td>\n <td v-if=\"type==='object'\">\n <values-list :values=\"value\" :interpretTranslateKey=\"interpretTranslateKey\" :itemstyles=\"itemstyles\"/>\n </td>\n <td v-if=\"type==='objects'\">\n <div v-for=\"(item, i) of value\" :key=\"i\">\n <values-list :values=\"item\" :interpretTranslateKey=\"interpretTranslateKey\" :itemstyles=\"itemstyles\"/>\n </div>\n </td>\n </tr>\n</template>\n\n<script>\nimport AppLink from \"../../widgets/AppLink\";\nimport Tooltip from \"../../widgets/Tooltip\";\nimport {isNil, isArray} from \"lodash\";\nimport {showByType} from \"./typeCheckers.ts\";\nimport ValuesList from \"./ValuesList\";\nimport {mapGetters} from \"vuex\";\nimport dateFilters from \"../../filters/dateFilters.ts\";\nimport {truncate, getTranslationFor} from \"../../utils/helpers\";\n\nexport default {\n name: \"DatasetDetailsProperty\",\n props: {\n type: String, // Can be any of the types recognized in typeCheckers.ts\n translate: String | Array, // i18n key for the tooltip and label string values (if not given, name is used!)\n name: String, // Key to extract the value from the Datasets store\n propertyFields: String, // Comma-separated keys for extracting data from an object\n itemstyles: String, // Styles to apply to an object key-value block\n track: String, // Comma-separated keys for tracking\n preTransform: Function, // Transform raw data from dataset service\n transform: Function // Transform data after preparing by this.value\n },\n components: {\n Tooltip, AppLink, ValuesList\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getProperty'\n ]),\n labelDisplay() {\n const prefix = [\"message.tooltip.datasetDetails\", \"message.metadata\"];\n let translateItems;\n if (this.translate) {\n translateItems = this.translate.split(',');\n if (translateItems.length === 1) {\n translateItems.push(translateItems[0]);\n }\n } else {\n translateItems = [this.name, this.name];\n }\n return translateItems.map((item, i) => this.interpretTranslateKey(item, prefix[i]));\n },\n data() {\n let d = this.getProperty(this.name);\n if (this.name === 'languages') {\n d.sort((a, b) => {\n if (a.id < b.id) return -1;\n if (a.id > b.id) return 1;\n return 0;\n });\n }\n return d;\n },\n preparedFields() {\n return this.propertyFields?.split(',').map(field => field.split(':'));\n },\n preparedTrack() {\n return this.track?.split(',');\n },\n value() {\n let v = this.data;\n if (this.preTransform) v = this.preTransform(v);\n switch (this.type) {\n case 'date':\n v = dateFilters.formatEU(v);\n break;\n case 'links':\n v = this.data.map(item => {\n if (item) {\n const link = typeof item === 'string'? item : item.resource;\n const label = typeof item === 'string'? item : item.label || item.id || item.resource;\n return { link, label };\n }\n });\n break;\n case 'object':\n v = this.prepareObject(this.data);\n break;\n case 'objects':\n v = this.data.map(item => {\n return this.prepareObject(item);\n });\n break;\n case 'translation':\n v = this.getTranslationFor(v, this.$route.query.locale, ['en']);\n break;\n default:\n if (this.type.startsWith('first')) {\n v = this.data[0];\n }\n }\n if (this.transform) v = this.transform(v);\n return v;\n },\n show() {\n return showByType(this.type, this.data);\n }\n },\n methods: {\n isNil,\n isArray,\n truncate,\n getTranslationFor,\n dateValue() {\n return dateFilters.formatEU(this.value);\n },\n prepareObject(object) {\n // Because this.fields can contain \":\" signs that split a key into an array,\n // we also transform the keys in the case this.fields is undefined into arrays:\n let keys = this.preparedFields ?? Object.keys(object).map(key => [key]);\n\n // Now key[0] holds the actual key in all cases. Check if the value given\n // For a key is undefined and filter them out:\n keys = keys.filter(key => !isNil(object[key[0]]));\n\n return keys.map(key => {\n let value = object[key[0]];\n\n // Values can be arrays for displaying several values. For uniform treatment,\n // transform single values into arrays of length 1:\n if (!isArray(value)) value = [value];\n\n // First step: an object holding key and value:\n const result = {key: key[0], value};\n\n // Enrich the object when appropriate:\n if (key[1] !== undefined) result.type = key[1];\n if (key[2] !== undefined) result.translation = key[2];\n\n return result;\n });\n },\n interpretTranslateKey(key, prefix) {\n // console.log(key);\n \n if (key === '') return '';\n if (key.startsWith('/')) return `${this.i18n.global.t(key.substring(1))}:`;\n if (key.startsWith('\\'')) return key.substring(1, key.length - 1);\n return `${this.i18n.global.t(`${prefix}.${key}`)}:`;\n },\n }\n}\n</script>\n\n<style scoped>\ntr {\n width: 100%;\n}\n.w-25 {\n min-width: 160px;\n}\n\n</style>\n"],"names":["_sfc_main","Tooltip","AppLink","ValuesList","mapGetters","prefix","translateItems","item","i","d","a","b","_a","field","v","dateFilters","link","label","showByType","isNil","isArray","truncate","getTranslationFor","object","keys","key","value","result","_hoisted_2","_hoisted_5","$options","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_createVNode","_component_tooltip","_withCtx","_createTextVNode","_toDisplayString","_cache","$props","_hoisted_3","_createCommentVNode","_hoisted_4","_hoisted_6","_Fragment","_renderList","_createBlock","_component_app_link","_hoisted_7","_hoisted_8","_component_values_list","_hoisted_9"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatasetDetailsProperty.vue.mjs","sources":["../../../lib/datasetDetails/properties/DatasetDetailsProperty.vue"],"sourcesContent":["<template>\n <tr v-if=\"show\">\n <td class=\"w-25 text-break font-weight-bold\">\n <tooltip :title=\"labelDisplay[0]\">\n {{ labelDisplay[1] }}\n </tooltip>\n </td>\n <td v-if=\"['string', 'date', 'number', 'first:number', 'translation'].includes(type)\">{{ value }}</td>\n <td v-if=\"type==='uri'\"><a :href='value'>{{ value }}</a></td>\n <td v-if=\"type==='links'\">\n <div v-for=\"(v, i) of value\" :key=\"i\">\n <app-link v-if=\"!isNil(v) && v.link && name !== 'languages'\" :to=\"v.link\">{{ truncate(v.label, 75) }}</app-link>\n <div v-if=\"(!isNil(v) && !v.link) || name === 'languages'\">{{ truncate(v.label, 75) }}</div>\n </div>\n </td>\n <td v-if=\"type==='object'\">\n <values-list :values=\"value\" :interpretTranslateKey=\"interpretTranslateKey\" :itemstyles=\"itemstyles\"/>\n </td>\n <td v-if=\"type==='objects'\">\n <div v-for=\"(item, i) of value\" :key=\"i\">\n <values-list :values=\"item\" :interpretTranslateKey=\"interpretTranslateKey\" :itemstyles=\"itemstyles\"/>\n </div>\n </td>\n </tr>\n</template>\n\n<script>\nimport AppLink from \"../../widgets/AppLink\";\nimport Tooltip from \"../../widgets/Tooltip\";\nimport {isNil, isArray} from \"lodash\";\nimport {showByType} from \"./typeCheckers.ts\";\nimport ValuesList from \"./ValuesList\";\nimport {mapGetters} from \"vuex\";\nimport dateFilters from \"../../filters/dateFilters.ts\";\nimport {truncate, getTranslationFor} from \"../../utils/helpers\";\n\nexport default {\n name: \"DatasetDetailsProperty\",\n props: {\n type: String, // Can be any of the types recognized in typeCheckers.ts\n translate: String | Array, // i18n key for the tooltip and label string values (if not given, name is used!)\n name: String, // Key to extract the value from the Datasets store\n propertyFields: String, // Comma-separated keys for extracting data from an object\n itemstyles: String, // Styles to apply to an object key-value block\n track: String, // Comma-separated keys for tracking\n preTransform: Function, // Transform raw data from dataset service\n transform: Function // Transform data after preparing by this.value\n },\n components: {\n Tooltip, AppLink, ValuesList\n },\n computed: {\n ...mapGetters('datasetDetails', [\n 'getProperty'\n ]),\n labelDisplay() {\n const prefix = [\"message.tooltip.datasetDetails\", \"message.metadata\"];\n let translateItems;\n if (this.translate) {\n translateItems = this.translate.split(',');\n if (translateItems.length === 1) {\n translateItems.push(translateItems[0]);\n }\n } else {\n translateItems = [this.name, this.name];\n }\n return translateItems.map((item, i) => this.interpretTranslateKey(item, prefix[i]));\n },\n data() {\n let d = this.getProperty(this.name);\n if (this.name === 'languages') {\n d.sort((a, b) => {\n if (a.id < b.id) return -1;\n if (a.id > b.id) return 1;\n return 0;\n });\n }\n return d;\n },\n preparedFields() {\n return this.propertyFields?.split(',').map(field => field.split(':'));\n },\n preparedTrack() {\n return this.track?.split(',');\n },\n value() {\n let v = this.data;\n if (this.preTransform) v = this.preTransform(v);\n switch (this.type) {\n case 'date':\n v = dateFilters.formatEU(v);\n break;\n case 'links':\n v = this.data.map(item => {\n if (item) {\n const link = typeof item === 'string'? item : item.resource;\n const label = typeof item === 'string'? item : item.label || item.id || item.resource;\n return { link, label };\n }\n });\n break;\n case 'object':\n v = this.prepareObject(this.data);\n break;\n case 'objects':\n v = this.data.map(item => {\n return this.prepareObject(item);\n });\n break;\n case 'translation':\n v = this.getTranslationFor(v, this.$route.query.locale, ['en']);\n break;\n default:\n if (this.type.startsWith('first')) {\n v = this.data[0];\n }\n }\n if (this.transform) v = this.transform(v);\n return v;\n },\n show() {\n return showByType(this.type, this.data);\n }\n },\n methods: {\n isNil,\n isArray,\n truncate,\n getTranslationFor,\n dateValue() {\n return dateFilters.formatEU(this.value);\n },\n prepareObject(object) {\n // Because this.fields can contain \":\" signs that split a key into an array,\n // we also transform the keys in the case this.fields is undefined into arrays:\n let keys = this.preparedFields ?? Object.keys(object).map(key => [key]);\n\n // Now key[0] holds the actual key in all cases. Check if the value given\n // For a key is undefined and filter them out:\n keys = keys.filter(key => !isNil(object[key[0]]));\n\n return keys.map(key => {\n let value = object[key[0]];\n\n // Values can be arrays for displaying several values. For uniform treatment,\n // transform single values into arrays of length 1:\n if (!isArray(value)) value = [value];\n\n // First step: an object holding key and value:\n const result = {key: key[0], value};\n\n // Enrich the object when appropriate:\n if (key[1] !== undefined) result.type = key[1];\n if (key[2] !== undefined) result.translation = key[2];\n\n return result;\n });\n },\n interpretTranslateKey(key, prefix) {\n // console.log(key);\n \n if (key === '') return '';\n if (key.startsWith('/')) return `${this.i18n.global.t(key.substring(1))}:`;\n if (key.startsWith('\\'')) return key.substring(1, key.length - 1);\n return `${this.i18n.global.t(`${prefix}.${key}`)}:`;\n },\n }\n}\n</script>\n\n<style scoped>\ntr {\n width: 100%;\n}\n.w-25 {\n min-width: 160px;\n}\n\n</style>\n"],"names":["_sfc_main","Tooltip","AppLink","ValuesList","mapGetters","prefix","translateItems","item","i","d","a","b","_a","field","v","dateFilters","link","label","showByType","isNil","isArray","truncate","getTranslationFor","object","keys","key","value","result","_hoisted_2","$options","_createElementBlock","_hoisted_1","_createElementVNode","_createVNode","_component_tooltip","$props","_openBlock","_hoisted_4","_hoisted_5","_hoisted_6","_Fragment","_renderList","_createBlock","_component_app_link","_hoisted_7","_toDisplayString","_hoisted_8","_component_values_list","_hoisted_9"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValuesList.vue.mjs","sources":["../../../lib/datasetDetails/properties/ValuesList.vue"],"sourcesContent":["<template>\n <div>\n <div v-for=\"(v, i) of values\" :key=\"i\" :style=\"itemstyles\">\n <div v-if=\"v.key === 'email'\" :class=\"{'mb-1':i<values.length}\">\n <span class=\"dsd-properties-inner-label\">{{ getLabel(v) }}</span>\n <app-link v-for=\"(item, j) in v.value\" :key=\"j\" :to=\"`mailto:${removeMailtoOrTel(item)}`\">{{ displayValue(item, v.type) }}</app-link>\n </div>\n <div v-else-if=\"isLink(v)\" :class=\"{'mb-1':i<values.length}\">\n <span class=\"dsd-properties-inner-label\">{{ getLabel(v) }}</span>\n <a v-for=\"(item, j) in v.value\" :key=\"j\" :href=\"item\"\n :target=\"v.type==='link_blank'? '_blank':undefined\"\n @click=\"handleClick(item, v)\">\n {{ displayValue(item, v.type) }}\n </a>\n </div>\n <div v-else :class=\"{'mb-1':i<values.length}\">\n <span class=\"dsd-properties-inner-label\">{{ getLabel(v) }}</span>\n <span v-for=\"(item, j) in v.value\" :key=\"j\">{{ displayValue(item, v.type) }}</span>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport AppLink from \"../../widgets/AppLink\";\nimport {removeMailtoOrTel, truncate} from \"../../utils/helpers.ts\";\nimport dateFilters from \"../../filters/dateFilters.ts\";\n\nexport default {\n name: \"ValuesList\",\n props: {\n values: Array, // Expected format: array of objects with \"key\" and \"value\" field, where\n // \"key\" is a string and \"value\" is an array of strings (a single value\n // is represented by n array of length 1). Additionally, a \"type\" field\n // and a translation field may be included. If type is \"link\" we display\n // a link, if translation is given, it is used for the i18n value for the label.\n // Special cases of translation: in single quotes, use the literal string instead\n // of a i18n translation; if starting with a slash, use the value as an i18n key\n // literally, instead of appending it to \"message.metadata.\"\n track: Array,\n itemstyles: String,\n interpretTranslateKey: Function\n },\n components: {\n AppLink\n },\n methods: {\n truncate,\n removeMailtoOrTel,\n getLabel(v) {\n const prefix = \"message.metadata\";\n if (typeof v.translation === 'string') {\n return this.interpretTranslateKey(v.translation, prefix);\n }\n return `${this.i18n.global.t(`${prefix}.${v.key}`)}:`;\n },\n isLink(v) {\n const key = v.key.toLowerCase();\n const type = v.type?.toLowerCase();\n return ['homepage'].includes(key) || type === 'link' || type === 'link_blank';//|| key.endsWith('url') || key.endsWith('uri');\n },\n displayValue(item, type) {\n switch(type) {\n case 'date': return dateFilters.formatEU(item);\n default:\n return typeof item === 'string'? truncate(item, 75) : item;\n }\n },\n handleClick(item, v) {\n const key = v.key.toLowerCase();\n if (this.track && this.track.includes(key)) {\n this.$emit('track-link', item, 'link');\n }\n }\n }\n}\n</script>\n\n<style scoped>\n .dsd-properties-inner-label {\n white-space: pre;\n }\n</style>\n"],"names":["_sfc_main","AppLink","truncate","removeMailtoOrTel","v","prefix","key","type","_a","item","dateFilters","_hoisted_1","_hoisted_2","
|
|
1
|
+
{"version":3,"file":"ValuesList.vue.mjs","sources":["../../../lib/datasetDetails/properties/ValuesList.vue"],"sourcesContent":["<template>\n <div>\n <div v-for=\"(v, i) of values\" :key=\"i\" :style=\"itemstyles\">\n <div v-if=\"v.key === 'email'\" :class=\"{'mb-1':i<values.length}\">\n <span class=\"dsd-properties-inner-label\">{{ getLabel(v) }}</span>\n <app-link v-for=\"(item, j) in v.value\" :key=\"j\" :to=\"`mailto:${removeMailtoOrTel(item)}`\">{{ displayValue(item, v.type) }}</app-link>\n </div>\n <div v-else-if=\"isLink(v)\" :class=\"{'mb-1':i<values.length}\">\n <span class=\"dsd-properties-inner-label\">{{ getLabel(v) }}</span>\n <a v-for=\"(item, j) in v.value\" :key=\"j\" :href=\"item\"\n :target=\"v.type==='link_blank'? '_blank':undefined\"\n @click=\"handleClick(item, v)\">\n {{ displayValue(item, v.type) }}\n </a>\n </div>\n <div v-else :class=\"{'mb-1':i<values.length}\">\n <span class=\"dsd-properties-inner-label\">{{ getLabel(v) }}</span>\n <span v-for=\"(item, j) in v.value\" :key=\"j\">{{ displayValue(item, v.type) }}</span>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport AppLink from \"../../widgets/AppLink\";\nimport {removeMailtoOrTel, truncate} from \"../../utils/helpers.ts\";\nimport dateFilters from \"../../filters/dateFilters.ts\";\n\nexport default {\n name: \"ValuesList\",\n props: {\n values: Array, // Expected format: array of objects with \"key\" and \"value\" field, where\n // \"key\" is a string and \"value\" is an array of strings (a single value\n // is represented by n array of length 1). Additionally, a \"type\" field\n // and a translation field may be included. If type is \"link\" we display\n // a link, if translation is given, it is used for the i18n value for the label.\n // Special cases of translation: in single quotes, use the literal string instead\n // of a i18n translation; if starting with a slash, use the value as an i18n key\n // literally, instead of appending it to \"message.metadata.\"\n track: Array,\n itemstyles: String,\n interpretTranslateKey: Function\n },\n components: {\n AppLink\n },\n methods: {\n truncate,\n removeMailtoOrTel,\n getLabel(v) {\n const prefix = \"message.metadata\";\n if (typeof v.translation === 'string') {\n return this.interpretTranslateKey(v.translation, prefix);\n }\n return `${this.i18n.global.t(`${prefix}.${v.key}`)}:`;\n },\n isLink(v) {\n const key = v.key.toLowerCase();\n const type = v.type?.toLowerCase();\n return ['homepage'].includes(key) || type === 'link' || type === 'link_blank';//|| key.endsWith('url') || key.endsWith('uri');\n },\n displayValue(item, type) {\n switch(type) {\n case 'date': return dateFilters.formatEU(item);\n default:\n return typeof item === 'string'? truncate(item, 75) : item;\n }\n },\n handleClick(item, v) {\n const key = v.key.toLowerCase();\n if (this.track && this.track.includes(key)) {\n this.$emit('track-link', item, 'link');\n }\n }\n }\n}\n</script>\n\n<style scoped>\n .dsd-properties-inner-label {\n white-space: pre;\n }\n</style>\n"],"names":["_sfc_main","AppLink","truncate","removeMailtoOrTel","v","prefix","key","type","_a","item","dateFilters","_hoisted_1","_hoisted_2","_hoisted_4","_createElementBlock","_openBlock","_Fragment","_renderList","$props","i","_normalizeClass","_createElementVNode","_toDisplayString","$options","j","_createBlock","_component_app_link","_createTextVNode","$event","_hoisted_3"],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ const a = `releaseDate,modificationDate,creator,landingPages,sources,
|
|
|
20
20
|
conformsTo: { type: "objects", fields: "title::label,label,resource:link_blank", track: "resource" },
|
|
21
21
|
provenances: { type: "objects", translate: "provenance,provenances", fields: "label,resource:link" },
|
|
22
22
|
// relatedResources: {type: 'links', translate: 'relatedResource,relatedResources'},
|
|
23
|
-
identifiers: { type: "
|
|
23
|
+
identifiers: { type: "string", translate: "identifier,identifiers" },
|
|
24
24
|
otherIdentifiers: { type: "objects", translate: "otherIdentifier,otherIdentifiers", fields: "identifier:link,resource:link:identifier,scheme:link" },
|
|
25
25
|
resource: { type: "uri", translate: ",'uriRef:'" },
|
|
26
26
|
frequency: { type: "object", fields: "title,resource:link" },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specification.mjs","sources":["../../../lib/datasetDetails/properties/specification.ts"],"sourcesContent":["export const dcatFields = `releaseDate,modificationDate,creator,landingPages,sources,\n languages,publisher,contactPoints,catalogRecord,spatial,\n spatialResource,conformsTo,provenances,identifiers,otherIdentifiers,resource,\n frequency,accessRights,accrualPeriodicity,hasVersion,isVersionOf,\n temporal,versionInfo,versionNotes,attributes,dimensions,numSeries,hasQualityAnnotations,\n statUnitMeasures,isReferencedBy,qualifiedAttributions,wasGeneratedBy,\n qualifiedRelations,sample,spatialResolutionInMeters,type,temporalResolution`;\n\nexport const dcatDeFields = `politicalGeocodingLevelURI,politicalGeocodingURI,availability,\n contributorID,geocodingDescriptionDe,legalBasis,qualityProcessURI,typeDe,\n references,contributor,originator,maintainer`;\n\n/*\n Below we have schemata describing how properties should be rendered in DatasetDatailsProperties.vue. A schema is\n an object where keys correspond to the above defined fields. For each key, the value is an object the format of which\n we will now describe:\n\n - type: is the the only required property. Will be evaluated in typeCheckers.ts. It reflects the format of the\n data item (CALLED \"response\" BELOW!) retrieved by from the search network response (number, string, url, array, object, array of objects).\n Supported values are:\n * \"number\": response is a single number\n * \"first:number\": render response[0] as a number\n * \"string\": response a simple string\n * \"uri\": response a simple string, rendered as a link\n * \"date\": response a simple string, formatted as a date conforming to the current locale\n * \"translation\": response an object containing locale keys (like \"en\", \"de\"). The value corresponding to the\n current locale is rendered\n * \"object\": response an object whose where each key-value pair is rendered on a separate line\n * \"array\": response an array whose elements are rendered vertically\n * \"links\": reponse either an array of uri-strings rendered as links, or an\n array of objects with a label field that is displayed as a link and another field\n holding the href; that other field is either resource, label or id\n\n - translate: for a property \"xxx\", we have a bold label and tooltip to the left which comes from\n an i18n translation; the default i18n keys are: message.tooltip.datasetDetails.xxx for the tooltip and\n message.metadata.xxx for the displayed label. if instead of xxx, you want to use another key (with the same prefixes),\n translate can provide it. If translate is two strings separated by commas, the left one applies to the tooltip, the right\n to the label. Instead of just a replacement for xxx, you can provide i18n keys without the prefixes by starting the string with\n a slash (example: translate:\"/message.tooltip.yyy,/message.mykey.mylabelkey\"). Instead of translation keys, you can also\n provide literal values as tooltip or label by enclosing the strings in single quotes.\n\n - fields: for objects and arrays of objects, this comma-separated value indicates, what keys of the objects should\n be used for display (filtering out any additional data in the object). If not present, all existent keys will be used.\n A key given in this comma separated list can be of the form \"x\": just a key, or of the form \"x:y\": key x of type y (where\n the type is any of \"link\", \"link_blank\", \"date\" or empty; accordingly, a link (possibly target=\"_blank\") or date will be displayed).\n Also the form \"x:y:z\" is possible, where z is an indication how to translate the key for rendering. If z does not exist,\n the i18n key message.metadata.x will be translated; if z exists, we use message.metadata.z instead. The additional properties for\n \"translate\" above can also be applied to z: leading slash or single quotes.\n\n - track: enable Matomo tracking for a link. track is a string value indicating the key of the data object for which\n tracking should be enabled.\n\n - itemstyles: a string of CSS properties that applies to key-value items of a rendered object\n\n - transform: a function that maps the data to be rendered. Applies after the data has been processed in the value-method of\n DatsetDetailsProperty.vue\n\n - preTransform: same as transform, only applied to the raw data value before processing in the value-method\n\n */\n\nexport const dcatSchema = (t) => ({\n releaseDate: {type: 'date', translate: 'created'},\n modificationDate: {type: 'date', translate: 'updated'},\n landingPages: {type: 'links', translate: 'landingPage'},\n sources: {type: 'links', translate:',sources'},\n languages: {type: 'links', translate: 'language,languages'},\n publisher: {type: 'object', fields: 'name,email,homepage'},\n contactPoints: {type: 'objects', translate:\"/message.tooltip.contactPoints,contactPoints\", fields: \"name::/message.metadata.name,organisation_name::/message.datasetDetails.contactPoints.organizationName, email,telephone,address,url:link\"},\n catalogRecord: {type: 'object', translate:\"/message.tooltip.catalogRecord,catalogRecord\", fields: \"issued:date:addedToDataEuropaEU,modified:date:updatedOnDataEuropaEU,homepage\"},\n spatial: {type: 'objects', fields: \"coordinates,type\"},\n spatialResource: {type: 'objects', translate:\",spatialResource\", fields: \"resource:link\"},\n conformsTo: {type: 'objects', fields: \"title::label,label,resource:link_blank\", track:\"resource\"},\n provenances: {type: 'objects', translate: 'provenance,provenances', fields: \"label,resource:link\"},\n // relatedResources: {type: 'links', translate: 'relatedResource,relatedResources'},\n identifiers: {type: 'links', translate: 'identifier,identifiers'},\n otherIdentifiers: {type: 'objects', translate: 'otherIdentifier,otherIdentifiers', fields:\"identifier:link,resource:link:identifier,scheme:link\"},\n resource: {type: 'uri', translate: \",'uriRef:'\"},\n frequency: {type: 'object', fields:\"title,resource:link\"},\n accessRights: {type: 'object', translate:\"/message.tooltip.datasetDetails.distributions.rights,accessRights\", fields:\"label::\"},\n accrualPeriodicity: {type: 'object', translate:\"frequency,accrualPeriodicity\", fields:\"label::\"},\n creator: {type: 'object', fields:\"name,email,homepage\"},\n hasVersion: {type: 'links'},\n isVersionOf: {type: 'links', translate:\"versionOf,isVersionOf\"},\n temporal: {type: 'objects', translate:\"/message.tooltip.datasetDetails.distributions.temporalResolution,temporal\", fields: \"gte:date:,lte:date:' -'\", itemstyles:\"float:left\"},\n versionInfo: {type: 'string'},\n versionNotes: {type: 'translation'},\n attributes: {type: 'links', translate:\",attributes\"},\n dimensions: {type: 'links', translate:\",dimensions\"},\n numSeries: {type: 'number'},\n hasQualityAnnotations: {type: 'links', translate: \",qualityAnnotations\"},\n statUnitMeasures: {type: 'links', translate: \"unitsOfMeasurement\"},\n isReferencedBy: {type: 'links'},\n qualifiedAttributions: {type: 'links', translate: \"qualifiedAttribution\"},\n wasGeneratedBy: {type: 'links'},\n qualifiedRelations: {type: 'objects', translate: \"qualifiedRelation\", fields: \"relation:link,had_role:link:role\"},\n sample: {type: 'links'},\n spatialResolutionInMeters: {\n type: 'number', translate: \"spatialResolutionInMeters,spatialResolutionInMeters.label\",\n transform: value => t('message.metadata.spatialResolutionInMeters.value', {number: value})\n },\n type: {type: 'object', fields: \"label,resource:link\"},\n temporalResolution: {type: 'string'}\n});\n\nexport const dcatDeSchema = () => ({\n politicalGeocodingLevelURI: {type: 'objects', fields:\"label,resource:link\"},\n politicalGeocodingURI: {type: 'objects', fields:\"label,resource:link\"},\n availability: {type: 'object', translate:\"availabilityDE,availability\", fields:\"label,resource:link\"},\n contributorID: {type: 'objects', fields:\"label,resource:link\"},\n geocodingDescriptionDe: {type: 'translation'},\n legalBasis: {type: 'translation'},\n qualityProcessURI: {type: 'uri'},\n typeDe: {type: 'string', translate:\"type,type\"},\n references: {type: 'uri'},\n contributor: {type: 'objects', fields:\"name,type,homepage,email,resource\"},\n originator: {type: 'objects', fields:\"name,type,homepage,email,resource\"},\n maintainer: {type: 'objects', fields:\"name,type,homepage,email,resource\"}\n});\n"],"names":["dcatFields","dcatDeFields","dcatSchema","t","value","dcatDeSchema"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"specification.mjs","sources":["../../../lib/datasetDetails/properties/specification.ts"],"sourcesContent":["export const dcatFields = `releaseDate,modificationDate,creator,landingPages,sources,\n languages,publisher,contactPoints,catalogRecord,spatial,\n spatialResource,conformsTo,provenances,identifiers,otherIdentifiers,resource,\n frequency,accessRights,accrualPeriodicity,hasVersion,isVersionOf,\n temporal,versionInfo,versionNotes,attributes,dimensions,numSeries,hasQualityAnnotations,\n statUnitMeasures,isReferencedBy,qualifiedAttributions,wasGeneratedBy,\n qualifiedRelations,sample,spatialResolutionInMeters,type,temporalResolution`;\n\nexport const dcatDeFields = `politicalGeocodingLevelURI,politicalGeocodingURI,availability,\n contributorID,geocodingDescriptionDe,legalBasis,qualityProcessURI,typeDe,\n references,contributor,originator,maintainer`;\n\n/*\n Below we have schemata describing how properties should be rendered in DatasetDatailsProperties.vue. A schema is\n an object where keys correspond to the above defined fields. For each key, the value is an object the format of which\n we will now describe:\n\n - type: is the the only required property. Will be evaluated in typeCheckers.ts. It reflects the format of the\n data item (CALLED \"response\" BELOW!) retrieved by from the search network response (number, string, url, array, object, array of objects).\n Supported values are:\n * \"number\": response is a single number\n * \"first:number\": render response[0] as a number\n * \"string\": response a simple string\n * \"uri\": response a simple string, rendered as a link\n * \"date\": response a simple string, formatted as a date conforming to the current locale\n * \"translation\": response an object containing locale keys (like \"en\", \"de\"). The value corresponding to the\n current locale is rendered\n * \"object\": response an object whose where each key-value pair is rendered on a separate line\n * \"array\": response an array whose elements are rendered vertically\n * \"links\": reponse either an array of uri-strings rendered as links, or an\n array of objects with a label field that is displayed as a link and another field\n holding the href; that other field is either resource, label or id\n\n - translate: for a property \"xxx\", we have a bold label and tooltip to the left which comes from\n an i18n translation; the default i18n keys are: message.tooltip.datasetDetails.xxx for the tooltip and\n message.metadata.xxx for the displayed label. if instead of xxx, you want to use another key (with the same prefixes),\n translate can provide it. If translate is two strings separated by commas, the left one applies to the tooltip, the right\n to the label. Instead of just a replacement for xxx, you can provide i18n keys without the prefixes by starting the string with\n a slash (example: translate:\"/message.tooltip.yyy,/message.mykey.mylabelkey\"). Instead of translation keys, you can also\n provide literal values as tooltip or label by enclosing the strings in single quotes.\n\n - fields: for objects and arrays of objects, this comma-separated value indicates, what keys of the objects should\n be used for display (filtering out any additional data in the object). If not present, all existent keys will be used.\n A key given in this comma separated list can be of the form \"x\": just a key, or of the form \"x:y\": key x of type y (where\n the type is any of \"link\", \"link_blank\", \"date\" or empty; accordingly, a link (possibly target=\"_blank\") or date will be displayed).\n Also the form \"x:y:z\" is possible, where z is an indication how to translate the key for rendering. If z does not exist,\n the i18n key message.metadata.x will be translated; if z exists, we use message.metadata.z instead. The additional properties for\n \"translate\" above can also be applied to z: leading slash or single quotes.\n\n - track: enable Matomo tracking for a link. track is a string value indicating the key of the data object for which\n tracking should be enabled.\n\n - itemstyles: a string of CSS properties that applies to key-value items of a rendered object\n\n - transform: a function that maps the data to be rendered. Applies after the data has been processed in the value-method of\n DatsetDetailsProperty.vue\n\n - preTransform: same as transform, only applied to the raw data value before processing in the value-method\n\n */\n\nexport const dcatSchema = (t) => ({\n releaseDate: {type: 'date', translate: 'created'},\n modificationDate: {type: 'date', translate: 'updated'},\n landingPages: {type: 'links', translate: 'landingPage'},\n sources: {type: 'links', translate:',sources'},\n languages: {type: 'links', translate: 'language,languages'},\n publisher: {type: 'object', fields: 'name,email,homepage'},\n contactPoints: {type: 'objects', translate:\"/message.tooltip.contactPoints,contactPoints\", fields: \"name::/message.metadata.name,organisation_name::/message.datasetDetails.contactPoints.organizationName, email,telephone,address,url:link\"},\n catalogRecord: {type: 'object', translate:\"/message.tooltip.catalogRecord,catalogRecord\", fields: \"issued:date:addedToDataEuropaEU,modified:date:updatedOnDataEuropaEU,homepage\"},\n spatial: {type: 'objects', fields: \"coordinates,type\"},\n spatialResource: {type: 'objects', translate:\",spatialResource\", fields: \"resource:link\"},\n conformsTo: {type: 'objects', fields: \"title::label,label,resource:link_blank\", track:\"resource\"},\n provenances: {type: 'objects', translate: 'provenance,provenances', fields: \"label,resource:link\"},\n // relatedResources: {type: 'links', translate: 'relatedResource,relatedResources'},\n identifiers: {type: 'string', translate: 'identifier,identifiers'},\n otherIdentifiers: {type: 'objects', translate: 'otherIdentifier,otherIdentifiers', fields:\"identifier:link,resource:link:identifier,scheme:link\"},\n resource: {type: 'uri', translate: \",'uriRef:'\"},\n frequency: {type: 'object', fields:\"title,resource:link\"},\n accessRights: {type: 'object', translate:\"/message.tooltip.datasetDetails.distributions.rights,accessRights\", fields:\"label::\"},\n accrualPeriodicity: {type: 'object', translate:\"frequency,accrualPeriodicity\", fields:\"label::\"},\n creator: {type: 'object', fields:\"name,email,homepage\"},\n hasVersion: {type: 'links'},\n isVersionOf: {type: 'links', translate:\"versionOf,isVersionOf\"},\n temporal: {type: 'objects', translate:\"/message.tooltip.datasetDetails.distributions.temporalResolution,temporal\", fields: \"gte:date:,lte:date:' -'\", itemstyles:\"float:left\"},\n versionInfo: {type: 'string'},\n versionNotes: {type: 'translation'},\n attributes: {type: 'links', translate:\",attributes\"},\n dimensions: {type: 'links', translate:\",dimensions\"},\n numSeries: {type: 'number'},\n hasQualityAnnotations: {type: 'links', translate: \",qualityAnnotations\"},\n statUnitMeasures: {type: 'links', translate: \"unitsOfMeasurement\"},\n isReferencedBy: {type: 'links'},\n qualifiedAttributions: {type: 'links', translate: \"qualifiedAttribution\"},\n wasGeneratedBy: {type: 'links'},\n qualifiedRelations: {type: 'objects', translate: \"qualifiedRelation\", fields: \"relation:link,had_role:link:role\"},\n sample: {type: 'links'},\n spatialResolutionInMeters: {\n type: 'number', translate: \"spatialResolutionInMeters,spatialResolutionInMeters.label\",\n transform: value => t('message.metadata.spatialResolutionInMeters.value', {number: value})\n },\n type: {type: 'object', fields: \"label,resource:link\"},\n temporalResolution: {type: 'string'}\n});\n\nexport const dcatDeSchema = () => ({\n politicalGeocodingLevelURI: {type: 'objects', fields:\"label,resource:link\"},\n politicalGeocodingURI: {type: 'objects', fields:\"label,resource:link\"},\n availability: {type: 'object', translate:\"availabilityDE,availability\", fields:\"label,resource:link\"},\n contributorID: {type: 'objects', fields:\"label,resource:link\"},\n geocodingDescriptionDe: {type: 'translation'},\n legalBasis: {type: 'translation'},\n qualityProcessURI: {type: 'uri'},\n typeDe: {type: 'string', translate:\"type,type\"},\n references: {type: 'uri'},\n contributor: {type: 'objects', fields:\"name,type,homepage,email,resource\"},\n originator: {type: 'objects', fields:\"name,type,homepage,email,resource\"},\n maintainer: {type: 'objects', fields:\"name,type,homepage,email,resource\"}\n});\n"],"names":["dcatFields","dcatDeFields","dcatSchema","t","value","dcatDeSchema"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatasetDate.vue.mjs","sources":["../../lib/datasets/DatasetDate.vue"],"sourcesContent":["<template>\n <span\n class=\"d-inline-block\"\n :title=\"\n isIncorrectDate()\n ? 'This date is incorrect or incomplete, please contact the data provider.'\n : null\n \"\n >\n <span :class=\"{ 'date-incorrect': isIncorrectDate() }\" class=\"mr-1\">{{ filterDateFormatEU }}</span>\n <font-awesome-icon\n v-if=\"isIncorrectDate()\"\n class=\"date-incorrect-exclamation-triangle\"\n :icon=\"['fas', 'exclamation-triangle']\"\n />\n </span>\n</template>\n\n<script>\n import { mapActions } from 'vuex';\n import dayjs from 'dayjs';\n import dateFilters from '../filters/dateFilters';\n\n export default {\n props: ['date', 'toolTipTitle'],\n computed: {\n filterDateFormatUS() {\n return dateFilters.formatUS(this.date);\n },\n filterDateFormatEU() {\n return dateFilters.formatEU(this.date);\n },\n },\n methods: {\n ...mapActions('datasetDetails', [\n 'setDateIncorrect',\n ]),\n // Checks date plausibility. Returns true, if the date is not plausible.\n isIncorrectDate() {\n // Falsy dates are considered as intentionally blank and are correct.\n if (!this.date) return false;\n const m = dayjs(String(this.date));\n if (!m.isValid()) {\n this.setDateIncorrect();\n return true;\n }\n\n // Dates in the future are incorrect.\n if (dayjs().diff(m) < 0) {\n this.setDateIncorrect();\n return true;\n }\n\n return false;\n },\n },\n mounted() {\n this.$nextTick(() => {\n // To force event emit\n this.isIncorrectDate();\n });\n },\n };\n</script>\n\n<style lang=\"scss\" scoped>\n.date-incorrect {\n color: #a1a1a1;\n}\n\n.date-incorrect-exclamation-triangle {\n color: #ffaa00;\n}\n</style>\n"],"names":["_sfc_main","dateFilters","mapActions","m","dayjs","
|
|
1
|
+
{"version":3,"file":"DatasetDate.vue.mjs","sources":["../../lib/datasets/DatasetDate.vue"],"sourcesContent":["<template>\n <span\n class=\"d-inline-block\"\n :title=\"\n isIncorrectDate()\n ? 'This date is incorrect or incomplete, please contact the data provider.'\n : null\n \"\n >\n <span :class=\"{ 'date-incorrect': isIncorrectDate() }\" class=\"mr-1\">{{ filterDateFormatEU }}</span>\n <font-awesome-icon\n v-if=\"isIncorrectDate()\"\n class=\"date-incorrect-exclamation-triangle\"\n :icon=\"['fas', 'exclamation-triangle']\"\n />\n </span>\n</template>\n\n<script>\n import { mapActions } from 'vuex';\n import dayjs from 'dayjs';\n import dateFilters from '../filters/dateFilters';\n\n export default {\n props: ['date', 'toolTipTitle'],\n computed: {\n filterDateFormatUS() {\n return dateFilters.formatUS(this.date);\n },\n filterDateFormatEU() {\n return dateFilters.formatEU(this.date);\n },\n },\n methods: {\n ...mapActions('datasetDetails', [\n 'setDateIncorrect',\n ]),\n // Checks date plausibility. Returns true, if the date is not plausible.\n isIncorrectDate() {\n // Falsy dates are considered as intentionally blank and are correct.\n if (!this.date) return false;\n const m = dayjs(String(this.date));\n if (!m.isValid()) {\n this.setDateIncorrect();\n return true;\n }\n\n // Dates in the future are incorrect.\n if (dayjs().diff(m) < 0) {\n this.setDateIncorrect();\n return true;\n }\n\n return false;\n },\n },\n mounted() {\n this.$nextTick(() => {\n // To force event emit\n this.isIncorrectDate();\n });\n },\n };\n</script>\n\n<style lang=\"scss\" scoped>\n.date-incorrect {\n color: #a1a1a1;\n}\n\n.date-incorrect-exclamation-triangle {\n color: #ffaa00;\n}\n</style>\n"],"names":["_sfc_main","dateFilters","mapActions","m","dayjs","_createElementBlock","$options","_createElementVNode","_normalizeClass","_createBlock","_component_font_awesome_icon"],"mappings":";;;;;;AAuBE,MAAKA,IAAU;AAAA,EACb,OAAO,CAAC,QAAQ,cAAc;AAAA,EAC9B,UAAU;AAAA,IACR,qBAAqB;AACnB,aAAOC,EAAY,SAAS,KAAK,IAAI;AAAA,IACtC;AAAA,IACD,qBAAqB;AACnB,aAAOA,EAAY,SAAS,KAAK,IAAI;AAAA,IACtC;AAAA,EACF;AAAA,EACD,SAAS;AAAA,IACP,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,IACF,CAAC;AAAA;AAAA,IAED,kBAAkB;AAEhB,UAAI,CAAC,KAAK;AAAM,eAAO;AACvB,YAAMC,IAAIC,EAAM,OAAO,KAAK,IAAI,CAAC;AACjC,aAAKD,EAAE,YAMHC,EAAK,EAAG,KAAKD,CAAC,IAAI,KACpB,KAAK,iBAAgB,GACd,MAGF,MAVL,KAAK,iBAAgB,GACd;AAAA,IAUV;AAAA,EACF;AAAA,EACD,UAAU;AACR,SAAK,UAAU,MAAM;AAEnB,WAAK,gBAAe;AAAA,IACtB,CAAC;AAAA,EACF;;;;cA5DHE,EAcO,QAAA;AAAA,IAbL,OAAM;AAAA,IACL,OAAcC,EAAe,gBAAA;;IAM9BC,EAAmG,QAAA;AAAA,MAA5F,OAAKC,EAAA,CAAA,EAAA,kBAAsBF,EAAe,gBAAA,EAAA,GAAY,MAAM,CAAA;AAAA,SAAIA,EAAkB,kBAAA,GAAA,CAAA;AAAA;IAEjFA,EAAe,gBAAA,UADvBG,EAIEC,GAAA;AAAA;MAFA,OAAM;AAAA,MACL,MAAM,CAA+B,OAAA,sBAAA;AAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatasetList.vue.mjs","sources":["../../lib/datasets/DatasetList.vue"],"sourcesContent":["<template>\n <component :is=\"as\">\n <template v-for=\"(dataset, idx) in computedDatasets\">\n <slot :dataset=\"dataset\" :raw-dataset=\"datasets[idx]\" :index=\"idx\">\n <pv-data-info-box\n :key=\"dataset.id\"\n :to=\"`/datasets/${dataset.id}`\"\n :src=\"dataset.src\"\n :dataset=\"dataset.dataset\"\n :description-max-length=\"1000\"\n :data-cy=\"`dataset@${dataset.id}`\"\n class=\"mt-3\"\n />\n </slot>\n </template>\n </component>\n</template>\n\n<script lang=\"ts\" setup>\nimport PvDataInfoBox from '../PvDataInfoBox/PvDataInfoBox.vue'\n\nimport { useDataInfoBox } from '../composables/useDataInfoBox';\n\nconst props = withDefaults(defineProps<{\n as?: string;\n datasets: any;\n locale: string;\n}>(), {\n as: 'div'\n})\n\nconst computedDatasets = useDataInfoBox({ \n datasets: props.datasets,\n locale: props.locale\n })\n</script>\n\n<style lang=\"scss\" scoped>\n\n</style>"],"names":["props","__props","computedDatasets","useDataInfoBox"],"mappings":";;;;;;;;;;;AAuBA,UAAMA,IAAQC,GAQRC,IAAmBC,EAAe;AAAA,MACtC,UAAUH,EAAM;AAAA,MAChB,QAAQA,EAAM;AAAA,IAAA,CACd
|
|
1
|
+
{"version":3,"file":"DatasetList.vue.mjs","sources":["../../lib/datasets/DatasetList.vue"],"sourcesContent":["<template>\n <component :is=\"as\">\n <template v-for=\"(dataset, idx) in computedDatasets\">\n <slot :dataset=\"dataset\" :raw-dataset=\"datasets[idx]\" :index=\"idx\">\n <pv-data-info-box\n :key=\"dataset.id\"\n :to=\"`/datasets/${dataset.id}`\"\n :src=\"dataset.src\"\n :dataset=\"dataset.dataset\"\n :description-max-length=\"1000\"\n :data-cy=\"`dataset@${dataset.id}`\"\n class=\"mt-3\"\n />\n </slot>\n </template>\n </component>\n</template>\n\n<script lang=\"ts\" setup>\nimport PvDataInfoBox from '../PvDataInfoBox/PvDataInfoBox.vue'\n\nimport { useDataInfoBox } from '../composables/useDataInfoBox';\n\nconst props = withDefaults(defineProps<{\n as?: string;\n datasets: any;\n locale: string;\n}>(), {\n as: 'div'\n})\n\nconst computedDatasets = useDataInfoBox({ \n datasets: props.datasets,\n locale: props.locale\n })\n</script>\n\n<style lang=\"scss\" scoped>\n\n</style>"],"names":["props","__props","computedDatasets","useDataInfoBox","_openBlock","_createBlock","_resolveDynamicComponent","as","_createElementBlock","_Fragment","_renderList","_unref","dataset","idx","_renderSlot","_ctx","datasets","PvDataInfoBox"],"mappings":";;;;;;;;;;;AAuBA,UAAMA,IAAQC,GAQRC,IAAmBC,EAAe;AAAA,MACtC,UAAUH,EAAM;AAAA,MAChB,QAAQA,EAAM;AAAA,IAAA,CACd;sBAjCAI,EAAA,GAAAC,EAcYC,EAdIC,EAAE,EAAA,GAAA,MAAA;AAAA,iBACN,MAA0C;AAAA,SAApDH,EAAA,EAAA,GAAAI,EAYWC,GAZwB,MAAAC,EAAAC,EAAAT,CAAA,GAAjB,CAAAU,GAASC,MACzBC,EAUOC,EAAA,QAAA,WAAA;AAAA,UAVA,SAAAH;AAAA,UAAmB,YAAaI,EAAQ,SAACH,CAAG;AAAA,UAAI,OAAOA;AAAA,QAAA,GAA9D,MAUO;AAAA,aATL,GAAAR,EAQEY,GAAA;AAAA,YAPC,KAAKL,EAAQ;AAAA,YACb,IAAE,aAAeA,EAAQ,EAAE;AAAA,YAC3B,KAAKA,EAAQ;AAAA,YACb,SAASA,EAAQ;AAAA,YACjB,0BAAwB;AAAA,YACxB,WAAO,WAAaA,EAAQ,EAAE;AAAA,YAC/B,OAAM;AAAA,UAAA;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Datasets.vue.mjs","sources":["../../lib/datasets/Datasets.vue"],"sourcesContent":["<template>\n <div class=\"datasets-container d-flex flex-column p-0 bg-transparent\">\n <datasets-top-controls\n :facets=\"facets\"\n :getPage=\"getPage\"\n :getLimit=\"getLimit\"\n class=\"datasets-top-controls\"\n />\n <div class=\"container-fluid datasets content\">\n <slot name=\"title\">\n <h1 class=\"row col-12 page-title catalog-title text-primary\" v-if=\"showCatalogDetails\">\n {{ getTranslationFor(getCatalog.title, $route.query.locale, getCatalog.languages) }}</h1>\n <h1 class=\"row col-12 page-title text-primary\" v-else>{{ $t('message.header.navigation.data.datasets') }}</h1>\n </slot>\n <slot\n name=\"content\"\n :datasets-count=\"getDatasetsCount\"\n :datasets=\"getDatasets\"\n :locale=\"$route.query.locale\"\n :loading=\"getLoading\"\n :use-dataset-facets=\"useDatasetFacets\"\n :facets=\"getFacets\"\n :available-facets=\"getAllAvailableFacets\"\n >\n <div class=\"row\">\n <div class=\"col d-flex d-md-none justify-content-end flex-wrap\">\n <button class=\"btn btn-primary mb-3 text-right text-white\" data-toggle=\"collapse\"\n data-target=\"#datasetFacets\" data-cy=\"btn-filter-toggle\"\n @click=\"filterCollapsed = !filterCollapsed\">\n <i class=\"material-icons small-icon align-bottom\" v-if=\"filterCollapsed\">arrow_drop_up</i>\n <i class=\"material-icons small-icon align-bottom\" v-else>arrow_drop_down</i>\n </button>\n </div>\n <datasets-facets\n v-if=\"useDatasetFacets\"\n class=\"col-md-3 col-12 mb-3 mb-md-0 px-0 collapse\" id=\"datasetFacets\"\n :dataScope=\"dataScope\"\n :available-facets=\"getAllAvailableFacets\"\n ></datasets-facets>\n<!-- <facets-->\n<!-- :facetsConfig=\"getAllAvailableFacets\"-->\n<!-- :facetsIds=\"$env.content.datasets.facets.defaultFacetOrder\"-->\n<!-- class=\"col-md-3 col-12 mb-3 mb-md-0 px-0 collapse\"-->\n<!-- id=\"datasetFacets\">-->\n<!-- </facets>-->\n <section class=\"col-md-9 col-12\">\n <slot name=\"datasets-filters\">\n <datasets-filters/>\n </slot>\n <slot name=\"datasets-found\" :data=\"{\n loading: getLoading,\n datasetsCount: getDatasetsCount,\n datasetsCountFormatted: getDatasetsCount.toLocaleString('fi'),\n loadingMessage: $t('message.datasets.loadingMessage'),\n countMessage: $t('message.datasets.countMessage'),\n }\">\n <div class=\"datasets-found alert alert-primary mt-3 d-flex flex-row\" role=\"status\"\n :class=\"{ 'alert-danger': getDatasetsCount <= 0 && !getLoading}\">\n <div>\n {{\n getLoading ? $t('message.datasets.loadingMessage') : `${getDatasetsCount.toLocaleString('fi')}\n ${$t('message.datasets.countMessage')}`\n }}\n </div>\n <div class=\"loading-spinner ml-3\" v-if=\"getLoading\"></div>\n </div>\n </slot>\n <div class=\"alert alert-warning mt-3 d-flex flex-row\" v-if=\"showScoreDisclaimer\">\n <span>\n {{ $t(\"message.datasets.scoreDisclaimer\") }}\n <app-link path=\"/mqa\" :query=\"{ locale: $route.query.locale }\" target=\"_blank\">\n <span>{{ $t(\"message.metadata.methodologyPage\") }}</span>\n </app-link>\n </span>\n </div>\n <!--\n <div class=\"alert alert-info mt-3\" v-if=\"getGeoBoundsById('modal-map')\">\n {{`${$t('message.datasets.geoBoundsMessagePre')}`}}<strong>{{getGeoBoundsById('modal-map')}}</strong>{{`. ${$t('message.datasets.geoBoundsMessageRemove')}`}}\n <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-label=\"Close\" @click=\"resetGeoBounds('modal-map'); loadDatasets({})\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n -->\n <selectedFacetsOverview\n v-if=\"getFacets\"\n :selected-facets=\"getFacets\"\n :available-facets=\"getAllAvailableFacets\"\n >\n </selectedFacetsOverview>\n <template v-if=\"!getLoading\">\n <dataset-list :datasets=\"getDatasets\" :locale=\"$route.query.locale || 'en'\"></dataset-list>\n </template>\n <div class=\"loading-spinner mx-auto mt-3 mb-3\" v-if=\"getLoading\"></div>\n </section>\n </div>\n </slot>\n <div class=\"row\">\n <div class=\"column col-12 col-md-9 offset-md-3\">\n <pagination class=\"mt-3\"\n :items-count=\"getDatasetsCount\"\n :items-per-page=\"getLimit\"\n :get-page=\"getPage\"\n :get-page-count=\"getPageCount\"\n @setPageLimit=\"setPageLimit\"></pagination>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n /* eslint-disable no-undef */\n import { mapActions, mapGetters } from 'vuex';\n import {\n debounce,\n has,\n groupBy,\n uniqBy,\n toPairs,\n isArray,\n isNil,\n } from 'lodash-es';\n import $ from 'jquery';\n import fileTypes from '../utils/fileTypes';\n import Pagination from '../widgets/Pagination.vue';\n import SelectedFacetsOverview from '../facets/SelectedFacetsOverview';\n import AppLink from '../widgets/AppLink.vue';\n import { getTranslationFor, truncate, getImg } from '../utils/helpers';\n import DatasetsTopControls from \"../datasets/DatasetsTopControls.vue\";\n import DatasetsFilters from \"../datasets/DatasetsFilters.vue\";\n import DatasetList from './DatasetList.vue'\n import { useDatasetsHead } from '../composables/head'\n // import Facets from \"../facets_2.0/Facets.vue\"\n import DatasetsFacets from './datasetsFacets/DatasetsFacets.vue';\nexport default {\n name: 'Datasets',\n components: {\n DatasetsFilters,\n DatasetsTopControls,\n appLink: AppLink,\n selectedFacetsOverview: SelectedFacetsOverview,\n datasetsFacets: DatasetsFacets,\n pagination: Pagination,\n DatasetList,\n // Facets\n },\n props: {\n infiniteScrolling: {\n type: Boolean,\n default: false,\n },\n /**\n * @description Sets the catalog filter to a fixed catalog id. Disables the catalog facet and hides the facet in the selected facets overview.\n * @dev Use this prop if you want to use this component in a catalog page context where the catalog is already known (e.g., provider's page).\n */\n fixedCatalogFilter: {\n type: String,\n default: '',\n }\n },\n data() {\n return {\n baseUrl: this.$env.api.baseUrl,\n debouncedOnBottomScroll: debounce(this.onBottomScroll, 500),\n facetFields: [],\n lang: this.locale,\n filterCollapsed: true,\n catalogAllowed: false,\n useDatasetFacets: this.$env.content.datasets.facets.useDatasetFacets\n };\n },\n computed: {\n ...mapGetters('catalogDetails', [\n 'getCatalog',\n ]),\n ...mapGetters('datasets', [\n 'getDatasets',\n 'getDatasetsCount',\n 'getLimit',\n 'getLoading',\n 'getOffset',\n 'getPage',\n 'getPageCount',\n 'getMinScoring',\n ]),\n ...mapGetters('datasets', {\n // Rename getters to something different because we'll perform some modifications on them.\n // These modifications involve removing catalog related information from facets for fixed catalog filter mode\n getAllAvailableFacetsOriginal: 'getAllAvailableFacets',\n getFacetsOriginal: 'getFacets',\n }),\n showCatalogDetails() {\n return !isNil(this.$route.params.ctlg_id) || this.fixedCatalogFilter;\n },\n /**\n * @description Returns the current page.\n * @returns {Number}\n *\n * @deprecated use getPage from datasets store instead\n */\n page() {\n return this.$route.query.page;\n },\n /**\n * @description Returns the active facets according to the route parameters.\n * @returns {Object}\n */\n facets() {\n const facetFields = this.$env.content.datasets.facets.defaultFacetOrder;\n const wantsToLoadCatalogByParamOrProp = this.showCatalogDetails;\n\n const facetObj = facetFields.reduce((acc, field) => {\n acc[field] = (wantsToLoadCatalogByParamOrProp && field === 'catalog' && !this.fixedCatalogFilter)\n ? [this.$route.params.ctlg_id || undefined]\n : this.getUrlFacetsOrDefault(field);\n\n return acc;\n }, {});\n\n // if fixedCatalogFilter is set, then set it as superCatalog\n // requirement by bayern\n const facetObjWithMaybeDefaultSuperCatalog = this.fixedCatalogFilter\n ? {\n ...facetObj,\n superCatalog: [this.fixedCatalogFilter],\n }\n : facetObj;\n\n return facetObjWithMaybeDefaultSuperCatalog;\n },\n\n getAllAvailableFacets() {\n return this.showCatalogDetails\n ? this.getAllAvailableFacetsOriginal.filter(facet => facet.id !== 'catalog')\n : this.getAllAvailableFacetsOriginal;\n },\n\n getFacets() {\n // Returns a record of facets with the catalog facet removed if we're in fixed catalog filter mode\n return this.showCatalogDetails\n ? {\n ...this.getFacetsOriginal,\n catalog: []\n }\n : this.getFacetsOriginal;\n },\n\n currentSearchQuery() {\n return this.$route.query.query;\n },\n showScoreDisclaimer() {\n return this.getMinScoring > 0;\n },\n dataScope() {\n if (!this.$route.query.dataScope) return null;\n if (isArray(this.$route.query.dataScope) && this.$route.query.dataScope.length > 0) return this.$route.query.dataScope[0];\n if (isArray(this.$route.query.dataScope) && this.$route.query.dataScope.length === 0) return null;\n return this.$route.query.dataScope;\n },\n },\n methods: {\n isNil,\n ...mapActions('datasets', [\n 'loadDatasets',\n 'loadAdditionalDatasets',\n 'setPage',\n 'setSort',\n 'addFacet',\n 'removeFacet',\n 'setFacets',\n 'setFacetOperator',\n 'setFacetGroupOperator',\n 'setDataServices',\n 'setPageCount',\n 'setLimit',\n 'setLoading',\n 'setDataScope',\n ]),\n // The imported Lodash has function. Must be defined in Methods so we can use it in template\n has,\n isArray,\n truncate,\n getTranslationFor,\n getImg,\n /**\n * @description Handler-function for the scroll event.\n */\n onScroll() {\n const items = this.$el.querySelectorAll('.dataset');\n const lastItem = items[items.length - 1];\n if (lastItem) {\n const lastItemPos = lastItem.getBoundingClientRect();\n if (lastItemPos.bottom - window.innerHeight <= 0) {\n this.debouncedOnBottomScroll();\n }\n }\n },\n /**\n * @description Handler-function when bottom of the page is reached.\n */\n onBottomScroll() {\n this.$nextTick(() => {\n this.$Progress.start();\n this.loadAdditionalDatasets()\n .then(() => {\n this.$Progress.finish();\n })\n .catch(() => {\n this.$Progress.fail();\n });\n });\n },\n initLimit() {\n const limit = parseInt(this.$route.query.limit, 10);\n if (limit > 0) this.setLimit(limit);\n },\n initSort() {\n const sort = this.$route.query.sort;\n if (sort) this.setSort(sort);\n },\n setPageLimit(value) {\n this.setLimit(value);\n this.initDatasets();\n },\n initDataScope() {\n this.setDataScope(this.dataScope);\n },\n /**\n * @description Determines the current page.\n */\n initPage() {\n const page = parseInt(this.$route.query.page, 10);\n if (page > 0) this.setPage(page);\n else this.setPage(1);\n },\n /**\n * @descritption Initialize the active facets by checking the route parameters\n */\n initFacets() {\n const fields = this.$env.content.datasets.facets.defaultFacetOrder;\n const facetsFromRouteParams = this.facets;\n\n this.facetFields.push(...fields);\n\n // Get fields that don't exist in the router query\n const fieldsNotInRouterQuery = fields.filter(field => {\n const fieldExists = facetsFromRouteParams[field] && facetsFromRouteParams[field].length > 0;\n return !fieldExists && !this.$route.query[field];\n });\n\n // Construct route query parameters to be added\n const routeQueryParamsToBeAdded = fieldsNotInRouterQuery.reduce((acc, field) => {\n acc[field] = [];\n return acc;\n }, {});\n // Add the route query params that are missing\n if (Object.keys(routeQueryParamsToBeAdded) > 0) {\n this.$router.push({query: {...this.$route.query, ...routeQueryParamsToBeAdded}});\n }\n\n this.setFacets(facetsFromRouteParams);\n },\n\n\n getUrlFacetsOrDefault(field) {\n const urlFacets = this.$route.query[field];\n return Array.isArray(urlFacets) ? urlFacets : (urlFacets ? [urlFacets] : []);\n },\n\n initFacetOperator() {\n // Always set facet operator to AND when in catalog details mode\n if (this.showCatalogDetails) this.setFacetOperator('AND');\n else {\n const op = this.$route.query.facetOperator;\n if (op === 'AND' || op === 'OR') this.setFacetOperator(op);\n }\n },\n initFacetGroupOperator() {\n // The facetGroupOperator should be the same as the facetOperator\n // Always set facet operator to AND when\n // in catalog details mode\n if (this.showCatalogDetails) this.setFacetGroupOperator('AND');\n else {\n const op = this.$route.query.facetOperator;\n if (op === 'AND' || op === 'OR') this.setFacetGroupOperator(op);\n }\n },\n /**\n * @descritption Initialize the active data services facet by checking the route parameters\n */\n initDataServices() {\n const ds = this.$route.query.dataServices;\n if (ds === 'true' || ds === 'false') this.setDataServices(ds);\n else {\n this.setDataServices('false');\n }\n },\n initDatasets() {\n this.$nextTick(() => {\n this.$nextTick(() => {\n this.$Progress.start();\n this.loadDatasets({locale: this.$route.query.locale})\n .then(() => {\n this.setPageCount(Math.ceil(this.getDatasetsCount / this.getLimit));\n this.$Progress.finish();\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n })\n .catch((error) => {\n console.error(error)\n this.$Progress.fail();\n })\n .finally(() => this.$root.$emit('contentLoaded'));\n });\n });\n },\n initInfiniteScrolling() {\n if (this.infiniteScrolling) window.addEventListener('scroll', this.onScroll);\n },\n getFileTypeColor(format) {\n return fileTypes.getFileTypeColor(format);\n },\n },\n watch: {\n // eslint-disable-next-line object-shorthand\n page(pageStr) {\n const page = parseInt(pageStr, 10);\n if (page > 0) this.setPage(page);\n else this.setPage(1);\n },\n dataScope: {\n handler() {\n this.initDataScope();\n },\n deep: true,\n },\n },\n created() {\n this.initDataScope();\n this.initLimit();\n this.initSort();\n this.initPage();\n this.initFacetOperator();\n this.initFacetGroupOperator();\n this.initDataServices();\n this.initFacets();\n this.initDatasets();\n this.initInfiniteScrolling();\n },\n mounted() {\n // This is supposed to fix the browser issue (https://gitlab.fokus.fraunhofer.de/piveau/organisation/piveau-scrum-board/-/issues/2344)\n if (this.$route.query.refresh === 'true') {\n this.$nextTick(() => {\n this.$nextTick(() => {\n this.loadDatasets({locale: this.$route.query.locale})\n .then(() => {\n this.$router.push({query: {locale: this.$route.query.locale}});\n })\n .catch(() => {\n this.$Progress.fail();\n });\n });\n });\n }\n },\n beforeUnmount() {\n $('.tooltip').remove();\n if (this.infiniteScrolling) window.removeEventListener('scroll', this.onScroll);\n },\n setup() {\n useDatasetsHead();\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n\n.alert-primary {\n color: #042648;\n background-color: #cddbe8;\n border-color: #baccdf;\n}\n\n.page-title {\n // maybe we can change custom theme h1 to 3rem\n font-size: 3rem;\n margin-bottom: 15px;\n}\n\n.content {\n padding: 30px 30px 0 30px;\n margin-top: 15px;\n margin-bottom: 15px;\n background-color: white;\n}\n\n.router-link-active {\n color: #175baf !important;\n border: none !important;\n border-bottom: 2px solid #175baf !important;\n}\n\n.router-link-inactive {\n color: rgba(0, 0, 0, 0.7);\n border: none !important;\n\n &:hover {\n color: #175baf;\n }\n}\n\n.material-icons.small-icon {\n font-size: 20px;\n}\n\n@media screen and (min-width: 768px) {\n #datasetFacets {\n display: block\n }\n}\n</style>\n"],"names":["_sfc_main","DatasetsFilters","DatasetsTopControls","AppLink","SelectedFacetsOverview","DatasetsFacets","Pagination","DatasetList","debounce","mapGetters","isNil","facetFields","wantsToLoadCatalogByParamOrProp","facetObj","acc","field","facet","isArray","mapActions","has","truncate","getTranslationFor","getImg","items","lastItem","limit","sort","value","page","fields","facetsFromRouteParams","routeQueryParamsToBeAdded","urlFacets","op","ds","$","error","format","fileTypes","pageStr","useDatasetsHead","_hoisted_1","_hoisted_2","_hoisted_5","_hoisted_6","_hoisted_9","_hoisted_13","_hoisted_14","_openBlock","_createElementBlock","_createVNode","_component_datasets_top_controls","$options","_ctx","_cache","_createTextVNode","_createElementVNode","_renderSlot","_hoisted_3","_toDisplayString","_hoisted_4","$data","$event","_hoisted_7","_hoisted_8","_createBlock","_component_datasets_facets","_createCommentVNode","_component_datasets_filters","_normalizeClass","_hoisted_10","_hoisted_11","_component_app_link","_withCtx","_component_selectedFacetsOverview","_component_dataset_list","_hoisted_12","_component_pagination"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Datasets.vue.mjs","sources":["../../lib/datasets/Datasets.vue"],"sourcesContent":["<template>\n <div class=\"datasets-container d-flex flex-column p-0 bg-transparent\">\n <datasets-top-controls\n :facets=\"facets\"\n :getPage=\"getPage\"\n :getLimit=\"getLimit\"\n class=\"datasets-top-controls\"\n />\n <div class=\"container-fluid datasets content\">\n <slot name=\"title\">\n <h1 class=\"row col-12 page-title catalog-title text-primary\" v-if=\"showCatalogDetails\">\n {{ getTranslationFor(getCatalog.title, $route.query.locale, getCatalog.languages) }}</h1>\n <h1 class=\"row col-12 page-title text-primary\" v-else>{{ $t('message.header.navigation.data.datasets') }}</h1>\n </slot>\n <slot\n name=\"content\"\n :datasets-count=\"getDatasetsCount\"\n :datasets=\"getDatasets\"\n :locale=\"$route.query.locale\"\n :loading=\"getLoading\"\n :use-dataset-facets=\"useDatasetFacets\"\n :facets=\"getFacets\"\n :available-facets=\"getAllAvailableFacets\"\n >\n <div class=\"row\">\n <div class=\"col d-flex d-md-none justify-content-end flex-wrap\">\n <button class=\"btn btn-primary mb-3 text-right text-white\" data-toggle=\"collapse\"\n data-target=\"#datasetFacets\" data-cy=\"btn-filter-toggle\"\n @click=\"filterCollapsed = !filterCollapsed\">\n <i class=\"material-icons small-icon align-bottom\" v-if=\"filterCollapsed\">arrow_drop_up</i>\n <i class=\"material-icons small-icon align-bottom\" v-else>arrow_drop_down</i>\n </button>\n </div>\n <datasets-facets\n v-if=\"useDatasetFacets\"\n class=\"col-md-3 col-12 mb-3 mb-md-0 px-0 collapse\" id=\"datasetFacets\"\n :dataScope=\"dataScope\"\n :available-facets=\"getAllAvailableFacets\"\n ></datasets-facets>\n<!-- <facets-->\n<!-- :facetsConfig=\"getAllAvailableFacets\"-->\n<!-- :facetsIds=\"$env.content.datasets.facets.defaultFacetOrder\"-->\n<!-- class=\"col-md-3 col-12 mb-3 mb-md-0 px-0 collapse\"-->\n<!-- id=\"datasetFacets\">-->\n<!-- </facets>-->\n <section class=\"col-md-9 col-12\">\n <slot name=\"datasets-filters\">\n <datasets-filters/>\n </slot>\n <slot name=\"datasets-found\" :data=\"{\n loading: getLoading,\n datasetsCount: getDatasetsCount,\n datasetsCountFormatted: getDatasetsCount.toLocaleString('fi'),\n loadingMessage: $t('message.datasets.loadingMessage'),\n countMessage: $t('message.datasets.countMessage'),\n }\">\n <div class=\"datasets-found alert alert-primary mt-3 d-flex flex-row\" role=\"status\"\n :class=\"{ 'alert-danger': getDatasetsCount <= 0 && !getLoading}\">\n <div>\n {{\n getLoading ? $t('message.datasets.loadingMessage') : `${getDatasetsCount.toLocaleString('fi')}\n ${$t('message.datasets.countMessage')}`\n }}\n </div>\n <div class=\"loading-spinner ml-3\" v-if=\"getLoading\"></div>\n </div>\n </slot>\n <div class=\"alert alert-warning mt-3 d-flex flex-row\" v-if=\"showScoreDisclaimer\">\n <span>\n {{ $t(\"message.datasets.scoreDisclaimer\") }}\n <app-link path=\"/mqa\" :query=\"{ locale: $route.query.locale }\" target=\"_blank\">\n <span>{{ $t(\"message.metadata.methodologyPage\") }}</span>\n </app-link>\n </span>\n </div>\n <!--\n <div class=\"alert alert-info mt-3\" v-if=\"getGeoBoundsById('modal-map')\">\n {{`${$t('message.datasets.geoBoundsMessagePre')}`}}<strong>{{getGeoBoundsById('modal-map')}}</strong>{{`. ${$t('message.datasets.geoBoundsMessageRemove')}`}}\n <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-label=\"Close\" @click=\"resetGeoBounds('modal-map'); loadDatasets({})\">\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n -->\n <selectedFacetsOverview\n v-if=\"getFacets\"\n :selected-facets=\"getFacets\"\n :available-facets=\"getAllAvailableFacets\"\n >\n </selectedFacetsOverview>\n <template v-if=\"!getLoading\">\n <dataset-list :datasets=\"getDatasets\" :locale=\"$route.query.locale || 'en'\"></dataset-list>\n </template>\n <div class=\"loading-spinner mx-auto mt-3 mb-3\" v-if=\"getLoading\"></div>\n </section>\n </div>\n </slot>\n <div class=\"row\">\n <div class=\"column col-12 col-md-9 offset-md-3\">\n <pagination class=\"mt-3\"\n :items-count=\"getDatasetsCount\"\n :items-per-page=\"getLimit\"\n :get-page=\"getPage\"\n :get-page-count=\"getPageCount\"\n @setPageLimit=\"setPageLimit\"></pagination>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n /* eslint-disable no-undef */\n import { mapActions, mapGetters } from 'vuex';\n import {\n debounce,\n has,\n groupBy,\n uniqBy,\n toPairs,\n isArray,\n isNil,\n } from 'lodash-es';\n import $ from 'jquery';\n import fileTypes from '../utils/fileTypes';\n import Pagination from '../widgets/Pagination.vue';\n import SelectedFacetsOverview from '../facets/SelectedFacetsOverview';\n import AppLink from '../widgets/AppLink.vue';\n import { getTranslationFor, truncate, getImg } from '../utils/helpers';\n import DatasetsTopControls from \"../datasets/DatasetsTopControls.vue\";\n import DatasetsFilters from \"../datasets/DatasetsFilters.vue\";\n import DatasetList from './DatasetList.vue'\n import { useDatasetsHead } from '../composables/head'\n // import Facets from \"../facets_2.0/Facets.vue\"\n import DatasetsFacets from './datasetsFacets/DatasetsFacets.vue';\nexport default {\n name: 'Datasets',\n components: {\n DatasetsFilters,\n DatasetsTopControls,\n appLink: AppLink,\n selectedFacetsOverview: SelectedFacetsOverview,\n datasetsFacets: DatasetsFacets,\n pagination: Pagination,\n DatasetList,\n // Facets\n },\n props: {\n infiniteScrolling: {\n type: Boolean,\n default: false,\n },\n /**\n * @description Sets the catalog filter to a fixed catalog id. Disables the catalog facet and hides the facet in the selected facets overview.\n * @dev Use this prop if you want to use this component in a catalog page context where the catalog is already known (e.g., provider's page).\n */\n fixedCatalogFilter: {\n type: String,\n default: '',\n }\n },\n data() {\n return {\n baseUrl: this.$env.api.baseUrl,\n debouncedOnBottomScroll: debounce(this.onBottomScroll, 500),\n facetFields: [],\n lang: this.locale,\n filterCollapsed: true,\n catalogAllowed: false,\n useDatasetFacets: this.$env.content.datasets.facets.useDatasetFacets\n };\n },\n computed: {\n ...mapGetters('catalogDetails', [\n 'getCatalog',\n ]),\n ...mapGetters('datasets', [\n 'getDatasets',\n 'getDatasetsCount',\n 'getLimit',\n 'getLoading',\n 'getOffset',\n 'getPage',\n 'getPageCount',\n 'getMinScoring',\n ]),\n ...mapGetters('datasets', {\n // Rename getters to something different because we'll perform some modifications on them.\n // These modifications involve removing catalog related information from facets for fixed catalog filter mode\n getAllAvailableFacetsOriginal: 'getAllAvailableFacets',\n getFacetsOriginal: 'getFacets',\n }),\n showCatalogDetails() {\n return !isNil(this.$route.params.ctlg_id) || this.fixedCatalogFilter;\n },\n /**\n * @description Returns the current page.\n * @returns {Number}\n *\n * @deprecated use getPage from datasets store instead\n */\n page() {\n return this.$route.query.page;\n },\n /**\n * @description Returns the active facets according to the route parameters.\n * @returns {Object}\n */\n facets() {\n const facetFields = this.$env.content.datasets.facets.defaultFacetOrder;\n const wantsToLoadCatalogByParamOrProp = this.showCatalogDetails;\n\n const facetObj = facetFields.reduce((acc, field) => {\n acc[field] = (wantsToLoadCatalogByParamOrProp && field === 'catalog' && !this.fixedCatalogFilter)\n ? [this.$route.params.ctlg_id || undefined]\n : this.getUrlFacetsOrDefault(field);\n\n return acc;\n }, {});\n\n // if fixedCatalogFilter is set, then set it as superCatalog\n // requirement by bayern\n const facetObjWithMaybeDefaultSuperCatalog = this.fixedCatalogFilter\n ? {\n ...facetObj,\n superCatalog: [this.fixedCatalogFilter],\n }\n : facetObj;\n\n return facetObjWithMaybeDefaultSuperCatalog;\n },\n\n getAllAvailableFacets() {\n return this.showCatalogDetails\n ? this.getAllAvailableFacetsOriginal.filter(facet => facet.id !== 'catalog')\n : this.getAllAvailableFacetsOriginal;\n },\n\n getFacets() {\n // Returns a record of facets with the catalog facet removed if we're in fixed catalog filter mode\n return this.showCatalogDetails\n ? {\n ...this.getFacetsOriginal,\n catalog: []\n }\n : this.getFacetsOriginal;\n },\n\n currentSearchQuery() {\n return this.$route.query.query;\n },\n showScoreDisclaimer() {\n return this.getMinScoring > 0;\n },\n dataScope() {\n if (!this.$route.query.dataScope) return null;\n if (isArray(this.$route.query.dataScope) && this.$route.query.dataScope.length > 0) return this.$route.query.dataScope[0];\n if (isArray(this.$route.query.dataScope) && this.$route.query.dataScope.length === 0) return null;\n return this.$route.query.dataScope;\n },\n },\n methods: {\n isNil,\n ...mapActions('datasets', [\n 'loadDatasets',\n 'loadAdditionalDatasets',\n 'setPage',\n 'setSort',\n 'addFacet',\n 'removeFacet',\n 'setFacets',\n 'setFacetOperator',\n 'setFacetGroupOperator',\n 'setDataServices',\n 'setPageCount',\n 'setLimit',\n 'setLoading',\n 'setDataScope',\n ]),\n // The imported Lodash has function. Must be defined in Methods so we can use it in template\n has,\n isArray,\n truncate,\n getTranslationFor,\n getImg,\n /**\n * @description Handler-function for the scroll event.\n */\n onScroll() {\n const items = this.$el.querySelectorAll('.dataset');\n const lastItem = items[items.length - 1];\n if (lastItem) {\n const lastItemPos = lastItem.getBoundingClientRect();\n if (lastItemPos.bottom - window.innerHeight <= 0) {\n this.debouncedOnBottomScroll();\n }\n }\n },\n /**\n * @description Handler-function when bottom of the page is reached.\n */\n onBottomScroll() {\n this.$nextTick(() => {\n this.$Progress.start();\n this.loadAdditionalDatasets()\n .then(() => {\n this.$Progress.finish();\n })\n .catch(() => {\n this.$Progress.fail();\n });\n });\n },\n initLimit() {\n const limit = parseInt(this.$route.query.limit, 10);\n if (limit > 0) this.setLimit(limit);\n },\n initSort() {\n const sort = this.$route.query.sort;\n if (sort) this.setSort(sort);\n },\n setPageLimit(value) {\n this.setLimit(value);\n this.initDatasets();\n },\n initDataScope() {\n this.setDataScope(this.dataScope);\n },\n /**\n * @description Determines the current page.\n */\n initPage() {\n const page = parseInt(this.$route.query.page, 10);\n if (page > 0) this.setPage(page);\n else this.setPage(1);\n },\n /**\n * @descritption Initialize the active facets by checking the route parameters\n */\n initFacets() {\n const fields = this.$env.content.datasets.facets.defaultFacetOrder;\n const facetsFromRouteParams = this.facets;\n\n this.facetFields.push(...fields);\n\n // Get fields that don't exist in the router query\n const fieldsNotInRouterQuery = fields.filter(field => {\n const fieldExists = facetsFromRouteParams[field] && facetsFromRouteParams[field].length > 0;\n return !fieldExists && !this.$route.query[field];\n });\n\n // Construct route query parameters to be added\n const routeQueryParamsToBeAdded = fieldsNotInRouterQuery.reduce((acc, field) => {\n acc[field] = [];\n return acc;\n }, {});\n // Add the route query params that are missing\n if (Object.keys(routeQueryParamsToBeAdded) > 0) {\n this.$router.push({query: {...this.$route.query, ...routeQueryParamsToBeAdded}});\n }\n\n this.setFacets(facetsFromRouteParams);\n },\n\n\n getUrlFacetsOrDefault(field) {\n const urlFacets = this.$route.query[field];\n return Array.isArray(urlFacets) ? urlFacets : (urlFacets ? [urlFacets] : []);\n },\n\n initFacetOperator() {\n // Always set facet operator to AND when in catalog details mode\n if (this.showCatalogDetails) this.setFacetOperator('AND');\n else {\n const op = this.$route.query.facetOperator;\n if (op === 'AND' || op === 'OR') this.setFacetOperator(op);\n }\n },\n initFacetGroupOperator() {\n // The facetGroupOperator should be the same as the facetOperator\n // Always set facet operator to AND when\n // in catalog details mode\n if (this.showCatalogDetails) this.setFacetGroupOperator('AND');\n else {\n const op = this.$route.query.facetOperator;\n if (op === 'AND' || op === 'OR') this.setFacetGroupOperator(op);\n }\n },\n /**\n * @descritption Initialize the active data services facet by checking the route parameters\n */\n initDataServices() {\n const ds = this.$route.query.dataServices;\n if (ds === 'true' || ds === 'false') this.setDataServices(ds);\n else {\n this.setDataServices('false');\n }\n },\n initDatasets() {\n this.$nextTick(() => {\n this.$nextTick(() => {\n this.$Progress.start();\n this.loadDatasets({locale: this.$route.query.locale})\n .then(() => {\n this.setPageCount(Math.ceil(this.getDatasetsCount / this.getLimit));\n this.$Progress.finish();\n $('[data-toggle=\"tooltip\"]').tooltip({\n container: 'body',\n });\n })\n .catch((error) => {\n console.error(error)\n this.$Progress.fail();\n })\n .finally(() => this.$root.$emit('contentLoaded'));\n });\n });\n },\n initInfiniteScrolling() {\n if (this.infiniteScrolling) window.addEventListener('scroll', this.onScroll);\n },\n getFileTypeColor(format) {\n return fileTypes.getFileTypeColor(format);\n },\n },\n watch: {\n // eslint-disable-next-line object-shorthand\n page(pageStr) {\n const page = parseInt(pageStr, 10);\n if (page > 0) this.setPage(page);\n else this.setPage(1);\n },\n dataScope: {\n handler() {\n this.initDataScope();\n },\n deep: true,\n },\n },\n created() {\n this.initDataScope();\n this.initLimit();\n this.initSort();\n this.initPage();\n this.initFacetOperator();\n this.initFacetGroupOperator();\n this.initDataServices();\n this.initFacets();\n this.initDatasets();\n this.initInfiniteScrolling();\n },\n mounted() {\n // This is supposed to fix the browser issue (https://gitlab.fokus.fraunhofer.de/piveau/organisation/piveau-scrum-board/-/issues/2344)\n if (this.$route.query.refresh === 'true') {\n this.$nextTick(() => {\n this.$nextTick(() => {\n this.loadDatasets({locale: this.$route.query.locale})\n .then(() => {\n this.$router.push({query: {locale: this.$route.query.locale}});\n })\n .catch(() => {\n this.$Progress.fail();\n });\n });\n });\n }\n },\n beforeUnmount() {\n $('.tooltip').remove();\n if (this.infiniteScrolling) window.removeEventListener('scroll', this.onScroll);\n },\n setup() {\n useDatasetsHead();\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n\n.alert-primary {\n color: #042648;\n background-color: #cddbe8;\n border-color: #baccdf;\n}\n\n.page-title {\n // maybe we can change custom theme h1 to 3rem\n font-size: 3rem;\n margin-bottom: 15px;\n}\n\n.content {\n padding: 30px 30px 0 30px;\n margin-top: 15px;\n margin-bottom: 15px;\n background-color: white;\n}\n\n.router-link-active {\n color: #175baf !important;\n border: none !important;\n border-bottom: 2px solid #175baf !important;\n}\n\n.router-link-inactive {\n color: rgba(0, 0, 0, 0.7);\n border: none !important;\n\n &:hover {\n color: #175baf;\n }\n}\n\n.material-icons.small-icon {\n font-size: 20px;\n}\n\n@media screen and (min-width: 768px) {\n #datasetFacets {\n display: block\n }\n}\n</style>\n"],"names":["_sfc_main","DatasetsFilters","DatasetsTopControls","AppLink","SelectedFacetsOverview","DatasetsFacets","Pagination","DatasetList","debounce","mapGetters","isNil","facetFields","wantsToLoadCatalogByParamOrProp","facetObj","acc","field","facet","isArray","mapActions","has","truncate","getTranslationFor","getImg","items","lastItem","limit","sort","value","page","fields","facetsFromRouteParams","routeQueryParamsToBeAdded","urlFacets","op","ds","$","error","format","fileTypes","pageStr","useDatasetsHead","_hoisted_1","_hoisted_2","_hoisted_5","_hoisted_6","_hoisted_9","_hoisted_13","_hoisted_14","_openBlock","_createElementBlock","_createVNode","_component_datasets_top_controls","$options","_ctx","_createElementVNode","_renderSlot","_hoisted_3","_toDisplayString","_hoisted_4","$data","_cache","$event","_hoisted_7","_hoisted_8","_createBlock","_component_datasets_facets","_component_datasets_filters","_normalizeClass","_hoisted_10","_hoisted_11","_createTextVNode","_component_app_link","_component_selectedFacetsOverview","_component_dataset_list","_hoisted_12","_component_pagination"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ declare const _default: import('vue').DefineComponent<{}, {}, {
|
|
|
8
8
|
useCatalogs: boolean;
|
|
9
9
|
useSort: boolean;
|
|
10
10
|
sortSelected: string;
|
|
11
|
-
sortSelectedLabel:
|
|
11
|
+
sortSelectedLabel: any;
|
|
12
12
|
}, {}, {
|
|
13
13
|
changeQuery(query: any): void;
|
|
14
14
|
handleSuggestionSelection(suggestion: any): void;
|