geonetwork-ui 2.8.0-dev.749c3ea3b → 2.8.0-dev.82b7031fa
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/api/metadata-converter/src/lib/common/resource-types.mjs +6 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +6 -4
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +2 -1
- package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +2 -2
- package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +3 -3
- package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +2 -2
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +1 -1
- package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +4 -4
- package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +1 -1
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +3 -3
- package/esm2022/libs/feature/record/src/lib/stac-view/stac-view.component.mjs +140 -48
- package/esm2022/libs/feature/record/src/lib/stac-view/utils.mjs +26 -0
- package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +2 -2
- package/esm2022/libs/feature/search/src/lib/constants.mjs +2 -1
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +36 -22
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +2 -1
- package/esm2022/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.mjs +3 -3
- package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +86 -32
- package/esm2022/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.mjs +1 -1
- package/esm2022/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.mjs +3 -3
- package/esm2022/translations/de.json +2 -0
- package/esm2022/translations/en.json +2 -0
- package/esm2022/translations/es.json +2 -0
- package/esm2022/translations/fr.json +2 -0
- package/esm2022/translations/it.json +2 -0
- package/esm2022/translations/nl.json +2 -0
- package/esm2022/translations/pt.json +2 -0
- package/esm2022/translations/sk.json +2 -0
- package/fesm2022/{geonetwork-ui-date-locales-MYnkDJ5h.mjs → geonetwork-ui-date-locales-DhlIiWpT.mjs} +2 -2
- package/fesm2022/{geonetwork-ui-date-locales-MYnkDJ5h.mjs.map → geonetwork-ui-date-locales-DhlIiWpT.mjs.map} +1 -1
- package/fesm2022/geonetwork-ui.mjs +345 -137
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts +3 -0
- package/libs/api/metadata-converter/src/lib/common/resource-types.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +5 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts +12 -5
- package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts +3 -1
- package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +5 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/stac-view/stac-view.component.d.ts +25 -7
- package/libs/feature/record/src/lib/stac-view/stac-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/stac-view/utils.d.ts +7 -0
- package/libs/feature/record/src/lib/stac-view/utils.d.ts.map +1 -0
- package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +24 -14
- package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +11 -0
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +11 -3
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +1 -0
- package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +1 -0
- package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +5 -1
- package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +10 -8
- package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +1 -1
- package/src/libs/feature/record/src/lib/map-view/map-view.component.html +1 -2
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +5 -2
- package/src/libs/feature/record/src/lib/stac-view/stac-view.component.css +5 -0
- package/src/libs/feature/record/src/lib/stac-view/stac-view.component.html +27 -8
- package/src/libs/feature/record/src/lib/stac-view/stac-view.component.ts +201 -52
- package/src/libs/feature/record/src/lib/stac-view/utils.ts +57 -0
- package/src/libs/feature/record/src/lib/state/mdview.effects.ts +1 -1
- package/src/libs/feature/search/src/lib/constants.ts +1 -0
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +1 -0
- package/src/libs/feature/search/src/lib/utils/service/fields.ts +37 -33
- package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.html +3 -3
- package/src/libs/ui/map/src/lib/components/map-container/map-container.component.html +16 -14
- package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +144 -65
- package/translations/de.json +2 -0
- package/translations/en.json +2 -0
- package/translations/es.json +2 -0
- package/translations/fr.json +2 -0
- package/translations/it.json +2 -0
- package/translations/nl.json +2 -0
- package/translations/pt.json +2 -0
- package/translations/sk.json +2 -0
|
@@ -2,9 +2,11 @@ import {
|
|
|
2
2
|
AfterViewInit,
|
|
3
3
|
ChangeDetectionStrategy,
|
|
4
4
|
Component,
|
|
5
|
+
DestroyRef,
|
|
5
6
|
ElementRef,
|
|
6
7
|
EventEmitter,
|
|
7
8
|
Inject,
|
|
9
|
+
inject,
|
|
8
10
|
Input,
|
|
9
11
|
OnChanges,
|
|
10
12
|
Output,
|
|
@@ -13,6 +15,7 @@ import {
|
|
|
13
15
|
} from '@angular/core'
|
|
14
16
|
import { fromEvent, merge, Observable, of, timer } from 'rxjs'
|
|
15
17
|
import { delay, map, startWith, switchMap } from 'rxjs/operators'
|
|
18
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop'
|
|
16
19
|
import { CommonModule } from '@angular/common'
|
|
17
20
|
import { TranslateDirective } from '@ngx-translate/core'
|
|
18
21
|
import {
|
|
@@ -24,10 +27,13 @@ import {
|
|
|
24
27
|
FeaturesHoverEventType,
|
|
25
28
|
MapClickEvent,
|
|
26
29
|
MapClickEventType,
|
|
30
|
+
MapExtentChangeEvent,
|
|
31
|
+
MapExtentChangeEventType,
|
|
27
32
|
MapContext,
|
|
28
33
|
MapContextLayer,
|
|
29
34
|
MapContextLayerXyz,
|
|
30
35
|
MapContextView,
|
|
36
|
+
MapEventsByType,
|
|
31
37
|
SourceLoadErrorEvent,
|
|
32
38
|
SourceLoadErrorType,
|
|
33
39
|
} from '@geospatial-sdk/core'
|
|
@@ -49,6 +55,7 @@ import {
|
|
|
49
55
|
provideNgIconsConfig,
|
|
50
56
|
} from '@ng-icons/core'
|
|
51
57
|
import { matSwipeOutline } from '@ng-icons/material-icons/outline'
|
|
58
|
+
import { transformExtent } from 'ol/proj'
|
|
52
59
|
|
|
53
60
|
const DEFAULT_BASEMAP_LAYER: MapContextLayerXyz = {
|
|
54
61
|
type: 'xyz',
|
|
@@ -61,6 +68,11 @@ const DEFAULT_VIEW: MapContextView = {
|
|
|
61
68
|
zoom: 2,
|
|
62
69
|
}
|
|
63
70
|
|
|
71
|
+
interface MapViewConstraints {
|
|
72
|
+
maxZoom?: number
|
|
73
|
+
maxExtent?: Extent
|
|
74
|
+
}
|
|
75
|
+
|
|
64
76
|
@Component({
|
|
65
77
|
selector: 'gn-ui-map-container',
|
|
66
78
|
templateUrl: './map-container.component.html',
|
|
@@ -78,86 +90,151 @@ const DEFAULT_VIEW: MapContextView = {
|
|
|
78
90
|
export class MapContainerComponent implements AfterViewInit, OnChanges {
|
|
79
91
|
@Input() context: MapContext | null
|
|
80
92
|
|
|
81
|
-
|
|
82
|
-
|
|
93
|
+
@ViewChild('map') container: ElementRef
|
|
94
|
+
|
|
95
|
+
private olMap: OlMap
|
|
96
|
+
private olMapResolver: (value: OlMap) => void
|
|
97
|
+
private destroyRef: DestroyRef
|
|
98
|
+
|
|
99
|
+
displayMessage$: Observable<boolean>
|
|
100
|
+
openlayersMap = new Promise<OlMap>((resolve) => {
|
|
101
|
+
this.olMapResolver = resolve
|
|
102
|
+
})
|
|
103
|
+
|
|
104
|
+
// These events only get registered on the map if they are used
|
|
105
|
+
_featuresClick: EventEmitter<Feature[]> = null
|
|
106
|
+
_featuresHover: EventEmitter<Feature[]> = null
|
|
107
|
+
_mapClick: EventEmitter<[number, number]> = null
|
|
108
|
+
_extentChange: EventEmitter<Extent> = null
|
|
109
|
+
_sourceLoadError: EventEmitter<SourceLoadErrorEvent> = null
|
|
110
|
+
_resolvedExtentChange: EventEmitter<Extent> = null
|
|
111
|
+
|
|
83
112
|
@Output() get featuresClick() {
|
|
84
113
|
if (!this._featuresClick) {
|
|
85
|
-
this.
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
)
|
|
92
|
-
})
|
|
114
|
+
this.setupEventListener(
|
|
115
|
+
FeaturesClickEventType,
|
|
116
|
+
(event: FeaturesClickEvent) => {
|
|
117
|
+
this._featuresClick.emit(event.features)
|
|
118
|
+
}
|
|
119
|
+
)
|
|
93
120
|
this._featuresClick = new EventEmitter<Feature[]>()
|
|
94
121
|
}
|
|
95
122
|
return this._featuresClick
|
|
96
123
|
}
|
|
97
|
-
|
|
124
|
+
|
|
98
125
|
@Output() get featuresHover() {
|
|
99
126
|
if (!this._featuresHover) {
|
|
100
|
-
this.
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
)
|
|
107
|
-
})
|
|
127
|
+
this.setupEventListener(
|
|
128
|
+
FeaturesHoverEventType,
|
|
129
|
+
(event: FeaturesHoverEvent) => {
|
|
130
|
+
this._featuresHover.emit(event.features)
|
|
131
|
+
}
|
|
132
|
+
)
|
|
108
133
|
this._featuresHover = new EventEmitter<Feature[]>()
|
|
109
134
|
}
|
|
110
135
|
return this._featuresHover
|
|
111
136
|
}
|
|
112
|
-
|
|
137
|
+
|
|
113
138
|
@Output() get mapClick() {
|
|
114
139
|
if (!this._mapClick) {
|
|
115
|
-
this.
|
|
116
|
-
|
|
117
|
-
this._mapClick.emit(coordinate)
|
|
118
|
-
)
|
|
140
|
+
this.setupEventListener(MapClickEventType, (event: MapClickEvent) => {
|
|
141
|
+
this._mapClick.emit(event.coordinate)
|
|
119
142
|
})
|
|
120
143
|
this._mapClick = new EventEmitter<[number, number]>()
|
|
121
144
|
}
|
|
122
145
|
return this._mapClick
|
|
123
146
|
}
|
|
124
|
-
|
|
147
|
+
|
|
148
|
+
@Output() get extentChange() {
|
|
149
|
+
if (!this._extentChange) {
|
|
150
|
+
this.setupEventListener(
|
|
151
|
+
MapExtentChangeEventType,
|
|
152
|
+
(event: MapExtentChangeEvent) => {
|
|
153
|
+
this._extentChange.emit(event.extent as Extent)
|
|
154
|
+
}
|
|
155
|
+
)
|
|
156
|
+
this._extentChange = new EventEmitter<Extent>()
|
|
157
|
+
}
|
|
158
|
+
return this._extentChange
|
|
159
|
+
}
|
|
160
|
+
|
|
125
161
|
@Output() get sourceLoadError() {
|
|
126
162
|
if (!this._sourceLoadError) {
|
|
127
|
-
this.
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
163
|
+
this.setupEventListener(
|
|
164
|
+
SourceLoadErrorType,
|
|
165
|
+
(event: SourceLoadErrorEvent) => {
|
|
166
|
+
this._sourceLoadError.emit(event)
|
|
167
|
+
}
|
|
168
|
+
)
|
|
132
169
|
this._sourceLoadError = new EventEmitter<SourceLoadErrorEvent>()
|
|
133
170
|
}
|
|
134
171
|
return this._sourceLoadError
|
|
135
172
|
}
|
|
136
173
|
|
|
137
|
-
@
|
|
138
|
-
|
|
139
|
-
|
|
174
|
+
@Output() get resolvedExtentChange() {
|
|
175
|
+
if (!this._resolvedExtentChange) {
|
|
176
|
+
this._resolvedExtentChange = new EventEmitter<Extent>()
|
|
177
|
+
}
|
|
178
|
+
return this._resolvedExtentChange
|
|
179
|
+
}
|
|
140
180
|
|
|
141
181
|
constructor(
|
|
142
182
|
@Inject(DO_NOT_USE_DEFAULT_BASEMAP) private doNotUseDefaultBasemap: boolean,
|
|
143
183
|
@Inject(BASEMAP_LAYERS) private basemapLayers: MapContextLayer[],
|
|
144
184
|
@Inject(MAP_VIEW_CONSTRAINTS)
|
|
145
|
-
private mapViewConstraints:
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
) {}
|
|
185
|
+
private mapViewConstraints: MapViewConstraints
|
|
186
|
+
) {
|
|
187
|
+
this.destroyRef = inject(DestroyRef)
|
|
188
|
+
}
|
|
150
189
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
190
|
+
calculateCurrentMapExtent(): Extent {
|
|
191
|
+
const extent = this.olMap.getView().calculateExtent(this.olMap.getSize())
|
|
192
|
+
const reprojectedExtent = transformExtent(
|
|
193
|
+
extent,
|
|
194
|
+
this.olMap.getView().getProjection(),
|
|
195
|
+
'EPSG:4326'
|
|
196
|
+
)
|
|
197
|
+
|
|
198
|
+
return reprojectedExtent as Extent
|
|
199
|
+
}
|
|
155
200
|
|
|
156
201
|
async ngAfterViewInit() {
|
|
157
202
|
this.olMap = await createMapFromContext(
|
|
158
203
|
this.processContext(this.context),
|
|
159
204
|
this.container.nativeElement
|
|
160
205
|
)
|
|
206
|
+
if (this._resolvedExtentChange) {
|
|
207
|
+
this._resolvedExtentChange.emit(this.calculateCurrentMapExtent())
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
this.setupDisplayMessageObservable()
|
|
211
|
+
this.olMapResolver(this.olMap)
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
async ngOnChanges(changes: SimpleChanges) {
|
|
215
|
+
if ('context' in changes && !changes['context'].isFirstChange()) {
|
|
216
|
+
const diff = computeMapContextDiff(
|
|
217
|
+
this.processContext(changes['context'].currentValue),
|
|
218
|
+
this.processContext(changes['context'].previousValue)
|
|
219
|
+
)
|
|
220
|
+
await applyContextDiffToMap(this.olMap, diff)
|
|
221
|
+
|
|
222
|
+
if (this._resolvedExtentChange && diff.viewChanges) {
|
|
223
|
+
this._resolvedExtentChange.emit(this.calculateCurrentMapExtent())
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
private setupEventListener(
|
|
229
|
+
eventType: keyof MapEventsByType,
|
|
230
|
+
handler: (event: MapEventsByType[typeof eventType]) => void
|
|
231
|
+
) {
|
|
232
|
+
this.openlayersMap.then((olMap: OlMap) => {
|
|
233
|
+
listen(olMap, eventType, handler)
|
|
234
|
+
})
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
private setupDisplayMessageObservable() {
|
|
161
238
|
this.displayMessage$ = merge(
|
|
162
239
|
fromEvent(this.olMap, 'mapmuted').pipe(map(() => true)),
|
|
163
240
|
fromEvent(this.olMap, 'movestart').pipe(map(() => false)),
|
|
@@ -171,32 +248,25 @@ export class MapContainerComponent implements AfterViewInit, OnChanges {
|
|
|
171
248
|
delay(400)
|
|
172
249
|
)
|
|
173
250
|
: of(false)
|
|
174
|
-
)
|
|
251
|
+
),
|
|
252
|
+
takeUntilDestroyed(this.destroyRef)
|
|
175
253
|
)
|
|
176
|
-
this.olMapResolver(this.olMap)
|
|
177
254
|
}
|
|
178
255
|
|
|
179
|
-
|
|
180
|
-
if ('context' in changes && !changes['context'].isFirstChange()) {
|
|
181
|
-
const diff = computeMapContextDiff(
|
|
182
|
-
this.processContext(changes['context'].currentValue),
|
|
183
|
-
this.processContext(changes['context'].previousValue)
|
|
184
|
-
)
|
|
185
|
-
await applyContextDiffToMap(this.olMap, diff)
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
// This will apply basemap layers & view constraints
|
|
190
|
-
processContext(context: MapContext): MapContext {
|
|
256
|
+
private processContext(context: MapContext): MapContext {
|
|
191
257
|
const processed = context
|
|
192
258
|
? { ...context, view: context.view ?? DEFAULT_VIEW }
|
|
193
259
|
: { layers: [], view: DEFAULT_VIEW }
|
|
260
|
+
|
|
261
|
+
// Prepend with default basemap and basemap layers
|
|
194
262
|
if (this.basemapLayers.length) {
|
|
195
263
|
processed.layers = [...this.basemapLayers, ...processed.layers]
|
|
196
264
|
}
|
|
197
265
|
if (!this.doNotUseDefaultBasemap) {
|
|
198
266
|
processed.layers = [DEFAULT_BASEMAP_LAYER, ...processed.layers]
|
|
199
267
|
}
|
|
268
|
+
|
|
269
|
+
// Apply view constraints
|
|
200
270
|
if (this.mapViewConstraints.maxZoom) {
|
|
201
271
|
processed.view = {
|
|
202
272
|
maxZoom: this.mapViewConstraints.maxZoom,
|
|
@@ -209,20 +279,29 @@ export class MapContainerComponent implements AfterViewInit, OnChanges {
|
|
|
209
279
|
...processed.view,
|
|
210
280
|
}
|
|
211
281
|
}
|
|
282
|
+
|
|
212
283
|
if (
|
|
213
284
|
processed.view &&
|
|
214
|
-
|
|
215
|
-
|
|
285
|
+
'zoom' in processed.view &&
|
|
286
|
+
'center' in processed.view
|
|
216
287
|
) {
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
288
|
+
return processed
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
if (processed.view && 'extent' in processed.view) {
|
|
292
|
+
return processed
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
// Ensure valid view
|
|
296
|
+
if (this.mapViewConstraints.maxExtent) {
|
|
297
|
+
processed.view = {
|
|
298
|
+
extent: this.mapViewConstraints.maxExtent,
|
|
299
|
+
...processed.view,
|
|
224
300
|
}
|
|
301
|
+
} else {
|
|
302
|
+
processed.view = { ...DEFAULT_VIEW, ...processed.view }
|
|
225
303
|
}
|
|
304
|
+
|
|
226
305
|
return processed
|
|
227
306
|
}
|
|
228
307
|
}
|
package/translations/de.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "",
|
|
602
602
|
"search.filters.publicationYear": "Veröffentlichungsjahr",
|
|
603
603
|
"search.filters.publisherOrg": "",
|
|
604
|
+
"search.filters.recordKind": "Type",
|
|
604
605
|
"search.filters.recordKind.all": "Alle",
|
|
605
606
|
"search.filters.recordKind.dataset": "Datensätze",
|
|
606
607
|
"search.filters.recordKind.reuse": "Wiederverwendungen",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "",
|
|
640
641
|
"share.tab.permalink": "Teilen",
|
|
641
642
|
"share.tab.webComponent": "Integrieren",
|
|
643
|
+
"stac.filter.enable": "",
|
|
642
644
|
"stac.filter.reset": "",
|
|
643
645
|
"stac.results.noResults": "Ihre Suchfilter lieferten keine Ergebnisse",
|
|
644
646
|
"table.loading.data": "Daten werden geladen...",
|
package/translations/en.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "Producer",
|
|
602
602
|
"search.filters.publicationYear": "Publication year",
|
|
603
603
|
"search.filters.publisherOrg": "Publisher",
|
|
604
|
+
"search.filters.recordKind": "Type",
|
|
604
605
|
"search.filters.recordKind.all": "All",
|
|
605
606
|
"search.filters.recordKind.dataset": "Datasets",
|
|
606
607
|
"search.filters.recordKind.reuse": "Reuses",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "Spatial extent",
|
|
640
641
|
"share.tab.permalink": "Share",
|
|
641
642
|
"share.tab.webComponent": "Integrate",
|
|
643
|
+
"stac.filter.enable": "Enable dynamic filter on spatial extent",
|
|
642
644
|
"stac.filter.reset": "Reset filters",
|
|
643
645
|
"stac.results.noResults": "Your search filters did not match any items",
|
|
644
646
|
"table.loading.data": "Loading data...",
|
package/translations/es.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "",
|
|
602
602
|
"search.filters.publicationYear": "",
|
|
603
603
|
"search.filters.publisherOrg": "",
|
|
604
|
+
"search.filters.recordKind": "Typo",
|
|
604
605
|
"search.filters.recordKind.all": "Todos",
|
|
605
606
|
"search.filters.recordKind.dataset": "",
|
|
606
607
|
"search.filters.recordKind.reuse": "",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "",
|
|
640
641
|
"share.tab.permalink": "",
|
|
641
642
|
"share.tab.webComponent": "",
|
|
643
|
+
"stac.filter.enable": "",
|
|
642
644
|
"stac.filter.reset": "",
|
|
643
645
|
"stac.results.noResults": "",
|
|
644
646
|
"table.loading.data": "",
|
package/translations/fr.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "Producteur",
|
|
602
602
|
"search.filters.publicationYear": "Année de publication",
|
|
603
603
|
"search.filters.publisherOrg": "Distributeur",
|
|
604
|
+
"search.filters.recordKind": "Type",
|
|
604
605
|
"search.filters.recordKind.all": "Tous",
|
|
605
606
|
"search.filters.recordKind.dataset": "Jeux de données",
|
|
606
607
|
"search.filters.recordKind.reuse": "Réutilisations",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "Etendue spatiale",
|
|
640
641
|
"share.tab.permalink": "Partager",
|
|
641
642
|
"share.tab.webComponent": "Intégrer",
|
|
643
|
+
"stac.filter.enable": "Activer le filtre dynamique sur l’emprise spatiale",
|
|
642
644
|
"stac.filter.reset": "Réinitialiser les filtres",
|
|
643
645
|
"stac.results.noResults": "Vos filtres ne permettent pas d’afficher de résultats",
|
|
644
646
|
"table.loading.data": "Chargement des données...",
|
package/translations/it.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "Produttore",
|
|
602
602
|
"search.filters.publicationYear": "Anno di pubblicazione",
|
|
603
603
|
"search.filters.publisherOrg": "Distributore",
|
|
604
|
+
"search.filters.recordKind": "",
|
|
604
605
|
"search.filters.recordKind.all": "Tutti",
|
|
605
606
|
"search.filters.recordKind.dataset": "Dataset",
|
|
606
607
|
"search.filters.recordKind.reuse": "Riutilizzi",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "Estensione spaziale",
|
|
640
641
|
"share.tab.permalink": "Condividere",
|
|
641
642
|
"share.tab.webComponent": "Incorporare",
|
|
643
|
+
"stac.filter.enable": "",
|
|
642
644
|
"stac.filter.reset": "",
|
|
643
645
|
"stac.results.noResults": "",
|
|
644
646
|
"table.loading.data": "Caricamento dei dati...",
|
package/translations/nl.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "",
|
|
602
602
|
"search.filters.publicationYear": "",
|
|
603
603
|
"search.filters.publisherOrg": "",
|
|
604
|
+
"search.filters.recordKind": "",
|
|
604
605
|
"search.filters.recordKind.all": "Alles",
|
|
605
606
|
"search.filters.recordKind.dataset": "",
|
|
606
607
|
"search.filters.recordKind.reuse": "",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "",
|
|
640
641
|
"share.tab.permalink": "",
|
|
641
642
|
"share.tab.webComponent": "",
|
|
643
|
+
"stac.filter.enable": "",
|
|
642
644
|
"stac.filter.reset": "",
|
|
643
645
|
"stac.results.noResults": "",
|
|
644
646
|
"table.loading.data": "",
|
package/translations/pt.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "",
|
|
602
602
|
"search.filters.publicationYear": "",
|
|
603
603
|
"search.filters.publisherOrg": "",
|
|
604
|
+
"search.filters.recordKind": "",
|
|
604
605
|
"search.filters.recordKind.all": "Todos",
|
|
605
606
|
"search.filters.recordKind.dataset": "",
|
|
606
607
|
"search.filters.recordKind.reuse": "",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "",
|
|
640
641
|
"share.tab.permalink": "",
|
|
641
642
|
"share.tab.webComponent": "",
|
|
643
|
+
"stac.filter.enable": "",
|
|
642
644
|
"stac.filter.reset": "",
|
|
643
645
|
"stac.results.noResults": "",
|
|
644
646
|
"table.loading.data": "",
|
package/translations/sk.json
CHANGED
|
@@ -601,6 +601,7 @@
|
|
|
601
601
|
"search.filters.producerOrg": "",
|
|
602
602
|
"search.filters.publicationYear": "Rok zverejnenia",
|
|
603
603
|
"search.filters.publisherOrg": "",
|
|
604
|
+
"search.filters.recordKind": "",
|
|
604
605
|
"search.filters.recordKind.all": "Všetky",
|
|
605
606
|
"search.filters.recordKind.dataset": "",
|
|
606
607
|
"search.filters.recordKind.reuse": "",
|
|
@@ -639,6 +640,7 @@
|
|
|
639
640
|
"service.metadata.spatialExtent": "",
|
|
640
641
|
"share.tab.permalink": "Zdieľať",
|
|
641
642
|
"share.tab.webComponent": "Integrovať",
|
|
643
|
+
"stac.filter.enable": "",
|
|
642
644
|
"stac.filter.reset": "",
|
|
643
645
|
"stac.results.noResults": "",
|
|
644
646
|
"table.loading.data": "Načítanie údajov...",
|