Skip to content

Commit b0b5bd4

Browse files
committed
feat: enhance mapped HGVS retrieval in variant_to_csv_row to fallback on VRS if populated HGVS is not available
1 parent 0c981c2 commit b0b5bd4

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

src/mavedb/lib/score_sets.py

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
from mavedb.lib.mave.utils import is_csv_null
2626
from mavedb.lib.validation.constants.general import null_values_list
2727
from mavedb.lib.validation.utilities import is_null as validate_is_null
28-
from mavedb.lib.variants import get_digest_from_post_mapped
28+
from mavedb.lib.variants import get_digest_from_post_mapped, get_hgvs_from_post_mapped, is_hgvs_g, is_hgvs_p
2929
from mavedb.models.contributor import Contributor
3030
from mavedb.models.controlled_keyword import ControlledKeyword
3131
from mavedb.models.doi_identifier import DoiIdentifier
@@ -782,8 +782,26 @@ def variant_to_csv_row(
782782
for column_key in columns.get("mavedb", []):
783783
if column_key == "post_mapped_hgvs_g":
784784
value = str(mapping.hgvs_g) if mapping and mapping.hgvs_g else na_rep
785+
if value == na_rep:
786+
fallback_hgvs = (
787+
get_hgvs_from_post_mapped(mapping.post_mapped) if mapping and mapping.post_mapped else None
788+
)
789+
if fallback_hgvs is not None and is_hgvs_g(fallback_hgvs):
790+
value = fallback_hgvs
791+
else:
792+
value = na_rep
793+
785794
elif column_key == "post_mapped_hgvs_p":
786795
value = str(mapping.hgvs_p) if mapping and mapping.hgvs_p else na_rep
796+
if value == na_rep:
797+
fallback_hgvs = (
798+
get_hgvs_from_post_mapped(mapping.post_mapped) if mapping and mapping.post_mapped else None
799+
)
800+
if fallback_hgvs is not None and is_hgvs_p(fallback_hgvs):
801+
value = fallback_hgvs
802+
else:
803+
value = na_rep
804+
787805
elif column_key == "post_mapped_hgvs_c":
788806
value = str(mapping.hgvs_c) if mapping and mapping.hgvs_c else na_rep
789807
elif column_key == "post_mapped_hgvs_at_assay_level":

0 commit comments

Comments
 (0)