geonetwork-ui 2.6.0-dev.502fa026d → 2.6.0-dev.7be6567ef
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/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +27 -6
- package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +22 -6
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +29 -7
- package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +3 -2
- package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +3 -3
- package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +21 -19
- package/esm2022/translations/de.json +2 -0
- package/esm2022/translations/en.json +3 -1
- package/esm2022/translations/es.json +2 -0
- package/esm2022/translations/fr.json +2 -0
- package/esm2022/translations/it.json +2 -1
- package/esm2022/translations/nl.json +2 -0
- package/esm2022/translations/pt.json +2 -0
- package/fesm2022/geonetwork-ui.mjs +116 -44
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +1 -0
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts +9 -1
- package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +8 -1
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +10 -2
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
- package/libs/util/shared/src/lib/links/link-utils.d.ts +16 -16
- package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +1 -0
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +64 -38
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +26 -2
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +17 -17
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +20 -2
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +7 -6
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +27 -29
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +33 -3
- package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.html +1 -1
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +2 -1
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -4
- package/src/libs/util/shared/src/lib/links/link-utils.ts +20 -18
- package/tailwind.base.css +34 -1
- package/translations/de.json +2 -0
- package/translations/en.json +3 -1
- package/translations/es.json +2 -0
- package/translations/fr.json +2 -0
- package/translations/it.json +2 -1
- package/translations/nl.json +2 -0
- package/translations/pt.json +2 -0
- package/translations/sk.json +2 -0
|
@@ -26,8 +26,8 @@ import { createAction, props, createReducer, on, createFeatureSelector, createSe
|
|
|
26
26
|
import EmblaCarousel from 'embla-carousel';
|
|
27
27
|
import * as i2$2 from '@ng-icons/core';
|
|
28
28
|
import { provideIcons, NgIcon, NgIconComponent, provideNgIconsConfig, NgIconsModule } from '@ng-icons/core';
|
|
29
|
-
import { iconoirNavArrowRight, iconoirNavArrowLeft, iconoirNavArrowDown, iconoirNavArrowUp, iconoirSearch, iconoirLongArrowDownLeft, iconoirCalendar, iconoirLink, iconoirArrowUp, iconoirCloudUpload, iconoirFramePlusIn, iconoirMediaImage, iconoirMediaImageXmark, iconoirBin, iconoirPlus, iconoirUser, iconoirLock, iconoirImport, iconoirLightBulbOn, iconoirArrowLeft, iconoirAttachment, iconoirRefresh } from '@ng-icons/iconoir';
|
|
30
|
-
import { matExpandMore, matExpandLess, matAdd, matRemove, matClose, matContentCopy, matSearch, matStar, matStarBorder, matChevronLeft, matChevronRight, matArrowForward, matArrowBack, matCheck, matWarningAmber,
|
|
29
|
+
import { iconoirNavArrowRight, iconoirNavArrowLeft, iconoirNavArrowDown, iconoirNavArrowUp, iconoirSearch, iconoirLongArrowDownLeft, iconoirCalendar, iconoirLink, iconoirArrowUp, iconoirCloudUpload, iconoirFramePlusIn, iconoirSettings, iconoirDownload, iconoirMediaImage, iconoirMediaImageXmark, iconoirBin, iconoirPlus, iconoirUser, iconoirLock, iconoirImport, iconoirLightBulbOn, iconoirArrowLeft, iconoirAttachment, iconoirRefresh } from '@ng-icons/iconoir';
|
|
30
|
+
import { matExpandMore, matExpandLess, matAdd, matRemove, matClose, matContentCopy, matSearch, matStar, matStarBorder, matChevronLeft, matChevronRight, matArrowForward, matArrowBack, matCheck, matWarningAmber, matFace, matQuestionMark, matMoodBad, matZoomOutMap, matOpenInNew, matMailOutline, matPersonOutline, matCheckCircleOutline, matWarning, matMoreVert, matCorporateFare } from '@ng-icons/material-icons/baseline';
|
|
31
31
|
import * as i1$4 from '@angular/material/tooltip';
|
|
32
32
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
33
33
|
import { moveItemInArray, CdkDropList, CdkDrag, CdkDragHandle } from '@angular/cdk/drag-drop';
|
|
@@ -41,7 +41,7 @@ import { TagInputModule } from 'ngx-chips';
|
|
|
41
41
|
import * as i1$5 from '@angular/material/progress-spinner';
|
|
42
42
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
43
43
|
import tippy from 'tippy.js';
|
|
44
|
-
import { matErrorOutlineOutline, matInfoOutline,
|
|
44
|
+
import { matErrorOutlineOutline, matInfoOutline, matComputerOutline, matCallOutline, matLocationOnOutline, matMailOutline as matMailOutline$1, matWarningAmberOutline, matCloseOutline, matSendOutline, matMapOutline, matCloudDownloadOutline, matHomeWorkOutline, matSwipeOutline, matLayersOutline, matAddCircleOutlineOutline } from '@ng-icons/material-icons/outline';
|
|
45
45
|
import * as i2 from '@angular/material/core';
|
|
46
46
|
import { MatNativeDateModule, MAT_DATE_LOCALE, DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';
|
|
47
47
|
import * as i1$7 from '@angular/material/checkbox';
|
|
@@ -19026,6 +19026,8 @@ var de = {
|
|
|
19026
19026
|
"record.metadata.quality.updateFrequency.failed": "Aktualisierungsfrequenz nicht angegeben",
|
|
19027
19027
|
"record.metadata.quality.updateFrequency.success": "Aktualisierungsfrequenz angegeben",
|
|
19028
19028
|
"record.metadata.related": "Ähnliche Datensätze",
|
|
19029
|
+
"record.metadata.related.contents": "Verwandte Inhalte",
|
|
19030
|
+
"record.metadata.ressources.and.links": "Ressourcen und Links",
|
|
19029
19031
|
"record.metadata.sheet": "Weitere Informationen verfügbar unter:",
|
|
19030
19032
|
"record.metadata.status": "Status",
|
|
19031
19033
|
"record.metadata.status.notPublished": "",
|
|
@@ -19213,7 +19215,7 @@ var en = {
|
|
|
19213
19215
|
"datahub.search.back": "Back",
|
|
19214
19216
|
"datahub.search.filter.all": "All",
|
|
19215
19217
|
"datahub.search.filter.generatedByAPI": "Generated by an API",
|
|
19216
|
-
"datahub.search.filter.generatedByWfs": "",
|
|
19218
|
+
"datahub.search.filter.generatedByWfs": "Generated by a WFS",
|
|
19217
19219
|
"datahub.search.filter.others": "Others",
|
|
19218
19220
|
"dataset.error.forbidden": "Access to this resource is restricted",
|
|
19219
19221
|
"dataset.error.http": "The data could not be loaded because of an HTTP error: \"{ info }\"",
|
|
@@ -19572,6 +19574,8 @@ var en = {
|
|
|
19572
19574
|
"record.metadata.quality.updateFrequency.failed": "Update frequency is not specified",
|
|
19573
19575
|
"record.metadata.quality.updateFrequency.success": "Update frequency is specified",
|
|
19574
19576
|
"record.metadata.related": "Related datasets",
|
|
19577
|
+
"record.metadata.related.contents": "Related contents",
|
|
19578
|
+
"record.metadata.ressources.and.links": "Resources and links",
|
|
19575
19579
|
"record.metadata.sheet": "Original metadata",
|
|
19576
19580
|
"record.metadata.status": "Status",
|
|
19577
19581
|
"record.metadata.status.notPublished": "Not published",
|
|
@@ -20118,6 +20122,8 @@ var es = {
|
|
|
20118
20122
|
"record.metadata.quality.updateFrequency.failed": "",
|
|
20119
20123
|
"record.metadata.quality.updateFrequency.success": "",
|
|
20120
20124
|
"record.metadata.related": "",
|
|
20125
|
+
"record.metadata.related.contents": "Contenidos relacionados",
|
|
20126
|
+
"record.metadata.ressources.and.links": "Recursos y enlaces",
|
|
20121
20127
|
"record.metadata.sheet": "",
|
|
20122
20128
|
"record.metadata.status": "",
|
|
20123
20129
|
"record.metadata.status.notPublished": "",
|
|
@@ -20664,6 +20670,8 @@ var fr = {
|
|
|
20664
20670
|
"record.metadata.quality.updateFrequency.failed": "La fréquence de mise à jour n'est pas renseignée",
|
|
20665
20671
|
"record.metadata.quality.updateFrequency.success": "La fréquence de mise à jour est renseignée",
|
|
20666
20672
|
"record.metadata.related": "Voir aussi",
|
|
20673
|
+
"record.metadata.related.contents": "Contenus associés",
|
|
20674
|
+
"record.metadata.ressources.and.links": "Ressources et liens",
|
|
20667
20675
|
"record.metadata.sheet": "Fiche de métadonnées d'origine",
|
|
20668
20676
|
"record.metadata.status": "Statut",
|
|
20669
20677
|
"record.metadata.status.notPublished": "Non publié",
|
|
@@ -21210,6 +21218,8 @@ var it = {
|
|
|
21210
21218
|
"record.metadata.quality.updateFrequency.failed": "La frequenza di aggiornamento non è specificata",
|
|
21211
21219
|
"record.metadata.quality.updateFrequency.success": "La frequenza di aggiornamento è specificata",
|
|
21212
21220
|
"record.metadata.related": "Vedi anche",
|
|
21221
|
+
"record.metadata.related.contents": "Contenuti correlati",
|
|
21222
|
+
"record.metadata.ressources.and.links": "Risorse e collegamenti",
|
|
21213
21223
|
"record.metadata.sheet": "Origine del metadata",
|
|
21214
21224
|
"record.metadata.status": "Stato",
|
|
21215
21225
|
"record.metadata.status.notPublished": "Non pubblicato",
|
|
@@ -21317,7 +21327,6 @@ var it = {
|
|
|
21317
21327
|
"tooltip.url.open": "Aprire l'URL",
|
|
21318
21328
|
"ui.readLess": "Ridurre",
|
|
21319
21329
|
"ui.readMore": "Leggere di più",
|
|
21320
|
-
"wfs.aggregations.notsupported": "Aggregazioni non supportate per i servizi WFS",
|
|
21321
21330
|
"wfs.feature.limit": "Troppi oggetti per visualizzare il WFS layer!",
|
|
21322
21331
|
"wfs.featuretype.notfound": "La classe di oggetto non è stata trovata nel servizio",
|
|
21323
21332
|
"wfs.geojsongml.notsupported": "Il servizio non supporta il formato GeoJSON o GML",
|
|
@@ -21757,6 +21766,8 @@ var nl = {
|
|
|
21757
21766
|
"record.metadata.quality.updateFrequency.failed": "",
|
|
21758
21767
|
"record.metadata.quality.updateFrequency.success": "",
|
|
21759
21768
|
"record.metadata.related": "",
|
|
21769
|
+
"record.metadata.related.contents": "Gerelateerde inhoud",
|
|
21770
|
+
"record.metadata.ressources.and.links": "Bronnen en links",
|
|
21760
21771
|
"record.metadata.sheet": "",
|
|
21761
21772
|
"record.metadata.status": "",
|
|
21762
21773
|
"record.metadata.status.notPublished": "",
|
|
@@ -22303,6 +22314,8 @@ var pt = {
|
|
|
22303
22314
|
"record.metadata.quality.updateFrequency.failed": "",
|
|
22304
22315
|
"record.metadata.quality.updateFrequency.success": "",
|
|
22305
22316
|
"record.metadata.related": "",
|
|
22317
|
+
"record.metadata.related.contents": "Conteúdos relacionados",
|
|
22318
|
+
"record.metadata.ressources.and.links": "Recursos e links",
|
|
22306
22319
|
"record.metadata.sheet": "",
|
|
22307
22320
|
"record.metadata.status": "",
|
|
22308
22321
|
"record.metadata.status.notPublished": "",
|
|
@@ -24765,7 +24778,7 @@ const FORMATS = {
|
|
|
24765
24778
|
csv: {
|
|
24766
24779
|
extensions: ['csv'],
|
|
24767
24780
|
priority: 1,
|
|
24768
|
-
color: '#
|
|
24781
|
+
color: '#F6A924',
|
|
24769
24782
|
mimeTypes: ['text/csv', 'application/csv'],
|
|
24770
24783
|
},
|
|
24771
24784
|
excel: {
|
|
@@ -24777,7 +24790,7 @@ const FORMATS = {
|
|
|
24777
24790
|
'openxmlformats-officedocument',
|
|
24778
24791
|
],
|
|
24779
24792
|
priority: 2,
|
|
24780
|
-
color: '#
|
|
24793
|
+
color: '#FFDE10',
|
|
24781
24794
|
mimeTypes: [
|
|
24782
24795
|
'application/vnd.ms-excel',
|
|
24783
24796
|
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
|
@@ -24786,31 +24799,31 @@ const FORMATS = {
|
|
|
24786
24799
|
geojson: {
|
|
24787
24800
|
extensions: ['geojson'],
|
|
24788
24801
|
priority: 3,
|
|
24789
|
-
color: '#
|
|
24802
|
+
color: '#293C6F',
|
|
24790
24803
|
mimeTypes: ['application/geo+json', 'application/vnd.geo+json'],
|
|
24791
24804
|
},
|
|
24792
24805
|
json: {
|
|
24793
24806
|
extensions: ['json'],
|
|
24794
24807
|
priority: 3,
|
|
24795
|
-
color: '#
|
|
24808
|
+
color: '#84D0F0',
|
|
24796
24809
|
mimeTypes: ['application/json'],
|
|
24797
24810
|
},
|
|
24798
24811
|
shp: {
|
|
24799
24812
|
extensions: ['shp', 'shape', 'zipped-shapefile'],
|
|
24800
24813
|
priority: 4,
|
|
24801
|
-
color: '#
|
|
24814
|
+
color: '#009036',
|
|
24802
24815
|
mimeTypes: ['x-gis/x-shapefile'],
|
|
24803
24816
|
},
|
|
24804
24817
|
gml: {
|
|
24805
24818
|
extensions: ['gml'],
|
|
24806
24819
|
priority: 5,
|
|
24807
|
-
color: '#
|
|
24820
|
+
color: '#E75113',
|
|
24808
24821
|
mimeTypes: ['application/gml+xml', 'text/xml; subtype=gml'],
|
|
24809
24822
|
},
|
|
24810
24823
|
kml: {
|
|
24811
24824
|
extensions: ['kml', 'kmz'],
|
|
24812
24825
|
priority: 6,
|
|
24813
|
-
color: '#
|
|
24826
|
+
color: '#F4B5D0',
|
|
24814
24827
|
mimeTypes: [
|
|
24815
24828
|
'application/vnd.google-earth.kml+xml',
|
|
24816
24829
|
'application/vnd.google-earth.kmz',
|
|
@@ -24819,55 +24832,55 @@ const FORMATS = {
|
|
|
24819
24832
|
gpkg: {
|
|
24820
24833
|
extensions: ['gpkg', 'geopackage'],
|
|
24821
24834
|
priority: 7,
|
|
24822
|
-
color: '#
|
|
24835
|
+
color: '#7D5D9F',
|
|
24823
24836
|
mimeTypes: ['application/geopackage+sqlite3'],
|
|
24824
24837
|
},
|
|
24825
24838
|
zip: {
|
|
24826
24839
|
extensions: ['zip', 'tar.gz'],
|
|
24827
24840
|
priority: 8,
|
|
24828
|
-
color: '#
|
|
24841
|
+
color: '#B0CB52',
|
|
24829
24842
|
mimeTypes: ['application/zip', 'application/x-zip'],
|
|
24830
24843
|
},
|
|
24831
24844
|
pdf: {
|
|
24832
24845
|
extensions: ['pdf'],
|
|
24833
24846
|
priority: 9,
|
|
24834
|
-
color: '#
|
|
24847
|
+
color: '#49579E',
|
|
24835
24848
|
mimeTypes: ['application/pdf'],
|
|
24836
24849
|
},
|
|
24837
24850
|
jpg: {
|
|
24838
24851
|
extensions: ['jpg', 'jpeg', 'jfif', 'pjpeg', 'pjp'],
|
|
24839
24852
|
priority: 9,
|
|
24840
|
-
color: '#
|
|
24853
|
+
color: '#C4A98F',
|
|
24841
24854
|
mimeTypes: ['image/jpg'],
|
|
24842
24855
|
},
|
|
24843
24856
|
svg: {
|
|
24844
24857
|
extensions: ['svg'],
|
|
24845
24858
|
priority: 10,
|
|
24846
|
-
color: '#
|
|
24859
|
+
color: '#EB6D82',
|
|
24847
24860
|
mimeTypes: ['image/svg+xml'],
|
|
24848
24861
|
},
|
|
24849
24862
|
dxf: {
|
|
24850
24863
|
extensions: ['dxf'],
|
|
24851
24864
|
priority: 11,
|
|
24852
|
-
color: '#
|
|
24865
|
+
color: '#DCCD00',
|
|
24853
24866
|
mimeTypes: ['application/x-dxf', 'image/x-dxf'],
|
|
24854
24867
|
},
|
|
24855
24868
|
html: {
|
|
24856
24869
|
extensions: ['html', 'htm'],
|
|
24857
24870
|
priority: 12,
|
|
24858
|
-
color: '#
|
|
24871
|
+
color: '#C0C9B6',
|
|
24859
24872
|
mimeTypes: ['text/html'],
|
|
24860
24873
|
},
|
|
24861
24874
|
fgb: {
|
|
24862
24875
|
extensions: ['fgb', 'flatgeobuf'],
|
|
24863
24876
|
priority: 13,
|
|
24864
|
-
color: '#
|
|
24877
|
+
color: '#A8111C',
|
|
24865
24878
|
mimeTypes: ['application/flatgeobuf'],
|
|
24866
24879
|
},
|
|
24867
24880
|
jsonfg: {
|
|
24868
24881
|
extensions: ['jsonfg', 'jsonfgc'],
|
|
24869
24882
|
priority: 14,
|
|
24870
|
-
color: '#
|
|
24883
|
+
color: '#009EE0',
|
|
24871
24884
|
mimeTypes: [
|
|
24872
24885
|
'application/vnd.ogc.fg+json',
|
|
24873
24886
|
'application/vnd.ogc.fg+json;compatibility=geojson',
|
|
@@ -24938,9 +24951,11 @@ function mimeTypeToFormat(mimeType) {
|
|
|
24938
24951
|
return null;
|
|
24939
24952
|
}
|
|
24940
24953
|
function checkFileFormat(link, format) {
|
|
24941
|
-
return (('name' in link &&
|
|
24954
|
+
return (('name' in link &&
|
|
24955
|
+
new RegExp(`[./]${format}`, 'i').test(link.name.toLowerCase())) ||
|
|
24942
24956
|
('url' in link &&
|
|
24943
|
-
new RegExp(`[./]${format}`, 'i').test(link.url.toString()))
|
|
24957
|
+
new RegExp(`[./]${format}`, 'i').test(link.url.toString())) ||
|
|
24958
|
+
('name' in link && link.name.toLowerCase().includes(format)));
|
|
24944
24959
|
}
|
|
24945
24960
|
function getBadgeColor(linkFormat) {
|
|
24946
24961
|
for (const format in FORMATS) {
|
|
@@ -25493,11 +25508,11 @@ class CarouselComponent {
|
|
|
25493
25508
|
.on('select', this.refreshSteps);
|
|
25494
25509
|
}
|
|
25495
25510
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CarouselComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25496
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CarouselComponent, isStandalone: true, selector: "gn-ui-carousel", inputs: { containerClass: "containerClass", stepsContainerClass: "stepsContainerClass" }, outputs: { currentStepChange: "currentStepChange" }, viewQueries: [{ propertyName: "carouselOverflowContainer", first: true, predicate: ["carouselOverflowContainer"], descendants: true }], ngImport: i0, template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host
|
|
25511
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CarouselComponent, isStandalone: true, selector: "gn-ui-carousel", inputs: { containerClass: "containerClass", stepsContainerClass: "stepsContainerClass" }, outputs: { currentStepChange: "currentStepChange" }, viewQueries: [{ propertyName: "carouselOverflowContainer", first: true, predicate: ["carouselOverflowContainer"], descendants: true }], ngImport: i0, template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host{position:relative;display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PaginationDotsComponent, selector: "gn-ui-pagination-dots", inputs: ["listComponent", "containerClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
25497
25512
|
}
|
|
25498
25513
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CarouselComponent, decorators: [{
|
|
25499
25514
|
type: Component,
|
|
25500
|
-
args: [{ selector: 'gn-ui-carousel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, PaginationDotsComponent], template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host
|
|
25515
|
+
args: [{ selector: 'gn-ui-carousel', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, PaginationDotsComponent], template: "<div #carouselOverflowContainer class=\"w-full\">\n <div class=\"carousel-container flex\" [ngClass]=\"containerClass\">\n <ng-content></ng-content>\n </div>\n</div>\n<gn-ui-pagination-dots\n [containerClass]=\"'absolute ' + stepsContainerClass\"\n [listComponent]=\"this\"\n></gn-ui-pagination-dots>\n", styles: [":host{position:relative;display:block}\n"] }]
|
|
25501
25516
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { carouselOverflowContainer: [{
|
|
25502
25517
|
type: ViewChild,
|
|
25503
25518
|
args: ['carouselOverflowContainer']
|
|
@@ -28653,9 +28668,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28653
28668
|
|
|
28654
28669
|
class ApiCardComponent {
|
|
28655
28670
|
constructor() {
|
|
28671
|
+
this.sizeClassMap = {
|
|
28672
|
+
L: 'gn-ui-card-l py-2 px-5 flex-row',
|
|
28673
|
+
M: 'gn-ui-card-m py-2 px-5 flex-row',
|
|
28674
|
+
S: 'gn-ui-card-s p-4 flex-col',
|
|
28675
|
+
XS: 'gn-ui-card-xs py-2 px-5 flex-row',
|
|
28676
|
+
};
|
|
28677
|
+
this.cardClass = '';
|
|
28656
28678
|
this.currentlyActive = false;
|
|
28657
28679
|
this.openRecordApiForm = new EventEmitter();
|
|
28658
28680
|
}
|
|
28681
|
+
set size(value) {
|
|
28682
|
+
this._size = value;
|
|
28683
|
+
this.cardClass = this.sizeClassMap[value];
|
|
28684
|
+
}
|
|
28685
|
+
get size() {
|
|
28686
|
+
return this._size;
|
|
28687
|
+
}
|
|
28688
|
+
get generatedText() {
|
|
28689
|
+
return this.link.accessServiceProtocol === 'wfs'
|
|
28690
|
+
? 'datahub.search.filter.generatedByWfs'
|
|
28691
|
+
: 'datahub.search.filter.generatedByAPI';
|
|
28692
|
+
}
|
|
28659
28693
|
ngOnInit() {
|
|
28660
28694
|
this.displayApiFormButton =
|
|
28661
28695
|
this.link.accessServiceProtocol === 'ogcFeatures' ||
|
|
@@ -28673,9 +28707,9 @@ class ApiCardComponent {
|
|
|
28673
28707
|
}
|
|
28674
28708
|
}
|
|
28675
28709
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28676
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ApiCardComponent, isStandalone: true, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex
|
|
28710
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ApiCardComponent, isStandalone: true, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink", size: "size" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div>\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i1$4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [
|
|
28677
28711
|
provideIcons({
|
|
28678
|
-
|
|
28712
|
+
iconoirSettings,
|
|
28679
28713
|
}),
|
|
28680
28714
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28681
28715
|
}
|
|
@@ -28689,13 +28723,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28689
28723
|
NgIcon,
|
|
28690
28724
|
], viewProviders: [
|
|
28691
28725
|
provideIcons({
|
|
28692
|
-
|
|
28726
|
+
iconoirSettings,
|
|
28693
28727
|
}),
|
|
28694
|
-
], template: "<div\n class=\"group flex
|
|
28728
|
+
], template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div>\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n" }]
|
|
28695
28729
|
}], propDecorators: { link: [{
|
|
28696
28730
|
type: Input
|
|
28697
28731
|
}], currentLink: [{
|
|
28698
28732
|
type: Input
|
|
28733
|
+
}], size: [{
|
|
28734
|
+
type: Input
|
|
28699
28735
|
}], openRecordApiForm: [{
|
|
28700
28736
|
type: Output
|
|
28701
28737
|
}] } });
|
|
@@ -28756,15 +28792,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28756
28792
|
|
|
28757
28793
|
class DownloadItemComponent {
|
|
28758
28794
|
constructor() {
|
|
28795
|
+
this.sizeClassMap = {
|
|
28796
|
+
L: 'gn-ui-card-l py-2 px-5',
|
|
28797
|
+
M: 'gn-ui-card-m py-2 px-5',
|
|
28798
|
+
S: 'gn-ui-card-s p-4',
|
|
28799
|
+
XS: 'gn-ui-card-xs py-2 px-5',
|
|
28800
|
+
};
|
|
28801
|
+
this.cardClass = '';
|
|
28759
28802
|
this.exportUrl = new EventEmitter();
|
|
28760
28803
|
}
|
|
28804
|
+
set size(value) {
|
|
28805
|
+
this._size = value;
|
|
28806
|
+
this.cardClass = this.sizeClassMap[value];
|
|
28807
|
+
}
|
|
28808
|
+
get size() {
|
|
28809
|
+
return this._size;
|
|
28810
|
+
}
|
|
28761
28811
|
openUrl() {
|
|
28762
28812
|
this.exportUrl.emit(this.link.url.toString());
|
|
28763
28813
|
}
|
|
28764
28814
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DownloadItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28765
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DownloadItemComponent, isStandalone: true, selector: "gn-ui-download-item", inputs: { link: "link", color: "color", format: "format", isFromApi: "isFromApi" }, outputs: { exportUrl: "exportUrl" }, ngImport: i0, template: "<a\n href=\"{{ link.url }}\"\n target=\"_blank\"\n class=\"group flex justify-between card-shadow
|
|
28815
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DownloadItemComponent, isStandalone: true, selector: "gn-ui-download-item", inputs: { link: "link", color: "color", format: "format", isFromApi: "isFromApi", size: "size" }, outputs: { exportUrl: "exportUrl" }, ngImport: i0, template: "<a\n href=\"{{ link.url }}\"\n target=\"_blank\"\n class=\"group flex flex-row justify-between card-shadow cursor-pointer rounded overflow-hidden\"\n rel=\"noopener\"\n [ngClass]=\"cardClass\"\n>\n <div class=\"flex flex-col justify-between\">\n <div class=\"gn-ui-card-title\" [title]=\"link.description || link.name\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n <div class=\"flex flex-row gap-2 items-center pt-1\">\n <span\n class=\"inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded transition-opacity opacity-70 group-hover:opacity-100\"\n [style.background-color]=\"color\"\n data-cy=\"download-format\"\n >{{ format || ('downloads.format.unknown' | translate) }}</span\n >\n <span class=\"text-gray-800 text-xs\" *ngIf=\"isFromApi\" translate=\"\"\n >datahub.search.filter.generatedByAPI</span\n >\n </div>\n </div>\n <div class=\"flex\" [ngClass]=\"size === 'S' ? 'items-end' : 'items-center'\">\n <div class=\"gn-ui-card-icon\">\n <ng-icon\n class=\"inline-block card-icon align-middle\"\n name=\"iconoirDownload\"\n >\n </ng-icon>\n </div>\n </div>\n</a>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [
|
|
28766
28816
|
provideIcons({
|
|
28767
|
-
|
|
28817
|
+
iconoirDownload,
|
|
28768
28818
|
}),
|
|
28769
28819
|
], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28770
28820
|
}
|
|
@@ -28772,9 +28822,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28772
28822
|
type: Component,
|
|
28773
28823
|
args: [{ selector: 'gn-ui-download-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, TranslateModule, NgIcon], standalone: true, viewProviders: [
|
|
28774
28824
|
provideIcons({
|
|
28775
|
-
|
|
28825
|
+
iconoirDownload,
|
|
28776
28826
|
}),
|
|
28777
|
-
], template: "<a\n href=\"{{ link.url }}\"\n target=\"_blank\"\n class=\"group flex justify-between card-shadow
|
|
28827
|
+
], template: "<a\n href=\"{{ link.url }}\"\n target=\"_blank\"\n class=\"group flex flex-row justify-between card-shadow cursor-pointer rounded overflow-hidden\"\n rel=\"noopener\"\n [ngClass]=\"cardClass\"\n>\n <div class=\"flex flex-col justify-between\">\n <div class=\"gn-ui-card-title\" [title]=\"link.description || link.name\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n <div class=\"flex flex-row gap-2 items-center pt-1\">\n <span\n class=\"inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded transition-opacity opacity-70 group-hover:opacity-100\"\n [style.background-color]=\"color\"\n data-cy=\"download-format\"\n >{{ format || ('downloads.format.unknown' | translate) }}</span\n >\n <span class=\"text-gray-800 text-xs\" *ngIf=\"isFromApi\" translate=\"\"\n >datahub.search.filter.generatedByAPI</span\n >\n </div>\n </div>\n <div class=\"flex\" [ngClass]=\"size === 'S' ? 'items-end' : 'items-center'\">\n <div class=\"gn-ui-card-icon\">\n <ng-icon\n class=\"inline-block card-icon align-middle\"\n name=\"iconoirDownload\"\n >\n </ng-icon>\n </div>\n </div>\n</a>\n" }]
|
|
28778
28828
|
}], propDecorators: { link: [{
|
|
28779
28829
|
type: Input
|
|
28780
28830
|
}], color: [{
|
|
@@ -28783,6 +28833,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28783
28833
|
type: Input
|
|
28784
28834
|
}], isFromApi: [{
|
|
28785
28835
|
type: Input
|
|
28836
|
+
}], size: [{
|
|
28837
|
+
type: Input
|
|
28786
28838
|
}], exportUrl: [{
|
|
28787
28839
|
type: Output
|
|
28788
28840
|
}] } });
|
|
@@ -28873,7 +28925,7 @@ class DownloadsListComponent {
|
|
|
28873
28925
|
link.accessServiceProtocol === 'ogcFeatures'));
|
|
28874
28926
|
}
|
|
28875
28927
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DownloadsListComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28876
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DownloadsListComponent, isStandalone: true, selector: "gn-ui-downloads-list", inputs: { links: "links" }, ngImport: i0, template: "<div\n class=\"flex flex-wrap justify-between
|
|
28928
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DownloadsListComponent, isStandalone: true, selector: "gn-ui-downloads-list", inputs: { links: "links" }, ngImport: i0, template: "<div\n class=\"flex flex-wrap justify-between items-center pb-4\"\n *ngIf=\"links && links.length > 0\"\n>\n <div\n class=\"font-title text-xl text-title font-medium mr-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </div>\n <div\n class=\"flex flex-wrap justify-start sm:justify-end\"\n data-cy=\"download-format-filters\"\n >\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-60')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n size=\"L\"\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromApi]=\"isFromApi(link)\"\n ></gn-ui-download-item>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: DownloadItemComponent, selector: "gn-ui-download-item", inputs: ["link", "color", "format", "isFromApi", "size"], outputs: ["exportUrl"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28877
28929
|
}
|
|
28878
28930
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DownloadsListComponent, decorators: [{
|
|
28879
28931
|
type: Component,
|
|
@@ -28882,7 +28934,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
28882
28934
|
ButtonComponent,
|
|
28883
28935
|
DownloadItemComponent,
|
|
28884
28936
|
TranslateModule,
|
|
28885
|
-
], template: "<div\n class=\"flex flex-wrap justify-between
|
|
28937
|
+
], template: "<div\n class=\"flex flex-wrap justify-between items-center pb-4\"\n *ngIf=\"links && links.length > 0\"\n>\n <div\n class=\"font-title text-xl text-title font-medium mr-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </div>\n <div\n class=\"flex flex-wrap justify-start sm:justify-end\"\n data-cy=\"download-format-filters\"\n >\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-60')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n size=\"L\"\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromApi]=\"isFromApi(link)\"\n ></gn-ui-download-item>\n</div>\n" }]
|
|
28886
28938
|
}], ctorParameters: () => [{ type: i1$1.TranslateService }], propDecorators: { links: [{
|
|
28887
28939
|
type: Input
|
|
28888
28940
|
}] } });
|
|
@@ -29166,7 +29218,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
29166
29218
|
|
|
29167
29219
|
class LinkCardComponent {
|
|
29168
29220
|
constructor() {
|
|
29169
|
-
this.
|
|
29221
|
+
this.sizeClassMap = {
|
|
29222
|
+
L: 'gn-ui-card-l py-2 px-5',
|
|
29223
|
+
M: 'gn-ui-card-m py-2 px-5',
|
|
29224
|
+
S: 'gn-ui-card-s p-4',
|
|
29225
|
+
XS: 'gn-ui-card-xs py-2 px-5',
|
|
29226
|
+
};
|
|
29227
|
+
this.cardClass = '';
|
|
29228
|
+
}
|
|
29229
|
+
set size(value) {
|
|
29230
|
+
this._size = value;
|
|
29231
|
+
this.cardClass = this.sizeClassMap[value];
|
|
29232
|
+
}
|
|
29233
|
+
get size() {
|
|
29234
|
+
return this._size;
|
|
29170
29235
|
}
|
|
29171
29236
|
get title() {
|
|
29172
29237
|
if (this.link.name && this.link.description) {
|
|
@@ -29174,25 +29239,31 @@ class LinkCardComponent {
|
|
|
29174
29239
|
}
|
|
29175
29240
|
return this.link.name || this.link.description || '';
|
|
29176
29241
|
}
|
|
29242
|
+
getLinkFormat(link) {
|
|
29243
|
+
return getFileFormat(link);
|
|
29244
|
+
}
|
|
29245
|
+
getLinkColor(link) {
|
|
29246
|
+
return getBadgeColor(getFileFormat(link));
|
|
29247
|
+
}
|
|
29177
29248
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LinkCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
29178
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LinkCardComponent, isStandalone: true, selector: "gn-ui-link-card", inputs: { link: "link",
|
|
29249
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LinkCardComponent, isStandalone: true, selector: "gn-ui-link-card", inputs: { link: "link", size: "size" }, providers: [
|
|
29179
29250
|
provideIcons({
|
|
29180
29251
|
matOpenInNew,
|
|
29181
29252
|
}),
|
|
29182
29253
|
provideNgIconsConfig({ size: '1.5em' }),
|
|
29183
|
-
], ngImport: i0, template: "<a\n [href]=\"link.url\"\n target=\"_blank\"\n class=\"flex flex-
|
|
29254
|
+
], ngImport: i0, template: "<a\n [href]=\"link.url\"\n target=\"_blank\"\n class=\"group flex flex-row justify-between card-shadow cursor-pointer rounded overflow-hidden\"\n [ngClass]=\"cardClass\"\n [title]=\"title\"\n>\n <div class=\"flex flex-col justify-between\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n <p *ngIf=\"!link.name && !link.description\" class=\"gn-ui-card-title\">\n {{ link.url }}\n </p>\n <div class=\"pt-1\">\n <span\n class=\"inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded transition-opacity opacity-70 group-hover:opacity-100\"\n [style.background-color]=\"getLinkColor(link)\"\n data-cy=\"download-format\"\n >{{\n getLinkFormat(link) || ('downloads.format.unknown' | translate)\n }}</span\n >\n </div>\n </div>\n <div class=\"flex\" [ngClass]=\"size === 'S' ? 'items-end' : 'items-center'\">\n <div class=\"gn-ui-card-icon\">\n <ng-icon\n class=\"inline-block card-icon align-middle\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </div>\n </div>\n</a>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29184
29255
|
}
|
|
29185
29256
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LinkCardComponent, decorators: [{
|
|
29186
29257
|
type: Component,
|
|
29187
|
-
args: [{ selector: 'gn-ui-link-card', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIconComponent], providers: [
|
|
29258
|
+
args: [{ selector: 'gn-ui-link-card', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, NgIconComponent, TranslateModule], providers: [
|
|
29188
29259
|
provideIcons({
|
|
29189
29260
|
matOpenInNew,
|
|
29190
29261
|
}),
|
|
29191
29262
|
provideNgIconsConfig({ size: '1.5em' }),
|
|
29192
|
-
], template: "<a\n [href]=\"link.url\"\n target=\"_blank\"\n class=\"flex flex-
|
|
29263
|
+
], template: "<a\n [href]=\"link.url\"\n target=\"_blank\"\n class=\"group flex flex-row justify-between card-shadow cursor-pointer rounded overflow-hidden\"\n [ngClass]=\"cardClass\"\n [title]=\"title\"\n>\n <div class=\"flex flex-col justify-between\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n <p *ngIf=\"!link.name && !link.description\" class=\"gn-ui-card-title\">\n {{ link.url }}\n </p>\n <div class=\"pt-1\">\n <span\n class=\"inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded transition-opacity opacity-70 group-hover:opacity-100\"\n [style.background-color]=\"getLinkColor(link)\"\n data-cy=\"download-format\"\n >{{\n getLinkFormat(link) || ('downloads.format.unknown' | translate)\n }}</span\n >\n </div>\n </div>\n <div class=\"flex\" [ngClass]=\"size === 'S' ? 'items-end' : 'items-center'\">\n <div class=\"gn-ui-card-icon\">\n <ng-icon\n class=\"inline-block card-icon align-middle\"\n name=\"matOpenInNew\"\n ></ng-icon>\n </div>\n </div>\n</a>\n" }]
|
|
29193
29264
|
}], propDecorators: { link: [{
|
|
29194
29265
|
type: Input
|
|
29195
|
-
}],
|
|
29266
|
+
}], size: [{
|
|
29196
29267
|
type: Input
|
|
29197
29268
|
}] } });
|
|
29198
29269
|
|
|
@@ -29234,11 +29305,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
29234
29305
|
|
|
29235
29306
|
class MetadataCatalogComponent {
|
|
29236
29307
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataCatalogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
29237
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataCatalogComponent, isStandalone: true, selector: "gn-ui-metadata-catalog", inputs: { sourceLabel: "sourceLabel" }, ngImport: i0, template: "<div>\n <p class=\"text-gray-
|
|
29308
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MetadataCatalogComponent, isStandalone: true, selector: "gn-ui-metadata-catalog", inputs: { sourceLabel: "sourceLabel" }, ngImport: i0, template: "<div>\n <p class=\"text-gray-900 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29238
29309
|
}
|
|
29239
29310
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MetadataCatalogComponent, decorators: [{
|
|
29240
29311
|
type: Component,
|
|
29241
|
-
args: [{ selector: 'gn-ui-metadata-catalog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [TranslateModule], template: "<div>\n <p class=\"text-gray-
|
|
29312
|
+
args: [{ selector: 'gn-ui-metadata-catalog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [TranslateModule], template: "<div>\n <p class=\"text-gray-900 text-xs mb-3 uppercase\" translate>\n record.metadata.catalog\n </p>\n <p class=\"text-primary font-title text-21 mb-1\">\n {{ sourceLabel }}\n </p>\n</div>\n" }]
|
|
29242
29313
|
}], propDecorators: { sourceLabel: [{
|
|
29243
29314
|
type: Input
|
|
29244
29315
|
}] } });
|
|
@@ -29639,7 +29710,7 @@ class RecordApiFormComponent {
|
|
|
29639
29710
|
maxFeatures: limit !== '-1' ? Number(limit) : undefined,
|
|
29640
29711
|
limit: limit !== '-1' ? Number(limit) : -1,
|
|
29641
29712
|
offset: offset !== '' ? Number(offset) : undefined,
|
|
29642
|
-
outputCrs: format
|
|
29713
|
+
outputCrs: format.toLowerCase().indexOf('json') > -1 ? 'EPSG:4326' : undefined,
|
|
29643
29714
|
};
|
|
29644
29715
|
if (this.endpoint instanceof WfsEndpoint) {
|
|
29645
29716
|
delete options.limit;
|
|
@@ -29647,6 +29718,7 @@ class RecordApiFormComponent {
|
|
|
29647
29718
|
return this.endpoint.getFeatureUrl(this.apiFeatureType, options);
|
|
29648
29719
|
}
|
|
29649
29720
|
else {
|
|
29721
|
+
delete options.outputCrs;
|
|
29650
29722
|
return await this.endpoint.getCollectionItemsUrl(this.apiFeatureType, options);
|
|
29651
29723
|
}
|
|
29652
29724
|
}
|