Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions backend/src/main/resources/application-dashboards-prod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ dashboards:
lapis:
url: "https://lapis.cov-spectrum.org/open/v2"
mainDateField: "date"
locationFields:
- "region"
- "country"
- "division"
lineageFields:
- "pangoLineage"
- "nextcladePangoLineage"
Expand All @@ -16,6 +20,9 @@ dashboards:
lapis:
url: "https://api.loculus.genspectrum.org/h5n1"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -28,6 +35,9 @@ dashboards:
lapis:
url: "https://api.loculus.genspectrum.org/h1n1pdm"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -40,6 +50,9 @@ dashboards:
lapis:
url: "https://api.loculus.genspectrum.org/h3n2"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -52,6 +65,9 @@ dashboards:
lapis:
url: "https://api.loculus.genspectrum.org/influenza-a"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -64,6 +80,9 @@ dashboards:
lapis:
url: "https://api.loculus.genspectrum.org/influenza-b"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -76,6 +95,9 @@ dashboards:
lapis:
url: "https://api.loculus.genspectrum.org/b-victoria"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -88,6 +110,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/mpox"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -100,6 +125,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/west-nile"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -112,6 +140,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/rsv-a"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -124,6 +155,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/rsv-b"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -136,6 +170,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/ebola-sudan"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -148,6 +185,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/ebola-zaire"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -160,6 +200,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/cchf"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand Down Expand Up @@ -240,6 +283,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/measles"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand Down
43 changes: 43 additions & 0 deletions backend/src/main/resources/application-dashboards-staging.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ dashboards:
lapis:
url: "https://gs-staging-1.int.genspectrum.org/open/v2"
mainDateField: "date"
locationFields:
- "region"
- "country"
- "division"
externalNavigationLinks:
- url: "https://cov-spectrum.org"
label: "CoV-Spectrum"
Expand All @@ -13,6 +17,9 @@ dashboards:
lapis:
url: "https://api.loculus.staging.genspectrum.org/h5n1"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -25,6 +32,9 @@ dashboards:
lapis:
url: "https://api.loculus.staging.genspectrum.org/h1n1pdm"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -37,6 +47,9 @@ dashboards:
lapis:
url: "https://api.loculus.staging.genspectrum.org/h3n2"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -49,6 +62,9 @@ dashboards:
lapis:
url: "https://api.loculus.staging.genspectrum.org/influenza-a"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -61,6 +77,9 @@ dashboards:
lapis:
url: "https://api.loculus.staging.genspectrum.org/influenza-b"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "country"
- "division"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand Down Expand Up @@ -90,6 +109,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/mpox"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -102,6 +124,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/west-nile"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -114,6 +139,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/rsv-a"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -126,6 +154,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/rsv-b"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -138,6 +169,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/ebola-sudan"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -150,6 +184,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/ebola-zaire"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand All @@ -162,6 +199,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/cchf"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand Down Expand Up @@ -242,6 +282,9 @@ dashboards:
lapis:
url: "https://lapis.pathoplexus.org/measles"
mainDateField: "sampleCollectionDateRangeLower"
locationFields:
- "geoLocCountry"
- "geoLocAdmin1"
additionalFilters:
versionStatus: "LATEST_VERSION"
isRevocation: "false"
Expand Down
1 change: 1 addition & 0 deletions website/src/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import { allOrganisms, type Organism } from './types/Organism.ts';
const lapisConfigSchema = z.object({
url: z.string(),
mainDateField: z.string(),
locationFields: z.array(z.string()),
additionalFilters: z.optional(z.record(z.string())),
});

Expand Down
10 changes: 5 additions & 5 deletions website/src/views/OrganismConstants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -188,9 +188,6 @@ export const INSDC_ACCESSION_DOWNLOAD_FILES = ['insdcAccessionFull'];
export const LOCULUS_AUTHORS_FIELD = 'authors';
export const LOCULUS_AUTHORS_AFFILIATIONS_FIELD = 'authorAffiliations';

export const PATHOPLEXUS_LOCATION_FIELDS = ['geoLocCountry', 'geoLocAdmin1'];
export const GENSPECTRUM_LOCULUS_LOCATION_FIELDS = ['country', 'division'];

export const INFLUENZA_ACCESSION_DOWNLOAD_FIELDS = [
'insdcAccessionFull_seg1',
'insdcAccessionFull_seg2',
Expand All @@ -205,18 +202,20 @@ export const INFLUENZA_ACCESSION_DOWNLOAD_FIELDS = [
export const PATHOPLEXUS_HOST_FIELD = 'hostNameScientific';

type FiltersConfig = {
locationFields: string[];
dateRangeOptions: () => DateRangeOption[];
completenessSuffixes?: SuffixConfig[];
};

export function getPathoplexusFilters({
locationFields,
dateRangeOptions,
completenessSuffixes,
}: FiltersConfig): BaselineFilterConfig[] {
return [
{
type: 'location',
locationFields: PATHOPLEXUS_LOCATION_FIELDS,
locationFields,
label: 'Sampling location',
placeholderText: 'Sampling location',
},
Expand Down Expand Up @@ -289,13 +288,14 @@ export const INFLUENZA_COMPLETENESS_SUFFIXES = [
export const GENSPECTRUM_LOCULUS_HOST_FIELD = 'hostNameScientific';

export function getGenspectrumLoculusFilters({
locationFields,
dateRangeOptions,
completenessSuffixes,
}: FiltersConfig): BaselineFilterConfig[] {
return [
{
type: 'location',
locationFields: GENSPECTRUM_LOCULUS_LOCATION_FIELDS,
locationFields,
placeholderText: 'Sampling location',
label: 'Sampling location',
},
Expand Down
26 changes: 14 additions & 12 deletions website/src/views/cchf.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import {
type OrganismConstants,
PATHOPLEXUS_COMMON_DOWNLOAD_FIELDS,
PATHOPLEXUS_HOST_FIELD,
PATHOPLEXUS_LOCATION_FIELDS,
} from './OrganismConstants.ts';
import { compareSideBySideViewConstants } from './ViewConstants.ts';
import type { LineageFilterConfig } from '../components/pageStateSelectors/LineageFilterInput.tsx';
Expand All @@ -41,18 +40,9 @@ const dateRangeOptions = defaultDateRangeOptions(earliestDate);
class CchfConstants implements OrganismConstants {
public readonly organism = Organisms.cchf;
public readonly earliestDate = earliestDate;
public readonly baselineFilterConfigs: BaselineFilterConfig[] = [
...getPathoplexusFilters({
dateRangeOptions,
completenessSuffixes: [
{ suffix: 'M', suffixLabel: 'M' },
{ suffix: 'L', suffixLabel: 'L' },
{ suffix: 'S', suffixLabel: 'S' },
],
}),
];
public readonly baselineFilterConfigs: BaselineFilterConfig[];
public readonly mainDateField: string;
public readonly locationFields = PATHOPLEXUS_LOCATION_FIELDS;
public readonly locationFields: string[];
public readonly lineageFilters: LineageFilterConfig[] = [];
public readonly useVariantQuery = false;
public readonly hostField: string = PATHOPLEXUS_HOST_FIELD;
Expand Down Expand Up @@ -91,8 +81,20 @@ class CchfConstants implements OrganismConstants {
public readonly dataOrigins: DataOrigin[] = [dataOrigins.pathoplexus];

constructor(organismsConfig: OrganismsConfig) {
this.locationFields = organismsConfig.cchf.lapis.locationFields;
this.mainDateField = organismsConfig.cchf.lapis.mainDateField;
this.additionalFilters = organismsConfig.cchf.lapis.additionalFilters;
this.baselineFilterConfigs = [
...getPathoplexusFilters({
locationFields: this.locationFields,
dateRangeOptions,
completenessSuffixes: [
{ suffix: 'M', suffixLabel: 'M' },
{ suffix: 'L', suffixLabel: 'L' },
{ suffix: 'S', suffixLabel: 'S' },
],
}),
];
}
}

Expand Down
Loading
Loading