From 3f43423787764a0ba4040f293328895cea1e3c4f Mon Sep 17 00:00:00 2001 From: Manuel Holtgrewe Date: Mon, 28 Oct 2024 10:45:17 +0100 Subject: [PATCH 1/4] refactor: consolidating models with worker (#1956) --- backend/Makefile | 4 +- backend/protos/seqvars/protos/output.proto | 20 +- backend/protos/seqvars/protos/query.proto | 59 +- backend/seqvars/factory_defaults.py | 283 ++++---- .../migrations/0002_auto_20240708_1305.py | 22 +- .../migrations/0013_auto_20241028_0928.py | 60 ++ backend/seqvars/models/base.py | 155 ++-- backend/seqvars/models/protobufs.py | 130 ++-- backend/seqvars/protos/output_pb2.py | 66 +- backend/seqvars/protos/output_pb2.pyi | 48 +- backend/seqvars/protos/query_pb2.py | 64 +- backend/seqvars/protos/query_pb2.pyi | 328 +++++---- backend/seqvars/serializers.py | 25 +- backend/seqvars/tests/factories.py | 60 +- .../snapshots/snap_test_factory_defaults.py | 666 +++++++++--------- .../tests/snapshots/snap_test_models.py | 37 +- .../tests/snapshots/snap_test_views_api.py | 222 +++--- backend/seqvars/tests/test_models.py | 2 +- backend/seqvars/tests/test_serializers.py | 8 +- backend/seqvars/tests/test_views_api.py | 2 +- .../varfish_api_schema.yaml | 648 +++++++++-------- .../ext/varfish-api/src/lib/schemas.gen.ts | 660 +++++++++-------- frontend/ext/varfish-api/src/lib/types.gen.ts | 256 ++++--- .../CategoryPresetsFrequencyEditor.vue | 48 +- .../components/PresetsEditor/lib/utils.ts | 12 +- .../seqvars/components/PresetsEditor/types.ts | 30 +- .../QueryEditor/FrequencyControls.vue | 2 +- .../QueryEditor/FrequencyControlsRow.vue | 14 +- .../seqvars/components/QueryEditor/groups.ts | 2 +- .../components/QueryEditor/lib/types.ts | 2 +- 30 files changed, 1933 insertions(+), 2002 deletions(-) create mode 100644 backend/seqvars/migrations/0013_auto_20241028_0928.py diff --git a/backend/Makefile b/backend/Makefile index 87aae96bb..f68eba4b4 100644 --- a/backend/Makefile +++ b/backend/Makefile @@ -146,9 +146,9 @@ protos-download: rm -f protos/seqvars/protos/*_p*2*.py wget -O protos/seqvars/protos/output.proto \ - https://raw.githubusercontent.com/varfish-org/varfish-server-worker/main/protos/varfish/v1/seqvars/output.proto + https://raw.githubusercontent.com/varfish-org/varfish-server-worker/refactor-more-protobuf-cleaning-2/protos/varfish/v1/seqvars/output.proto wget -O protos/seqvars/protos/query.proto \ - https://raw.githubusercontent.com/varfish-org/varfish-server-worker/main/protos/varfish/v1/seqvars/query.proto + https://raw.githubusercontent.com/varfish-org/varfish-server-worker/refactor-more-protobuf-cleaning-2/protos/varfish/v1/seqvars/query.proto mkdir -p seqvars/protos touch seqvars/protos/__init__.py diff --git a/backend/protos/seqvars/protos/output.proto b/backend/protos/seqvars/protos/output.proto index bc5cdd265..18bf0db5c 100644 --- a/backend/protos/seqvars/protos/output.proto +++ b/backend/protos/seqvars/protos/output.proto @@ -335,9 +335,9 @@ message FrequencyAnnotation { // gnomAD-genomes filter optional NuclearFrequency gnomad_genomes = 2; // gnomAD-MT filter - optional GnomadMitochondrialFrequency gnomad_mtdna = 3; + optional MitochondrialFrequency gnomad_mtdna = 3; // HelixMtDb filter - optional HelixMtDbFrequency helixmtdb = 4; + optional MitochondrialFrequency helixmtdb = 4; // In-house filter optional NuclearFrequency inhouse = 5; } @@ -356,8 +356,8 @@ message NuclearFrequency { float af = 5; } -// gnomAD mitochondrial frequency information. -message GnomadMitochondrialFrequency { +// Mitochondrial frequency information. +message MitochondrialFrequency { // Number of covered alleles. int32 an = 1; // Number of heteroplasmic carriers. @@ -368,18 +368,6 @@ message GnomadMitochondrialFrequency { float af = 4; } -// HelixMtDb frequency information. -message HelixMtDbFrequency { - // Number of covered alleles. - int32 an = 1; - // Number of heterozygous carriers in HelixMtDb - int32 het = 2; - // Number of homozygous carriers in HelixMtDb - int32 homalt = 3; - // Frequency in HelixMtDb - float af = 4; -} - // Database identifiers. message DbIds { // dbSNP ID. diff --git a/backend/protos/seqvars/protos/query.proto b/backend/protos/seqvars/protos/query.proto index 786a4a731..baf40e313 100644 --- a/backend/protos/seqvars/protos/query.proto +++ b/backend/protos/seqvars/protos/query.proto @@ -88,45 +88,46 @@ message QuerySettingsQuality { repeated SampleQualitySettings sample_qualities = 1; } -// gnomAD and In-house nuclear filter options. +// gnomAD filter options. message NuclearFrequencySettings { - // Whether to enable filtration by 1000 Genomes. + // Whether to enable filtration. bool enabled = 1; - // Maximal number of in-house heterozygous carriers - optional int32 heterozygous = 2; - // Maximal number of in-house homozygous carriers - optional int32 homozygous = 3; - // Maximal number of in-house hemizygous carriers - optional int32 hemizygous = 4; + // Maximal number of heterozygous carriers + optional int32 max_het = 2; + // Maximal number of homozygous carriers + optional int32 max_hom = 3; + // Maximal number of hemizygous carriers + optional int32 max_hemi = 4; // Maximal allele frequency. - optional float frequency = 5; + optional float max_af = 5; } -// gnomAD mitochondrial filter options. -message GnomadMitochondrialFrequencySettings { - // Whether to enable filtration by 1000 Genomes. +// Mitochondrial filter options. +message MitochondrialFrequencySettings { + // Whether to enable filtration. bool enabled = 1; // Maximal number of heteroplasmic carriers. - optional int32 heteroplasmic = 2; + optional int32 max_het = 2; // Maximal number of homoplasmic carriers. - optional int32 homoplasmic = 3; + optional int32 max_hom = 3; // Maximal allele frequency. - optional float frequency = 4; + optional float max_af = 4; } -// HelixMtDb filter options. -message HelixMtDbFrequencySettings { - // Whether to enable filtration by mtDB +// In-house filter options. +message InhouseFrequencySettings { + // Whether to enable filtration. bool enabled = 1; - // Maximal number of heterozygous carriers in HelixMtDb - optional int32 heteroplasmic = 2; - // Maximal number of homozygous carriers in HelixMtDb - optional int32 homoplasmic = 3; - // Maximal frequency in HelixMtDb - optional float frequency = 4; + // Maximal number of heterozygous carriers + optional int32 max_het = 2; + // Maximal number of homozygous carriers + optional int32 max_hom = 3; + // Maximal number of hemizygous carriers + optional int32 max_hemi = 4; + // Maximal number of total carriers. + optional int32 max_carriers = 5; } - // Population frequency filter options. message QuerySettingsFrequency { // gnomAD-exomes filter @@ -134,11 +135,11 @@ message QuerySettingsFrequency { // gnomAD-genomes filter NuclearFrequencySettings gnomad_genomes = 2; // gnomAD-MT filter - GnomadMitochondrialFrequencySettings gnomad_mtdna = 3; + MitochondrialFrequencySettings gnomad_mtdna = 3; // HelixMtDb filter - HelixMtDbFrequencySettings helixmtdb = 4; + MitochondrialFrequencySettings helixmtdb = 4; // In-house filter - NuclearFrequencySettings inhouse = 5; + InhouseFrequencySettings inhouse = 5; } // The variant types. @@ -284,7 +285,7 @@ message Range { // 1-based start position. int32 start = 1; // 1-based end position. - int32 end = 2; + int32 stop = 2; } // Genomic region. diff --git a/backend/seqvars/factory_defaults.py b/backend/seqvars/factory_defaults.py index 661a46d75..0657176ee 100644 --- a/backend/seqvars/factory_defaults.py +++ b/backend/seqvars/factory_defaults.py @@ -12,14 +12,13 @@ from seqvars.models.base import ( ClinvarGermlineAggregateDescriptionChoice, GenomeRegionPydantic, - GnomadMitochondrialFrequencySettingsPydantic, - GnomadNuclearFrequencySettingsPydantic, - HelixmtDbFrequencySettingsPydantic, - InhouseFrequencySettingsPydantic, LabeledSortableBaseModel, SeqvarsColumnConfigPydantic, SeqvarsGenotypePresetChoice, SeqvarsGenotypePresetsPydantic, + SeqvarsInhouseFrequencySettingsPydantic, + SeqvarsMitochondrialFrequencySettingsPydantic, + SeqvarsNuclearFrequencySettingsPydantic, SeqvarsPredefinedQuery, SeqvarsPrioServicePydantic, SeqvarsQueryPresetsClinvar, @@ -459,38 +458,38 @@ def create_seqvarsquerypresetsfrequency(faker: Faker) -> list[SeqvarsQueryPreset date_modified=TIME_VERSION_1_0, rank=1, label="dominant super strict", - gnomad_exomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_exomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.002, - homozygous=0, - heterozygous=1, - hemizygous=None, + max_af=0.002, + max_hom=0, + max_het=1, + max_hemi=None, ), - gnomad_genomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_genomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.002, - homozygous=0, - heterozygous=1, - hemizygous=None, + max_af=0.002, + max_hom=0, + max_het=1, + max_hemi=None, ), - gnomad_mitochondrial=GnomadMitochondrialFrequencySettingsPydantic( + gnomad_mtdna=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - frequency=None, - heteroplasmic=None, - homoplasmic=None, + max_af=None, + max_het=None, + max_hom=None, ), - helixmtdb=HelixmtDbFrequencySettingsPydantic( + helixmtdb=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - heteroplasmic=None, - homoplasmic=None, - frequency=None, + max_het=None, + max_hom=None, + max_af=None, ), - inhouse=InhouseFrequencySettingsPydantic( + inhouse=SeqvarsInhouseFrequencySettingsPydantic( enabled=True, - homozygous=None, - heterozygous=None, - hemizygous=None, - frequency=None, + max_hom=None, + max_het=None, + max_hemi=None, + max_carriers=None, ), ), SeqvarsQueryPresetsFrequency( @@ -499,38 +498,38 @@ def create_seqvarsquerypresetsfrequency(faker: Faker) -> list[SeqvarsQueryPreset date_modified=TIME_VERSION_1_0, rank=2, label="dominant strict", - gnomad_exomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_exomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.002, - homozygous=0, - heterozygous=1, - hemizygous=None, + max_af=0.002, + max_hom=0, + max_het=1, + max_hemi=None, ), - gnomad_genomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_genomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.002, - homozygous=0, - heterozygous=1, - hemizygous=None, + max_af=0.002, + max_hom=0, + max_het=1, + max_hemi=None, ), - gnomad_mitochondrial=GnomadMitochondrialFrequencySettingsPydantic( + gnomad_mtdna=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - frequency=None, - heteroplasmic=None, - homoplasmic=None, + max_af=None, + max_het=None, + max_hom=None, ), - helixmtdb=HelixmtDbFrequencySettingsPydantic( + helixmtdb=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - heteroplasmic=None, - homoplasmic=None, - frequency=None, + max_het=None, + max_hom=None, + max_af=None, ), - inhouse=InhouseFrequencySettingsPydantic( + inhouse=SeqvarsInhouseFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_carriers=20, + max_hom=None, + max_het=None, + max_hemi=None, ), ), SeqvarsQueryPresetsFrequency( @@ -539,38 +538,38 @@ def create_seqvarsquerypresetsfrequency(faker: Faker) -> list[SeqvarsQueryPreset date_modified=TIME_VERSION_1_0, rank=3, label="dominant relaxed", - gnomad_exomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_exomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=0, - heterozygous=50, - hemizygous=None, + max_af=0.01, + max_hom=0, + max_het=50, + max_hemi=None, ), - gnomad_genomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_genomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=0, - heterozygous=20, - hemizygous=None, + max_af=0.01, + max_hom=0, + max_het=20, + max_hemi=None, ), - gnomad_mitochondrial=GnomadMitochondrialFrequencySettingsPydantic( + gnomad_mtdna=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - frequency=None, - heteroplasmic=None, - homoplasmic=None, + max_af=None, + max_het=None, + max_hom=None, ), - helixmtdb=HelixmtDbFrequencySettingsPydantic( + helixmtdb=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - heteroplasmic=None, - homoplasmic=None, - frequency=None, + max_het=None, + max_hom=None, + max_af=None, ), - inhouse=InhouseFrequencySettingsPydantic( + inhouse=SeqvarsInhouseFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_carriers=20, + max_hom=None, + max_het=None, + max_hemi=None, ), ), SeqvarsQueryPresetsFrequency( @@ -579,38 +578,38 @@ def create_seqvarsquerypresetsfrequency(faker: Faker) -> list[SeqvarsQueryPreset date_modified=TIME_VERSION_1_0, rank=4, label="recessive strict", - gnomad_exomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_exomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.001, - homozygous=0, - heterozygous=120, - hemizygous=None, + max_af=0.001, + max_hom=0, + max_het=120, + max_hemi=None, ), - gnomad_genomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_genomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.001, - homozygous=0, - heterozygous=15, - hemizygous=None, + max_af=0.001, + max_hom=0, + max_het=15, + max_hemi=None, ), - gnomad_mitochondrial=GnomadMitochondrialFrequencySettingsPydantic( + gnomad_mtdna=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - frequency=None, - heteroplasmic=None, - homoplasmic=None, + max_af=None, + max_het=None, + max_hom=None, ), - helixmtdb=HelixmtDbFrequencySettingsPydantic( + helixmtdb=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - heteroplasmic=None, - homoplasmic=None, - frequency=None, + max_het=None, + max_hom=None, + max_af=None, ), - inhouse=InhouseFrequencySettingsPydantic( + inhouse=SeqvarsInhouseFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_carriers=20, + max_hom=None, + max_het=None, + max_hemi=None, ), ), SeqvarsQueryPresetsFrequency( @@ -619,38 +618,38 @@ def create_seqvarsquerypresetsfrequency(faker: Faker) -> list[SeqvarsQueryPreset date_modified=TIME_VERSION_1_0, rank=5, label="recessive relaxed", - gnomad_exomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_exomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=20, - heterozygous=0, - hemizygous=None, + max_af=0.01, + max_hom=20, + max_het=0, + max_hemi=None, ), - gnomad_genomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_genomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=4, - heterozygous=150, - hemizygous=None, + max_af=0.01, + max_hom=4, + max_het=150, + max_hemi=None, ), - gnomad_mitochondrial=GnomadMitochondrialFrequencySettingsPydantic( + gnomad_mtdna=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - frequency=None, - heteroplasmic=None, - homoplasmic=None, + max_af=None, + max_het=None, + max_hom=None, ), - helixmtdb=HelixmtDbFrequencySettingsPydantic( + helixmtdb=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - heteroplasmic=None, - homoplasmic=None, - frequency=None, + max_het=None, + max_hom=None, + max_af=None, ), - inhouse=InhouseFrequencySettingsPydantic( + inhouse=SeqvarsInhouseFrequencySettingsPydantic( enabled=True, - frequency=0.01, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_carriers=20, + max_hom=None, + max_het=None, + max_hemi=None, ), ), SeqvarsQueryPresetsFrequency( @@ -659,38 +658,38 @@ def create_seqvarsquerypresetsfrequency(faker: Faker) -> list[SeqvarsQueryPreset date_modified=TIME_VERSION_1_0, rank=6, label="any", - gnomad_exomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_exomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=False, - frequency=None, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_af=None, + max_hom=None, + max_het=None, + max_hemi=None, ), - gnomad_genomes=GnomadNuclearFrequencySettingsPydantic( + gnomad_genomes=SeqvarsNuclearFrequencySettingsPydantic( enabled=False, - frequency=None, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_af=None, + max_hom=None, + max_het=None, + max_hemi=None, ), - gnomad_mitochondrial=GnomadMitochondrialFrequencySettingsPydantic( + gnomad_mtdna=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - frequency=None, - heteroplasmic=None, - homoplasmic=None, + max_af=None, + max_het=None, + max_hom=None, ), - helixmtdb=HelixmtDbFrequencySettingsPydantic( + helixmtdb=SeqvarsMitochondrialFrequencySettingsPydantic( enabled=False, - heteroplasmic=None, - homoplasmic=None, - frequency=None, + max_het=None, + max_hom=None, + max_af=None, ), - inhouse=InhouseFrequencySettingsPydantic( + inhouse=SeqvarsInhouseFrequencySettingsPydantic( enabled=False, - frequency=0.01, - homozygous=None, - heterozygous=None, - hemizygous=None, + max_carriers=20, + max_hom=None, + max_het=None, + max_hemi=None, ), ), ] diff --git a/backend/seqvars/migrations/0002_auto_20240708_1305.py b/backend/seqvars/migrations/0002_auto_20240708_1305.py index b9cc7a26c..48d9a0e92 100644 --- a/backend/seqvars/migrations/0002_auto_20240708_1305.py +++ b/backend/seqvars/migrations/0002_auto_20240708_1305.py @@ -180,7 +180,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.GnomadNuclearFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsNuclearFrequencySettingsPydantic, type(None)), ), ), ), @@ -195,7 +195,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.GnomadNuclearFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsNuclearFrequencySettingsPydantic, type(None)), ), ), ), @@ -210,7 +210,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.GnomadMitochondrialFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsMitochondrialFrequencySettingsPydantic, type(None)), ), ), ), @@ -225,7 +225,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.HelixmtDbFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsMitochondrialFrequencySettingsPydantic, type(None)), ), ), ), @@ -239,7 +239,8 @@ class Migration(migrations.Migration): encoder=django.core.serializers.json.DjangoJSONEncoder, null=True, schema=django_pydantic_field.compat.django.GenericContainer( - typing.Union, (seqvars.models.base.InhouseFrequencySettingsPydantic, type(None)) + typing.Union, + (seqvars.models.base.SeqvarsNuclearFrequencySettingsPydantic, type(None)), ), ), ), @@ -254,7 +255,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.GnomadNuclearFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsNuclearFrequencySettingsPydantic, type(None)), ), ), ), @@ -269,7 +270,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.GnomadNuclearFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsNuclearFrequencySettingsPydantic, type(None)), ), ), ), @@ -284,7 +285,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.GnomadMitochondrialFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsMitochondrialFrequencySettingsPydantic, type(None)), ), ), ), @@ -299,7 +300,7 @@ class Migration(migrations.Migration): null=True, schema=django_pydantic_field.compat.django.GenericContainer( typing.Union, - (seqvars.models.base.HelixmtDbFrequencySettingsPydantic, type(None)), + (seqvars.models.base.SeqvarsMitochondrialFrequencySettingsPydantic, type(None)), ), ), ), @@ -313,7 +314,8 @@ class Migration(migrations.Migration): encoder=django.core.serializers.json.DjangoJSONEncoder, null=True, schema=django_pydantic_field.compat.django.GenericContainer( - typing.Union, (seqvars.models.base.InhouseFrequencySettingsPydantic, type(None)) + typing.Union, + (seqvars.models.base.SeqvarsNuclearFrequencySettingsPydantic, type(None)), ), ), ), diff --git a/backend/seqvars/migrations/0013_auto_20241028_0928.py b/backend/seqvars/migrations/0013_auto_20241028_0928.py new file mode 100644 index 000000000..556ce94a4 --- /dev/null +++ b/backend/seqvars/migrations/0013_auto_20241028_0928.py @@ -0,0 +1,60 @@ +# Generated by Django 3.2.25 on 2024-10-28 09:28 + +import typing + +import django.core.serializers.json +from django.db import migrations +import django_pydantic_field.compat.django +import django_pydantic_field.fields + +import seqvars.models.base + + +class Migration(migrations.Migration): + + dependencies = [ + ("seqvars", "0012_auto_20241024_0823"), + ] + + operations = [ + migrations.RenameField( + model_name="seqvarsquerypresetsfrequency", + old_name="gnomad_mitochondrial", + new_name="gnomad_mtdna", + ), + migrations.RenameField( + model_name="seqvarsquerysettingsfrequency", + old_name="gnomad_mitochondrial", + new_name="gnomad_mtdna", + ), + migrations.AlterField( + model_name="seqvarsquerypresetsfrequency", + name="inhouse", + field=django_pydantic_field.fields.PydanticSchemaField( + blank=True, + config=None, + default=None, + encoder=django.core.serializers.json.DjangoJSONEncoder, + null=True, + schema=django_pydantic_field.compat.django.GenericContainer( + typing.Union, + (seqvars.models.base.SeqvarsInhouseFrequencySettingsPydantic, type(None)), + ), + ), + ), + migrations.AlterField( + model_name="seqvarsquerysettingsfrequency", + name="inhouse", + field=django_pydantic_field.fields.PydanticSchemaField( + blank=True, + config=None, + default=None, + encoder=django.core.serializers.json.DjangoJSONEncoder, + null=True, + schema=django_pydantic_field.compat.django.GenericContainer( + typing.Union, + (seqvars.models.base.SeqvarsInhouseFrequencySettingsPydantic, type(None)), + ), + ), + ), + ] diff --git a/backend/seqvars/models/base.py b/backend/seqvars/models/base.py index c2970174f..1b2b82762 100644 --- a/backend/seqvars/models/base.py +++ b/backend/seqvars/models/base.py @@ -56,73 +56,82 @@ def copy_list(values: list[ExtendsBaseModel]) -> list[ExtendsBaseModel]: User = get_user_model() -class GnomadNuclearFrequencySettingsPydantic(pydantic.BaseModel): - """Settings for gnomAD nuclear frequency filtering.""" - - enabled: bool = False - heterozygous: int | None = None - homozygous: int | None = None - hemizygous: int | None = None - frequency: float | None = None - +class SeqvarsNuclearFrequencySettingsPydantic(pydantic.BaseModel): + """Settings for nuclear frequency filtering. -class GnomadMitochondrialFrequencySettingsPydantic(pydantic.BaseModel): - """Settings for gnomAD mitochondrial frequency filtering.""" + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. + """ + #: Whether to enable filtration. enabled: bool = False - heteroplasmic: int | None = None - homoplasmic: int | None = None - frequency: float | None = None + #: Maximal number of heterozygous carriers. + max_het: int | None = None + #: Maximal number of heterozygous carriers. + max_hom: int | None = None + #: Maximal number of hemizygous carriers (if applicable). + max_hemi: int | None = None + #: Maximal allele frequency. + max_af: float | None = None -class HelixmtDbFrequencySettingsPydantic(pydantic.BaseModel): - """Settings for HelixMtDb frequency filtering.""" +class SeqvarsMitochondrialFrequencySettingsPydantic(pydantic.BaseModel): + """Settings for mitochondrial frequency filtering.""" + #: Whether to enable filtration. enabled: bool = False - heteroplasmic: int | None = None - homoplasmic: int | None = None - frequency: float | None = None + #: Maximal number of heteroplasmic carriers. + max_het: int | None = None + #: Maximal number of homoplasmic carriers. + max_hom: int | None = None + #: Maximal allele frequency. + max_af: float | None = None -class InhouseFrequencySettingsPydantic(pydantic.BaseModel): - """Settings for in-house frequency filtering.""" +class SeqvarsInhouseFrequencySettingsPydantic(pydantic.BaseModel): + """Settings for mitochondrial frequency filtering.""" + #: Whether to enable filtration. enabled: bool = False - heterozygous: int | None = None - homozygous: int | None = None - hemizygous: int | None = None - frequency: float | None = None + #: Maximal number of heterozygous/heteroplasmic carriers. + max_het: int | None = None + #: Maximal number of homozygous/homoplasmic carriers. + max_hom: int | None = None + #: Maximal number of hemizygous carriers. + max_hemi: int | None = None + #: Maximal number of carriers. + max_carriers: int | None = None class SeqvarsFrequencySettingsBase(models.Model): - """Abstract model for storing frequency-related settings.""" + """Abstract Django model for storing frequency-related settings.""" gnomad_exomes = SchemaField( - schema=typing.Optional[GnomadNuclearFrequencySettingsPydantic], + schema=typing.Optional[SeqvarsNuclearFrequencySettingsPydantic], blank=True, null=True, default=None, ) gnomad_genomes = SchemaField( - schema=typing.Optional[GnomadNuclearFrequencySettingsPydantic], + schema=typing.Optional[SeqvarsNuclearFrequencySettingsPydantic], blank=True, null=True, default=None, ) - gnomad_mitochondrial = SchemaField( - schema=typing.Optional[GnomadMitochondrialFrequencySettingsPydantic], + gnomad_mtdna = SchemaField( + schema=typing.Optional[SeqvarsMitochondrialFrequencySettingsPydantic], blank=True, null=True, default=None, ) helixmtdb = SchemaField( - schema=typing.Optional[HelixmtDbFrequencySettingsPydantic], + schema=typing.Optional[SeqvarsMitochondrialFrequencySettingsPydantic], blank=True, null=True, default=None, ) inhouse = SchemaField( - schema=typing.Optional[InhouseFrequencySettingsPydantic], + schema=typing.Optional[SeqvarsInhouseFrequencySettingsPydantic], blank=True, null=True, default=None, @@ -329,7 +338,7 @@ class OneBasedRangePydantic(pydantic.BaseModel): #: The 1-based start position. start: int #: The 1-based end position. - end: int + stop: int class GenomeRegionPydantic(pydantic.BaseModel): @@ -1468,7 +1477,7 @@ def from_presets( querysettings=querysettings, gnomad_exomes=copy_model(frequencypresets.gnomad_exomes), gnomad_genomes=copy_model(frequencypresets.gnomad_genomes), - gnomad_mitochondrial=copy_model(frequencypresets.gnomad_mitochondrial), + gnomad_mtdna=copy_model(frequencypresets.gnomad_mtdna), helixmtdb=copy_model(frequencypresets.helixmtdb), inhouse=copy_model(frequencypresets.inhouse), ) @@ -1817,47 +1826,6 @@ class SeqvarsQuerySettingsQualityPydantic(pydantic.BaseModel): sample_quality_settings: typing.List[SeqvarsSampleQualitySettingsPydantic] = [] -class SeqvarsNuclearFrequencySettingsPydantic(pydantic.BaseModel): - """gnomAD and in-house nuclear filter options.""" - - #: Whether to enable filtration by 1000 Genomes. - enabled: bool = False - #: Maximal number of in-house heterozygous carriers. - heterozygous: typing.Optional[int] = None - #: Maximal number of in-house homozygous carriers. - homozygous: typing.Optional[int] = None - #: Maximal number of in-house hemizygous carriers. - hemizygous: typing.Optional[int] = None - #: Maximal allele frequency. - frequency: typing.Optional[float] = None - - -class SeqvarsGnomadMitochondrialFrequencySettingsPydantic(pydantic.BaseModel): - """gnomAD mitochondrial filter options.""" - - #: Whether to enable filtration by 1000 Genomes. - enabled: bool = False - #: Maximal number of heteroplasmic carriers. - heteroplasmic: typing.Optional[int] = None - #: Maximal number of homoplasmic carriers. - homoplasmic: typing.Optional[int] = None - #: Maximal allele frequency. - frequency: typing.Optional[float] = None - - -class SeqvarsHelixMtDbFrequencySettingsPydantic(pydantic.BaseModel): - """HelixMtDb filter options.""" - - #: Whether to enable filtration by mtDB - enabled: bool = False - #: Maximal number of heterozygous carriers in HelixMtDb - heteroplasmic: typing.Optional[int] = None - #: Maximal number of homozygous carriers in HelixMtDb - homoplasmic: typing.Optional[int] = None - #: Maximal frequency in HelixMtDb - frequency: typing.Optional[float] = None - - class SeqvarsQuerySettingsFrequencyPydantic(pydantic.BaseModel): """Pydantic representation of ``SeqvarsQuerySettingsFrequency``.""" @@ -1866,11 +1834,11 @@ class SeqvarsQuerySettingsFrequencyPydantic(pydantic.BaseModel): #: gnomAD-genomes filter gnomad_genomes: typing.Optional[SeqvarsNuclearFrequencySettingsPydantic] = None #: gnomAD mitochondrial filter options. - gnomad_mtdna: typing.Optional[SeqvarsGnomadMitochondrialFrequencySettingsPydantic] = None + gnomad_mtdna: typing.Optional[SeqvarsMitochondrialFrequencySettingsPydantic] = None #: HelixMtDb filter options. - helixmtdb: typing.Optional[SeqvarsHelixMtDbFrequencySettingsPydantic] = None + helixmtdb: typing.Optional[SeqvarsMitochondrialFrequencySettingsPydantic] = None #: In-house filter options. - inhouse: typing.Optional[SeqvarsNuclearFrequencySettingsPydantic] = None + inhouse: typing.Optional[SeqvarsInhouseFrequencySettingsPydantic] = None class SeqvarsQuerySettingsConsequencePydantic(pydantic.BaseModel): @@ -2217,7 +2185,13 @@ class GeneRelatedAnnotationPydantic(pydantic.BaseModel): class SeqvarsNuclearFrequencyPydantic(pydantic.BaseModel): - """Store gnomAD and in-house nuclear frequency information.""" + """Store nuclear frequency information. + + This is also used for for storing chrMT frequencies in the case of in-house + data. Here, the ``an`` field is the total number of samples with coverage, + and the ``het`` and ``homalt`` fields are the number of heteroplasmic and + homoplasmic carriers, respectively. + """ #: Number of covered alleles. an: int = 0 @@ -2231,8 +2205,8 @@ class SeqvarsNuclearFrequencyPydantic(pydantic.BaseModel): af: float = 0.0 -class SeqvarsGnomadMitochondrialFrequencyPydantic(pydantic.BaseModel): - """Store gnomAD mitochondrial frequency information.""" +class SeqvarsMitochondrialFrequencyPydantic(pydantic.BaseModel): + """Store mitochondrial frequency information.""" #: Number of covered alleles. an: int = 0 @@ -2244,30 +2218,17 @@ class SeqvarsGnomadMitochondrialFrequencyPydantic(pydantic.BaseModel): af: float = 0.0 -class SeqvarsHelixMtDbFrequencyPydantic(pydantic.BaseModel): - """Store HelixMtDb frequency information.""" - - #: Number of covered alleles. - an: int = 0 - #: Number of heterozygous carriers in HelixMtDb. - het: int = 0 - #: Number of homozygous carriers in HelixMtDb. - homalt: int = 0 - #: Frequency in HelixMtDb. - af: float = 0.0 - - class SeqvarsFrequencyAnnotationPydantic(pydantic.BaseModel): - """SPopulation frequency information""" + """Population frequency information""" #: gnomAD exomes filter. gnomad_exomes: typing.Optional[SeqvarsNuclearFrequencyPydantic] = None #: gnomAD genomes filter. gnomad_genomes: typing.Optional[SeqvarsNuclearFrequencyPydantic] = None #: gnomAD MT filter. - gnomad_mtdna: typing.Optional[SeqvarsGnomadMitochondrialFrequencyPydantic] = None + gnomad_mtdna: typing.Optional[SeqvarsMitochondrialFrequencyPydantic] = None #: HelixMtDb filter. - helixmtdb: typing.Optional[SeqvarsHelixMtDbFrequencyPydantic] = None + helixmtdb: typing.Optional[SeqvarsMitochondrialFrequencyPydantic] = None #: In-house filter. inhouse: typing.Optional[SeqvarsNuclearFrequencyPydantic] = None diff --git a/backend/seqvars/models/protobufs.py b/backend/seqvars/models/protobufs.py index 01ff8a947..375c6c778 100644 --- a/backend/seqvars/models/protobufs.py +++ b/backend/seqvars/models/protobufs.py @@ -28,10 +28,9 @@ SeqvarsDbIdsPydantic, SeqvarsFrequencyAnnotationPydantic, SeqvarsGenotypeChoice, - SeqvarsGnomadMitochondrialFrequencyPydantic, - SeqvarsGnomadMitochondrialFrequencySettingsPydantic, - SeqvarsHelixMtDbFrequencyPydantic, - SeqvarsHelixMtDbFrequencySettingsPydantic, + SeqvarsInhouseFrequencySettingsPydantic, + SeqvarsMitochondrialFrequencyPydantic, + SeqvarsMitochondrialFrequencySettingsPydantic, SeqvarsModeOfInheritance, SeqvarsNuclearFrequencyPydantic, SeqvarsNuclearFrequencySettingsPydantic, @@ -84,8 +83,7 @@ GeneRelatedPhenotypes, GenomeRelease, GnomadConstraints, - GnomadMitochondrialFrequency, - HelixMtDbFrequency, + MitochondrialFrequency, ModeOfInheritance, NuclearFrequency, OutputHeader, @@ -109,8 +107,8 @@ Consequence, GenomicRegion, GenotypeChoice, - GnomadMitochondrialFrequencySettings, - HelixMtDbFrequencySettings, + InhouseFrequencySettings, + MitochondrialFrequencySettings, NuclearFrequencySettings, QuerySettingsClinVar, QuerySettingsConsequence, @@ -194,36 +192,36 @@ def _frequency_to_protobuf(frequency: SeqvarsQuerySettingsFrequency) -> QuerySet return QuerySettingsFrequency( gnomad_exomes=NuclearFrequencySettings( enabled=frequency.gnomad_exomes.enabled, - heterozygous=frequency.gnomad_exomes.heterozygous, - homozygous=frequency.gnomad_exomes.homozygous, - hemizygous=frequency.gnomad_exomes.hemizygous, - frequency=frequency.gnomad_exomes.frequency, + max_het=frequency.gnomad_exomes.max_het, + max_hom=frequency.gnomad_exomes.max_hom, + max_hemi=frequency.gnomad_exomes.max_hemi, + max_af=frequency.gnomad_exomes.max_af, ), gnomad_genomes=NuclearFrequencySettings( enabled=frequency.gnomad_genomes.enabled, - heterozygous=frequency.gnomad_genomes.heterozygous, - homozygous=frequency.gnomad_genomes.homozygous, - hemizygous=frequency.gnomad_genomes.hemizygous, - frequency=frequency.gnomad_genomes.frequency, + max_het=frequency.gnomad_genomes.max_het, + max_hom=frequency.gnomad_genomes.max_hom, + max_hemi=frequency.gnomad_genomes.max_hemi, + max_af=frequency.gnomad_genomes.max_af, ), - gnomad_mtdna=GnomadMitochondrialFrequencySettings( - enabled=frequency.gnomad_mitochondrial.enabled, - heteroplasmic=frequency.gnomad_mitochondrial.heteroplasmic, - homoplasmic=frequency.gnomad_mitochondrial.homoplasmic, - frequency=frequency.gnomad_mitochondrial.frequency, + gnomad_mtdna=MitochondrialFrequencySettings( + enabled=frequency.gnomad_mtdna.enabled, + max_het=frequency.gnomad_mtdna.max_het, + max_hom=frequency.gnomad_mtdna.max_hom, + max_af=frequency.gnomad_mtdna.max_af, ), - helixmtdb=HelixMtDbFrequencySettings( + helixmtdb=MitochondrialFrequencySettings( enabled=frequency.helixmtdb.enabled, - heteroplasmic=frequency.helixmtdb.heteroplasmic, - homoplasmic=frequency.helixmtdb.homoplasmic, - frequency=frequency.helixmtdb.frequency, + max_het=frequency.helixmtdb.max_het, + max_hom=frequency.helixmtdb.max_hom, + max_af=frequency.helixmtdb.max_af, ), - inhouse=NuclearFrequencySettings( + inhouse=InhouseFrequencySettings( enabled=frequency.inhouse.enabled, - heterozygous=frequency.inhouse.heterozygous, - homozygous=frequency.inhouse.homozygous, - hemizygous=frequency.inhouse.hemizygous, - frequency=frequency.inhouse.frequency, + max_het=frequency.inhouse.max_het, + max_hom=frequency.inhouse.max_hom, + max_hemi=frequency.inhouse.max_hemi, + max_carriers=frequency.inhouse.max_carriers, ), ) @@ -453,32 +451,33 @@ def _seqvars_nuclear_frequency_settings_from_protobuf( ) -> SeqvarsNuclearFrequencySettingsPydantic: return SeqvarsNuclearFrequencySettingsPydantic( enabled=frequency.enabled, - heterozygous=frequency.heterozygous, - homozygous=frequency.homozygous, - hemizygous=frequency.hemizygous, - frequency=frequency.frequency, + max_het=frequency.max_het, + max_hom=frequency.max_hom, + max_hemi=frequency.max_hemi, + max_af=frequency.max_af, ) -def _seqvars_gnomad_mitochondrial_frequency_settings_from_protobuf( - frequency: GnomadMitochondrialFrequencySettings, -) -> SeqvarsGnomadMitochondrialFrequencySettingsPydantic: - return SeqvarsGnomadMitochondrialFrequencySettingsPydantic( +def _seqvars_mitochondrial_frequency_settings_from_protobuf( + frequency: SeqvarsMitochondrialFrequencySettingsPydantic, +) -> SeqvarsMitochondrialFrequencySettingsPydantic: + return SeqvarsMitochondrialFrequencySettingsPydantic( enabled=frequency.enabled, - heteroplasmic=frequency.heteroplasmic, - homoplasmic=frequency.homoplasmic, - frequency=frequency.frequency, + max_het=frequency.max_het, + max_hom=frequency.max_hom, + frequency=frequency.max_af, ) -def _seqvars_helixmtdb_frequency_settings_from_protobuf( - frequency: HelixMtDbFrequencySettings, -) -> SeqvarsHelixMtDbFrequencySettingsPydantic: - return SeqvarsHelixMtDbFrequencySettingsPydantic( +def _seqvars_inhouse_frequency_settings_from_protobuf( + frequency: InhouseFrequencySettings, +) -> SeqvarsInhouseFrequencySettingsPydantic: + return SeqvarsInhouseFrequencySettingsPydantic( enabled=frequency.enabled, - heteroplasmic=frequency.heteroplasmic, - homoplasmic=frequency.homoplasmic, - frequency=frequency.frequency, + max_het=frequency.max_het, + max_hom=frequency.max_hom, + max_hemi=frequency.max_hemi, + max_carriers=frequency.max_carriers, ) @@ -496,18 +495,18 @@ def _seqvars_query_settings_frequency_from_protobuf( if frequency.HasField("gnomad_genomes") else None ), - gnomad_mitochondrial=( - _seqvars_gnomad_mitochondrial_frequency_settings_from_protobuf(frequency.gnomad_mtdna) + gnomad_mtdna=( + _seqvars_mitochondrial_frequency_settings_from_protobuf(frequency.gnomad_mtdna) if frequency.HasField("gnomad_mtdna") else None ), helixmtdb=( - _seqvars_helixmtdb_frequency_settings_from_protobuf(frequency.helixmtdb) + _seqvars_mitochondrial_frequency_settings_from_protobuf(frequency.helixmtdb) if frequency.HasField("helixmtdb") else None ), inhouse=( - _seqvars_nuclear_frequency_settings_from_protobuf(frequency.inhouse) + _seqvars_inhouse_frequency_settings_from_protobuf(frequency.inhouse) if frequency.HasField("inhouse") else None ), @@ -578,7 +577,7 @@ def _genome_region_from_protobuf(region: GenomicRegion) -> GenomeRegionPydantic: if region.range is None else OneBasedRangePydantic( start=region.range.start, - end=region.range.end, + stop=region.range.end, ) ), ) @@ -960,21 +959,10 @@ def _seqvars_nuclear_frequency_from_protobuf( ) -def _seqvars_gnomad_mitochondrial_frequency_from_protobuf( - frequency: GnomadMitochondrialFrequency, -) -> SeqvarsGnomadMitochondrialFrequencyPydantic: - return SeqvarsGnomadMitochondrialFrequencyPydantic( - an=frequency.an, - het=frequency.het, - homalt=frequency.homalt, - af=frequency.af, - ) - - -def _seqvars_helixmtdb_frequency_from_protobuf( - frequency: HelixMtDbFrequency, -) -> SeqvarsHelixMtDbFrequencyPydantic: - return SeqvarsHelixMtDbFrequencyPydantic( +def _seqvars_mitochondrial_frequency_from_protobuf( + frequency: MitochondrialFrequency, +) -> SeqvarsMitochondrialFrequencyPydantic: + return SeqvarsMitochondrialFrequencyPydantic( an=frequency.an, het=frequency.het, homalt=frequency.homalt, @@ -996,13 +984,13 @@ def _frequency_annotation_from_protobuf( if frequency.HasField("gnomad_genomes") else None ), - gnomad_mitochondrial=( - _seqvars_gnomad_mitochondrial_frequency_from_protobuf(frequency.gnomad_mtdna) + gnomad_mtdna=( + _seqvars_mitochondrial_frequency_from_protobuf(frequency.gnomad_mtdna) if frequency.HasField("gnomad_mtdna") else None ), helixmtdb=( - _seqvars_helixmtdb_frequency_from_protobuf(frequency.helixmtdb) + _seqvars_mitochondrial_frequency_from_protobuf(frequency.helixmtdb) if frequency.HasField("helixmtdb") else None ), diff --git a/backend/seqvars/protos/output_pb2.py b/backend/seqvars/protos/output_pb2.py index c7df4fe71..bea8fc957 100644 --- a/backend/seqvars/protos/output_pb2.py +++ b/backend/seqvars/protos/output_pb2.py @@ -18,7 +18,7 @@ from seqvars.protos import query_pb2 as seqvars_dot_protos_dot_query__pb2 DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\n\x1bseqvars/protos/output.proto\x12\x12seqvars.pbs.output\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1aseqvars/protos/query.proto"\xaa\x03\n\x0cOutputHeader\x12\x39\n\x0egenome_release\x18\x01 \x01(\x0e\x32!.seqvars.pbs.output.GenomeRelease\x12\x32\n\x08versions\x18\x02 \x03(\x0b\x32 .seqvars.pbs.output.VersionEntry\x12\x30\n\x05query\x18\x03 \x01(\x0b\x32\x1c.seqvars.pbs.query.CaseQueryH\x00\x88\x01\x01\x12\x11\n\tcase_uuid\x18\x04 \x01(\t\x12\x39\n\tresources\x18\x05 \x01(\x0b\x32!.seqvars.pbs.output.ResourcesUsedH\x01\x88\x01\x01\x12=\n\nstatistics\x18\x06 \x01(\x0b\x32$.seqvars.pbs.output.OutputStatisticsH\x02\x88\x01\x01\x12\x45\n\x15variant_score_columns\x18\x07 \x03(\x0b\x32&.seqvars.pbs.output.VariantScoreColumnB\x08\n\x06_queryB\x0c\n\n_resourcesB\r\n\x0b_statistics"\x80\x01\n\x12VariantScoreColumn\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x38\n\x04type\x18\x04 \x01(\x0e\x32*.seqvars.pbs.output.VariantScoreColumnType"-\n\x0cVersionEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t"\xa8\x01\n\rResourcesUsed\x12\x33\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12\x13\n\x0bmemory_used\x18\x03 \x01(\x04\x42\r\n\x0b_start_timeB\x0b\n\t_end_time"\x83\x01\n\x10OutputStatistics\x12\x13\n\x0b\x63ount_total\x18\x01 \x01(\x04\x12\x14\n\x0c\x63ount_passed\x18\x02 \x01(\x04\x12\x44\n\x16passed_by_consequences\x18\x03 \x03(\x0b\x32$.seqvars.pbs.output.ConsequenceCount"V\n\x10\x43onsequenceCount\x12\x33\n\x0b\x63onsequence\x18\x01 \x01(\x0e\x32\x1e.seqvars.pbs.query.Consequence\x12\r\n\x05\x63ount\x18\x02 \x01(\r"\xd8\x01\n\x0cOutputRecord\x12\x0c\n\x04uuid\x18\x01 \x01(\t\x12\x11\n\tcase_uuid\x18\x02 \x01(\t\x12\x38\n\x0bvcf_variant\x18\x03 \x01(\x0b\x32\x1e.seqvars.pbs.output.VcfVariantH\x00\x88\x01\x01\x12\x46\n\x12variant_annotation\x18\x04 \x01(\x0b\x32%.seqvars.pbs.output.VariantAnnotationH\x01\x88\x01\x01\x42\x0e\n\x0c_vcf_variantB\x15\n\x13_variant_annotation"\x9d\x01\n\nVcfVariant\x12\x39\n\x0egenome_release\x18\x01 \x01(\x0e\x32!.seqvars.pbs.output.GenomeRelease\x12\r\n\x05\x63hrom\x18\x02 \x01(\t\x12\x10\n\x08\x63hrom_no\x18\x03 \x01(\x05\x12\x0b\n\x03pos\x18\x04 \x01(\x05\x12\x12\n\nref_allele\x18\x05 \x01(\t\x12\x12\n\nalt_allele\x18\x06 \x01(\t"\xf1\x01\n\x11VariantAnnotation\x12<\n\x04gene\x18\x01 \x01(\x0b\x32).seqvars.pbs.output.GeneRelatedAnnotationH\x00\x88\x01\x01\x12\x42\n\x07variant\x18\x02 \x01(\x0b\x32,.seqvars.pbs.output.VariantRelatedAnnotationH\x01\x88\x01\x01\x12<\n\x04\x63\x61ll\x18\x03 \x01(\x0b\x32).seqvars.pbs.output.CallRelatedAnnotationH\x02\x88\x01\x01\x42\x07\n\x05_geneB\n\n\x08_variantB\x07\n\x05_call"\xdf\x02\n\x15GeneRelatedAnnotation\x12\x37\n\x08identity\x18\x01 \x01(\x0b\x32 .seqvars.pbs.output.GeneIdentityH\x00\x88\x01\x01\x12\x46\n\x0c\x63onsequences\x18\x02 \x01(\x0b\x32+.seqvars.pbs.output.GeneRelatedConsequencesH\x01\x88\x01\x01\x12\x42\n\nphenotypes\x18\x03 \x01(\x0b\x32).seqvars.pbs.output.GeneRelatedPhenotypesH\x02\x88\x01\x01\x12\x44\n\x0b\x63onstraints\x18\x04 \x01(\x0b\x32*.seqvars.pbs.output.GeneRelatedConstraintsH\x03\x88\x01\x01\x42\x0b\n\t_identityB\x0f\n\r_consequencesB\r\n\x0b_phenotypesB\x0e\n\x0c_constraints"4\n\x0cGeneIdentity\x12\x0f\n\x07hgnc_id\x18\x01 \x01(\t\x12\x13\n\x0bgene_symbol\x18\x02 \x01(\t"\xe6\x02\n\x17GeneRelatedConsequences\x12\x13\n\x06hgvs_t\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06hgvs_p\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x34\n\x0c\x63onsequences\x18\x03 \x03(\x0e\x32\x1e.seqvars.pbs.query.Consequence\x12\x19\n\x0ctx_accession\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x17\n\ntx_version\x18\x05 \x01(\x05H\x03\x88\x01\x01\x12\x35\n\x08location\x18\x06 \x01(\x0e\x32#.seqvars.pbs.output.VariantLocation\x12\x15\n\x08rank_ord\x18\x07 \x01(\x05H\x04\x88\x01\x01\x12\x17\n\nrank_total\x18\x08 \x01(\x05H\x05\x88\x01\x01\x42\t\n\x07_hgvs_tB\t\n\x07_hgvs_pB\x0f\n\r_tx_accessionB\r\n\x0b_tx_versionB\x0b\n\t_rank_ordB\r\n\x0b_rank_total"\x89\x01\n\x15GeneRelatedPhenotypes\x12\x12\n\nis_acmg_sf\x18\x01 \x01(\x08\x12\x17\n\x0fis_disease_gene\x18\x02 \x01(\x08\x12\x43\n\x14mode_of_inheritances\x18\x03 \x03(\x0e\x32%.seqvars.pbs.output.ModeOfInheritance"\xfd\x02\n\x16GeneRelatedConstraints\x12:\n\x06gnomad\x18\x01 \x01(\x0b\x32%.seqvars.pbs.output.GnomadConstraintsH\x00\x88\x01\x01\x12>\n\x08\x64\x65\x63ipher\x18\x02 \x01(\x0b\x32\'.seqvars.pbs.output.DecipherConstraintsH\x01\x88\x01\x01\x12\x36\n\x04rcnv\x18\x03 \x01(\x0b\x32#.seqvars.pbs.output.RcnvConstraintsH\x02\x88\x01\x01\x12\x36\n\x04shet\x18\x04 \x01(\x0b\x32#.seqvars.pbs.output.ShetConstraintsH\x03\x88\x01\x01\x12\x41\n\x07\x63lingen\x18\x05 \x01(\x0b\x32+.seqvars.pbs.output.ClingenDosageAnnotationH\x04\x88\x01\x01\x42\t\n\x07_gnomadB\x0b\n\t_decipherB\x07\n\x05_rcnvB\x07\n\x05_shetB\n\n\x08_clingen"\xb6\x01\n\x11GnomadConstraints\x12\r\n\x05mis_z\x18\x01 \x01(\x02\x12\x0e\n\x06oe_lof\x18\x02 \x01(\x02\x12\x14\n\x0coe_lof_lower\x18\x03 \x01(\x02\x12\x14\n\x0coe_lof_upper\x18\x04 \x01(\x02\x12\x0e\n\x06oe_mis\x18\x05 \x01(\x02\x12\x14\n\x0coe_mis_lower\x18\x06 \x01(\x02\x12\x14\n\x0coe_mis_upper\x18\x07 \x01(\x02\x12\x0b\n\x03pli\x18\x08 \x01(\x02\x12\r\n\x05syn_z\x18\t \x01(\x02"5\n\x13\x44\x65\x63ipherConstraints\x12\x0c\n\x04p_hi\x18\x01 \x01(\x02\x12\x10\n\x08hi_index\x18\x02 \x01(\x02"4\n\x0fRcnvConstraints\x12\x0f\n\x07p_haplo\x18\x01 \x01(\x02\x12\x10\n\x08p_triplo\x18\x02 \x01(\x02" \n\x0fShetConstraints\x12\r\n\x05s_het\x18\x01 \x01(\x02"\x88\x01\n\x17\x43lingenDosageAnnotation\x12\x35\n\x05haplo\x18\x01 \x01(\x0e\x32&.seqvars.pbs.output.ClingenDosageScore\x12\x36\n\x06triplo\x18\x02 \x01(\x0e\x32&.seqvars.pbs.output.ClingenDosageScore"\xb1\x02\n\x18VariantRelatedAnnotation\x12-\n\x05\x64\x62ids\x18\x01 \x01(\x0b\x32\x19.seqvars.pbs.output.DbIdsH\x00\x88\x01\x01\x12?\n\tfrequency\x18\x02 \x01(\x0b\x32\'.seqvars.pbs.output.FrequencyAnnotationH\x01\x88\x01\x01\x12;\n\x07\x63linvar\x18\x03 \x01(\x0b\x32%.seqvars.pbs.output.ClinvarAnnotationH\x02\x88\x01\x01\x12\x39\n\x06scores\x18\x04 \x01(\x0b\x32$.seqvars.pbs.output.ScoreAnnotationsH\x03\x88\x01\x01\x42\x08\n\x06_dbidsB\x0c\n\n_frequencyB\n\n\x08_clinvarB\t\n\x07_scores"\xb3\x03\n\x13\x46requencyAnnotation\x12@\n\rgnomad_exomes\x18\x01 \x01(\x0b\x32$.seqvars.pbs.output.NuclearFrequencyH\x00\x88\x01\x01\x12\x41\n\x0egnomad_genomes\x18\x02 \x01(\x0b\x32$.seqvars.pbs.output.NuclearFrequencyH\x01\x88\x01\x01\x12K\n\x0cgnomad_mtdna\x18\x03 \x01(\x0b\x32\x30.seqvars.pbs.output.GnomadMitochondrialFrequencyH\x02\x88\x01\x01\x12>\n\thelixmtdb\x18\x04 \x01(\x0b\x32&.seqvars.pbs.output.HelixMtDbFrequencyH\x03\x88\x01\x01\x12:\n\x07inhouse\x18\x05 \x01(\x0b\x32$.seqvars.pbs.output.NuclearFrequencyH\x04\x88\x01\x01\x42\x10\n\x0e_gnomad_exomesB\x11\n\x0f_gnomad_genomesB\x0f\n\r_gnomad_mtdnaB\x0c\n\n_helixmtdbB\n\n\x08_inhouse"X\n\x10NuclearFrequency\x12\n\n\x02\x61n\x18\x01 \x01(\x05\x12\x0b\n\x03het\x18\x02 \x01(\x05\x12\x0e\n\x06homalt\x18\x03 \x01(\x05\x12\x0f\n\x07hemialt\x18\x04 \x01(\x05\x12\n\n\x02\x61\x66\x18\x05 \x01(\x02"S\n\x1cGnomadMitochondrialFrequency\x12\n\n\x02\x61n\x18\x01 \x01(\x05\x12\x0b\n\x03het\x18\x02 \x01(\x05\x12\x0e\n\x06homalt\x18\x03 \x01(\x05\x12\n\n\x02\x61\x66\x18\x04 \x01(\x02"I\n\x12HelixMtDbFrequency\x12\n\n\x02\x61n\x18\x01 \x01(\x05\x12\x0b\n\x03het\x18\x02 \x01(\x05\x12\x0e\n\x06homalt\x18\x03 \x01(\x05\x12\n\n\x02\x61\x66\x18\x04 \x01(\x02"+\n\x05\x44\x62Ids\x12\x15\n\x08\x64\x62snp_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_dbsnp_id"\xdd\x01\n\x11\x43linvarAnnotation\x12\x15\n\rvcv_accession\x18\x01 \x01(\t\x12)\n!germline_significance_description\x18\x02 \x01(\t\x12Q\n\x16germline_review_status\x18\x03 \x01(\x0e\x32\x31.seqvars.pbs.output.AggregateGermlineReviewStatus\x12\x33\n+effective_germline_significance_description\x18\x04 \x01(\t"C\n\x10ScoreAnnotations\x12/\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x1e.seqvars.pbs.output.ScoreEntry"O\n\nScoreEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.ValueH\x00\x88\x01\x01\x42\x08\n\x06_value"O\n\x15\x43\x61llRelatedAnnotation\x12\x36\n\ncall_infos\x18\x01 \x03(\x0b\x32".seqvars.pbs.output.SampleCallInfo"\xa4\x01\n\x0eSampleCallInfo\x12\x0e\n\x06sample\x18\x01 \x01(\t\x12\x15\n\x08genotype\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x02\x64p\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x0f\n\x02\x61\x64\x18\x04 \x01(\x05H\x02\x88\x01\x01\x12\x0f\n\x02gq\x18\x05 \x01(\x02H\x03\x88\x01\x01\x12\x0f\n\x02ps\x18\x06 \x01(\x05H\x04\x88\x01\x01\x42\x0b\n\t_genotypeB\x05\n\x03_dpB\x05\n\x03_adB\x05\n\x03_gqB\x05\n\x03_ps*\x8f\x01\n\x16VariantScoreColumnType\x12)\n%VARIANT_SCORE_COLUMN_TYPE_UNSPECIFIED\x10\x00\x12$\n VARIANT_SCORE_COLUMN_TYPE_NUMBER\x10\x01\x12$\n VARIANT_SCORE_COLUMN_TYPE_STRING\x10\x02*e\n\rGenomeRelease\x12\x1e\n\x1aGENOME_RELEASE_UNSPECIFIED\x10\x00\x12\x19\n\x15GENOME_RELEASE_GRCH37\x10\x01\x12\x19\n\x15GENOME_RELEASE_GRCH38\x10\x02*m\n\x0eTranscriptType\x12\x1f\n\x1bTRANSCRIPT_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16TRANSCRIPT_TYPE_CODING\x10\x01\x12\x1e\n\x1aTRANSCRIPT_TYPE_NON_CODING\x10\x02*\xab\x01\n\x0fVariantLocation\x12 \n\x1cVARIANT_LOCATION_UNSPECIFIED\x10\x00\x12\x1d\n\x19VARIANT_LOCATION_UPSTREAM\x10\x01\x12\x19\n\x15VARIANT_LOCATION_EXON\x10\x02\x12\x1b\n\x17VARIANT_LOCATION_INTRON\x10\x03\x12\x1f\n\x1bVARIANT_LOCATION_DOWNSTREAM\x10\x04*\xb1\x02\n\x11ModeOfInheritance\x12#\n\x1fMODE_OF_INHERITANCE_UNSPECIFIED\x10\x00\x12*\n&MODE_OF_INHERITANCE_AUTOSOMAL_DOMINANT\x10\x01\x12+\n\'MODE_OF_INHERITANCE_AUTOSOMAL_RECESSIVE\x10\x02\x12)\n%MODE_OF_INHERITANCE_X_LINKED_DOMINANT\x10\x03\x12*\n&MODE_OF_INHERITANCE_X_LINKED_RECESSIVE\x10\x04\x12 \n\x1cMODE_OF_INHERITANCE_Y_LINKED\x10\x05\x12%\n!MODE_OF_INHERITANCE_MITOCHONDRIAL\x10\x06*\xc5\x02\n\x12\x43lingenDosageScore\x12$\n CLINGEN_DOSAGE_SCORE_UNSPECIFIED\x10\x00\x12\x36\n2CLINGEN_DOSAGE_SCORE_SUFFICIENT_EVIDENCE_AVAILABLE\x10\x01\x12\x30\n,CLINGEN_DOSAGE_SCORE_SOME_EVIDENCE_AVAILABLE\x10\x02\x12(\n$CLINGEN_DOSAGE_SCORE_LITTLE_EVIDENCE\x10\x03\x12.\n*CLINGEN_DOSAGE_SCORE_NO_EVIDENCE_AVAILABLE\x10\x04\x12"\n\x1e\x43LINGEN_DOSAGE_SCORE_RECESSIVE\x10\x05\x12!\n\x1d\x43LINGEN_DOSAGE_SCORE_UNLIKELY\x10\x06*\xe4\x05\n\x1d\x41ggregateGermlineReviewStatus\x12\x30\n,AGGREGATE_GERMLINE_REVIEW_STATUS_UNSPECIFIED\x10\x00\x12?\n;AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED\x10\x01\x12\x43\n?AGGREGATE_GERMLINE_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED\x10\x02\x12G\nCAGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER\x10\x03\x12W\nSAGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS\x10\x04\x12R\nNAGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS\x10\x05\x12=\n9AGGREGATE_GERMLINE_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL\x10\x06\x12\x37\n3AGGREGATE_GERMLINE_REVIEW_STATUS_PRACTICE_GUIDELINE\x10\x07\x12N\nJAGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS\x10\x08\x12M\nIAGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT\x10\tb\x06proto3' + b'\n\x1bseqvars/protos/output.proto\x12\x12seqvars.pbs.output\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1aseqvars/protos/query.proto"\xaa\x03\n\x0cOutputHeader\x12\x39\n\x0egenome_release\x18\x01 \x01(\x0e\x32!.seqvars.pbs.output.GenomeRelease\x12\x32\n\x08versions\x18\x02 \x03(\x0b\x32 .seqvars.pbs.output.VersionEntry\x12\x30\n\x05query\x18\x03 \x01(\x0b\x32\x1c.seqvars.pbs.query.CaseQueryH\x00\x88\x01\x01\x12\x11\n\tcase_uuid\x18\x04 \x01(\t\x12\x39\n\tresources\x18\x05 \x01(\x0b\x32!.seqvars.pbs.output.ResourcesUsedH\x01\x88\x01\x01\x12=\n\nstatistics\x18\x06 \x01(\x0b\x32$.seqvars.pbs.output.OutputStatisticsH\x02\x88\x01\x01\x12\x45\n\x15variant_score_columns\x18\x07 \x03(\x0b\x32&.seqvars.pbs.output.VariantScoreColumnB\x08\n\x06_queryB\x0c\n\n_resourcesB\r\n\x0b_statistics"\x80\x01\n\x12VariantScoreColumn\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\x12\x38\n\x04type\x18\x04 \x01(\x0e\x32*.seqvars.pbs.output.VariantScoreColumnType"-\n\x0cVersionEntry\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t"\xa8\x01\n\rResourcesUsed\x12\x33\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12\x13\n\x0bmemory_used\x18\x03 \x01(\x04\x42\r\n\x0b_start_timeB\x0b\n\t_end_time"\x83\x01\n\x10OutputStatistics\x12\x13\n\x0b\x63ount_total\x18\x01 \x01(\x04\x12\x14\n\x0c\x63ount_passed\x18\x02 \x01(\x04\x12\x44\n\x16passed_by_consequences\x18\x03 \x03(\x0b\x32$.seqvars.pbs.output.ConsequenceCount"V\n\x10\x43onsequenceCount\x12\x33\n\x0b\x63onsequence\x18\x01 \x01(\x0e\x32\x1e.seqvars.pbs.query.Consequence\x12\r\n\x05\x63ount\x18\x02 \x01(\r"\xd8\x01\n\x0cOutputRecord\x12\x0c\n\x04uuid\x18\x01 \x01(\t\x12\x11\n\tcase_uuid\x18\x02 \x01(\t\x12\x38\n\x0bvcf_variant\x18\x03 \x01(\x0b\x32\x1e.seqvars.pbs.output.VcfVariantH\x00\x88\x01\x01\x12\x46\n\x12variant_annotation\x18\x04 \x01(\x0b\x32%.seqvars.pbs.output.VariantAnnotationH\x01\x88\x01\x01\x42\x0e\n\x0c_vcf_variantB\x15\n\x13_variant_annotation"\x9d\x01\n\nVcfVariant\x12\x39\n\x0egenome_release\x18\x01 \x01(\x0e\x32!.seqvars.pbs.output.GenomeRelease\x12\r\n\x05\x63hrom\x18\x02 \x01(\t\x12\x10\n\x08\x63hrom_no\x18\x03 \x01(\x05\x12\x0b\n\x03pos\x18\x04 \x01(\x05\x12\x12\n\nref_allele\x18\x05 \x01(\t\x12\x12\n\nalt_allele\x18\x06 \x01(\t"\xf1\x01\n\x11VariantAnnotation\x12<\n\x04gene\x18\x01 \x01(\x0b\x32).seqvars.pbs.output.GeneRelatedAnnotationH\x00\x88\x01\x01\x12\x42\n\x07variant\x18\x02 \x01(\x0b\x32,.seqvars.pbs.output.VariantRelatedAnnotationH\x01\x88\x01\x01\x12<\n\x04\x63\x61ll\x18\x03 \x01(\x0b\x32).seqvars.pbs.output.CallRelatedAnnotationH\x02\x88\x01\x01\x42\x07\n\x05_geneB\n\n\x08_variantB\x07\n\x05_call"\xdf\x02\n\x15GeneRelatedAnnotation\x12\x37\n\x08identity\x18\x01 \x01(\x0b\x32 .seqvars.pbs.output.GeneIdentityH\x00\x88\x01\x01\x12\x46\n\x0c\x63onsequences\x18\x02 \x01(\x0b\x32+.seqvars.pbs.output.GeneRelatedConsequencesH\x01\x88\x01\x01\x12\x42\n\nphenotypes\x18\x03 \x01(\x0b\x32).seqvars.pbs.output.GeneRelatedPhenotypesH\x02\x88\x01\x01\x12\x44\n\x0b\x63onstraints\x18\x04 \x01(\x0b\x32*.seqvars.pbs.output.GeneRelatedConstraintsH\x03\x88\x01\x01\x42\x0b\n\t_identityB\x0f\n\r_consequencesB\r\n\x0b_phenotypesB\x0e\n\x0c_constraints"4\n\x0cGeneIdentity\x12\x0f\n\x07hgnc_id\x18\x01 \x01(\t\x12\x13\n\x0bgene_symbol\x18\x02 \x01(\t"\xe6\x02\n\x17GeneRelatedConsequences\x12\x13\n\x06hgvs_t\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06hgvs_p\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x34\n\x0c\x63onsequences\x18\x03 \x03(\x0e\x32\x1e.seqvars.pbs.query.Consequence\x12\x19\n\x0ctx_accession\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x17\n\ntx_version\x18\x05 \x01(\x05H\x03\x88\x01\x01\x12\x35\n\x08location\x18\x06 \x01(\x0e\x32#.seqvars.pbs.output.VariantLocation\x12\x15\n\x08rank_ord\x18\x07 \x01(\x05H\x04\x88\x01\x01\x12\x17\n\nrank_total\x18\x08 \x01(\x05H\x05\x88\x01\x01\x42\t\n\x07_hgvs_tB\t\n\x07_hgvs_pB\x0f\n\r_tx_accessionB\r\n\x0b_tx_versionB\x0b\n\t_rank_ordB\r\n\x0b_rank_total"\x89\x01\n\x15GeneRelatedPhenotypes\x12\x12\n\nis_acmg_sf\x18\x01 \x01(\x08\x12\x17\n\x0fis_disease_gene\x18\x02 \x01(\x08\x12\x43\n\x14mode_of_inheritances\x18\x03 \x03(\x0e\x32%.seqvars.pbs.output.ModeOfInheritance"\xfd\x02\n\x16GeneRelatedConstraints\x12:\n\x06gnomad\x18\x01 \x01(\x0b\x32%.seqvars.pbs.output.GnomadConstraintsH\x00\x88\x01\x01\x12>\n\x08\x64\x65\x63ipher\x18\x02 \x01(\x0b\x32\'.seqvars.pbs.output.DecipherConstraintsH\x01\x88\x01\x01\x12\x36\n\x04rcnv\x18\x03 \x01(\x0b\x32#.seqvars.pbs.output.RcnvConstraintsH\x02\x88\x01\x01\x12\x36\n\x04shet\x18\x04 \x01(\x0b\x32#.seqvars.pbs.output.ShetConstraintsH\x03\x88\x01\x01\x12\x41\n\x07\x63lingen\x18\x05 \x01(\x0b\x32+.seqvars.pbs.output.ClingenDosageAnnotationH\x04\x88\x01\x01\x42\t\n\x07_gnomadB\x0b\n\t_decipherB\x07\n\x05_rcnvB\x07\n\x05_shetB\n\n\x08_clingen"\xb6\x01\n\x11GnomadConstraints\x12\r\n\x05mis_z\x18\x01 \x01(\x02\x12\x0e\n\x06oe_lof\x18\x02 \x01(\x02\x12\x14\n\x0coe_lof_lower\x18\x03 \x01(\x02\x12\x14\n\x0coe_lof_upper\x18\x04 \x01(\x02\x12\x0e\n\x06oe_mis\x18\x05 \x01(\x02\x12\x14\n\x0coe_mis_lower\x18\x06 \x01(\x02\x12\x14\n\x0coe_mis_upper\x18\x07 \x01(\x02\x12\x0b\n\x03pli\x18\x08 \x01(\x02\x12\r\n\x05syn_z\x18\t \x01(\x02"5\n\x13\x44\x65\x63ipherConstraints\x12\x0c\n\x04p_hi\x18\x01 \x01(\x02\x12\x10\n\x08hi_index\x18\x02 \x01(\x02"4\n\x0fRcnvConstraints\x12\x0f\n\x07p_haplo\x18\x01 \x01(\x02\x12\x10\n\x08p_triplo\x18\x02 \x01(\x02" \n\x0fShetConstraints\x12\r\n\x05s_het\x18\x01 \x01(\x02"\x88\x01\n\x17\x43lingenDosageAnnotation\x12\x35\n\x05haplo\x18\x01 \x01(\x0e\x32&.seqvars.pbs.output.ClingenDosageScore\x12\x36\n\x06triplo\x18\x02 \x01(\x0e\x32&.seqvars.pbs.output.ClingenDosageScore"\xb1\x02\n\x18VariantRelatedAnnotation\x12-\n\x05\x64\x62ids\x18\x01 \x01(\x0b\x32\x19.seqvars.pbs.output.DbIdsH\x00\x88\x01\x01\x12?\n\tfrequency\x18\x02 \x01(\x0b\x32\'.seqvars.pbs.output.FrequencyAnnotationH\x01\x88\x01\x01\x12;\n\x07\x63linvar\x18\x03 \x01(\x0b\x32%.seqvars.pbs.output.ClinvarAnnotationH\x02\x88\x01\x01\x12\x39\n\x06scores\x18\x04 \x01(\x0b\x32$.seqvars.pbs.output.ScoreAnnotationsH\x03\x88\x01\x01\x42\x08\n\x06_dbidsB\x0c\n\n_frequencyB\n\n\x08_clinvarB\t\n\x07_scores"\xb1\x03\n\x13\x46requencyAnnotation\x12@\n\rgnomad_exomes\x18\x01 \x01(\x0b\x32$.seqvars.pbs.output.NuclearFrequencyH\x00\x88\x01\x01\x12\x41\n\x0egnomad_genomes\x18\x02 \x01(\x0b\x32$.seqvars.pbs.output.NuclearFrequencyH\x01\x88\x01\x01\x12\x45\n\x0cgnomad_mtdna\x18\x03 \x01(\x0b\x32*.seqvars.pbs.output.MitochondrialFrequencyH\x02\x88\x01\x01\x12\x42\n\thelixmtdb\x18\x04 \x01(\x0b\x32*.seqvars.pbs.output.MitochondrialFrequencyH\x03\x88\x01\x01\x12:\n\x07inhouse\x18\x05 \x01(\x0b\x32$.seqvars.pbs.output.NuclearFrequencyH\x04\x88\x01\x01\x42\x10\n\x0e_gnomad_exomesB\x11\n\x0f_gnomad_genomesB\x0f\n\r_gnomad_mtdnaB\x0c\n\n_helixmtdbB\n\n\x08_inhouse"X\n\x10NuclearFrequency\x12\n\n\x02\x61n\x18\x01 \x01(\x05\x12\x0b\n\x03het\x18\x02 \x01(\x05\x12\x0e\n\x06homalt\x18\x03 \x01(\x05\x12\x0f\n\x07hemialt\x18\x04 \x01(\x05\x12\n\n\x02\x61\x66\x18\x05 \x01(\x02"M\n\x16MitochondrialFrequency\x12\n\n\x02\x61n\x18\x01 \x01(\x05\x12\x0b\n\x03het\x18\x02 \x01(\x05\x12\x0e\n\x06homalt\x18\x03 \x01(\x05\x12\n\n\x02\x61\x66\x18\x04 \x01(\x02"+\n\x05\x44\x62Ids\x12\x15\n\x08\x64\x62snp_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_dbsnp_id"\xdd\x01\n\x11\x43linvarAnnotation\x12\x15\n\rvcv_accession\x18\x01 \x01(\t\x12)\n!germline_significance_description\x18\x02 \x01(\t\x12Q\n\x16germline_review_status\x18\x03 \x01(\x0e\x32\x31.seqvars.pbs.output.AggregateGermlineReviewStatus\x12\x33\n+effective_germline_significance_description\x18\x04 \x01(\t"C\n\x10ScoreAnnotations\x12/\n\x07\x65ntries\x18\x01 \x03(\x0b\x32\x1e.seqvars.pbs.output.ScoreEntry"O\n\nScoreEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.ValueH\x00\x88\x01\x01\x42\x08\n\x06_value"O\n\x15\x43\x61llRelatedAnnotation\x12\x36\n\ncall_infos\x18\x01 \x03(\x0b\x32".seqvars.pbs.output.SampleCallInfo"\xa4\x01\n\x0eSampleCallInfo\x12\x0e\n\x06sample\x18\x01 \x01(\t\x12\x15\n\x08genotype\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x02\x64p\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x0f\n\x02\x61\x64\x18\x04 \x01(\x05H\x02\x88\x01\x01\x12\x0f\n\x02gq\x18\x05 \x01(\x02H\x03\x88\x01\x01\x12\x0f\n\x02ps\x18\x06 \x01(\x05H\x04\x88\x01\x01\x42\x0b\n\t_genotypeB\x05\n\x03_dpB\x05\n\x03_adB\x05\n\x03_gqB\x05\n\x03_ps*\x8f\x01\n\x16VariantScoreColumnType\x12)\n%VARIANT_SCORE_COLUMN_TYPE_UNSPECIFIED\x10\x00\x12$\n VARIANT_SCORE_COLUMN_TYPE_NUMBER\x10\x01\x12$\n VARIANT_SCORE_COLUMN_TYPE_STRING\x10\x02*e\n\rGenomeRelease\x12\x1e\n\x1aGENOME_RELEASE_UNSPECIFIED\x10\x00\x12\x19\n\x15GENOME_RELEASE_GRCH37\x10\x01\x12\x19\n\x15GENOME_RELEASE_GRCH38\x10\x02*m\n\x0eTranscriptType\x12\x1f\n\x1bTRANSCRIPT_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16TRANSCRIPT_TYPE_CODING\x10\x01\x12\x1e\n\x1aTRANSCRIPT_TYPE_NON_CODING\x10\x02*\xab\x01\n\x0fVariantLocation\x12 \n\x1cVARIANT_LOCATION_UNSPECIFIED\x10\x00\x12\x1d\n\x19VARIANT_LOCATION_UPSTREAM\x10\x01\x12\x19\n\x15VARIANT_LOCATION_EXON\x10\x02\x12\x1b\n\x17VARIANT_LOCATION_INTRON\x10\x03\x12\x1f\n\x1bVARIANT_LOCATION_DOWNSTREAM\x10\x04*\xb1\x02\n\x11ModeOfInheritance\x12#\n\x1fMODE_OF_INHERITANCE_UNSPECIFIED\x10\x00\x12*\n&MODE_OF_INHERITANCE_AUTOSOMAL_DOMINANT\x10\x01\x12+\n\'MODE_OF_INHERITANCE_AUTOSOMAL_RECESSIVE\x10\x02\x12)\n%MODE_OF_INHERITANCE_X_LINKED_DOMINANT\x10\x03\x12*\n&MODE_OF_INHERITANCE_X_LINKED_RECESSIVE\x10\x04\x12 \n\x1cMODE_OF_INHERITANCE_Y_LINKED\x10\x05\x12%\n!MODE_OF_INHERITANCE_MITOCHONDRIAL\x10\x06*\xc5\x02\n\x12\x43lingenDosageScore\x12$\n CLINGEN_DOSAGE_SCORE_UNSPECIFIED\x10\x00\x12\x36\n2CLINGEN_DOSAGE_SCORE_SUFFICIENT_EVIDENCE_AVAILABLE\x10\x01\x12\x30\n,CLINGEN_DOSAGE_SCORE_SOME_EVIDENCE_AVAILABLE\x10\x02\x12(\n$CLINGEN_DOSAGE_SCORE_LITTLE_EVIDENCE\x10\x03\x12.\n*CLINGEN_DOSAGE_SCORE_NO_EVIDENCE_AVAILABLE\x10\x04\x12"\n\x1e\x43LINGEN_DOSAGE_SCORE_RECESSIVE\x10\x05\x12!\n\x1d\x43LINGEN_DOSAGE_SCORE_UNLIKELY\x10\x06*\xe4\x05\n\x1d\x41ggregateGermlineReviewStatus\x12\x30\n,AGGREGATE_GERMLINE_REVIEW_STATUS_UNSPECIFIED\x10\x00\x12?\n;AGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_PROVIDED\x10\x01\x12\x43\n?AGGREGATE_GERMLINE_REVIEW_STATUS_NO_ASSERTION_CRITERIA_PROVIDED\x10\x02\x12G\nCAGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_SINGLE_SUBMITTER\x10\x03\x12W\nSAGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_MULTIPLE_SUBMITTERS_NO_CONFLICTS\x10\x04\x12R\nNAGGREGATE_GERMLINE_REVIEW_STATUS_CRITERIA_PROVIDED_CONFLICTING_CLASSIFICATIONS\x10\x05\x12=\n9AGGREGATE_GERMLINE_REVIEW_STATUS_REVIEWED_BY_EXPERT_PANEL\x10\x06\x12\x37\n3AGGREGATE_GERMLINE_REVIEW_STATUS_PRACTICE_GUIDELINE\x10\x07\x12N\nJAGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATIONS_FROM_UNFLAGGED_RECORDS\x10\x08\x12M\nIAGGREGATE_GERMLINE_REVIEW_STATUS_NO_CLASSIFICATION_FOR_THE_SINGLE_VARIANT\x10\tb\x06proto3' ) _globals = globals() @@ -26,20 +26,20 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, "seqvars.protos.output_pb2", _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None - _globals["_VARIANTSCORECOLUMNTYPE"]._serialized_start = 5189 - _globals["_VARIANTSCORECOLUMNTYPE"]._serialized_end = 5332 - _globals["_GENOMERELEASE"]._serialized_start = 5334 - _globals["_GENOMERELEASE"]._serialized_end = 5435 - _globals["_TRANSCRIPTTYPE"]._serialized_start = 5437 - _globals["_TRANSCRIPTTYPE"]._serialized_end = 5546 - _globals["_VARIANTLOCATION"]._serialized_start = 5549 - _globals["_VARIANTLOCATION"]._serialized_end = 5720 - _globals["_MODEOFINHERITANCE"]._serialized_start = 5723 - _globals["_MODEOFINHERITANCE"]._serialized_end = 6028 - _globals["_CLINGENDOSAGESCORE"]._serialized_start = 6031 - _globals["_CLINGENDOSAGESCORE"]._serialized_end = 6356 - _globals["_AGGREGATEGERMLINEREVIEWSTATUS"]._serialized_start = 6359 - _globals["_AGGREGATEGERMLINEREVIEWSTATUS"]._serialized_end = 7099 + _globals["_VARIANTSCORECOLUMNTYPE"]._serialized_start = 5106 + _globals["_VARIANTSCORECOLUMNTYPE"]._serialized_end = 5249 + _globals["_GENOMERELEASE"]._serialized_start = 5251 + _globals["_GENOMERELEASE"]._serialized_end = 5352 + _globals["_TRANSCRIPTTYPE"]._serialized_start = 5354 + _globals["_TRANSCRIPTTYPE"]._serialized_end = 5463 + _globals["_VARIANTLOCATION"]._serialized_start = 5466 + _globals["_VARIANTLOCATION"]._serialized_end = 5637 + _globals["_MODEOFINHERITANCE"]._serialized_start = 5640 + _globals["_MODEOFINHERITANCE"]._serialized_end = 5945 + _globals["_CLINGENDOSAGESCORE"]._serialized_start = 5948 + _globals["_CLINGENDOSAGESCORE"]._serialized_end = 6273 + _globals["_AGGREGATEGERMLINEREVIEWSTATUS"]._serialized_start = 6276 + _globals["_AGGREGATEGERMLINEREVIEWSTATUS"]._serialized_end = 7016 _globals["_OUTPUTHEADER"]._serialized_start = 143 _globals["_OUTPUTHEADER"]._serialized_end = 569 _globals["_VARIANTSCORECOLUMN"]._serialized_start = 572 @@ -81,23 +81,21 @@ _globals["_VARIANTRELATEDANNOTATION"]._serialized_start = 3526 _globals["_VARIANTRELATEDANNOTATION"]._serialized_end = 3831 _globals["_FREQUENCYANNOTATION"]._serialized_start = 3834 - _globals["_FREQUENCYANNOTATION"]._serialized_end = 4269 - _globals["_NUCLEARFREQUENCY"]._serialized_start = 4271 - _globals["_NUCLEARFREQUENCY"]._serialized_end = 4359 - _globals["_GNOMADMITOCHONDRIALFREQUENCY"]._serialized_start = 4361 - _globals["_GNOMADMITOCHONDRIALFREQUENCY"]._serialized_end = 4444 - _globals["_HELIXMTDBFREQUENCY"]._serialized_start = 4446 - _globals["_HELIXMTDBFREQUENCY"]._serialized_end = 4519 - _globals["_DBIDS"]._serialized_start = 4521 - _globals["_DBIDS"]._serialized_end = 4564 - _globals["_CLINVARANNOTATION"]._serialized_start = 4567 - _globals["_CLINVARANNOTATION"]._serialized_end = 4788 - _globals["_SCOREANNOTATIONS"]._serialized_start = 4790 - _globals["_SCOREANNOTATIONS"]._serialized_end = 4857 - _globals["_SCOREENTRY"]._serialized_start = 4859 - _globals["_SCOREENTRY"]._serialized_end = 4938 - _globals["_CALLRELATEDANNOTATION"]._serialized_start = 4940 - _globals["_CALLRELATEDANNOTATION"]._serialized_end = 5019 - _globals["_SAMPLECALLINFO"]._serialized_start = 5022 - _globals["_SAMPLECALLINFO"]._serialized_end = 5186 + _globals["_FREQUENCYANNOTATION"]._serialized_end = 4267 + _globals["_NUCLEARFREQUENCY"]._serialized_start = 4269 + _globals["_NUCLEARFREQUENCY"]._serialized_end = 4357 + _globals["_MITOCHONDRIALFREQUENCY"]._serialized_start = 4359 + _globals["_MITOCHONDRIALFREQUENCY"]._serialized_end = 4436 + _globals["_DBIDS"]._serialized_start = 4438 + _globals["_DBIDS"]._serialized_end = 4481 + _globals["_CLINVARANNOTATION"]._serialized_start = 4484 + _globals["_CLINVARANNOTATION"]._serialized_end = 4705 + _globals["_SCOREANNOTATIONS"]._serialized_start = 4707 + _globals["_SCOREANNOTATIONS"]._serialized_end = 4774 + _globals["_SCOREENTRY"]._serialized_start = 4776 + _globals["_SCOREENTRY"]._serialized_end = 4855 + _globals["_CALLRELATEDANNOTATION"]._serialized_start = 4857 + _globals["_CALLRELATEDANNOTATION"]._serialized_end = 4936 + _globals["_SAMPLECALLINFO"]._serialized_start = 4939 + _globals["_SAMPLECALLINFO"]._serialized_end = 5103 # @@protoc_insertion_point(module_scope) diff --git a/backend/seqvars/protos/output_pb2.pyi b/backend/seqvars/protos/output_pb2.pyi index 024513137..27c510b94 100644 --- a/backend/seqvars/protos/output_pb2.pyi +++ b/backend/seqvars/protos/output_pb2.pyi @@ -1500,11 +1500,11 @@ class FrequencyAnnotation(google.protobuf.message.Message): """gnomAD-genomes filter""" @property - def gnomad_mtdna(self) -> global___GnomadMitochondrialFrequency: + def gnomad_mtdna(self) -> global___MitochondrialFrequency: """gnomAD-MT filter""" @property - def helixmtdb(self) -> global___HelixMtDbFrequency: + def helixmtdb(self) -> global___MitochondrialFrequency: """HelixMtDb filter""" @property @@ -1516,8 +1516,8 @@ class FrequencyAnnotation(google.protobuf.message.Message): *, gnomad_exomes: global___NuclearFrequency | None = ..., gnomad_genomes: global___NuclearFrequency | None = ..., - gnomad_mtdna: global___GnomadMitochondrialFrequency | None = ..., - helixmtdb: global___HelixMtDbFrequency | None = ..., + gnomad_mtdna: global___MitochondrialFrequency | None = ..., + helixmtdb: global___MitochondrialFrequency | None = ..., inhouse: global___NuclearFrequency | None = ..., ) -> None: ... def HasField( @@ -1631,8 +1631,8 @@ class NuclearFrequency(google.protobuf.message.Message): global___NuclearFrequency = NuclearFrequency -class GnomadMitochondrialFrequency(google.protobuf.message.Message): - """gnomAD mitochondrial frequency information.""" +class MitochondrialFrequency(google.protobuf.message.Message): + """Mitochondrial frequency information.""" DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1663,41 +1663,7 @@ class GnomadMitochondrialFrequency(google.protobuf.message.Message): ], ) -> None: ... -global___GnomadMitochondrialFrequency = GnomadMitochondrialFrequency - -class HelixMtDbFrequency(google.protobuf.message.Message): - """HelixMtDb frequency information.""" - - DESCRIPTOR: google.protobuf.descriptor.Descriptor - - AN_FIELD_NUMBER: builtins.int - HET_FIELD_NUMBER: builtins.int - HOMALT_FIELD_NUMBER: builtins.int - AF_FIELD_NUMBER: builtins.int - an: builtins.int - """Number of covered alleles.""" - het: builtins.int - """Number of heterozygous carriers in HelixMtDb""" - homalt: builtins.int - """Number of homozygous carriers in HelixMtDb""" - af: builtins.float - """Frequency in HelixMtDb""" - def __init__( - self, - *, - an: builtins.int = ..., - het: builtins.int = ..., - homalt: builtins.int = ..., - af: builtins.float = ..., - ) -> None: ... - def ClearField( - self, - field_name: typing_extensions.Literal[ - "af", b"af", "an", b"an", "het", b"het", "homalt", b"homalt" - ], - ) -> None: ... - -global___HelixMtDbFrequency = HelixMtDbFrequency +global___MitochondrialFrequency = MitochondrialFrequency class DbIds(google.protobuf.message.Message): """Database identifiers.""" diff --git a/backend/seqvars/protos/query_pb2.py b/backend/seqvars/protos/query_pb2.py index 1a6ec19e5..2bffc4dc8 100644 --- a/backend/seqvars/protos/query_pb2.py +++ b/backend/seqvars/protos/query_pb2.py @@ -13,7 +13,7 @@ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\n\x1aseqvars/protos/query.proto\x12\x11seqvars.pbs.query"\x85\x01\n\x14SampleGenotypeChoice\x12\x0e\n\x06sample\x18\x01 \x01(\t\x12\x33\n\x08genotype\x18\x02 \x01(\x0e\x32!.seqvars.pbs.query.GenotypeChoice\x12\x17\n\x0finclude_no_call\x18\x03 \x01(\x08\x12\x0f\n\x07\x65nabled\x18\x04 \x01(\x08"\x94\x01\n\x15QuerySettingsGenotype\x12\x38\n\x0erecessive_mode\x18\x01 \x01(\x0e\x32 .seqvars.pbs.query.RecessiveMode\x12\x41\n\x10sample_genotypes\x18\x02 \x03(\x0b\x32\'.seqvars.pbs.query.SampleGenotypeChoice"\x8e\x02\n\x15SampleQualitySettings\x12\x0e\n\x06sample\x18\x01 \x01(\t\x12\x15\n\rfilter_active\x18\x02 \x01(\x08\x12\x17\n\nmin_dp_het\x18\x03 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\nmin_dp_hom\x18\x04 \x01(\x05H\x01\x88\x01\x01\x12\x13\n\x06min_gq\x18\x05 \x01(\x05H\x02\x88\x01\x01\x12\x13\n\x06min_ab\x18\x06 \x01(\x02H\x03\x88\x01\x01\x12\x13\n\x06min_ad\x18\x07 \x01(\x05H\x04\x88\x01\x01\x12\x13\n\x06max_ad\x18\x08 \x01(\x05H\x05\x88\x01\x01\x42\r\n\x0b_min_dp_hetB\r\n\x0b_min_dp_homB\t\n\x07_min_gqB\t\n\x07_min_abB\t\n\x07_min_adB\t\n\x07_max_ad"Z\n\x14QuerySettingsQuality\x12\x42\n\x10sample_qualities\x18\x01 \x03(\x0b\x32(.seqvars.pbs.query.SampleQualitySettings"\xcd\x01\n\x18NuclearFrequencySettings\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x19\n\x0cheterozygous\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\nhomozygous\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x17\n\nhemizygous\x18\x04 \x01(\x05H\x02\x88\x01\x01\x12\x16\n\tfrequency\x18\x05 \x01(\x02H\x03\x88\x01\x01\x42\x0f\n\r_heterozygousB\r\n\x0b_homozygousB\r\n\x0b_hemizygousB\x0c\n\n_frequency"\xb5\x01\n$GnomadMitochondrialFrequencySettings\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x1a\n\rheteroplasmic\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x0bhomoplasmic\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x16\n\tfrequency\x18\x04 \x01(\x02H\x02\x88\x01\x01\x42\x10\n\x0e_heteroplasmicB\x0e\n\x0c_homoplasmicB\x0c\n\n_frequency"\xab\x01\n\x1aHelixMtDbFrequencySettings\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x1a\n\rheteroplasmic\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12\x18\n\x0bhomoplasmic\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x16\n\tfrequency\x18\x04 \x01(\x02H\x02\x88\x01\x01\x42\x10\n\x0e_heteroplasmicB\x0e\n\x0c_homoplasmicB\x0c\n\n_frequency"\xf0\x02\n\x16QuerySettingsFrequency\x12\x42\n\rgnomad_exomes\x18\x01 \x01(\x0b\x32+.seqvars.pbs.query.NuclearFrequencySettings\x12\x43\n\x0egnomad_genomes\x18\x02 \x01(\x0b\x32+.seqvars.pbs.query.NuclearFrequencySettings\x12M\n\x0cgnomad_mtdna\x18\x03 \x01(\x0b\x32\x37.seqvars.pbs.query.GnomadMitochondrialFrequencySettings\x12@\n\thelixmtdb\x18\x04 \x01(\x0b\x32-.seqvars.pbs.query.HelixMtDbFrequencySettings\x12<\n\x07inhouse\x18\x05 \x01(\x0b\x32+.seqvars.pbs.query.NuclearFrequencySettings"\xf8\x01\n\x18QuerySettingsConsequence\x12\x35\n\rvariant_types\x18\x01 \x03(\x0e\x32\x1e.seqvars.pbs.query.VariantType\x12;\n\x10transcript_types\x18\x02 \x03(\x0e\x32!.seqvars.pbs.query.TranscriptType\x12\x34\n\x0c\x63onsequences\x18\x03 \x03(\x0e\x32\x1e.seqvars.pbs.query.Consequence\x12\x1d\n\x10max_dist_to_exon\x18\x04 \x01(\x05H\x00\x88\x01\x01\x42\x13\n\x11_max_dist_to_exon"#\n\x05Range\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0b\n\x03\x65nd\x18\x02 \x01(\x05"V\n\rGenomicRegion\x12\r\n\x05\x63hrom\x18\x01 \x01(\t\x12,\n\x05range\x18\x02 \x01(\x0b\x32\x18.seqvars.pbs.query.RangeH\x00\x88\x01\x01\x42\x08\n\x06_range"]\n\x12QuerySettingsLocus\x12\r\n\x05genes\x18\x01 \x03(\t\x12\x38\n\x0egenome_regions\x18\x02 \x03(\x0b\x32 .seqvars.pbs.query.GenomicRegion"\xb3\x01\n\x14QuerySettingsClinVar\x12\x19\n\x11presence_required\x18\x01 \x01(\x08\x12U\n\x15germline_descriptions\x18\x02 \x03(\x0e\x32\x36.seqvars.pbs.query.ClinvarGermlineAggregateDescription\x12)\n!allow_conflicting_interpretations\x18\x03 \x01(\x08"\xf1\x02\n\tCaseQuery\x12:\n\x08genotype\x18\x01 \x01(\x0b\x32(.seqvars.pbs.query.QuerySettingsGenotype\x12\x38\n\x07quality\x18\x02 \x01(\x0b\x32\'.seqvars.pbs.query.QuerySettingsQuality\x12<\n\tfrequency\x18\x03 \x01(\x0b\x32).seqvars.pbs.query.QuerySettingsFrequency\x12@\n\x0b\x63onsequence\x18\x04 \x01(\x0b\x32+.seqvars.pbs.query.QuerySettingsConsequence\x12\x34\n\x05locus\x18\x05 \x01(\x0b\x32%.seqvars.pbs.query.QuerySettingsLocus\x12\x38\n\x07\x63linvar\x18\x06 \x01(\x0b\x32\'.seqvars.pbs.query.QuerySettingsClinVar*\xad\x01\n\rRecessiveMode\x12\x1e\n\x1aRECESSIVE_MODE_UNSPECIFIED\x10\x00\x12\x1b\n\x17RECESSIVE_MODE_DISABLED\x10\x01\x12(\n$RECESSIVE_MODE_COMPOUND_HETEROZYGOUS\x10\x02\x12\x1d\n\x19RECESSIVE_MODE_HOMOZYGOUS\x10\x03\x12\x16\n\x12RECESSIVE_MODE_ANY\x10\x04*\xdd\x02\n\x0eGenotypeChoice\x12\x1f\n\x1bGENOTYPE_CHOICE_UNSPECIFIED\x10\x00\x12\x17\n\x13GENOTYPE_CHOICE_ANY\x10\x01\x12\x17\n\x13GENOTYPE_CHOICE_REF\x10\x02\x12\x17\n\x13GENOTYPE_CHOICE_HET\x10\x03\x12\x17\n\x13GENOTYPE_CHOICE_HOM\x10\x04\x12\x1b\n\x17GENOTYPE_CHOICE_NON_HET\x10\x05\x12\x1b\n\x17GENOTYPE_CHOICE_NON_HOM\x10\x06\x12\x1b\n\x17GENOTYPE_CHOICE_VARIANT\x10\x07\x12#\n\x1fGENOTYPE_CHOICE_RECESSIVE_INDEX\x10\x08\x12$\n GENOTYPE_CHOICE_RECESSIVE_FATHER\x10\t\x12$\n GENOTYPE_CHOICE_RECESSIVE_MOTHER\x10\n*\x96\x01\n\x0bVariantType\x12\x1c\n\x18VARIANT_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10VARIANT_TYPE_SNV\x10\x01\x12\x16\n\x12VARIANT_TYPE_INDEL\x10\x02\x12\x14\n\x10VARIANT_TYPE_MNV\x10\x03\x12%\n!VARIANT_TYPE_COMPLEX_SUBSTITUTION\x10\x04*m\n\x0eTranscriptType\x12\x1f\n\x1bTRANSCRIPT_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16TRANSCRIPT_TYPE_CODING\x10\x01\x12\x1e\n\x1aTRANSCRIPT_TYPE_NON_CODING\x10\x02*\xcd\r\n\x0b\x43onsequence\x12\x1b\n\x17\x43ONSEQUENCE_UNSPECIFIED\x10\x00\x12#\n\x1f\x43ONSEQUENCE_TRANSCRIPT_ABLATION\x10\x01\x12!\n\x1d\x43ONSEQUENCE_EXON_LOSS_VARIANT\x10\x02\x12\'\n#CONSEQUENCE_SPLICE_ACCEPTOR_VARIANT\x10\x03\x12$\n CONSEQUENCE_SPLICE_DONOR_VARIANT\x10\x04\x12\x1b\n\x17\x43ONSEQUENCE_STOP_GAINED\x10\x05\x12"\n\x1e\x43ONSEQUENCE_FRAMESHIFT_VARIANT\x10\x06\x12\x19\n\x15\x43ONSEQUENCE_STOP_LOST\x10\x07\x12\x1a\n\x16\x43ONSEQUENCE_START_LOST\x10\x08\x12(\n$CONSEQUENCE_TRANSCRIPT_AMPLIFICATION\x10\t\x12"\n\x1e\x43ONSEQUENCE_FEATURE_ELONGATION\x10\n\x12"\n\x1e\x43ONSEQUENCE_FEATURE_TRUNCATION\x10\x0b\x12,\n(CONSEQUENCE_DISRUPTIVE_INFRAME_INSERTION\x10\x0c\x12+\n\'CONSEQUENCE_DISRUPTIVE_INFRAME_DELETION\x10\r\x12.\n*CONSEQUENCE_CONSERVATIVE_INFRAME_INSERTION\x10\x0e\x12-\n)CONSEQUENCE_CONSERVATIVE_INFRAME_DELETION\x10\x0f\x12 \n\x1c\x43ONSEQUENCE_MISSENSE_VARIANT\x10\x10\x12/\n+CONSEQUENCE_SPLICE_DONOR_FIFTH_BASE_VARIANT\x10\x11\x12%\n!CONSEQUENCE_SPLICE_REGION_VARIANT\x10\x12\x12+\n\'CONSEQUENCE_SPLICE_DONOR_REGION_VARIANT\x10\x13\x12\x33\n/CONSEQUENCE_SPLICE_POLYPYRIMIDINE_TRACT_VARIANT\x10\x14\x12&\n"CONSEQUENCE_START_RETAINED_VARIANT\x10\x15\x12%\n!CONSEQUENCE_STOP_RETAINED_VARIANT\x10\x16\x12"\n\x1e\x43ONSEQUENCE_SYNONYMOUS_VARIANT\x10\x17\x12\'\n#CONSEQUENCE_CODING_SEQUENCE_VARIANT\x10\x18\x12$\n CONSEQUENCE_MATURE_MIRNA_VARIANT\x10\x19\x12+\n\'CONSEQUENCE_FIVE_PRIME_UTR_EXON_VARIANT\x10\x1a\x12-\n)CONSEQUENCE_FIVE_PRIME_UTR_INTRON_VARIANT\x10\x1b\x12,\n(CONSEQUENCE_THREE_PRIME_UTR_EXON_VARIANT\x10\x1c\x12.\n*CONSEQUENCE_THREE_PRIME_UTR_INTRON_VARIANT\x10\x1d\x12\x32\n.CONSEQUENCE_NON_CODING_TRANSCRIPT_EXON_VARIANT\x10\x1e\x12\x34\n0CONSEQUENCE_NON_CODING_TRANSCRIPT_INTRON_VARIANT\x10\x1f\x12%\n!CONSEQUENCE_UPSTREAM_GENE_VARIANT\x10 \x12\'\n#CONSEQUENCE_DOWNSTREAM_GENE_VARIANT\x10!\x12\x1d\n\x19\x43ONSEQUENCE_TFBS_ABLATION\x10"\x12"\n\x1e\x43ONSEQUENCE_TFBS_AMPLIFICATION\x10#\x12\'\n#CONSEQUENCE_TF_BINDING_SITE_VARIANT\x10$\x12*\n&CONSEQUENCE_REGULATORY_REGION_ABLATION\x10%\x12/\n+CONSEQUENCE_REGULATORY_REGION_AMPLIFICATION\x10&\x12)\n%CONSEQUENCE_REGULATORY_REGION_VARIANT\x10\'\x12"\n\x1e\x43ONSEQUENCE_INTERGENIC_VARIANT\x10(\x12\x1e\n\x1a\x43ONSEQUENCE_INTRON_VARIANT\x10)\x12\x1c\n\x18\x43ONSEQUENCE_GENE_VARIANT\x10**\x82\x03\n#ClinvarGermlineAggregateDescription\x12\x36\n2CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_UNSPECIFIED\x10\x00\x12\x35\n1CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_PATHOGENIC\x10\x01\x12<\n8CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_LIKELY_PATHOGENIC\x10\x02\x12\x41\n=CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_UNCERTAIN_SIGNIFICANCE\x10\x03\x12\x38\n4CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_LIKELY_BENIGN\x10\x04\x12\x31\n-CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_BENIGN\x10\x05\x62\x06proto3' + b'\n\x1aseqvars/protos/query.proto\x12\x11seqvars.pbs.query"\x85\x01\n\x14SampleGenotypeChoice\x12\x0e\n\x06sample\x18\x01 \x01(\t\x12\x33\n\x08genotype\x18\x02 \x01(\x0e\x32!.seqvars.pbs.query.GenotypeChoice\x12\x17\n\x0finclude_no_call\x18\x03 \x01(\x08\x12\x0f\n\x07\x65nabled\x18\x04 \x01(\x08"\x94\x01\n\x15QuerySettingsGenotype\x12\x38\n\x0erecessive_mode\x18\x01 \x01(\x0e\x32 .seqvars.pbs.query.RecessiveMode\x12\x41\n\x10sample_genotypes\x18\x02 \x03(\x0b\x32\'.seqvars.pbs.query.SampleGenotypeChoice"\x8e\x02\n\x15SampleQualitySettings\x12\x0e\n\x06sample\x18\x01 \x01(\t\x12\x15\n\rfilter_active\x18\x02 \x01(\x08\x12\x17\n\nmin_dp_het\x18\x03 \x01(\x05H\x00\x88\x01\x01\x12\x17\n\nmin_dp_hom\x18\x04 \x01(\x05H\x01\x88\x01\x01\x12\x13\n\x06min_gq\x18\x05 \x01(\x05H\x02\x88\x01\x01\x12\x13\n\x06min_ab\x18\x06 \x01(\x02H\x03\x88\x01\x01\x12\x13\n\x06min_ad\x18\x07 \x01(\x05H\x04\x88\x01\x01\x12\x13\n\x06max_ad\x18\x08 \x01(\x05H\x05\x88\x01\x01\x42\r\n\x0b_min_dp_hetB\r\n\x0b_min_dp_homB\t\n\x07_min_gqB\t\n\x07_min_abB\t\n\x07_min_adB\t\n\x07_max_ad"Z\n\x14QuerySettingsQuality\x12\x42\n\x10sample_qualities\x18\x01 \x03(\x0b\x32(.seqvars.pbs.query.SampleQualitySettings"\xb3\x01\n\x18NuclearFrequencySettings\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x14\n\x07max_het\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x07max_hom\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x15\n\x08max_hemi\x18\x04 \x01(\x05H\x02\x88\x01\x01\x12\x13\n\x06max_af\x18\x05 \x01(\x02H\x03\x88\x01\x01\x42\n\n\x08_max_hetB\n\n\x08_max_homB\x0b\n\t_max_hemiB\t\n\x07_max_af"\x95\x01\n\x1eMitochondrialFrequencySettings\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x14\n\x07max_het\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x07max_hom\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x13\n\x06max_af\x18\x04 \x01(\x02H\x02\x88\x01\x01\x42\n\n\x08_max_hetB\n\n\x08_max_homB\t\n\x07_max_af"\xbf\x01\n\x18InhouseFrequencySettings\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x14\n\x07max_het\x18\x02 \x01(\x05H\x00\x88\x01\x01\x12\x14\n\x07max_hom\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12\x15\n\x08max_hemi\x18\x04 \x01(\x05H\x02\x88\x01\x01\x12\x19\n\x0cmax_carriers\x18\x05 \x01(\x05H\x03\x88\x01\x01\x42\n\n\x08_max_hetB\n\n\x08_max_homB\x0b\n\t_max_hemiB\x0f\n\r_max_carriers"\xee\x02\n\x16QuerySettingsFrequency\x12\x42\n\rgnomad_exomes\x18\x01 \x01(\x0b\x32+.seqvars.pbs.query.NuclearFrequencySettings\x12\x43\n\x0egnomad_genomes\x18\x02 \x01(\x0b\x32+.seqvars.pbs.query.NuclearFrequencySettings\x12G\n\x0cgnomad_mtdna\x18\x03 \x01(\x0b\x32\x31.seqvars.pbs.query.MitochondrialFrequencySettings\x12\x44\n\thelixmtdb\x18\x04 \x01(\x0b\x32\x31.seqvars.pbs.query.MitochondrialFrequencySettings\x12<\n\x07inhouse\x18\x05 \x01(\x0b\x32+.seqvars.pbs.query.InhouseFrequencySettings"\xf8\x01\n\x18QuerySettingsConsequence\x12\x35\n\rvariant_types\x18\x01 \x03(\x0e\x32\x1e.seqvars.pbs.query.VariantType\x12;\n\x10transcript_types\x18\x02 \x03(\x0e\x32!.seqvars.pbs.query.TranscriptType\x12\x34\n\x0c\x63onsequences\x18\x03 \x03(\x0e\x32\x1e.seqvars.pbs.query.Consequence\x12\x1d\n\x10max_dist_to_exon\x18\x04 \x01(\x05H\x00\x88\x01\x01\x42\x13\n\x11_max_dist_to_exon"$\n\x05Range\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0c\n\x04stop\x18\x02 \x01(\x05"V\n\rGenomicRegion\x12\r\n\x05\x63hrom\x18\x01 \x01(\t\x12,\n\x05range\x18\x02 \x01(\x0b\x32\x18.seqvars.pbs.query.RangeH\x00\x88\x01\x01\x42\x08\n\x06_range"]\n\x12QuerySettingsLocus\x12\r\n\x05genes\x18\x01 \x03(\t\x12\x38\n\x0egenome_regions\x18\x02 \x03(\x0b\x32 .seqvars.pbs.query.GenomicRegion"\xb3\x01\n\x14QuerySettingsClinVar\x12\x19\n\x11presence_required\x18\x01 \x01(\x08\x12U\n\x15germline_descriptions\x18\x02 \x03(\x0e\x32\x36.seqvars.pbs.query.ClinvarGermlineAggregateDescription\x12)\n!allow_conflicting_interpretations\x18\x03 \x01(\x08"\xf1\x02\n\tCaseQuery\x12:\n\x08genotype\x18\x01 \x01(\x0b\x32(.seqvars.pbs.query.QuerySettingsGenotype\x12\x38\n\x07quality\x18\x02 \x01(\x0b\x32\'.seqvars.pbs.query.QuerySettingsQuality\x12<\n\tfrequency\x18\x03 \x01(\x0b\x32).seqvars.pbs.query.QuerySettingsFrequency\x12@\n\x0b\x63onsequence\x18\x04 \x01(\x0b\x32+.seqvars.pbs.query.QuerySettingsConsequence\x12\x34\n\x05locus\x18\x05 \x01(\x0b\x32%.seqvars.pbs.query.QuerySettingsLocus\x12\x38\n\x07\x63linvar\x18\x06 \x01(\x0b\x32\'.seqvars.pbs.query.QuerySettingsClinVar*\xad\x01\n\rRecessiveMode\x12\x1e\n\x1aRECESSIVE_MODE_UNSPECIFIED\x10\x00\x12\x1b\n\x17RECESSIVE_MODE_DISABLED\x10\x01\x12(\n$RECESSIVE_MODE_COMPOUND_HETEROZYGOUS\x10\x02\x12\x1d\n\x19RECESSIVE_MODE_HOMOZYGOUS\x10\x03\x12\x16\n\x12RECESSIVE_MODE_ANY\x10\x04*\xdd\x02\n\x0eGenotypeChoice\x12\x1f\n\x1bGENOTYPE_CHOICE_UNSPECIFIED\x10\x00\x12\x17\n\x13GENOTYPE_CHOICE_ANY\x10\x01\x12\x17\n\x13GENOTYPE_CHOICE_REF\x10\x02\x12\x17\n\x13GENOTYPE_CHOICE_HET\x10\x03\x12\x17\n\x13GENOTYPE_CHOICE_HOM\x10\x04\x12\x1b\n\x17GENOTYPE_CHOICE_NON_HET\x10\x05\x12\x1b\n\x17GENOTYPE_CHOICE_NON_HOM\x10\x06\x12\x1b\n\x17GENOTYPE_CHOICE_VARIANT\x10\x07\x12#\n\x1fGENOTYPE_CHOICE_RECESSIVE_INDEX\x10\x08\x12$\n GENOTYPE_CHOICE_RECESSIVE_FATHER\x10\t\x12$\n GENOTYPE_CHOICE_RECESSIVE_MOTHER\x10\n*\x96\x01\n\x0bVariantType\x12\x1c\n\x18VARIANT_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10VARIANT_TYPE_SNV\x10\x01\x12\x16\n\x12VARIANT_TYPE_INDEL\x10\x02\x12\x14\n\x10VARIANT_TYPE_MNV\x10\x03\x12%\n!VARIANT_TYPE_COMPLEX_SUBSTITUTION\x10\x04*m\n\x0eTranscriptType\x12\x1f\n\x1bTRANSCRIPT_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n\x16TRANSCRIPT_TYPE_CODING\x10\x01\x12\x1e\n\x1aTRANSCRIPT_TYPE_NON_CODING\x10\x02*\xcd\r\n\x0b\x43onsequence\x12\x1b\n\x17\x43ONSEQUENCE_UNSPECIFIED\x10\x00\x12#\n\x1f\x43ONSEQUENCE_TRANSCRIPT_ABLATION\x10\x01\x12!\n\x1d\x43ONSEQUENCE_EXON_LOSS_VARIANT\x10\x02\x12\'\n#CONSEQUENCE_SPLICE_ACCEPTOR_VARIANT\x10\x03\x12$\n CONSEQUENCE_SPLICE_DONOR_VARIANT\x10\x04\x12\x1b\n\x17\x43ONSEQUENCE_STOP_GAINED\x10\x05\x12"\n\x1e\x43ONSEQUENCE_FRAMESHIFT_VARIANT\x10\x06\x12\x19\n\x15\x43ONSEQUENCE_STOP_LOST\x10\x07\x12\x1a\n\x16\x43ONSEQUENCE_START_LOST\x10\x08\x12(\n$CONSEQUENCE_TRANSCRIPT_AMPLIFICATION\x10\t\x12"\n\x1e\x43ONSEQUENCE_FEATURE_ELONGATION\x10\n\x12"\n\x1e\x43ONSEQUENCE_FEATURE_TRUNCATION\x10\x0b\x12,\n(CONSEQUENCE_DISRUPTIVE_INFRAME_INSERTION\x10\x0c\x12+\n\'CONSEQUENCE_DISRUPTIVE_INFRAME_DELETION\x10\r\x12.\n*CONSEQUENCE_CONSERVATIVE_INFRAME_INSERTION\x10\x0e\x12-\n)CONSEQUENCE_CONSERVATIVE_INFRAME_DELETION\x10\x0f\x12 \n\x1c\x43ONSEQUENCE_MISSENSE_VARIANT\x10\x10\x12/\n+CONSEQUENCE_SPLICE_DONOR_FIFTH_BASE_VARIANT\x10\x11\x12%\n!CONSEQUENCE_SPLICE_REGION_VARIANT\x10\x12\x12+\n\'CONSEQUENCE_SPLICE_DONOR_REGION_VARIANT\x10\x13\x12\x33\n/CONSEQUENCE_SPLICE_POLYPYRIMIDINE_TRACT_VARIANT\x10\x14\x12&\n"CONSEQUENCE_START_RETAINED_VARIANT\x10\x15\x12%\n!CONSEQUENCE_STOP_RETAINED_VARIANT\x10\x16\x12"\n\x1e\x43ONSEQUENCE_SYNONYMOUS_VARIANT\x10\x17\x12\'\n#CONSEQUENCE_CODING_SEQUENCE_VARIANT\x10\x18\x12$\n CONSEQUENCE_MATURE_MIRNA_VARIANT\x10\x19\x12+\n\'CONSEQUENCE_FIVE_PRIME_UTR_EXON_VARIANT\x10\x1a\x12-\n)CONSEQUENCE_FIVE_PRIME_UTR_INTRON_VARIANT\x10\x1b\x12,\n(CONSEQUENCE_THREE_PRIME_UTR_EXON_VARIANT\x10\x1c\x12.\n*CONSEQUENCE_THREE_PRIME_UTR_INTRON_VARIANT\x10\x1d\x12\x32\n.CONSEQUENCE_NON_CODING_TRANSCRIPT_EXON_VARIANT\x10\x1e\x12\x34\n0CONSEQUENCE_NON_CODING_TRANSCRIPT_INTRON_VARIANT\x10\x1f\x12%\n!CONSEQUENCE_UPSTREAM_GENE_VARIANT\x10 \x12\'\n#CONSEQUENCE_DOWNSTREAM_GENE_VARIANT\x10!\x12\x1d\n\x19\x43ONSEQUENCE_TFBS_ABLATION\x10"\x12"\n\x1e\x43ONSEQUENCE_TFBS_AMPLIFICATION\x10#\x12\'\n#CONSEQUENCE_TF_BINDING_SITE_VARIANT\x10$\x12*\n&CONSEQUENCE_REGULATORY_REGION_ABLATION\x10%\x12/\n+CONSEQUENCE_REGULATORY_REGION_AMPLIFICATION\x10&\x12)\n%CONSEQUENCE_REGULATORY_REGION_VARIANT\x10\'\x12"\n\x1e\x43ONSEQUENCE_INTERGENIC_VARIANT\x10(\x12\x1e\n\x1a\x43ONSEQUENCE_INTRON_VARIANT\x10)\x12\x1c\n\x18\x43ONSEQUENCE_GENE_VARIANT\x10**\x82\x03\n#ClinvarGermlineAggregateDescription\x12\x36\n2CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_UNSPECIFIED\x10\x00\x12\x35\n1CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_PATHOGENIC\x10\x01\x12<\n8CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_LIKELY_PATHOGENIC\x10\x02\x12\x41\n=CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_UNCERTAIN_SIGNIFICANCE\x10\x03\x12\x38\n4CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_LIKELY_BENIGN\x10\x04\x12\x31\n-CLINVAR_GERMLINE_AGGREGATE_DESCRIPTION_BENIGN\x10\x05\x62\x06proto3' ) _globals = globals() @@ -21,18 +21,18 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, "seqvars.protos.query_pb2", _globals) if _descriptor._USE_C_DESCRIPTORS == False: DESCRIPTOR._options = None - _globals["_RECESSIVEMODE"]._serialized_start = 2664 - _globals["_RECESSIVEMODE"]._serialized_end = 2837 - _globals["_GENOTYPECHOICE"]._serialized_start = 2840 - _globals["_GENOTYPECHOICE"]._serialized_end = 3189 - _globals["_VARIANTTYPE"]._serialized_start = 3192 - _globals["_VARIANTTYPE"]._serialized_end = 3342 - _globals["_TRANSCRIPTTYPE"]._serialized_start = 3344 - _globals["_TRANSCRIPTTYPE"]._serialized_end = 3453 - _globals["_CONSEQUENCE"]._serialized_start = 3456 - _globals["_CONSEQUENCE"]._serialized_end = 5197 - _globals["_CLINVARGERMLINEAGGREGATEDESCRIPTION"]._serialized_start = 5200 - _globals["_CLINVARGERMLINEAGGREGATEDESCRIPTION"]._serialized_end = 5586 + _globals["_RECESSIVEMODE"]._serialized_start = 2625 + _globals["_RECESSIVEMODE"]._serialized_end = 2798 + _globals["_GENOTYPECHOICE"]._serialized_start = 2801 + _globals["_GENOTYPECHOICE"]._serialized_end = 3150 + _globals["_VARIANTTYPE"]._serialized_start = 3153 + _globals["_VARIANTTYPE"]._serialized_end = 3303 + _globals["_TRANSCRIPTTYPE"]._serialized_start = 3305 + _globals["_TRANSCRIPTTYPE"]._serialized_end = 3414 + _globals["_CONSEQUENCE"]._serialized_start = 3417 + _globals["_CONSEQUENCE"]._serialized_end = 5158 + _globals["_CLINVARGERMLINEAGGREGATEDESCRIPTION"]._serialized_start = 5161 + _globals["_CLINVARGERMLINEAGGREGATEDESCRIPTION"]._serialized_end = 5547 _globals["_SAMPLEGENOTYPECHOICE"]._serialized_start = 50 _globals["_SAMPLEGENOTYPECHOICE"]._serialized_end = 183 _globals["_QUERYSETTINGSGENOTYPE"]._serialized_start = 186 @@ -42,23 +42,23 @@ _globals["_QUERYSETTINGSQUALITY"]._serialized_start = 609 _globals["_QUERYSETTINGSQUALITY"]._serialized_end = 699 _globals["_NUCLEARFREQUENCYSETTINGS"]._serialized_start = 702 - _globals["_NUCLEARFREQUENCYSETTINGS"]._serialized_end = 907 - _globals["_GNOMADMITOCHONDRIALFREQUENCYSETTINGS"]._serialized_start = 910 - _globals["_GNOMADMITOCHONDRIALFREQUENCYSETTINGS"]._serialized_end = 1091 - _globals["_HELIXMTDBFREQUENCYSETTINGS"]._serialized_start = 1094 - _globals["_HELIXMTDBFREQUENCYSETTINGS"]._serialized_end = 1265 - _globals["_QUERYSETTINGSFREQUENCY"]._serialized_start = 1268 - _globals["_QUERYSETTINGSFREQUENCY"]._serialized_end = 1636 - _globals["_QUERYSETTINGSCONSEQUENCE"]._serialized_start = 1639 - _globals["_QUERYSETTINGSCONSEQUENCE"]._serialized_end = 1887 - _globals["_RANGE"]._serialized_start = 1889 - _globals["_RANGE"]._serialized_end = 1924 - _globals["_GENOMICREGION"]._serialized_start = 1926 - _globals["_GENOMICREGION"]._serialized_end = 2012 - _globals["_QUERYSETTINGSLOCUS"]._serialized_start = 2014 - _globals["_QUERYSETTINGSLOCUS"]._serialized_end = 2107 - _globals["_QUERYSETTINGSCLINVAR"]._serialized_start = 2110 - _globals["_QUERYSETTINGSCLINVAR"]._serialized_end = 2289 - _globals["_CASEQUERY"]._serialized_start = 2292 - _globals["_CASEQUERY"]._serialized_end = 2661 + _globals["_NUCLEARFREQUENCYSETTINGS"]._serialized_end = 881 + _globals["_MITOCHONDRIALFREQUENCYSETTINGS"]._serialized_start = 884 + _globals["_MITOCHONDRIALFREQUENCYSETTINGS"]._serialized_end = 1033 + _globals["_INHOUSEFREQUENCYSETTINGS"]._serialized_start = 1036 + _globals["_INHOUSEFREQUENCYSETTINGS"]._serialized_end = 1227 + _globals["_QUERYSETTINGSFREQUENCY"]._serialized_start = 1230 + _globals["_QUERYSETTINGSFREQUENCY"]._serialized_end = 1596 + _globals["_QUERYSETTINGSCONSEQUENCE"]._serialized_start = 1599 + _globals["_QUERYSETTINGSCONSEQUENCE"]._serialized_end = 1847 + _globals["_RANGE"]._serialized_start = 1849 + _globals["_RANGE"]._serialized_end = 1885 + _globals["_GENOMICREGION"]._serialized_start = 1887 + _globals["_GENOMICREGION"]._serialized_end = 1973 + _globals["_QUERYSETTINGSLOCUS"]._serialized_start = 1975 + _globals["_QUERYSETTINGSLOCUS"]._serialized_end = 2068 + _globals["_QUERYSETTINGSCLINVAR"]._serialized_start = 2071 + _globals["_QUERYSETTINGSCLINVAR"]._serialized_end = 2250 + _globals["_CASEQUERY"]._serialized_start = 2253 + _globals["_CASEQUERY"]._serialized_end = 2622 # @@protoc_insertion_point(module_scope) diff --git a/backend/seqvars/protos/query_pb2.pyi b/backend/seqvars/protos/query_pb2.pyi index 22f03020b..d49164020 100644 --- a/backend/seqvars/protos/query_pb2.pyi +++ b/backend/seqvars/protos/query_pb2.pyi @@ -681,248 +681,264 @@ class QuerySettingsQuality(google.protobuf.message.Message): global___QuerySettingsQuality = QuerySettingsQuality class NuclearFrequencySettings(google.protobuf.message.Message): - """gnomAD and In-house nuclear filter options.""" + """gnomAD filter options.""" DESCRIPTOR: google.protobuf.descriptor.Descriptor ENABLED_FIELD_NUMBER: builtins.int - HETEROZYGOUS_FIELD_NUMBER: builtins.int - HOMOZYGOUS_FIELD_NUMBER: builtins.int - HEMIZYGOUS_FIELD_NUMBER: builtins.int - FREQUENCY_FIELD_NUMBER: builtins.int + MAX_HET_FIELD_NUMBER: builtins.int + MAX_HOM_FIELD_NUMBER: builtins.int + MAX_HEMI_FIELD_NUMBER: builtins.int + MAX_AF_FIELD_NUMBER: builtins.int enabled: builtins.bool - """Whether to enable filtration by 1000 Genomes.""" - heterozygous: builtins.int - """Maximal number of in-house heterozygous carriers""" - homozygous: builtins.int - """Maximal number of in-house homozygous carriers""" - hemizygous: builtins.int - """Maximal number of in-house hemizygous carriers""" - frequency: builtins.float + """Whether to enable filtration.""" + max_het: builtins.int + """Maximal number of heterozygous carriers""" + max_hom: builtins.int + """Maximal number of homozygous carriers""" + max_hemi: builtins.int + """Maximal number of hemizygous carriers""" + max_af: builtins.float """Maximal allele frequency.""" def __init__( self, *, enabled: builtins.bool = ..., - heterozygous: builtins.int | None = ..., - homozygous: builtins.int | None = ..., - hemizygous: builtins.int | None = ..., - frequency: builtins.float | None = ..., + max_het: builtins.int | None = ..., + max_hom: builtins.int | None = ..., + max_hemi: builtins.int | None = ..., + max_af: builtins.float | None = ..., ) -> None: ... def HasField( self, field_name: typing_extensions.Literal[ - "_frequency", - b"_frequency", - "_hemizygous", - b"_hemizygous", - "_heterozygous", - b"_heterozygous", - "_homozygous", - b"_homozygous", - "frequency", - b"frequency", - "hemizygous", - b"hemizygous", - "heterozygous", - b"heterozygous", - "homozygous", - b"homozygous", + "_max_af", + b"_max_af", + "_max_hemi", + b"_max_hemi", + "_max_het", + b"_max_het", + "_max_hom", + b"_max_hom", + "max_af", + b"max_af", + "max_hemi", + b"max_hemi", + "max_het", + b"max_het", + "max_hom", + b"max_hom", ], ) -> builtins.bool: ... def ClearField( self, field_name: typing_extensions.Literal[ - "_frequency", - b"_frequency", - "_hemizygous", - b"_hemizygous", - "_heterozygous", - b"_heterozygous", - "_homozygous", - b"_homozygous", + "_max_af", + b"_max_af", + "_max_hemi", + b"_max_hemi", + "_max_het", + b"_max_het", + "_max_hom", + b"_max_hom", "enabled", b"enabled", - "frequency", - b"frequency", - "hemizygous", - b"hemizygous", - "heterozygous", - b"heterozygous", - "homozygous", - b"homozygous", + "max_af", + b"max_af", + "max_hemi", + b"max_hemi", + "max_het", + b"max_het", + "max_hom", + b"max_hom", ], ) -> None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_frequency", b"_frequency"] - ) -> typing_extensions.Literal["frequency"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_af", b"_max_af"] + ) -> typing_extensions.Literal["max_af"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_hemizygous", b"_hemizygous"] - ) -> typing_extensions.Literal["hemizygous"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_hemi", b"_max_hemi"] + ) -> typing_extensions.Literal["max_hemi"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_heterozygous", b"_heterozygous"] - ) -> typing_extensions.Literal["heterozygous"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_het", b"_max_het"] + ) -> typing_extensions.Literal["max_het"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_homozygous", b"_homozygous"] - ) -> typing_extensions.Literal["homozygous"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_hom", b"_max_hom"] + ) -> typing_extensions.Literal["max_hom"] | None: ... global___NuclearFrequencySettings = NuclearFrequencySettings -class GnomadMitochondrialFrequencySettings(google.protobuf.message.Message): - """gnomAD mitochondrial filter options.""" +class MitochondrialFrequencySettings(google.protobuf.message.Message): + """Mitochondrial filter options.""" DESCRIPTOR: google.protobuf.descriptor.Descriptor ENABLED_FIELD_NUMBER: builtins.int - HETEROPLASMIC_FIELD_NUMBER: builtins.int - HOMOPLASMIC_FIELD_NUMBER: builtins.int - FREQUENCY_FIELD_NUMBER: builtins.int + MAX_HET_FIELD_NUMBER: builtins.int + MAX_HOM_FIELD_NUMBER: builtins.int + MAX_AF_FIELD_NUMBER: builtins.int enabled: builtins.bool - """Whether to enable filtration by 1000 Genomes.""" - heteroplasmic: builtins.int + """Whether to enable filtration.""" + max_het: builtins.int """Maximal number of heteroplasmic carriers.""" - homoplasmic: builtins.int + max_hom: builtins.int """Maximal number of homoplasmic carriers.""" - frequency: builtins.float + max_af: builtins.float """Maximal allele frequency.""" def __init__( self, *, enabled: builtins.bool = ..., - heteroplasmic: builtins.int | None = ..., - homoplasmic: builtins.int | None = ..., - frequency: builtins.float | None = ..., + max_het: builtins.int | None = ..., + max_hom: builtins.int | None = ..., + max_af: builtins.float | None = ..., ) -> None: ... def HasField( self, field_name: typing_extensions.Literal[ - "_frequency", - b"_frequency", - "_heteroplasmic", - b"_heteroplasmic", - "_homoplasmic", - b"_homoplasmic", - "frequency", - b"frequency", - "heteroplasmic", - b"heteroplasmic", - "homoplasmic", - b"homoplasmic", + "_max_af", + b"_max_af", + "_max_het", + b"_max_het", + "_max_hom", + b"_max_hom", + "max_af", + b"max_af", + "max_het", + b"max_het", + "max_hom", + b"max_hom", ], ) -> builtins.bool: ... def ClearField( self, field_name: typing_extensions.Literal[ - "_frequency", - b"_frequency", - "_heteroplasmic", - b"_heteroplasmic", - "_homoplasmic", - b"_homoplasmic", + "_max_af", + b"_max_af", + "_max_het", + b"_max_het", + "_max_hom", + b"_max_hom", "enabled", b"enabled", - "frequency", - b"frequency", - "heteroplasmic", - b"heteroplasmic", - "homoplasmic", - b"homoplasmic", + "max_af", + b"max_af", + "max_het", + b"max_het", + "max_hom", + b"max_hom", ], ) -> None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_frequency", b"_frequency"] - ) -> typing_extensions.Literal["frequency"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_af", b"_max_af"] + ) -> typing_extensions.Literal["max_af"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_heteroplasmic", b"_heteroplasmic"] - ) -> typing_extensions.Literal["heteroplasmic"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_het", b"_max_het"] + ) -> typing_extensions.Literal["max_het"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_homoplasmic", b"_homoplasmic"] - ) -> typing_extensions.Literal["homoplasmic"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_hom", b"_max_hom"] + ) -> typing_extensions.Literal["max_hom"] | None: ... -global___GnomadMitochondrialFrequencySettings = GnomadMitochondrialFrequencySettings +global___MitochondrialFrequencySettings = MitochondrialFrequencySettings -class HelixMtDbFrequencySettings(google.protobuf.message.Message): - """HelixMtDb filter options.""" +class InhouseFrequencySettings(google.protobuf.message.Message): + """In-house filter options.""" DESCRIPTOR: google.protobuf.descriptor.Descriptor ENABLED_FIELD_NUMBER: builtins.int - HETEROPLASMIC_FIELD_NUMBER: builtins.int - HOMOPLASMIC_FIELD_NUMBER: builtins.int - FREQUENCY_FIELD_NUMBER: builtins.int + MAX_HET_FIELD_NUMBER: builtins.int + MAX_HOM_FIELD_NUMBER: builtins.int + MAX_HEMI_FIELD_NUMBER: builtins.int + MAX_CARRIERS_FIELD_NUMBER: builtins.int enabled: builtins.bool - """Whether to enable filtration by mtDB""" - heteroplasmic: builtins.int - """Maximal number of heterozygous carriers in HelixMtDb""" - homoplasmic: builtins.int - """Maximal number of homozygous carriers in HelixMtDb""" - frequency: builtins.float - """Maximal frequency in HelixMtDb""" + """Whether to enable filtration.""" + max_het: builtins.int + """Maximal number of heterozygous carriers""" + max_hom: builtins.int + """Maximal number of homozygous carriers""" + max_hemi: builtins.int + """Maximal number of hemizygous carriers""" + max_carriers: builtins.int + """Maximal number of total carriers.""" def __init__( self, *, enabled: builtins.bool = ..., - heteroplasmic: builtins.int | None = ..., - homoplasmic: builtins.int | None = ..., - frequency: builtins.float | None = ..., + max_het: builtins.int | None = ..., + max_hom: builtins.int | None = ..., + max_hemi: builtins.int | None = ..., + max_carriers: builtins.int | None = ..., ) -> None: ... def HasField( self, field_name: typing_extensions.Literal[ - "_frequency", - b"_frequency", - "_heteroplasmic", - b"_heteroplasmic", - "_homoplasmic", - b"_homoplasmic", - "frequency", - b"frequency", - "heteroplasmic", - b"heteroplasmic", - "homoplasmic", - b"homoplasmic", + "_max_carriers", + b"_max_carriers", + "_max_hemi", + b"_max_hemi", + "_max_het", + b"_max_het", + "_max_hom", + b"_max_hom", + "max_carriers", + b"max_carriers", + "max_hemi", + b"max_hemi", + "max_het", + b"max_het", + "max_hom", + b"max_hom", ], ) -> builtins.bool: ... def ClearField( self, field_name: typing_extensions.Literal[ - "_frequency", - b"_frequency", - "_heteroplasmic", - b"_heteroplasmic", - "_homoplasmic", - b"_homoplasmic", + "_max_carriers", + b"_max_carriers", + "_max_hemi", + b"_max_hemi", + "_max_het", + b"_max_het", + "_max_hom", + b"_max_hom", "enabled", b"enabled", - "frequency", - b"frequency", - "heteroplasmic", - b"heteroplasmic", - "homoplasmic", - b"homoplasmic", + "max_carriers", + b"max_carriers", + "max_hemi", + b"max_hemi", + "max_het", + b"max_het", + "max_hom", + b"max_hom", ], ) -> None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_frequency", b"_frequency"] - ) -> typing_extensions.Literal["frequency"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_carriers", b"_max_carriers"] + ) -> typing_extensions.Literal["max_carriers"] | None: ... + @typing.overload + def WhichOneof( + self, oneof_group: typing_extensions.Literal["_max_hemi", b"_max_hemi"] + ) -> typing_extensions.Literal["max_hemi"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_heteroplasmic", b"_heteroplasmic"] - ) -> typing_extensions.Literal["heteroplasmic"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_het", b"_max_het"] + ) -> typing_extensions.Literal["max_het"] | None: ... @typing.overload def WhichOneof( - self, oneof_group: typing_extensions.Literal["_homoplasmic", b"_homoplasmic"] - ) -> typing_extensions.Literal["homoplasmic"] | None: ... + self, oneof_group: typing_extensions.Literal["_max_hom", b"_max_hom"] + ) -> typing_extensions.Literal["max_hom"] | None: ... -global___HelixMtDbFrequencySettings = HelixMtDbFrequencySettings +global___InhouseFrequencySettings = InhouseFrequencySettings class QuerySettingsFrequency(google.protobuf.message.Message): """Population frequency filter options.""" @@ -943,15 +959,15 @@ class QuerySettingsFrequency(google.protobuf.message.Message): """gnomAD-genomes filter""" @property - def gnomad_mtdna(self) -> global___GnomadMitochondrialFrequencySettings: + def gnomad_mtdna(self) -> global___MitochondrialFrequencySettings: """gnomAD-MT filter""" @property - def helixmtdb(self) -> global___HelixMtDbFrequencySettings: + def helixmtdb(self) -> global___MitochondrialFrequencySettings: """HelixMtDb filter""" @property - def inhouse(self) -> global___NuclearFrequencySettings: + def inhouse(self) -> global___InhouseFrequencySettings: """In-house filter""" def __init__( @@ -959,9 +975,9 @@ class QuerySettingsFrequency(google.protobuf.message.Message): *, gnomad_exomes: global___NuclearFrequencySettings | None = ..., gnomad_genomes: global___NuclearFrequencySettings | None = ..., - gnomad_mtdna: global___GnomadMitochondrialFrequencySettings | None = ..., - helixmtdb: global___HelixMtDbFrequencySettings | None = ..., - inhouse: global___NuclearFrequencySettings | None = ..., + gnomad_mtdna: global___MitochondrialFrequencySettings | None = ..., + helixmtdb: global___MitochondrialFrequencySettings | None = ..., + inhouse: global___InhouseFrequencySettings | None = ..., ) -> None: ... def HasField( self, @@ -1071,19 +1087,19 @@ class Range(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor START_FIELD_NUMBER: builtins.int - END_FIELD_NUMBER: builtins.int + STOP_FIELD_NUMBER: builtins.int start: builtins.int """1-based start position.""" - end: builtins.int + stop: builtins.int """1-based end position.""" def __init__( self, *, start: builtins.int = ..., - end: builtins.int = ..., + stop: builtins.int = ..., ) -> None: ... def ClearField( - self, field_name: typing_extensions.Literal["end", b"end", "start", b"start"] + self, field_name: typing_extensions.Literal["start", b"start", "stop", b"stop"] ) -> None: ... global___Range = Range diff --git a/backend/seqvars/serializers.py b/backend/seqvars/serializers.py index 0e041df4f..63891c016 100644 --- a/backend/seqvars/serializers.py +++ b/backend/seqvars/serializers.py @@ -13,17 +13,16 @@ GenePanelPydantic, GenePydantic, GenomeRegionPydantic, - GnomadMitochondrialFrequencySettingsPydantic, - GnomadNuclearFrequencySettingsPydantic, - HelixmtDbFrequencySettingsPydantic, - InhouseFrequencySettingsPydantic, SeqvarsClinvarSettingsBase, SeqvarsColumnConfigPydantic, SeqvarsColumnsSettingsBase, SeqvarsConsequenceSettingsBase, SeqvarsFrequencySettingsBase, SeqvarsGenotypePresetsPydantic, + SeqvarsInhouseFrequencySettingsPydantic, SeqvarsLocusSettingsBase, + SeqvarsMitochondrialFrequencySettingsPydantic, + SeqvarsNuclearFrequencySettingsPydantic, SeqvarsOutputHeaderPydantic, SeqvarsOutputRecordPydantic, SeqvarsPhenotypePrioSettingsBase, @@ -96,19 +95,23 @@ class FrequencySettingsBaseSerializer(serializers.ModelSerializer): """ gnomad_exomes = SchemaField( - schema=Optional[GnomadNuclearFrequencySettingsPydantic], allow_null=True, default=None + schema=Optional[SeqvarsNuclearFrequencySettingsPydantic], allow_null=True, default=None ) gnomad_genomes = SchemaField( - schema=Optional[GnomadNuclearFrequencySettingsPydantic], allow_null=True, default=None + schema=Optional[SeqvarsNuclearFrequencySettingsPydantic], allow_null=True, default=None ) - gnomad_mitochondrial = SchemaField( - schema=Optional[GnomadMitochondrialFrequencySettingsPydantic], allow_null=True, default=None + gnomad_mtdna = SchemaField( + schema=Optional[SeqvarsMitochondrialFrequencySettingsPydantic], + allow_null=True, + default=None, ) helixmtdb = SchemaField( - schema=Optional[HelixmtDbFrequencySettingsPydantic], allow_null=True, default=None + schema=Optional[SeqvarsMitochondrialFrequencySettingsPydantic], + allow_null=True, + default=None, ) inhouse = SchemaField( - schema=Optional[InhouseFrequencySettingsPydantic], allow_null=True, default=None + schema=Optional[SeqvarsInhouseFrequencySettingsPydantic], allow_null=True, default=None ) class Meta: @@ -116,7 +119,7 @@ class Meta: fields = [ "gnomad_exomes", "gnomad_genomes", - "gnomad_mitochondrial", + "gnomad_mtdna", "helixmtdb", "inhouse", ] diff --git a/backend/seqvars/tests/factories.py b/backend/seqvars/tests/factories.py index 9c576de6b..8973362a1 100644 --- a/backend/seqvars/tests/factories.py +++ b/backend/seqvars/tests/factories.py @@ -10,14 +10,13 @@ GenePanelSourceChoice, GenePydantic, GenomeReleaseChoice, - GnomadMitochondrialFrequencySettingsPydantic, - GnomadNuclearFrequencySettingsPydantic, - HelixmtDbFrequencySettingsPydantic, - InhouseFrequencySettingsPydantic, SeqvarsColumnConfigPydantic, SeqvarsGenotypeChoice, SeqvarsGenotypePresetChoice, SeqvarsGenotypePresetsPydantic, + SeqvarsInhouseFrequencySettingsPydantic, + SeqvarsMitochondrialFrequencySettingsPydantic, + SeqvarsNuclearFrequencySettingsPydantic, SeqvarsOutputRecordPydantic, SeqvarsPredefinedQuery, SeqvarsPrioServicePydantic, @@ -81,69 +80,58 @@ class Meta: abstract = True -class GnomadNuclearFrequencySettingsFactory(factory.Factory): +class NuclearFrequencySettingsFactory(factory.Factory): enabled = False - homozygous = None - heterozygous = None - hemizygous = None - frequency = None + max_hom = None + max_het = None + max_hemi = None + max_af = None class Meta: - model = GnomadNuclearFrequencySettingsPydantic + model = SeqvarsNuclearFrequencySettingsPydantic -class GnomadMitochondrialFrequencySettingsFactory(factory.Factory): +class MitochondrialFrequencySettingsFactory(factory.Factory): enabled = False - heteroplasmic = None - homoplasmic = None - frequency = None + max_het = None + max_hom = None + max_af = None class Meta: - model = GnomadMitochondrialFrequencySettingsPydantic - - -class HelixMtDbFrequencySettingsFactory(factory.Factory): - - enabled: bool = False - heteroplasmic = None - homoplasmic = None - frequency = None - - class Meta: - model = HelixmtDbFrequencySettingsPydantic + model = SeqvarsMitochondrialFrequencySettingsPydantic class InhouseFrequencySettingsFactory(factory.Factory): enabled = False - heterozygous = None - homozygous = None - hemizygous = None - carriers = None + max_het = None + max_hom = None + max_hemi = None + max_carriers = None class Meta: - model = InhouseFrequencySettingsPydantic + model = SeqvarsInhouseFrequencySettingsPydantic class FrequencySettingsBaseFactory(factory.django.DjangoModelFactory): @factory.lazy_attribute def gnomad_exomes(self): - return GnomadNuclearFrequencySettingsFactory() + return NuclearFrequencySettingsFactory() @factory.lazy_attribute def gnomad_genomes(self): - return GnomadNuclearFrequencySettingsFactory() + return NuclearFrequencySettingsFactory() @factory.lazy_attribute - def gnomad_mitochondrial(self): - return GnomadMitochondrialFrequencySettingsFactory() + def gnomad_mtdna(self): + return MitochondrialFrequencySettingsFactory() @factory.lazy_attribute def helixmtdb(self): - return HelixMtDbFrequencySettingsFactory() + return MitochondrialFrequencySettingsFactory() @factory.lazy_attribute def inhouse(self): diff --git a/backend/seqvars/tests/snapshots/snap_test_factory_defaults.py b/backend/seqvars/tests/snapshots/snap_test_factory_defaults.py index e9eac1385..8f1ee08a8 100644 --- a/backend/seqvars/tests/snapshots/snap_test_factory_defaults.py +++ b/backend/seqvars/tests/snapshots/snap_test_factory_defaults.py @@ -2155,36 +2155,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": None, + "max_het": None, + "max_hom": None, }, "label": "dominant super strict", "presetssetversion": "0587212a-56b7-4cfe-8d9d-ff9714f60b7a", @@ -2197,36 +2196,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant strict", "presetssetversion": "0587212a-56b7-4cfe-8d9d-ff9714f60b7a", @@ -2239,36 +2237,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 50, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 50, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 20, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 20, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant relaxed", "presetssetversion": "0587212a-56b7-4cfe-8d9d-ff9714f60b7a", @@ -2281,36 +2278,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 120, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 120, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 15, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 15, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive strict", "presetssetversion": "0587212a-56b7-4cfe-8d9d-ff9714f60b7a", @@ -2323,36 +2319,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 0, - "homozygous": 20, + "max_af": 0.01, + "max_hemi": None, + "max_het": 0, + "max_hom": 20, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 150, - "homozygous": 4, + "max_af": 0.01, + "max_hemi": None, + "max_het": 150, + "max_hom": 4, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive relaxed", "presetssetversion": "0587212a-56b7-4cfe-8d9d-ff9714f60b7a", @@ -2365,36 +2360,35 @@ "description": None, "gnomad_exomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, "gnomad_genomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": False, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "any", "presetssetversion": "0587212a-56b7-4cfe-8d9d-ff9714f60b7a", @@ -4812,36 +4806,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": None, + "max_het": None, + "max_hom": None, }, "label": "dominant super strict", "presetssetversion": "612b6cd5-2d39-45ab-9ddd-2106dcae6e9f", @@ -4854,36 +4847,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant strict", "presetssetversion": "612b6cd5-2d39-45ab-9ddd-2106dcae6e9f", @@ -4896,36 +4888,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 50, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 50, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 20, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 20, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant relaxed", "presetssetversion": "612b6cd5-2d39-45ab-9ddd-2106dcae6e9f", @@ -4938,36 +4929,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 120, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 120, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 15, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 15, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive strict", "presetssetversion": "612b6cd5-2d39-45ab-9ddd-2106dcae6e9f", @@ -4980,36 +4970,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 0, - "homozygous": 20, + "max_af": 0.01, + "max_hemi": None, + "max_het": 0, + "max_hom": 20, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 150, - "homozygous": 4, + "max_af": 0.01, + "max_hemi": None, + "max_het": 150, + "max_hom": 4, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive relaxed", "presetssetversion": "612b6cd5-2d39-45ab-9ddd-2106dcae6e9f", @@ -5022,36 +5011,35 @@ "description": None, "gnomad_exomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, "gnomad_genomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": False, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "any", "presetssetversion": "612b6cd5-2d39-45ab-9ddd-2106dcae6e9f", @@ -7469,36 +7457,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": None, + "max_het": None, + "max_hom": None, }, "label": "dominant super strict", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -7511,36 +7498,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant strict", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -7553,36 +7539,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 50, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 50, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 20, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 20, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant relaxed", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -7595,36 +7580,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 120, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 120, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 15, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 15, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive strict", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -7637,36 +7621,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 0, - "homozygous": 20, + "max_af": 0.01, + "max_hemi": None, + "max_het": 0, + "max_hom": 20, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 150, - "homozygous": 4, + "max_af": 0.01, + "max_hemi": None, + "max_het": 150, + "max_hom": 4, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive relaxed", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -7679,36 +7662,35 @@ "description": None, "gnomad_exomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, "gnomad_genomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": False, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "any", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", diff --git a/backend/seqvars/tests/snapshots/snap_test_models.py b/backend/seqvars/tests/snapshots/snap_test_models.py index 5f534f16b..ea43147da 100644 --- a/backend/seqvars/tests/snapshots/snap_test_models.py +++ b/backend/seqvars/tests/snapshots/snap_test_models.py @@ -41,40 +41,39 @@ snapshots["TestSeqvarsQuerySettingsFrequency::test_from_presets gnomad_exomes"] = { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, } snapshots["TestSeqvarsQuerySettingsFrequency::test_from_presets gnomad_genomes"] = { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, } -snapshots["TestSeqvarsQuerySettingsFrequency::test_from_presets gnomad_mitochondrial"] = { +snapshots["TestSeqvarsQuerySettingsFrequency::test_from_presets gnomad_mtdna"] = { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, } snapshots["TestSeqvarsQuerySettingsFrequency::test_from_presets helixmtdb"] = { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, } snapshots["TestSeqvarsQuerySettingsFrequency::test_from_presets inhouse"] = { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": None, + "max_het": None, + "max_hom": None, } snapshots["TestSeqvarsQuerySettingsGenotype::test_from_presets_0_any sample_genotype_choices"] = [ diff --git a/backend/seqvars/tests/snapshots/snap_test_views_api.py b/backend/seqvars/tests/snapshots/snap_test_views_api.py index 6b1a7e752..d4183fb06 100644 --- a/backend/seqvars/tests/snapshots/snap_test_views_api.py +++ b/backend/seqvars/tests/snapshots/snap_test_views_api.py @@ -2187,36 +2187,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": None, + "max_het": None, + "max_hom": None, }, "label": "dominant super strict", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -2229,36 +2228,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.002, - "hemizygous": None, - "heterozygous": 1, - "homozygous": 0, + "max_af": 0.002, + "max_hemi": None, + "max_het": 1, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant strict", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -2271,36 +2269,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 50, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 50, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 20, - "homozygous": 0, + "max_af": 0.01, + "max_hemi": None, + "max_het": 20, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "dominant relaxed", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -2313,36 +2310,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 120, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 120, + "max_hom": 0, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.001, - "hemizygous": None, - "heterozygous": 15, - "homozygous": 0, + "max_af": 0.001, + "max_hemi": None, + "max_het": 15, + "max_hom": 0, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive strict", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -2355,36 +2351,35 @@ "description": None, "gnomad_exomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 0, - "homozygous": 20, + "max_af": 0.01, + "max_hemi": None, + "max_het": 0, + "max_hom": 20, }, "gnomad_genomes": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": 150, - "homozygous": 4, + "max_af": 0.01, + "max_hemi": None, + "max_het": 150, + "max_hom": 4, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": True, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "recessive relaxed", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", @@ -2397,36 +2392,35 @@ "description": None, "gnomad_exomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, "gnomad_genomes": { "enabled": False, - "frequency": None, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_af": None, + "max_hemi": None, + "max_het": None, + "max_hom": None, }, - "gnomad_mitochondrial": { + "gnomad_mtdna": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "helixmtdb": { "enabled": False, - "frequency": None, - "heteroplasmic": None, - "homoplasmic": None, + "max_af": None, + "max_het": None, + "max_hom": None, }, "inhouse": { "enabled": False, - "frequency": 0.01, - "hemizygous": None, - "heterozygous": None, - "homozygous": None, + "max_carriers": 20, + "max_het": None, + "max_hom": None, }, "label": "any", "presetssetversion": "5eb04521-7668-4387-b59b-a79924d8cea5", diff --git a/backend/seqvars/tests/test_models.py b/backend/seqvars/tests/test_models.py index 336e89a4b..a52458e74 100644 --- a/backend/seqvars/tests/test_models.py +++ b/backend/seqvars/tests/test_models.py @@ -445,7 +445,7 @@ def test_from_presets(self): for key in ( "gnomad_exomes", "gnomad_genomes", - "gnomad_mitochondrial", + "gnomad_mtdna", "helixmtdb", "inhouse", ): diff --git a/backend/seqvars/tests/test_serializers.py b/backend/seqvars/tests/test_serializers.py index 3786e0ac3..de263e92c 100644 --- a/backend/seqvars/tests/test_serializers.py +++ b/backend/seqvars/tests/test_serializers.py @@ -231,7 +231,7 @@ def test_serialize_existing(self): # FrequencySettingsBase "gnomad_exomes", "gnomad_genomes", - "gnomad_mitochondrial", + "gnomad_mtdna", "helixmtdb", "inhouse", ] @@ -246,7 +246,7 @@ def test_serialize_existing(self): for key in [ "gnomad_exomes", "gnomad_genomes", - "gnomad_mitochondrial", + "gnomad_mtdna", "helixmtdb", "inhouse", ]: @@ -1239,7 +1239,7 @@ def test_serialize_existing(self): # FrequencySettingsBase "gnomad_exomes", "gnomad_genomes", - "gnomad_mitochondrial", + "gnomad_mtdna", "helixmtdb", "inhouse", ] @@ -1252,7 +1252,7 @@ def test_serialize_existing(self): for key in [ "gnomad_exomes", "gnomad_genomes", - "gnomad_mitochondrial", + "gnomad_mtdna", "helixmtdb", "inhouse", ]: diff --git a/backend/seqvars/tests/test_views_api.py b/backend/seqvars/tests/test_views_api.py index 64686877c..be4049fd9 100644 --- a/backend/seqvars/tests/test_views_api.py +++ b/backend/seqvars/tests/test_views_api.py @@ -1950,7 +1950,7 @@ def test_patch(self, data: dict[str, Any]): # noqa: C901 data["settings"][key] = { "gnomad_genomes": {}, "gnomad_exomes": {}, - "gnomad_mitochondrial": {}, + "gnomad_mtdna": {}, "helixmtdb": {}, } else: diff --git a/backend/varfish/tests/drf_openapi_schema/varfish_api_schema.yaml b/backend/varfish/tests/drf_openapi_schema/varfish_api_schema.yaml index 109c911ae..0e013779e 100644 --- a/backend/varfish/tests/drf_openapi_schema/varfish_api_schema.yaml +++ b/backend/varfish/tests/drf_openapi_schema/varfish_api_schema.yaml @@ -7722,12 +7722,12 @@ components: start: title: Start type: integer - end: - title: End + stop: + title: Stop type: integer required: - start - - end + - stop title: OneBasedRangePydantic type: object PaginatedCaseAnalysisList: @@ -8399,169 +8399,181 @@ components: properties: gnomad_exomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true gnomad_genomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true - gnomad_mitochondrial: + gnomad_mtdna: oneOf: - - description: Settings for gnomAD mitochondrial frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadMitochondrialFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true helixmtdb: oneOf: - - description: Settings for HelixMtDb frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: HelixmtDbFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true inhouse: oneOf: - - description: Settings for in-house frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: InhouseFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true @@ -10020,7 +10032,7 @@ components: title: SeqvarsDbIdsPydantic type: object SeqvarsFrequencyAnnotationPydantic: - description: SPopulation frequency information + description: Population frequency information properties: gnomad_exomes: anyOf: @@ -10034,12 +10046,12 @@ components: default: null gnomad_mtdna: anyOf: - - $ref: '#/components/schemas/SeqvarsGnomadMitochondrialFrequencyPydantic' + - $ref: '#/components/schemas/SeqvarsMitochondrialFrequencyPydantic' - type: 'null' default: null helixmtdb: anyOf: - - $ref: '#/components/schemas/SeqvarsHelixMtDbFrequencyPydantic' + - $ref: '#/components/schemas/SeqvarsMitochondrialFrequencyPydantic' - type: 'null' default: null inhouse: @@ -10077,8 +10089,8 @@ components: - affected_carriers title: SeqvarsGenotypePresetChoice type: string - SeqvarsGnomadMitochondrialFrequencyPydantic: - description: Store gnomAD mitochondrial frequency information. + SeqvarsMitochondrialFrequencyPydantic: + description: Store mitochondrial frequency information. properties: an: default: 0 @@ -10096,82 +10108,34 @@ components: default: 0.0 title: Af type: number - title: SeqvarsGnomadMitochondrialFrequencyPydantic + title: SeqvarsMitochondrialFrequencyPydantic type: object - SeqvarsGnomadMitochondrialFrequencySettingsPydantic: - description: gnomAD mitochondrial filter options. + SeqvarsMitochondrialFrequencySettingsPydantic: + description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: SeqvarsGnomadMitochondrialFrequencySettingsPydantic - type: object - SeqvarsHelixMtDbFrequencyPydantic: - description: Store HelixMtDb frequency information. - properties: - an: - default: 0 - title: An - type: integer - het: - default: 0 - title: Het - type: integer - homalt: - default: 0 - title: Homalt - type: integer - af: - default: 0.0 - title: Af - type: number - title: SeqvarsHelixMtDbFrequencyPydantic - type: object - SeqvarsHelixMtDbFrequencySettingsPydantic: - description: HelixMtDb filter options. - properties: - enabled: - default: false - title: Enabled - type: boolean - heteroplasmic: - anyOf: - - type: integer - - type: 'null' - default: null - title: Heteroplasmic - homoplasmic: - anyOf: - - type: integer - - type: 'null' - default: null - title: Homoplasmic - frequency: - anyOf: - - type: number - - type: 'null' - default: null - title: Frequency - title: SeqvarsHelixMtDbFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object SeqvarsModeOfInheritance: description: Mode of inheritance gene annotation. @@ -10185,7 +10149,13 @@ components: title: SeqvarsModeOfInheritance type: string SeqvarsNuclearFrequencyPydantic: - description: Store gnomAD and in-house nuclear frequency information. + description: |- + Store nuclear frequency information. + + This is also used for for storing chrMT frequencies in the case of in-house + data. Here, the ``an`` field is the total number of samples with coverage, + and the ``het`` and ``homalt`` fields are the number of heteroplasmic and + homoplasmic carriers, respectively. properties: an: default: 0 @@ -10210,36 +10180,40 @@ components: title: SeqvarsNuclearFrequencyPydantic type: object SeqvarsNuclearFrequencySettingsPydantic: - description: gnomAD and in-house nuclear filter options. + description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency + title: Max Af title: SeqvarsNuclearFrequencySettingsPydantic type: object SeqvarsOutputStatisticsPydantic: @@ -10894,169 +10868,181 @@ components: properties: gnomad_exomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true gnomad_genomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true - gnomad_mitochondrial: + gnomad_mtdna: oneOf: - - description: Settings for gnomAD mitochondrial frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadMitochondrialFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true helixmtdb: oneOf: - - description: Settings for HelixMtDb frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: HelixmtDbFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true inhouse: oneOf: - - description: Settings for in-house frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: InhouseFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true @@ -11100,169 +11086,181 @@ components: properties: gnomad_exomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true gnomad_genomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true - gnomad_mitochondrial: + gnomad_mtdna: oneOf: - - description: Settings for gnomAD mitochondrial frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadMitochondrialFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true helixmtdb: oneOf: - - description: Settings for HelixMtDb frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: HelixmtDbFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true inhouse: oneOf: - - description: Settings for in-house frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: InhouseFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true @@ -12393,169 +12391,181 @@ components: properties: gnomad_exomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true gnomad_genomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true - gnomad_mitochondrial: + gnomad_mtdna: oneOf: - - description: Settings for gnomAD mitochondrial frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadMitochondrialFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true helixmtdb: oneOf: - - description: Settings for HelixMtDb frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: HelixmtDbFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true inhouse: oneOf: - - description: Settings for in-house frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: InhouseFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true @@ -12595,12 +12605,12 @@ components: default: null gnomad_mtdna: anyOf: - - $ref: '#/components/schemas/SeqvarsGnomadMitochondrialFrequencySettingsPydantic' + - $ref: '#/components/schemas/SeqvarsMitochondrialFrequencySettingsPydantic' - type: 'null' default: null helixmtdb: anyOf: - - $ref: '#/components/schemas/SeqvarsHelixMtDbFrequencySettingsPydantic' + - $ref: '#/components/schemas/SeqvarsMitochondrialFrequencySettingsPydantic' - type: 'null' default: null inhouse: @@ -12616,169 +12626,181 @@ components: properties: gnomad_exomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true gnomad_genomes: oneOf: - - description: Settings for gnomAD nuclear frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadNuclearFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true - gnomad_mitochondrial: + gnomad_mtdna: oneOf: - - description: Settings for gnomAD mitochondrial frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: GnomadMitochondrialFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true helixmtdb: oneOf: - - description: Settings for HelixMtDb frequency filtering. + - description: Settings for mitochondrial frequency filtering. properties: enabled: default: false title: Enabled type: boolean - heteroplasmic: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heteroplasmic - homoplasmic: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homoplasmic - frequency: + title: Max Hom + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: HelixmtDbFrequencySettingsPydantic + title: Max Af + title: SeqvarsMitochondrialFrequencySettingsPydantic type: object - type: 'null' nullable: true inhouse: oneOf: - - description: Settings for in-house frequency filtering. + - description: |- + Settings for nuclear frequency filtering. + + This can also be used for in-house filters where max_het/max_hom then refer + to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. properties: enabled: default: false title: Enabled type: boolean - heterozygous: + max_het: anyOf: - type: integer - type: 'null' default: null - title: Heterozygous - homozygous: + title: Max Het + max_hom: anyOf: - type: integer - type: 'null' default: null - title: Homozygous - hemizygous: + title: Max Hom + max_hemi: anyOf: - type: integer - type: 'null' default: null - title: Hemizygous - frequency: + title: Max Hemi + max_af: anyOf: - type: number - type: 'null' default: null - title: Frequency - title: InhouseFrequencySettingsPydantic + title: Max Af + title: SeqvarsNuclearFrequencySettingsPydantic type: object - type: 'null' nullable: true diff --git a/frontend/ext/varfish-api/src/lib/schemas.gen.ts b/frontend/ext/varfish-api/src/lib/schemas.gen.ts index 14254b2f8..a43b6cd16 100644 --- a/frontend/ext/varfish-api/src/lib/schemas.gen.ts +++ b/frontend/ext/varfish-api/src/lib/schemas.gen.ts @@ -2905,12 +2905,12 @@ export const $OneBasedRangePydantic = { title: 'Start', type: 'integer' }, - end: { - title: 'End', + stop: { + title: 'Stop', type: 'integer' } }, - required: ['start', 'end'], + required: ['start', 'stop'], title: 'OneBasedRangePydantic', type: 'object' } as const; @@ -3839,14 +3839,17 @@ Not used directly but used as base class.`, gnomad_exomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -3856,9 +3859,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -3868,9 +3871,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -3880,9 +3883,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -3892,10 +3895,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -3907,14 +3910,17 @@ Not used directly but used as base class.`, gnomad_genomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -3924,9 +3930,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -3936,9 +3942,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -3948,9 +3954,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -3960,10 +3966,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -3972,17 +3978,17 @@ Not used directly but used as base class.`, ], nullable: true }, - gnomad_mitochondrial: { + gnomad_mtdna: { oneOf: [ { - description: 'Settings for gnomAD mitochondrial frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -3992,9 +3998,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -4004,9 +4010,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -4016,10 +4022,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadMitochondrialFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -4031,14 +4037,14 @@ Not used directly but used as base class.`, helixmtdb: { oneOf: [ { - description: 'Settings for HelixMtDb frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -4048,9 +4054,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -4060,9 +4066,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -4072,10 +4078,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'HelixmtDbFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -4087,14 +4093,17 @@ Not used directly but used as base class.`, inhouse: { oneOf: [ { - description: 'Settings for in-house frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -4104,9 +4113,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -4116,9 +4125,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -4128,9 +4137,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -4140,10 +4149,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'InhouseFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -5999,7 +6008,7 @@ export const $SeqvarsDbIdsPydantic = { } as const; export const $SeqvarsFrequencyAnnotationPydantic = { - description: 'SPopulation frequency information', + description: 'Population frequency information', properties: { gnomad_exomes: { anyOf: [ @@ -6026,7 +6035,7 @@ export const $SeqvarsFrequencyAnnotationPydantic = { gnomad_mtdna: { anyOf: [ { - '$ref': '#/components/schemas/SeqvarsGnomadMitochondrialFrequencyPydantic' + '$ref': '#/components/schemas/SeqvarsMitochondrialFrequencyPydantic' }, { type: 'null' @@ -6037,7 +6046,7 @@ export const $SeqvarsFrequencyAnnotationPydantic = { helixmtdb: { anyOf: [ { - '$ref': '#/components/schemas/SeqvarsHelixMtDbFrequencyPydantic' + '$ref': '#/components/schemas/SeqvarsMitochondrialFrequencyPydantic' }, { type: 'null' @@ -6075,85 +6084,8 @@ export const $SeqvarsGenotypePresetChoice = { type: 'string' } as const; -export const $SeqvarsGnomadMitochondrialFrequencyPydantic = { - description: 'Store gnomAD mitochondrial frequency information.', - properties: { - an: { - default: 0, - title: 'An', - type: 'integer' - }, - het: { - default: 0, - title: 'Het', - type: 'integer' - }, - homalt: { - default: 0, - title: 'Homalt', - type: 'integer' - }, - af: { - default: 0, - title: 'Af', - type: 'number' - } - }, - title: 'SeqvarsGnomadMitochondrialFrequencyPydantic', - type: 'object' -} as const; - -export const $SeqvarsGnomadMitochondrialFrequencySettingsPydantic = { - description: 'gnomAD mitochondrial filter options.', - properties: { - enabled: { - default: false, - title: 'Enabled', - type: 'boolean' - }, - heteroplasmic: { - anyOf: [ - { - type: 'integer' - }, - { - type: 'null' - } - ], - default: null, - title: 'Heteroplasmic' - }, - homoplasmic: { - anyOf: [ - { - type: 'integer' - }, - { - type: 'null' - } - ], - default: null, - title: 'Homoplasmic' - }, - frequency: { - anyOf: [ - { - type: 'number' - }, - { - type: 'null' - } - ], - default: null, - title: 'Frequency' - } - }, - title: 'SeqvarsGnomadMitochondrialFrequencySettingsPydantic', - type: 'object' -} as const; - -export const $SeqvarsHelixMtDbFrequencyPydantic = { - description: 'Store HelixMtDb frequency information.', +export const $SeqvarsMitochondrialFrequencyPydantic = { + description: 'Store mitochondrial frequency information.', properties: { an: { default: 0, @@ -6176,19 +6108,19 @@ export const $SeqvarsHelixMtDbFrequencyPydantic = { type: 'number' } }, - title: 'SeqvarsHelixMtDbFrequencyPydantic', + title: 'SeqvarsMitochondrialFrequencyPydantic', type: 'object' } as const; -export const $SeqvarsHelixMtDbFrequencySettingsPydantic = { - description: 'HelixMtDb filter options.', +export const $SeqvarsMitochondrialFrequencySettingsPydantic = { + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -6198,9 +6130,9 @@ export const $SeqvarsHelixMtDbFrequencySettingsPydantic = { } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -6210,9 +6142,9 @@ export const $SeqvarsHelixMtDbFrequencySettingsPydantic = { } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -6222,10 +6154,10 @@ export const $SeqvarsHelixMtDbFrequencySettingsPydantic = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'SeqvarsHelixMtDbFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' } as const; @@ -6237,7 +6169,12 @@ export const $SeqvarsModeOfInheritance = { } as const; export const $SeqvarsNuclearFrequencyPydantic = { - description: 'Store gnomAD and in-house nuclear frequency information.', + description: `Store nuclear frequency information. + +This is also used for for storing chrMT frequencies in the case of in-house +data. Here, the \`\`an\`\` field is the total number of samples with coverage, +and the \`\`het\`\` and \`\`homalt\`\` fields are the number of heteroplasmic and +homoplasmic carriers, respectively.`, properties: { an: { default: 0, @@ -6270,14 +6207,17 @@ export const $SeqvarsNuclearFrequencyPydantic = { } as const; export const $SeqvarsNuclearFrequencySettingsPydantic = { - description: 'gnomAD and in-house nuclear filter options.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -6287,9 +6227,9 @@ export const $SeqvarsNuclearFrequencySettingsPydantic = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -6299,9 +6239,9 @@ export const $SeqvarsNuclearFrequencySettingsPydantic = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -6311,9 +6251,9 @@ export const $SeqvarsNuclearFrequencySettingsPydantic = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -6323,7 +6263,7 @@ export const $SeqvarsNuclearFrequencySettingsPydantic = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, title: 'SeqvarsNuclearFrequencySettingsPydantic', @@ -7107,14 +7047,17 @@ Not used directly but used as base class.`, gnomad_exomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -7124,9 +7067,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -7136,9 +7079,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -7148,9 +7091,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7160,10 +7103,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -7175,14 +7118,17 @@ Not used directly but used as base class.`, gnomad_genomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -7192,9 +7138,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -7204,9 +7150,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -7216,9 +7162,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7228,10 +7174,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -7240,17 +7186,17 @@ Not used directly but used as base class.`, ], nullable: true }, - gnomad_mitochondrial: { + gnomad_mtdna: { oneOf: [ { - description: 'Settings for gnomAD mitochondrial frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -7260,9 +7206,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -7272,9 +7218,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7284,10 +7230,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadMitochondrialFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -7299,14 +7245,14 @@ Not used directly but used as base class.`, helixmtdb: { oneOf: [ { - description: 'Settings for HelixMtDb frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -7316,9 +7262,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -7328,9 +7274,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7340,10 +7286,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'HelixmtDbFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -7355,14 +7301,17 @@ Not used directly but used as base class.`, inhouse: { oneOf: [ { - description: 'Settings for in-house frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -7372,9 +7321,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -7384,9 +7333,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -7396,9 +7345,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7408,10 +7357,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'InhouseFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -7465,14 +7414,17 @@ Not used directly but used as base class.`, gnomad_exomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -7482,9 +7434,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -7494,9 +7446,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -7506,9 +7458,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7518,10 +7470,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -7533,14 +7485,17 @@ Not used directly but used as base class.`, gnomad_genomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -7550,9 +7505,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -7562,9 +7517,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -7574,9 +7529,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7586,10 +7541,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -7598,17 +7553,17 @@ Not used directly but used as base class.`, ], nullable: true }, - gnomad_mitochondrial: { + gnomad_mtdna: { oneOf: [ { - description: 'Settings for gnomAD mitochondrial frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -7618,9 +7573,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -7630,9 +7585,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7642,10 +7597,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadMitochondrialFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -7657,14 +7612,14 @@ Not used directly but used as base class.`, helixmtdb: { oneOf: [ { - description: 'Settings for HelixMtDb frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -7674,9 +7629,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -7686,9 +7641,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7698,10 +7653,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'HelixmtDbFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -7713,14 +7668,17 @@ Not used directly but used as base class.`, inhouse: { oneOf: [ { - description: 'Settings for in-house frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -7730,9 +7688,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -7742,9 +7700,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -7754,9 +7712,9 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -7766,10 +7724,10 @@ Not used directly but used as base class.`, } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'InhouseFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -9154,14 +9112,17 @@ export const $SeqvarsQuerySettingsFrequency = { gnomad_exomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -9171,9 +9132,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -9183,9 +9144,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -9195,9 +9156,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9207,10 +9168,10 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -9222,14 +9183,17 @@ export const $SeqvarsQuerySettingsFrequency = { gnomad_genomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -9239,9 +9203,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -9251,9 +9215,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -9263,9 +9227,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9275,10 +9239,10 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -9287,17 +9251,17 @@ export const $SeqvarsQuerySettingsFrequency = { ], nullable: true }, - gnomad_mitochondrial: { + gnomad_mtdna: { oneOf: [ { - description: 'Settings for gnomAD mitochondrial frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -9307,9 +9271,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -9319,9 +9283,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9331,10 +9295,10 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadMitochondrialFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -9346,14 +9310,14 @@ export const $SeqvarsQuerySettingsFrequency = { helixmtdb: { oneOf: [ { - description: 'Settings for HelixMtDb frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -9363,9 +9327,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -9375,9 +9339,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9387,10 +9351,10 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'HelixmtDbFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -9402,14 +9366,17 @@ export const $SeqvarsQuerySettingsFrequency = { inhouse: { oneOf: [ { - description: 'Settings for in-house frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -9419,9 +9386,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -9431,9 +9398,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -9443,9 +9410,9 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9455,10 +9422,10 @@ export const $SeqvarsQuerySettingsFrequency = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'InhouseFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -9519,7 +9486,7 @@ export const $SeqvarsQuerySettingsFrequencyPydantic = { gnomad_mtdna: { anyOf: [ { - '$ref': '#/components/schemas/SeqvarsGnomadMitochondrialFrequencySettingsPydantic' + '$ref': '#/components/schemas/SeqvarsMitochondrialFrequencySettingsPydantic' }, { type: 'null' @@ -9530,7 +9497,7 @@ export const $SeqvarsQuerySettingsFrequencyPydantic = { helixmtdb: { anyOf: [ { - '$ref': '#/components/schemas/SeqvarsHelixMtDbFrequencySettingsPydantic' + '$ref': '#/components/schemas/SeqvarsMitochondrialFrequencySettingsPydantic' }, { type: 'null' @@ -9561,14 +9528,17 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { gnomad_exomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -9578,9 +9548,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -9590,9 +9560,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -9602,9 +9572,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9614,10 +9584,10 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -9629,14 +9599,17 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { gnomad_genomes: { oneOf: [ { - description: 'Settings for gnomAD nuclear frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -9646,9 +9619,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -9658,9 +9631,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -9670,9 +9643,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9682,10 +9655,10 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadNuclearFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { @@ -9694,17 +9667,17 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { ], nullable: true }, - gnomad_mitochondrial: { + gnomad_mtdna: { oneOf: [ { - description: 'Settings for gnomAD mitochondrial frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -9714,9 +9687,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -9726,9 +9699,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9738,10 +9711,10 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'GnomadMitochondrialFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -9753,14 +9726,14 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { helixmtdb: { oneOf: [ { - description: 'Settings for HelixMtDb frequency filtering.', + description: 'Settings for mitochondrial frequency filtering.', properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heteroplasmic: { + max_het: { anyOf: [ { type: 'integer' @@ -9770,9 +9743,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Heteroplasmic' + title: 'Max Het' }, - homoplasmic: { + max_hom: { anyOf: [ { type: 'integer' @@ -9782,9 +9755,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Homoplasmic' + title: 'Max Hom' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9794,10 +9767,10 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'HelixmtDbFrequencySettingsPydantic', + title: 'SeqvarsMitochondrialFrequencySettingsPydantic', type: 'object' }, { @@ -9809,14 +9782,17 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { inhouse: { oneOf: [ { - description: 'Settings for in-house frequency filtering.', + description: `Settings for nuclear frequency filtering. + +This can also be used for in-house filters where max_het/max_hom then refer +to the maximal number of heteroplasmic/homoplasmic carriers on chrMT.`, properties: { enabled: { default: false, title: 'Enabled', type: 'boolean' }, - heterozygous: { + max_het: { anyOf: [ { type: 'integer' @@ -9826,9 +9802,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Heterozygous' + title: 'Max Het' }, - homozygous: { + max_hom: { anyOf: [ { type: 'integer' @@ -9838,9 +9814,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Homozygous' + title: 'Max Hom' }, - hemizygous: { + max_hemi: { anyOf: [ { type: 'integer' @@ -9850,9 +9826,9 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Hemizygous' + title: 'Max Hemi' }, - frequency: { + max_af: { anyOf: [ { type: 'number' @@ -9862,10 +9838,10 @@ export const $SeqvarsQuerySettingsFrequencyRequest = { } ], default: null, - title: 'Frequency' + title: 'Max Af' } }, - title: 'InhouseFrequencySettingsPydantic', + title: 'SeqvarsNuclearFrequencySettingsPydantic', type: 'object' }, { diff --git a/frontend/ext/varfish-api/src/lib/types.gen.ts b/frontend/ext/varfish-api/src/lib/types.gen.ts index afc577039..dfe2215ca 100644 --- a/frontend/ext/varfish-api/src/lib/types.gen.ts +++ b/frontend/ext/varfish-api/src/lib/types.gen.ts @@ -995,7 +995,7 @@ export type NullEnum = unknown; */ export type OneBasedRangePydantic = { start: number; - end: number; + stop: number; }; export type PaginatedCaseAnalysisList = { @@ -1317,36 +1317,36 @@ export type PatchedSeqvarsQueryPresetsConsequenceRequest = { export type PatchedSeqvarsQueryPresetsFrequencyRequest = { gnomad_exomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); gnomad_genomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); - gnomad_mitochondrial?: (({ + gnomad_mtdna?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); helixmtdb?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); inhouse?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); rank?: number; label?: string; @@ -1990,13 +1990,13 @@ export type SeqvarsDbIdsPydantic = { }; /** - * SPopulation frequency information + * Population frequency information */ export type SeqvarsFrequencyAnnotationPydantic = { gnomad_exomes?: (SeqvarsNuclearFrequencyPydantic | null); gnomad_genomes?: (SeqvarsNuclearFrequencyPydantic | null); - gnomad_mtdna?: (SeqvarsGnomadMitochondrialFrequencyPydantic | null); - helixmtdb?: (SeqvarsHelixMtDbFrequencyPydantic | null); + gnomad_mtdna?: (SeqvarsMitochondrialFrequencyPydantic | null); + helixmtdb?: (SeqvarsMitochondrialFrequencyPydantic | null); inhouse?: (SeqvarsNuclearFrequencyPydantic | null); }; @@ -2011,9 +2011,9 @@ export type SeqvarsGenotypeChoice = 'any' | 'ref' | 'het' | 'hom' | 'non_het' | export type SeqvarsGenotypePresetChoice = 'any' | 'de_novo' | 'dominant' | 'homozygous_recessive' | 'compound_heterozygous_recessive' | 'recessive' | 'x_recessive' | 'affected_carriers'; /** - * Store gnomAD mitochondrial frequency information. + * Store mitochondrial frequency information. */ -export type SeqvarsGnomadMitochondrialFrequencyPydantic = { +export type SeqvarsMitochondrialFrequencyPydantic = { an?: number; het?: number; homalt?: number; @@ -2021,33 +2021,13 @@ export type SeqvarsGnomadMitochondrialFrequencyPydantic = { }; /** - * gnomAD mitochondrial filter options. + * Settings for mitochondrial frequency filtering. */ -export type SeqvarsGnomadMitochondrialFrequencySettingsPydantic = { +export type SeqvarsMitochondrialFrequencySettingsPydantic = { enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); -}; - -/** - * Store HelixMtDb frequency information. - */ -export type SeqvarsHelixMtDbFrequencyPydantic = { - an?: number; - het?: number; - homalt?: number; - af?: number; -}; - -/** - * HelixMtDb filter options. - */ -export type SeqvarsHelixMtDbFrequencySettingsPydantic = { - enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); }; /** @@ -2056,7 +2036,12 @@ export type SeqvarsHelixMtDbFrequencySettingsPydantic = { export type SeqvarsModeOfInheritance = 'autosomal_dominant' | 'autosomal_recessive' | 'x_linked_dominant' | 'x_linked_recessive' | 'y_linked' | 'mitochondrial'; /** - * Store gnomAD and in-house nuclear frequency information. + * Store nuclear frequency information. + * + * This is also used for for storing chrMT frequencies in the case of in-house + * data. Here, the ``an`` field is the total number of samples with coverage, + * and the ``het`` and ``homalt`` fields are the number of heteroplasmic and + * homoplasmic carriers, respectively. */ export type SeqvarsNuclearFrequencyPydantic = { an?: number; @@ -2067,14 +2052,17 @@ export type SeqvarsNuclearFrequencyPydantic = { }; /** - * gnomAD and in-house nuclear filter options. + * Settings for nuclear frequency filtering. + * + * This can also be used for in-house filters where max_het/max_hom then refer + * to the maximal number of heteroplasmic/homoplasmic carriers on chrMT. */ export type SeqvarsNuclearFrequencySettingsPydantic = { enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); }; /** @@ -2334,36 +2322,36 @@ export type SeqvarsQueryPresetsConsequenceRequest = { export type SeqvarsQueryPresetsFrequency = { gnomad_exomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); gnomad_genomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); - gnomad_mitochondrial?: (({ + gnomad_mtdna?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); helixmtdb?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); inhouse?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); readonly sodar_uuid: string; readonly date_created: string; @@ -2382,36 +2370,36 @@ export type SeqvarsQueryPresetsFrequency = { export type SeqvarsQueryPresetsFrequencyRequest = { gnomad_exomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); gnomad_genomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); - gnomad_mitochondrial?: (({ + gnomad_mtdna?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); helixmtdb?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); inhouse?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); rank?: number; label: string; @@ -2854,36 +2842,36 @@ export type SeqvarsQuerySettingsDetailsRequest = { export type SeqvarsQuerySettingsFrequency = { gnomad_exomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); gnomad_genomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); - gnomad_mitochondrial?: (({ + gnomad_mtdna?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); helixmtdb?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); inhouse?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); readonly sodar_uuid: string; readonly date_created: string; @@ -2897,8 +2885,8 @@ export type SeqvarsQuerySettingsFrequency = { export type SeqvarsQuerySettingsFrequencyPydantic = { gnomad_exomes?: (SeqvarsNuclearFrequencySettingsPydantic | null); gnomad_genomes?: (SeqvarsNuclearFrequencySettingsPydantic | null); - gnomad_mtdna?: (SeqvarsGnomadMitochondrialFrequencySettingsPydantic | null); - helixmtdb?: (SeqvarsHelixMtDbFrequencySettingsPydantic | null); + gnomad_mtdna?: (SeqvarsMitochondrialFrequencySettingsPydantic | null); + helixmtdb?: (SeqvarsMitochondrialFrequencySettingsPydantic | null); inhouse?: (SeqvarsNuclearFrequencySettingsPydantic | null); }; @@ -2908,36 +2896,36 @@ export type SeqvarsQuerySettingsFrequencyPydantic = { export type SeqvarsQuerySettingsFrequencyRequest = { gnomad_exomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); gnomad_genomes?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); - gnomad_mitochondrial?: (({ + gnomad_mtdna?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); helixmtdb?: (({ enabled?: boolean; - heteroplasmic?: (number | null); - homoplasmic?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_af?: (number | null); } | null) | null); inhouse?: (({ enabled?: boolean; - heterozygous?: (number | null); - homozygous?: (number | null); - hemizygous?: (number | null); - frequency?: (number | null); + max_het?: (number | null); + max_hom?: (number | null); + max_hemi?: (number | null); + max_af?: (number | null); } | null) | null); }; diff --git a/frontend/src/seqvars/components/PresetsEditor/CategoryPresetsFrequencyEditor.vue b/frontend/src/seqvars/components/PresetsEditor/CategoryPresetsFrequencyEditor.vue index c60569df4..bea124df6 100644 --- a/frontend/src/seqvars/components/PresetsEditor/CategoryPresetsFrequencyEditor.vue +++ b/frontend/src/seqvars/components/PresetsEditor/CategoryPresetsFrequencyEditor.vue @@ -9,7 +9,7 @@ import { PresetSetVersionState } from '@/seqvars/stores/presets/types' import { SnackbarMessage } from '@/seqvars/views/PresetSets/lib' import { CATEGORY_PRESETS_DEBOUNCE_WAIT } from './lib' -import { GnomadFreqs, InhouseFreqs, MitochondrialFreqs } from './types' +import { InhouseFreqs, MitochondrialFreqs, NuclearFreqs } from './types' /** This component's props. */ const props = withDefaults( @@ -94,16 +94,16 @@ const fillData = () => { } /** Helper for guarding against undefined `data.value` for `gnomadExomes`. */ -const gnomadExomes = computed( - () => data.value?.gnomad_exomes ?? ({} as GnomadFreqs), +const gnomadExomes = computed( + () => data.value?.gnomad_exomes ?? ({} as NuclearFreqs), ) /** Helper for guarding against undefined `data.value` for `gnomadGenomes`. */ -const gnomadGenomes = computed( - () => data.value?.gnomad_genomes ?? ({} as GnomadFreqs), +const gnomadGenomes = computed( + () => data.value?.gnomad_genomes ?? ({} as NuclearFreqs), ) /** Helper for guarding against undefined `data.value` for `gnomadMitochondrial`. */ const gnomadMitochondrial = computed( - () => data.value?.gnomad_mitochondrial ?? ({} as MitochondrialFreqs), + () => data.value?.gnomad_mtdna ?? ({} as MitochondrialFreqs), ) /** Helper for guarding against undefined `data.value` for `helixMtDb`. */ const helixMtDb = computed( @@ -284,7 +284,7 @@ watch(data, () => updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) N/A updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) N/A updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) updateFrequencyPresetsDebounced(), { deep: true }) { : `chr${genomeRegion.chromosome}` if (genomeRegion.range) { const start = formatLargeInt(genomeRegion.range.start) - const end = formatLargeInt(genomeRegion.range.end) - return `${chromStr}:${start}-${end}` + const stop = formatLargeInt(genomeRegion.range.stop) + return `${chromStr}:${start}-${stop}` } else { return chromStr } @@ -137,15 +137,15 @@ export const parseGenomeRegion = (text: string): GenomeRegion => { range = range.replace(/,/g, '') // Split by hyphen and convert to number. const rangeArr = range.split('-').map((x) => parseInt(x, 10)) - const [start, end] = rangeArr + const [start, stop] = rangeArr // Check whether conversion was successful. - if (isNaN(start) || isNaN(end)) { + if (isNaN(start) || isNaN(stop)) { throw new Error('Invalid range: NaN found') } // Check that start is not greater than end. - if (start > end) { + if (start > stop) { throw new Error('Invalid range: start greater than end') } // Otherwise, we are good. - return { chromosome, range: { start, end } } + return { chromosome, range: { start, stop } } } diff --git a/frontend/src/seqvars/components/PresetsEditor/types.ts b/frontend/src/seqvars/components/PresetsEditor/types.ts index 78ac8b1a3..fb233e769 100644 --- a/frontend/src/seqvars/components/PresetsEditor/types.ts +++ b/frontend/src/seqvars/components/PresetsEditor/types.ts @@ -1,31 +1,31 @@ /** - * Frequency thresholds for gnomAD nuclear as returned from API. + * Frequency thresholds for nuclear variant frequencies as returned from API. */ -export interface GnomadFreqs { +export interface NuclearFreqs { enabled?: boolean - homozygous?: number | null - heterozygous?: number | null - hemizygous?: number | null - frequency?: number | null + max_hom?: number | null + max_het?: number | null + max_hemi?: number | null + max_af?: number | null } /** - * Frequency thresholds for mitochondrial variants as returned from API. + * Frequency thresholds for mitochondrial frequencies as returned from API. */ export interface MitochondrialFreqs { enabled?: boolean - heteroplasmic?: number | null - homoplasmic?: number | null - frequency?: number | null + max_het?: number | null + max_hom?: number | null + max_af?: number | null } /** - * Frequency thresholds for in-house data as returned from API. + * Frequency thresholds for inhouse frequencies as returned from API. */ export interface InhouseFreqs { enabled?: boolean - homozygous?: number | null - heterozygous?: number | null - hemizygous?: number | null - carriers?: number | null + max_het?: number | null + max_hom?: number | null + max_hemi?: number | null + max_carriers?: number | null } diff --git a/frontend/src/seqvars/components/QueryEditor/FrequencyControls.vue b/frontend/src/seqvars/components/QueryEditor/FrequencyControls.vue index ac22f7939..140dd1951 100644 --- a/frontend/src/seqvars/components/QueryEditor/FrequencyControls.vue +++ b/frontend/src/seqvars/components/QueryEditor/FrequencyControls.vue @@ -36,7 +36,7 @@ interface DbInfo { const DB_INFOS = [ { label: 'gnomAD exomes', db: 'gnomad_exomes', size: 16 }, { label: 'gnomAD genomes', db: 'gnomad_genomes', size: 126 }, - { label: 'gnomAD mitochondrial', db: 'gnomad_mitochondrial', size: 56 }, + { label: 'gnomAD mitochondrial', db: 'gnomad_mtdna', size: 56 }, { label: 'HelixMTdb', db: 'helixmtdb', size: 197 }, { label: 'in-house DB', db: 'inhouse', size: undefined }, ] as const satisfies DbInfo[] diff --git a/frontend/src/seqvars/components/QueryEditor/FrequencyControlsRow.vue b/frontend/src/seqvars/components/QueryEditor/FrequencyControlsRow.vue index 87b5dbd31..0b7f02b27 100644 --- a/frontend/src/seqvars/components/QueryEditor/FrequencyControlsRow.vue +++ b/frontend/src/seqvars/components/QueryEditor/FrequencyControlsRow.vue @@ -31,9 +31,9 @@ const props = defineProps<{ }>() /** Values of mitochondrial counts. */ -const MITOCHONDRIAL_ATTRS = ['homoplasmic', 'heteroplasmic'] as const +const MITOCHONDRIAL_ATTRS = ['max_hom', 'max_het'] as const /** Values of nuclear counts. */ -const NUCLEAR_ATTRS = ['homozygous', 'heterozygous', 'hemizygous'] as const +const NUCLEAR_ATTRS = ['max_hom', 'max_het', 'max_hemi'] as const /** * Mutation for updating a seqvar query. @@ -104,10 +104,10 @@ const applyMutation = async ( { applyMutation({ ...modelValue.settings.frequency[db], - frequency: value === null ? null : Number(value) / 100.0, + max_af: value === null ? null : Number(value) / 100.0, }) } " @@ -126,7 +126,7 @@ const applyMutation = async ( -