From 33450ff44e79ee9dff307d5dd05be0054957f0f3 Mon Sep 17 00:00:00 2001 From: Andrew Anderson Date: Fri, 21 Nov 2025 12:33:30 -0800 Subject: [PATCH 01/34] DS-6299 Displacement Search should not allow polar map views (#2365) * DS-6299 Only Equatorial view is valid for Displacement Searches * DS-D299 Added fix to switch to equatorial view if a polar view is currently active, when a user switches to a Displacement view --- .../view-selector/view-selector.component.html | 2 ++ .../view-selector/view-selector.component.ts | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/app/components/map/map-controls/view-selector/view-selector.component.html b/src/app/components/map/map-controls/view-selector/view-selector.component.html index 4b0c22806..1851d0ae1 100644 --- a/src/app/components/map/map-controls/view-selector/view-selector.component.html +++ b/src/app/components/map/map-controls/view-selector/view-selector.component.html @@ -30,6 +30,7 @@ aria-label="Arctic map projection" (click)="onArcticSelected()" [value]="types.ARCTIC" + [disabled]="isDisplacementSearch" > { + this.isDisplacementSearch = searchType === SearchType.DISPLACEMENT; + + // Auto-switch to equatorial view if switching to Displacement Search from a polar view + if (this.isDisplacementSearch && + (this.view === MapViewType.ARCTIC || this.view === MapViewType.ANTARCTIC)) { + this.store$.dispatch(new mapStore.SetMapView(MapViewType.EQUATORIAL)); + } + }), + ); } public onArcticSelected = () => this.onNewProjection(MapViewType.ARCTIC); From 67c4d844328003b9dc306baa3fdf1e49ea431c49 Mon Sep 17 00:00:00 2001 From: ASF Discovery Machine User <60239462+ASF-Discovery@users.noreply.github.com> Date: Mon, 1 Dec 2025 17:30:43 -0500 Subject: [PATCH 02/34] Updated translations from Phrase (#2337) * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state --------- Co-authored-by: Andrew Anderson Co-authored-by: yoreley777 --- src/assets/i18n/en.json | 5 ++++- src/assets/i18n/es.json | 9 ++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index df21b5fe9..dd1df3e22 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -29,6 +29,7 @@ "ADD_SCENE_FILES_TO_DOWNLOADS": "Add scene files to downloads", "ADD_SIDE_POLARIZATION_TO_SEARCH": "Add side polarization to search", "ADD_TO_ON_DEMAND_QUEUE": "Add to On Demand queue", + "ADDITIONAL": "additional", "ADDITIONAL_DRAWING_TOOL_OPTIONS_ARE_AVAILABLE_IN_THE_TOOLBAR_INCLUDING_POINT_LINESTRING_AND_POLYGON_OPTIONS": "Additional drawing tool options are available in the toolbar, including point, linestring, and polygon options.", "ADDITIONAL_FILTERS": "Additional Filters", "ADJUST_OVERLAY_OPACITY": "Adjust Overlay Opacity", @@ -71,6 +72,7 @@ "AREA_OF_INTEREST_WKT": "Area of Interest • WKT", "ARIA_INGEST_DOCS": "ARIA On Demand Ingest Documentation", "ARIA_VERSION": "ARIA Version", + "ARIAS1GUNW_JOB_TYPE_DESC": "ARIA Sentinel-1 Geocoded Unwrapped Interferogram (ARIA-S1-GUNW) products are a standardized product that provide CF-Compliant 90-m pixel spacing interferometric SAR (InSAR) data ideal for simplified ground displacement measurements. [MORE](https://hyp3-docs.asf.alaska.edu/guides/gunw_product_guide/#aria-sentinel-1-gunw-product-guide)", "ARROW_BACKWARD": "arrow_backward", "ARROW_FORWARD": "arrow_forward", "ASCENDING": "Ascending", @@ -247,6 +249,7 @@ "DISPLAYED_IF_YOU_WISH_TO_UNDO_THIS_ACTION": "displayed if you wish to undo this action.", "DISPLAYED_IN_THE_SEARCH_MENU_AT_THE_TOP_YOU_CAN_ACCESS_ALL_OF_THE_HIDDEN_FILTERS_BY": "displayed in the search menu at the top. You can access all of the hidden filters by", "DO_YOU_WANT_TO_DELETE_ALL_SERIES": "Do you want to delete all series?", + "DOCUMENTATION": "Documentation", "DONE": "Done", "DOWNLOAD": "Download", "DOWNLOAD_ALL": "Download All", @@ -1019,4 +1022,4 @@ "ZOOM_TO_FIT": "Zoom To Fit", "ZOOM_TO_RESULTS": "Zoom to results", "ZOOM_TO_SCENE": "Zoom to scene" -} +} \ No newline at end of file diff --git a/src/assets/i18n/es.json b/src/assets/i18n/es.json index 95e05335e..35ff0ce2b 100644 --- a/src/assets/i18n/es.json +++ b/src/assets/i18n/es.json @@ -29,6 +29,7 @@ "ADD_SCENE_FILES_TO_DOWNLOADS": "Agregar archivos de escena a las descargas", "ADD_SIDE_POLARIZATION_TO_SEARCH": "Agregar polarización lateral a la búsqueda", "ADD_TO_ON_DEMAND_QUEUE": "Añadir a la lista On Demand", + "ADDITIONAL": "adicional", "ADDITIONAL_DRAWING_TOOL_OPTIONS_ARE_AVAILABLE_IN_THE_TOOLBAR_INCLUDING_POINT_LINESTRING_AND_POLYGON_OPTIONS": "Las opciones de herramientas de dibujo adicionales están disponibles en la barra de herramientas, incluidas las opciones de punto, cadena de líneas y polígono.", "ADDITIONAL_FILTERS": "Filtros Adicionales", "ADJUST_OVERLAY_OPACITY": "Ajustar opacidad de superposición", @@ -69,8 +70,9 @@ "AREA_OF_INTEREST": "Área de Interés", "AREA_OF_INTEREST_OPTIONS": "Opciones de Área de Interés", "AREA_OF_INTEREST_WKT": "Área de Interés • WKT", - "ARIA_INGEST_DOCS": "Documentación de ingesta de ARIA On Demand", + "ARIA_INGEST_DOCS": "Documentación de Ingesta de ARIA On Demand", "ARIA_VERSION": "Versión ARIA", + "ARIAS1GUNW_JOB_TYPE_DESC": "Los productos ARIA Sentinel-1 Geocoded Unwrapped Interferogram (ARIA-S1-GUNW) son un producto estandarizado que proporciona datos de interferometría SAR (InSAR) con separación de píxel de 90 m conforme a CF, ideales para mediciones simplificadas de desplazamiento del terreno. [MÁS](https://hyp3-docs.asf.alaska.edu/guides/gunw_product_guide/#aria-sentinel-1-gunw-product-guide)", "ARROW_BACKWARD": "flecha_hacia atrás", "ARROW_FORWARD": "flecha_adelante", "ASCENDING": "Ascendente", @@ -247,6 +249,7 @@ "DISPLAYED_IF_YOU_WISH_TO_UNDO_THIS_ACTION": "aparecerá si desea deshacer esta acción.", "DISPLAYED_IN_THE_SEARCH_MENU_AT_THE_TOP_YOU_CAN_ACCESS_ALL_OF_THE_HIDDEN_FILTERS_BY": "que se muestra en el menú de búsqueda en la parte superior. ", "DO_YOU_WANT_TO_DELETE_ALL_SERIES": "¿Quieres eliminar todas las series?", + "DOCUMENTATION": "Documentación", "DONE": "Hecho", "DOWNLOAD": "Descargar", "DOWNLOAD_ALL": "Descargar todo", @@ -444,7 +447,7 @@ "JOB": "trabajo", "JOB_FILTERS": "Filtros de Trabajo", "JOB_IDS_SELECTOR": "Selector de ID de tareas", - "JOB_INGEST_PROCESSING": "El trabajo On Demand se está procesando actualmente; Los metadatos de la escena estarán disponibles una vez que se complete el trabajo.", + "JOB_INGEST_PROCESSING": "El trabajo de On Demand se está procesando actualmente; los metadatos de la escena estarán disponibles una vez que el trabajo haya finalizado.", "JOB_MAX": "trabajos Max", "JOB_STATUS": "Estado del Trabajo", "JOB_SUBMITTED": "Trabajo Enviado", @@ -1020,4 +1023,4 @@ "ZOOM_TO_FIT": "Acercar para ajustar", "ZOOM_TO_RESULTS": "Acercar a los resultados", "ZOOM_TO_SCENE": "Acercar a la escena" -} +} \ No newline at end of file From 679e3976f23cd7a538ab47490886a10394bb6495 Mon Sep 17 00:00:00 2001 From: ASF Discovery Machine User <60239462+ASF-Discovery@users.noreply.github.com> Date: Mon, 1 Dec 2025 19:20:51 -0500 Subject: [PATCH 03/34] Updated translations from Phrase (#2367) * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state * Updated translations from Phrase phrase: update src/assets/i18n/en.json to latest state phrase: update src/assets/i18n/es.json to latest state phrase: update src/assets/i18n/de.json to latest state --------- Co-authored-by: Andrew Anderson Co-authored-by: yoreley777 --- src/assets/i18n/en.json | 1 + src/assets/i18n/es.json | 1 + 2 files changed, 2 insertions(+) diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index dd1df3e22..f2f617991 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -683,6 +683,7 @@ "READ_OUR_USER_GUIDE": "Read Our User Guide", "READ_THE_VERTEX_USER_GUIDE_INCLUDING_SECTIONS_ON_GETTING_STARTED_BASELINE_SEARCHES": "Read the Vertex User Guide, including sections on Getting Started, Baseline Searches,", "READABLE_SIZE_FROM_BYTES": "| readableSizeFromBytes", + "RECOMMENDED_PRODUCT": "Recommended Product", "REFERENCE": "Reference", "REFERENCE_SCENE": "reference scene.", "REFERENCE_SCENES": "Reference Scenes", diff --git a/src/assets/i18n/es.json b/src/assets/i18n/es.json index 35ff0ce2b..7dab2030e 100644 --- a/src/assets/i18n/es.json +++ b/src/assets/i18n/es.json @@ -684,6 +684,7 @@ "READ_OUR_USER_GUIDE": "Lea nuestra guía de usuario", "READ_THE_VERTEX_USER_GUIDE_INCLUDING_SECTIONS_ON_GETTING_STARTED_BASELINE_SEARCHES": "Lea la Guía del usuario de Vertex, incluidas las secciones sobre Primeros pasos, Búsquedas de referencia,", "READABLE_SIZE_FROM_BYTES": "| ", + "RECOMMENDED_PRODUCT": "Producto recomendado", "REFERENCE": "Referencia", "REFERENCE_SCENE": "escena de referencia.", "REFERENCE_SCENES": "Escenas de referencia", From abf4c1cc739b4fb526d409cd4373a1fa2006d75c Mon Sep 17 00:00:00 2001 From: SpicyGarlicAlbacoreRoll Date: Tue, 2 Dec 2025 08:53:31 -0900 Subject: [PATCH 04/34] feat: add displacement disclaimer button and modal to header breadcrumb --- .../header/info-bar/info-bar.component.html | 5 +++ .../header/info-bar/info-bar.component.ts | 13 ++++++- ...isplacement-disclaimer-dialog.component.ts | 36 +++++++++++++++++++ .../timeseries-results-menu.component.scss | 9 +++++ src/assets/i18n/en.json | 2 ++ 5 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts diff --git a/src/app/components/header/info-bar/info-bar.component.html b/src/app/components/header/info-bar/info-bar.component.html index 9a16b0d85..f39f61c27 100644 --- a/src/app/components/header/info-bar/info-bar.component.html +++ b/src/app/components/header/info-bar/info-bar.component.html @@ -22,6 +22,11 @@ {{ 'PRODUCT_TYPES' | translate }}: {{ eventProductTypes }} + @if ((searchType$ | async) === searchTypes.DISPLACEMENT) { + + + + } {{ 'START' | translate }}: {{ startDate | shortDate }} diff --git a/src/app/components/header/info-bar/info-bar.component.ts b/src/app/components/header/info-bar/info-bar.component.ts index 68514eddb..cf2dedf9f 100644 --- a/src/app/components/header/info-bar/info-bar.component.ts +++ b/src/app/components/header/info-bar/info-bar.component.ts @@ -11,6 +11,8 @@ import * as searchStore from '@store/search'; import * as services from '@services'; import * as models from '@models'; import * as userStore from '@store/user'; +import { DispDataDisclaimerComponent } from '@components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component'; +import { MatDialog } from '@angular/material/dialog'; // Declare GTM dataLayer array. declare global { @@ -29,7 +31,7 @@ export class InfoBarComponent implements OnInit, OnDestroy { private store$ = inject>(Store); private screenSize = inject(services.ScreenSizeService); private hyp3 = inject(services.Hyp3ApiService); - + private dialog = inject(MatDialog); public searchType: models.SearchType = models.SearchType.DATASET; public searchTypes = models.SearchType; public searchType$ = this.store$.select(searchStore.getSearchType); @@ -285,6 +287,15 @@ export class InfoBarComponent implements OnInit, OnDestroy { ); } + public onOpenDispDataDisclaimer() { + this.dialog.open(DispDataDisclaimerComponent, { + width: '550px', + height: '325px', + maxWidth: '550px', + maxHeight: '500px', + }); + } + ngOnDestroy() { this.subs.unsubscribe(); } diff --git a/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts b/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts new file mode 100644 index 000000000..da118cc8f --- /dev/null +++ b/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts @@ -0,0 +1,36 @@ +import { Component, inject } from '@angular/core'; +import { MatButton } from '@angular/material/button'; +import { + MatDialogActions, + MatDialogClose, + MatDialogContent, + MatDialogRef, +} from '@angular/material/dialog'; +import { SharedModule } from '@shared'; + +@Component({ + selector: 'app-disp-disclaimer-dialog', + template: ` +

+ {{ 'DISPLACEMENT_DATA_DISCLAIMER' | translate }} +

+ +

{{ 'DISPLACEMENT_DATA_DISCLAIMER_TEXT' | translate }}

+
+ + + + + `, + styleUrls: ['./timeseries-results-menu.component.scss'], + imports: [ + MatDialogActions, + MatDialogContent, + MatButton, + MatDialogClose, + SharedModule, + ], +}) +export class DispDataDisclaimerComponent { + dialogRef = inject>(MatDialogRef); +} diff --git a/src/app/components/results-menu/timeseries-results-menu/timeseries-results-menu.component.scss b/src/app/components/results-menu/timeseries-results-menu/timeseries-results-menu.component.scss index 4e449b208..452101ca7 100644 --- a/src/app/components/results-menu/timeseries-results-menu/timeseries-results-menu.component.scss +++ b/src/app/components/results-menu/timeseries-results-menu/timeseries-results-menu.component.scss @@ -462,3 +462,12 @@ ul { } } + +.disp-disclaimer-title { + @include themify($themes) { + color: themed('dark-primary-text'); + } + text-align: left; + margin-bottom: 9px; + margin-left: 20px; +} diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index dd1df3e22..ccadac2b2 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -243,6 +243,8 @@ "DISABLE": "Disable", "DISP_DOI": "DISP DOI", "DISPLACEMENT": "Displacement", + "DISPLACEMENT_DATA_DISCLAIMER": "Displacement Data Disclaimer", + "DISPLACEMENT_DATA_DISCLAIMER_TEXT": "The displacement data shown here is a short-wavelength filtered visualization product. Filtering removes long-wavelength (> ~25 km) signals, such as atmospheric noise, and highlights short-wavelength signals, such as landslides, but it also can introduce artifacts (e.g., see Central Valley, CA subsidence area) not present in the validated displacement layer. Before interpreting data, please read the FAQ", "DISPLACEMENT_DESCRIPTION": "Displacement products provide information on anthropogenic and natural changes of Earth's surface, covering North America.", "DISPLACEMENT_FILTERS": "Displacement Filters", "DISPLACEMENT_SEARCH": "Displacement Search", From edc0d057f331649f53246fe90d136fa20b369f8e Mon Sep 17 00:00:00 2001 From: SpicyGarlicAlbacoreRoll Date: Tue, 2 Dec 2025 09:42:54 -0900 Subject: [PATCH 05/34] feat: add Open FAQ button to displacement disclaimer text --- .../header/info-bar/info-bar.component.html | 2 +- ...isplacement-disclaimer-dialog.component.ts | 40 ++++++++++++++++--- 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/src/app/components/header/info-bar/info-bar.component.html b/src/app/components/header/info-bar/info-bar.component.html index f39f61c27..f24bb31f9 100644 --- a/src/app/components/header/info-bar/info-bar.component.html +++ b/src/app/components/header/info-bar/info-bar.component.html @@ -24,7 +24,7 @@ @if ((searchType$ | async) === searchTypes.DISPLACEMENT) { - + } diff --git a/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts b/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts index da118cc8f..d526581db 100644 --- a/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts +++ b/src/app/components/results-menu/timeseries-results-menu/timeseries-displacement-disclaimer-dialog.component.ts @@ -1,4 +1,4 @@ -import { Component, inject } from '@angular/core'; +import { Component, inject, OnDestroy, OnInit } from '@angular/core'; import { MatButton } from '@angular/material/button'; import { MatDialogActions, @@ -7,7 +7,9 @@ import { MatDialogRef, } from '@angular/material/dialog'; import { SharedModule } from '@shared'; - +import { DocsModalModule } from '@components/shared/docs-modal'; +import { TranslateService } from '@ngx-translate/core'; +import { SubSink } from 'subsink'; @Component({ selector: 'app-disp-disclaimer-dialog', template: ` @@ -15,11 +17,22 @@ import { SharedModule } from '@shared'; {{ 'DISPLACEMENT_DATA_DISCLAIMER' | translate }} -

{{ 'DISPLACEMENT_DATA_DISCLAIMER_TEXT' | translate }}

+

+ {{ 'DISPLACEMENT_DATA_DISCLAIMER_TEXT' | translate }} +

- + + `, styleUrls: ['./timeseries-results-menu.component.scss'], @@ -29,8 +42,25 @@ import { SharedModule } from '@shared'; MatButton, MatDialogClose, SharedModule, + DocsModalModule, ], }) -export class DispDataDisclaimerComponent { +export class DispDataDisclaimerComponent implements OnInit, OnDestroy { dialogRef = inject>(MatDialogRef); + translate = inject(TranslateService); + subs = new SubSink(); + + public FAQText = 'OPEN_FAQ'; + + ngOnInit(): void { + this.subs.add( + this.translate + .get('OPEN_FAQ') + .subscribe((translatedText) => (this.FAQText = translatedText)), + ); + } + + ngOnDestroy(): void { + this.subs.unsubscribe(); + } } From ed3b3619a99d362865c25d0bb6e6c1ebb3a92775 Mon Sep 17 00:00:00 2001 From: SpicyGarlicAlbacoreRoll Date: Tue, 2 Dec 2025 09:45:11 -0900 Subject: [PATCH 06/34] fix: add punctuation to end of disp disclaimer text --- src/assets/i18n/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index f3a6838ae..700bfcee1 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -244,7 +244,7 @@ "DISP_DOI": "DISP DOI", "DISPLACEMENT": "Displacement", "DISPLACEMENT_DATA_DISCLAIMER": "Displacement Data Disclaimer", - "DISPLACEMENT_DATA_DISCLAIMER_TEXT": "The displacement data shown here is a short-wavelength filtered visualization product. Filtering removes long-wavelength (> ~25 km) signals, such as atmospheric noise, and highlights short-wavelength signals, such as landslides, but it also can introduce artifacts (e.g., see Central Valley, CA subsidence area) not present in the validated displacement layer. Before interpreting data, please read the FAQ", + "DISPLACEMENT_DATA_DISCLAIMER_TEXT": "The displacement data shown here is a short-wavelength filtered visualization product. Filtering removes long-wavelength (> ~25 km) signals, such as atmospheric noise, and highlights short-wavelength signals, such as landslides, but it also can introduce artifacts (e.g., see Central Valley, CA subsidence area) not present in the validated displacement layer. Before interpreting data, please read the FAQ.", "DISPLACEMENT_DESCRIPTION": "Displacement products provide information on anthropogenic and natural changes of Earth's surface, covering North America.", "DISPLACEMENT_FILTERS": "Displacement Filters", "DISPLACEMENT_SEARCH": "Displacement Search", From 795d5ec4ae382e5227e43451e2339981f43758b8 Mon Sep 17 00:00:00 2001 From: SpicyGarlicAlbacoreRoll Date: Tue, 2 Dec 2025 09:56:16 -0900 Subject: [PATCH 07/34] fix: add OPEN_FAQ translation key --- src/assets/i18n/en.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 700bfcee1..642365d9e 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -587,6 +587,7 @@ "ONLY_DISPLAY_SCENES_WITH_A_BROWSE_IMAGE": "Only display scenes with a browse image", "OPACITY": "Opacity", "OPACITY_OF_COHERENCE_LAYER": "Coherence Layer Opacity", + "OPEN_FAQ": "Open FAQ", "OPEN_IN_IMAGE_VIEWER": "Open in Image Viewer", "OPEN_LINK_TO_DOCUMENTATION": "Open link to documentation.", "OPEN_MANUAL": "Open Manual", From 59636dd06435cea88188b3801c14432b0a43f072 Mon Sep 17 00:00:00 2001 From: Andrew Anderson Date: Wed, 3 Dec 2025 09:58:34 -0800 Subject: [PATCH 08/34] DS-6335 (#2368) Identifying GCOV (Geocoded Polarimetric Covariance) as the recommended product in the NISAR Science Filters --- .../product-science-selector.component.html | 6 ++++-- .../product-science-selector.component.scss | 7 +++++++ .../product-science-selector.component.ts | 2 +- src/styles.scss | 2 +- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.html b/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.html index 61d322708..3df3a4dd0 100644 --- a/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.html +++ b/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.html @@ -18,12 +18,14 @@ > @for (sciProd of group.sciProd; track sciProd) { {{ - sciProd.viewValue - }} + sciProd.viewValue + }} + } } } + *{{ 'RECOMMENDED_PRODUCT' | translate }}
diff --git a/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.scss b/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.scss index a0f8e68fd..93a1d3b1d 100644 --- a/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.scss +++ b/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.scss @@ -29,3 +29,10 @@ div.cdk-overlay-pane:has(>.sci-prod-select) { .sci-prod-optgroup { font-weight: bold; } + +.sci-prod-recommended { + font-style: italic; + font-weight: 400; + font-size: small; + margin-left: 18px; +} diff --git a/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.ts b/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.ts index 4b246ebeb..aa76a8ec9 100644 --- a/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.ts +++ b/src/app/components/shared/selectors/product-science-selector/product-science-selector.component.ts @@ -51,7 +51,7 @@ export class ProductScienceSelectorComponent implements OnInit, OnDestroy { disabled: false, sciProd: [ { value: 'GSLC', viewValue: 'GSLC (Geocoded Single Look Complex)' }, - { value: 'GCOV', viewValue: 'GCOV (Geocoded Polarimetric Covariance)' }, + { value: 'GCOV', viewValue: '*GCOV (Geocoded Polarimetric Covariance)' }, { value: 'GUNW', viewValue: 'GUNW (Geocoded Interferogram)' }, { value: 'GOFF', viewValue: 'GOFF (Geocoded Pixel Offsets)' }, ], diff --git a/src/styles.scss b/src/styles.scss index 4bd5a3843..38152f41f 100644 --- a/src/styles.scss +++ b/src/styles.scss @@ -462,7 +462,7 @@ ul { .mat-mdc-select-panel { max-width: fit-content !important; //max-width: 340px !important; - max-height: 364px !important; + max-height: 400px !important; } /* TODO(mdc-migration): The following rule targets internal classes of form-field that may no longer apply for the MDC version. */ From 0f7473d7a98360babd300da639c9845769051121 Mon Sep 17 00:00:00 2001 From: Andrew Anderson Date: Wed, 3 Dec 2025 09:59:49 -0800 Subject: [PATCH 09/34] Andy/ds 6336 (#2366) * Make Help more easily seen on Filter's panel. * DS-6336 Text modified to be translatable. * Lint space * Update src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.scss Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../dataset-filters.component.html | 28 +++++++++++-------- .../dataset-filters.component.scss | 16 ++++++++--- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html b/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html index ecf6033ca..531e4554a 100644 --- a/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html +++ b/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html @@ -38,10 +38,11 @@ [collapsedHeight]="customCollapsedHeight" [expandedHeight]="customExpandedHeight" > - + {{ 'AREA_OF_INTEREST_OPTIONS' | translate }} @@ -63,10 +64,11 @@ [collapsedHeight]="customCollapsedHeight" [expandedHeight]="customExpandedHeight" > - + {{ 'DATE_FILTERS' | translate }} @@ -91,10 +93,11 @@ [collapsedHeight]="customCollapsedHeight" [expandedHeight]="customExpandedHeight" > - + {{ 'PRODUCT_FILTERS' | translate }} @@ -118,18 +121,20 @@ [collapsedHeight]="customCollapsedHeight" [expandedHeight]="customExpandedHeight" > - + @if (selectedDataset !== 'NISAR') { {{ 'ADDITIONAL_FILTERS' | translate }} } @else { {{ 'OBSERVATIONAL_FILTERS' | translate }} @@ -157,7 +162,7 @@ [collapsedHeight]="customCollapsedHeight" [expandedHeight]="customExpandedHeight" > - + @if (selectedDataset === 'SENTINEL-1 INTERFEROGRAM (BETA)') { {{ 'TRACK' | translate }} {{ 'FILTERS' | translate }} } @else if (selectedDataset !== 'NISAR') { @@ -166,7 +171,8 @@ {{ 'TRACK_AND_FRAME_FILTERS' | translate }} } diff --git a/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.scss b/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.scss index 42874ce74..f862ca5fa 100644 --- a/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.scss +++ b/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.scss @@ -9,14 +9,22 @@ .selector-card-spacing { margin-top: 20px; } +.panel-title { + align-items: center; + justify-content: space-between; +} + -.info-icon { - margin-left: 10px; - margin-top: 4px; +.info-text { + flex: none; + font-size: small; + font-style: italic; + font-weight: 400; } + .header { @include themify($themes) { background-color: themed('primary-light'); } -} \ No newline at end of file +} From 4997d78309eed96c06f40af706d6ca5250cbd9e3 Mon Sep 17 00:00:00 2001 From: Tyler Chase Date: Wed, 3 Dec 2025 17:34:06 -0500 Subject: [PATCH 10/34] feat: Update control flow syntax (#2370) * chore: control flow migration tool * fix: duplicate template names * fix: ngSwitch case * chore: rerun migration tool with errors fixed * fix: flow regression --- .../baseline-chart.component.html | 54 +- .../baseline-filters.component.html | 228 +-- .../dataset-filters.component.html | 428 +++--- .../filters-dropdown.component.html | 184 ++- .../frame-order-filters.component.html | 55 +- .../frame-order-filters.component.ts | 2 - .../list-filters/list-filters.component.html | 268 ++-- .../sarviews-filters.component.html | 216 ++- .../sbas-filters/sbas-filters.component.html | 235 +-- .../timeseries-filters.component.html | 40 +- .../baseline-header.component.html | 137 +- .../aoi-filter/aoi-filter.component.html | 33 +- .../dataset-header.component.html | 177 ++- .../header-buttons.component.html | 647 ++++---- .../preferences/preferences.component.html | 71 +- .../components/header/header.component.html | 85 +- .../hyp3-header/hyp3-header.component.html | 101 +- .../header/info-bar/info-bar.component.html | 371 +++-- .../list-header/list-header.component.html | 72 +- .../header/logo/logo.component.html | 43 +- .../confirmation/confirmation.component.html | 77 +- .../dropdown-option.component.html | 30 +- .../processing-options.component.html | 163 +- .../range-option/range-option.component.html | 16 +- .../processing-queue-jobs.component.html | 272 ++-- .../processing-queue.component.html | 449 +++--- .../header/queue/queue.component.html | 665 ++++----- .../sarviews-header.component.html | 118 +- .../timeseries-header.component.html | 116 +- .../help-new-stuff.component.html | 24 +- src/app/components/help/help.component.html | 84 +- .../attributions/attributions.component.html | 13 +- .../map/banners/banners.component.html | 8 +- .../layer-selector.component.html | 75 +- .../map-controls/map-controls.component.html | 343 +++-- .../view-selector.component.html | 27 +- src/app/components/map/map.component.html | 127 +- .../baseline-results-menu.component.html | 383 +++-- .../desktop-results-menu.component.html | 71 +- .../mobile-results-menu.component.html | 350 ++--- .../results-menu/results-menu.component.html | 283 ++-- .../sarviews-results-menu.component.html | 110 +- .../sbas-results-menu.component.html | 146 +- .../sbas-sliders-two.component.html | 18 +- .../browse-list/browse-list.component.html | 71 +- .../image-dialog/image-dialog.component.html | 797 +++++----- .../scene-detail/scene-detail.component.html | 871 +++++------ .../scene-file/scene-file.component.html | 351 ++--- .../scene-files/scene-files.component.html | 345 +++-- .../scenes-list-header.component.html | 1329 ++++++++--------- .../scenes-list/pair/pair.component.html | 42 +- .../sarviews-event.component.html | 122 +- .../baseline-scene-controls.component.html | 61 +- .../scene-controls.component.html | 110 +- .../scenes-list/scene/scene.component.html | 131 +- .../scenes-list/scenes-list.component.html | 56 +- .../timeseries-results-menu.component.html | 506 +++---- .../aoi-options/aoi-options.component.html | 48 +- .../draw-selector.component.html | 212 ++- .../file-upload-dialog.component.html | 111 +- .../geocode-selector.component.html | 8 +- .../interaction-selector.component.html | 9 +- .../cart-toggle/cart-toggle.component.html | 8 +- .../chart-modal/chart-modal.component.ts | 3 +- .../copy-to-clipboard.component.html | 50 +- .../docs-modal/docs-modal.component.html | 16 +- .../download-file-button.component.html | 90 +- .../event-metadata.component.html | 246 +-- .../event-product-metadata.component.html | 55 +- ...event-product-sort-selector.component.html | 12 +- .../shared/file-name/file-name.component.html | 42 +- .../shared/hyp3-url/hyp3-url.component.html | 10 +- .../api-link-dialog.component.html | 27 +- .../max-results-selector.component.html | 152 +- .../on-demand-add-menu.component.html | 112 +- .../scene-metadata.component.html | 1004 ++++++------- .../search-button.component.html | 492 +++--- ...seline-frame-reference-toggle.component.ts | 4 +- .../full-burst-selector.component.html | 11 +- .../dataset-selector.component.html | 197 +-- .../dataset/dataset.component.html | 12 +- .../hyp3-job-type-selector.component.html | 8 +- .../job-product-name-selector.component.html | 163 +- .../job-status-selector.component.html | 8 +- .../language-selector.component.html | 4 +- .../mission-selector.component.html | 4 +- .../observation-panel-selector.component.html | 213 +-- .../other-selector.component.html | 202 +-- .../aoi-clear/aoi-clear.component.html | 32 +- .../path-selector.component.html | 144 +- .../product-type-selector.component.html | 30 +- .../project-name-selector.component.html | 11 +- ...views-event-search-selector.component.html | 37 +- ...arviews-event-type-selector.component.html | 8 +- .../search-type-selector.component.html | 383 ++--- .../season-selector.component.html | 76 +- .../season-selector.component.ts | 3 +- .../short-name-selector.component.html | 22 +- .../save-user-filter.component.html | 104 +- .../save-user-filters.component.html | 54 +- .../saved-search/saved-search.component.html | 158 +- .../baseline-search-filters.component.html | 71 +- .../geographic-search-filters.component.html | 263 ++-- .../list-search-filters.component.html | 20 +- .../sbas-search-filters.component.html | 45 +- .../search-filters.component.html | 47 +- .../saved-searches.component.html | 106 +- .../components/sidebar/sidebar.component.html | 18 +- .../timeseries-chart-export.component.ts | 2 - ...art-flight-direction-toggle.component.html | 16 +- ...chart-flight-direction-toggle.component.ts | 2 - .../timeseries-chart.component.html | 16 +- 112 files changed, 8885 insertions(+), 8523 deletions(-) diff --git a/src/app/components/baseline-chart/baseline-chart.component.html b/src/app/components/baseline-chart/baseline-chart.component.html index 2165e3c73..704fd6973 100644 --- a/src/app/components/baseline-chart/baseline-chart.component.html +++ b/src/app/components/baseline-chart/baseline-chart.component.html @@ -1,25 +1,31 @@ -
-
    -
  • -
    - {{ 'REFERENCE' | translate }} -
  • -
  • -
    - {{ 'SELECTED' | translate }} -
  • -
  • -
    - {{ 'DOWNLOADS' | translate }} -
  • -
  • -
    - {{ 'CRITICAL_BASELINE_ABBR' | translate }} -
  • -
  • -
    - {{ 'CRITICAL_BASELINE' | translate }} -
  • -
-
+@if (breakpoint$ | async; as breakpoint) { +
+
    +
  • +
    + {{ 'REFERENCE' | translate }} +
  • +
  • +
    + {{ 'SELECTED' | translate }} +
  • +
  • +
    + {{ 'DOWNLOADS' | translate }} +
  • + @if (breakpoint === breakpoints.MOBILE) { +
  • +
    + {{ 'CRITICAL_BASELINE_ABBR' | translate }} +
  • + } + @if (breakpoint !== breakpoints.MOBILE) { +
  • +
    + {{ 'CRITICAL_BASELINE' | translate }} +
  • + } +
+
+}
diff --git a/src/app/components/filters-dropdown/baseline-filters/baseline-filters.component.html b/src/app/components/filters-dropdown/baseline-filters/baseline-filters.component.html index bd0ef3c89..24da2fb12 100644 --- a/src/app/components/filters-dropdown/baseline-filters/baseline-filters.component.html +++ b/src/app/components/filters-dropdown/baseline-filters/baseline-filters.component.html @@ -1,126 +1,126 @@ - - - - {{ 'SEARCH_OPTIONS' | translate }} - - - -
- - -
-
- - - - - {{ 'SCENE' | translate }} - - - -
- -
- @if (shouldUseFramesForReference) { - - } - -
-
-
- {{ 'EXAMPLE' | translate }}: - S1A_IW_SLC__1SSV_20150601T010209_20150601T010236_006173_00808F_20A0 - - -
-
- - -
-
+ + {{ 'SEARCH_OPTIONS' | translate }} + + +
+ + +
+ + } - - - - {{ 'DATA_FILTERS' | translate }} + + + {{ 'SCENE' | translate }} + + +
+ +
+ @if (shouldUseFramesForReference) { + + } + +
+
+
+ {{ 'EXAMPLE' | translate }}: + S1A_IW_SLC__1SSV_20150601T010209_20150601T010236_006173_00808F_20A0 + + +
+
- - - -
- -
-
- -
- +
+
+ } - - - - {{ 'BASELINE_CRITERIA' | translate }} - - - - + + + {{ 'DATA_FILTERS' | translate }} + + + + +
+ +
+
+ +
+
+ } - - + @if (areResultsLoaded) { + + + + {{ 'BASELINE_CRITERIA' | translate }} + + + + + + + }
diff --git a/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html b/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html index 531e4554a..bc7c7c4dc 100644 --- a/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html +++ b/src/app/components/filters-dropdown/dataset-filters/dataset-filters.component.html @@ -1,249 +1,241 @@ - - - - - {{ 'SEARCH_OPTIONS' | translate }} - - - -
- - - - + @if (breakpoint === breakpoints.MOBILE) { + - -
-
- - - - - {{ 'AREA_OF_INTEREST_OPTIONS' | translate }} - - - - - -
- -
-
- - - - - {{ 'DATE_FILTERS' | translate }} - - - - - -
- -
-
- -
-
- @if (selectedDataset === 'NISAR') { + + {{ 'SEARCH_OPTIONS' | translate }} + + +
+ + + + +
+ + } - {{ 'PRODUCT_FILTERS' | translate }} + {{ 'AREA_OF_INTEREST_OPTIONS' | translate }} -
- - +
- } - - - - - @if (selectedDataset !== 'NISAR') { - {{ 'ADDITIONAL_FILTERS' | translate }} - - - } @else { - {{ 'OBSERVATIONAL_FILTERS' | translate }} + + + {{ 'DATE_FILTERS' | translate }} - } - - - -
- @if (selectedDataset !== 'NISAR') { - - } @else { - - } -
-
- - - + +
+ +
+
+ +
+
+ @if (selectedDataset === 'NISAR') { + + + + {{ 'PRODUCT_FILTERS' | translate }} + + + + +
+ + +
+
+ } + - - @if (selectedDataset === 'SENTINEL-1 INTERFEROGRAM (BETA)') { - {{ 'TRACK' | translate }} {{ 'FILTERS' | translate }} - } @else if (selectedDataset !== 'NISAR') { - {{ 'PATH_AND_FRAME_FILTERS' | translate }} + + + @if (selectedDataset !== 'NISAR') { + {{ 'ADDITIONAL_FILTERS' | translate }} + + + } @else { + {{ 'OBSERVATIONAL_FILTERS' | translate }} + + + } + + +
+ @if (selectedDataset !== 'NISAR') { + } @else { - {{ 'TRACK_AND_FRAME_FILTERS' | translate }} + } - + + @if (prop.isRelevant(p.PATH) || prop.isRelevant(p.FRAME)) { + + - - - - -
- {{ 'TO' | translate }} -
- - - - - - {{ 'CAMPAIGN_SELECTOR' | translate }} - - - - - - - - - - {{ 'SLC_BURST_FILTERS' | translate }} - - -
- -
-
- - - - - - OPERA S1 Filters - - -
- -
-
- + + @if (selectedDataset === 'SENTINEL-1 INTERFEROGRAM (BETA)') { + {{ 'TRACK' | translate }} {{ 'FILTERS' | translate }} + } @else if (selectedDataset !== 'NISAR') { + {{ 'PATH_AND_FRAME_FILTERS' | translate }} + } @else { + {{ 'TRACK_AND_FRAME_FILTERS' | translate }} + } + + + + +
+ {{ 'TO' | translate }} +
+ + } + @if (prop.isRelevant(p.MISSION_NAME)) { + + + + {{ 'CAMPAIGN_SELECTOR' | translate }} + + + + + } + @if (selectedDataset === 'SENTINEL-1 BURSTS') { + + + + {{ 'SLC_BURST_FILTERS' | translate }} + + +
+ +
+
+ } + @if (selectedDataset === 'OPERA-S1') { + + + + + OPERA S1 Filters + + +
+ +
+
+ } + +} diff --git a/src/app/components/filters-dropdown/filters-dropdown.component.html b/src/app/components/filters-dropdown/filters-dropdown.component.html index d8776fae6..07192e567 100644 --- a/src/app/components/filters-dropdown/filters-dropdown.component.html +++ b/src/app/components/filters-dropdown/filters-dropdown.component.html @@ -1,111 +1,95 @@ -
+@if (searchType$ | async; as selectedSearchType) {
-
-
- - {{ 'SEARCH_FILTERS' | translate }} - - - - {{ 'LIST_SEARCH' | translate }} - - - - {{ 'BASELINE_SEARCH' | translate }} - - - - {{ 'SBAS_SEARCH' | translate }} - - - - {{ 'ON_DEMAND_SEARCH' | translate }} - - - - - - {{ 'EVENT_SEARCH' | translate }} - - - @if (selectedSearchType === searchTypes.DISPLACEMENT) { - {{ 'DISPLACEMENT_SEARCH' | translate }} - } -
-
-
- - @if (frameSelectionEnabled$ | async) { - - } @else { - - +
+
+ @if (selectedSearchType === searchTypes.DATASET) { + {{ 'SEARCH_FILTERS' | translate }} + } + @if (selectedSearchType === searchTypes.LIST) { + {{ 'LIST_SEARCH' | translate }} + } + @if (selectedSearchType === searchTypes.BASELINE) { + {{ 'BASELINE_SEARCH' | translate }} + } + @if (selectedSearchType === searchTypes.SBAS) { + {{ 'SBAS_SEARCH' | translate }} + } + @if (selectedSearchType === searchTypes.CUSTOM_PRODUCTS) { + {{ 'ON_DEMAND_SEARCH' | translate }} + + + } + @if (selectedSearchType === searchTypes.SARVIEWS_EVENTS) { + {{ 'EVENT_SEARCH' | translate }} + } + @if (selectedSearchType === searchTypes.DISPLACEMENT) { + {{ 'DISPLACEMENT_SEARCH' | translate }} + } +
+
+
+ @if (selectedSearchType === searchTypes.DATASET) { + @if (frameSelectionEnabled$ | async) { + + } @else { + + + } } - - - - - - - - - - - - - - - - - - - - - - - @if ( - selectedSearchType === searchTypes.DISPLACEMENT && - breakpoint !== breakpoints.FULL - ) { - - } -
- -
-
+} diff --git a/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.html b/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.html index af7e0758b..7a02d3213 100644 --- a/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.html +++ b/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.html @@ -1,29 +1,28 @@ - - - - {{ 'FRAME_ORDER_FILTERS' | translate }} - - - - - -
- {{ 'TO' | translate }} -
- - -
+ + + {{ 'FRAME_ORDER_FILTERS' | translate }} + + + + +
+ {{ 'TO' | translate }} +
+ + +} diff --git a/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.ts b/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.ts index 8d4cce28e..a4658b58d 100644 --- a/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.ts +++ b/src/app/components/filters-dropdown/frame-order-filters/frame-order-filters.component.ts @@ -1,7 +1,6 @@ import { Component, Input, OnInit, OnDestroy, inject } from '@angular/core'; import { FormsModule } from '@angular/forms'; -import { CommonModule } from '@angular/common'; import { MatExpansionModule } from '@angular/material/expansion'; import { MatSelectModule } from '@angular/material/select'; @@ -45,7 +44,6 @@ enum FilterPanel { @Component({ selector: 'app-frame-order-filters', imports: [ - CommonModule, FormsModule, FlightDirectionSelectorComponent, MatSelectModule, diff --git a/src/app/components/filters-dropdown/list-filters/list-filters.component.html b/src/app/components/filters-dropdown/list-filters/list-filters.component.html index 648d7eba6..6efc96228 100644 --- a/src/app/components/filters-dropdown/list-filters/list-filters.component.html +++ b/src/app/components/filters-dropdown/list-filters/list-filters.component.html @@ -1,151 +1,155 @@
- - - - - - {{ 'SEARCH_OPTIONS' | translate }} - - - -
- - -
-
- - - - {{ 'SEARCH_LIST_INPUT' | translate }} - - - - -
-
-
+ @if (breakpoint === breakpoints.MOBILE) { + + -
-

- {{ 'LIST_TYPE' | translate }} -

-
-
- - - {{ 'SCENE' | translate }} - - - - {{ 'FILE' | translate }} - - -
+ + {{ 'SEARCH_OPTIONS' | translate }} + +
+
+ +
-
- - - + +
+ + +
+
-
-
{{ 'DRAG_AND_DROP' | translate }}
-
-
{{ 'FILES_HERE' | translate }}
-
- (csv, geojson, metalink, kml) +
+

+ {{ 'LIST_TYPE' | translate }} +

+
+
+ + + {{ 'SCENE' | translate }} + + + {{ 'FILE' | translate }} + + +
+
+
+ + + +
+
+
+ {{ 'DRAG_AND_DROP' | translate }}
-
- (csv, geojson) +
+
{{ 'FILES_HERE' | translate }}
+ @if (mode === types.SCENE) { +
+ (csv, geojson, metalink, kml) +
+ } + @if (mode !== types.SCENE) { +
(csv, geojson)
+ }
-
-
-
- - {{ 'EXAMPLE' | translate }} {{ listExamples[mode] }} - -
- - -
+
- {{ 'FILE_IMPORT_SUPPORTED' | translate }} (csv, geojson{{ - mode === types.SCENE ? ', metalink, kml' : '' - }}) + {{ 'EXAMPLE' | translate }} {{ listExamples[mode] }} +
+ + +
+
+ + {{ 'FILE_IMPORT_SUPPORTED' | translate }} (csv, geojson{{ + mode === types.SCENE ? ', metalink, kml' : '' + }}) + +
-
- - - + + + } + }
diff --git a/src/app/components/filters-dropdown/sarviews-filters/sarviews-filters.component.html b/src/app/components/filters-dropdown/sarviews-filters/sarviews-filters.component.html index 3f3fe7ded..cfb72e0ec 100644 --- a/src/app/components/filters-dropdown/sarviews-filters/sarviews-filters.component.html +++ b/src/app/components/filters-dropdown/sarviews-filters/sarviews-filters.component.html @@ -1,113 +1,109 @@ - - - - - {{ panels.SEARCH }} - - - -
- - -
-
- - - - - {{ 'EVENT_FILTERS' | translate }} - + @if (breakpoint === breakpoints.MOBILE) { + + - - - - -
- -
-
- -
-
- -
-
- -
-
- - - + {{ panels.SEARCH }} + + +
+ + +
+
+ } + - - {{ 'DATE_FILTERS' | translate }} - - - - - -
- -
-
- - - + + {{ 'EVENT_FILTERS' | translate }} + + + + +
+ +
+
+ +
+
+ +
+
+ +
+
+ - - {{ 'PRODUCT_FILTERS' | translate }} - - - - - - -
- -
-
- -
-
-
+ + + {{ 'DATE_FILTERS' | translate }} + + + + +
+ +
+ + + + + {{ 'PRODUCT_FILTERS' | translate }} + + + + + +
+ +
+
+ +
+
+ +} diff --git a/src/app/components/filters-dropdown/sbas-filters/sbas-filters.component.html b/src/app/components/filters-dropdown/sbas-filters/sbas-filters.component.html index b3cde0cdb..77e230e86 100644 --- a/src/app/components/filters-dropdown/sbas-filters/sbas-filters.component.html +++ b/src/app/components/filters-dropdown/sbas-filters/sbas-filters.component.html @@ -1,107 +1,107 @@ - - - - {{ 'SEARCH_OPTIONS' | translate }} - - - -
- - -
-
- - - - - {{ panels.MASTER | uppercase | translate }} - - + + + {{ 'SEARCH_OPTIONS' | translate }} + + +
+ + +
+
+ } - - @if (shouldUseFramesForReference) { - - } -
- -
-
- {{ 'EXAMPLE' | translate }}: - S1B_IW_SLC__1SDV_20210704T135937_20210704T140004_027645_034CB0_4B2C - - -
-
- + {{ panels.MASTER | uppercase | translate }} + + + - - - - - - {{ 'DATE_FILTERS' | translate }} + +
+ @if (shouldUseFramesForReference) { + + } +
+ +
+
+ {{ 'EXAMPLE' | translate }}: + S1B_IW_SLC__1SDV_20210704T135937_20210704T140004_027645_034CB0_4B2C + + +
+
- - +
+ + } -
- - -
- + @if (areResultsLoaded) { + + + + {{ 'DATE_FILTERS' | translate }} + + + + +
+ + +
+
+ } @@ -118,28 +118,29 @@ - - - - {{ 'LATITUDINAL_OVERLAP_FILTER' | translate }} - - - - -
- -
-
+ + + {{ 'LATITUDINAL_OVERLAP_FILTER' | translate }} + + + + +
+ +
+ + }
diff --git a/src/app/components/filters-dropdown/timeseries-filters/timeseries-filters.component.html b/src/app/components/filters-dropdown/timeseries-filters/timeseries-filters.component.html index a18b93ed7..9cc0ce01b 100644 --- a/src/app/components/filters-dropdown/timeseries-filters/timeseries-filters.component.html +++ b/src/app/components/filters-dropdown/timeseries-filters/timeseries-filters.component.html @@ -1,23 +1,23 @@ - - - - {{ 'SEARCH_OPTIONS' | translate }} - - - -
- - -
-
+ + + {{ 'SEARCH_OPTIONS' | translate }} + + +
+ + +
+ + }
diff --git a/src/app/components/header/baseline-header/baseline-header.component.html b/src/app/components/header/baseline-header/baseline-header.component.html index 9a452ed16..d79d5263d 100644 --- a/src/app/components/header/baseline-header/baseline-header.component.html +++ b/src/app/components/header/baseline-header/baseline-header.component.html @@ -1,71 +1,76 @@ - - -