From 314808cb42c72cc52d386aa5152df39c2caf7351 Mon Sep 17 00:00:00 2001 From: Emilio Righi Date: Tue, 15 Oct 2024 14:42:50 +0200 Subject: [PATCH] generate chr_aliases on the fly --- .../components/genome-browser/Jbrowse2.vue | 14 +- .../components/ChromosomesTable.vue | 2 +- .../cms/annotation/components/FileForm.vue | 234 ++++++++++-------- server/parsers/chromosome.py | 1 - server/rest/assembly/assemblies_service.py | 7 +- 5 files changed, 140 insertions(+), 118 deletions(-) diff --git a/biogenome-client/src/components/genome-browser/Jbrowse2.vue b/biogenome-client/src/components/genome-browser/Jbrowse2.vue index 945483ea..18aa64e9 100644 --- a/biogenome-client/src/components/genome-browser/Jbrowse2.vue +++ b/biogenome-client/src/components/genome-browser/Jbrowse2.vue @@ -53,14 +53,12 @@ function parseAssembly(assembly: Assembly, chromosomes: ChromosomeInterface[]) { }, }, } - if (assembly.has_chromosomes_aliases) { - assemblyAdapter.refNameAliases = { - adapter: { - type: "RefNameAliasAdapter", - location: { - uri: `${baseURL}/assemblies/${assembly.accession}/chr_aliases`, - locationType: "UriLocation" - } + assemblyAdapter.refNameAliases = { + adapter: { + type: "RefNameAliasAdapter", + location: { + uri: `${baseURL}/assemblies/${assembly.accession}/chr_aliases`, + locationType: "UriLocation" } } } diff --git a/biogenome-client/src/pages/assemblies/components/ChromosomesTable.vue b/biogenome-client/src/pages/assemblies/components/ChromosomesTable.vue index 17575f66..e391c1d1 100644 --- a/biogenome-client/src/pages/assemblies/components/ChromosomesTable.vue +++ b/biogenome-client/src/pages/assemblies/components/ChromosomesTable.vue @@ -29,7 +29,7 @@ import { useI18n } from 'vue-i18n' const { t } = useI18n() const props = defineProps<{ - items: Record + items: Record[] }>() \ No newline at end of file diff --git a/biogenome-client/src/pages/cms/annotation/components/FileForm.vue b/biogenome-client/src/pages/cms/annotation/components/FileForm.vue index 15a0939e..6c5e58a5 100644 --- a/biogenome-client/src/pages/cms/annotation/components/FileForm.vue +++ b/biogenome-client/src/pages/cms/annotation/components/FileForm.vue @@ -1,60 +1,65 @@ + \ No newline at end of file diff --git a/server/parsers/chromosome.py b/server/parsers/chromosome.py index 3c1d0c12..51d4ce1b 100644 --- a/server/parsers/chromosome.py +++ b/server/parsers/chromosome.py @@ -1,7 +1,6 @@ from db.models import Chromosome def parse_chromosomes_from_ncbi_datasets(sequences): - ##filter out scaffolds chromosomes_to_save=[] for sequence in sequences: if sequence.get('role') == 'assembled-molecule': diff --git a/server/rest/assembly/assemblies_service.py b/server/rest/assembly/assemblies_service.py index c800f876..050f0f34 100644 --- a/server/rest/assembly/assemblies_service.py +++ b/server/rest/assembly/assemblies_service.py @@ -99,9 +99,12 @@ def get_chr_aliases_file(accession): # Assuming chromosomes is a list of dictionaries with fields 'name' and 'accession_version' for chromosome in chromosomes: - chr_name = chromosome.get('metadata', {}).get('name') + print(chromosome) + name = chromosome.get('metadata', {}).get('chr_name') + if not name: + name = chromosome.get('metadata', {}).get('name') accession_version = chromosome.get('accession_version') - tsv_data.write(f"{chr_name}\t{accession_version}\n") + tsv_data.write(f"{name}\t{accession_version}\n") tsv_data.seek(0) # Go back to the start of the StringIO object