diff --git a/src/app/features/genes/components/gene-hero/gene-hero.component.html b/src/app/features/genes/components/gene-hero/gene-hero.component.html index 81728ab3..fdd55361 100644 --- a/src/app/features/genes/components/gene-hero/gene-hero.component.html +++ b/src/app/features/genes/components/gene-hero/gene-hero.component.html @@ -14,11 +14,11 @@

{{ getSummary() }}

- +

Biological Domains

-

+

{{ getBiodomains() }}

@@ -29,22 +29,28 @@

Pharos Class

Also known as

-

+

{{ gene.ensembl_gene_id }} (Ensembl Release {{ gene.ensembl_info.ensembl_release }})

- +

{{ gene.ensembl_gene_id }} - -

+

+

Possible replacement values: {{ gene.ensembl_info.ensembl_possible_replacements.join(', ')}}

-

- {{ getAlias() }} +

+ UNIPROTKB + + {{ accession }}, + +

+

+ {{ getAliases() }}

diff --git a/src/app/features/genes/components/gene-hero/gene-hero.component.scss b/src/app/features/genes/components/gene-hero/gene-hero.component.scss index 332c004f..579aee65 100644 --- a/src/app/features/genes/components/gene-hero/gene-hero.component.scss +++ b/src/app/features/genes/components/gene-hero/gene-hero.component.scss @@ -64,6 +64,10 @@ hr { margin-bottom: 15px; } +.aliases { + margin: 0 0 0 10px; +} + .possible-replacements { margin-bottom: 15px; } \ No newline at end of file diff --git a/src/app/features/genes/components/gene-hero/gene-hero.component.ts b/src/app/features/genes/components/gene-hero/gene-hero.component.ts index dd47d840..8d56fabb 100644 --- a/src/app/features/genes/components/gene-hero/gene-hero.component.ts +++ b/src/app/features/genes/components/gene-hero/gene-hero.component.ts @@ -85,13 +85,20 @@ export class GeneHeroComponent { } } - getAlias(): string { + getAliases(): string { if (this.gene?.alias && this.gene.alias.length > 0) { return this.gene.alias.join(', '); } return ''; } + getUniProtKBLink(uniProtId: string) { + if (uniProtId) { + return `https://www.uniprot.org/uniprotkb/${uniProtId}/entry`; + } + return ''; + } + getBiodomains(): string { if (!this.gene || !this.gene.bio_domains) return ''; diff --git a/src/app/models/genes.ts b/src/app/models/genes.ts index 6f8e5939..f153a8a5 100644 --- a/src/app/models/genes.ts +++ b/src/app/models/genes.ts @@ -55,6 +55,7 @@ export interface Gene { summary: string; hgnc_symbol: string; alias: string[]; + uniprotkb_accessions: string[]; is_igap: boolean; is_eqtl: boolean; is_any_rna_changed_in_ad_brain: boolean; diff --git a/src/app/testing/gene-mocks.ts b/src/app/testing/gene-mocks.ts index c26bdea0..3ba576d3 100644 --- a/src/app/testing/gene-mocks.ts +++ b/src/app/testing/gene-mocks.ts @@ -28,6 +28,7 @@ export const geneMock1: Gene = { 'Moesin (for membrane-organizing extension spike protein) is a member of the ERM family which includes ezrin and radixin. ERM proteins appear to function as cross-linkers between plasma membranes and actin-based cytoskeletons. Moesin is localized to filopodia and other membranous protrusions that are important for cell-cell recognition and signaling and for cell movement. [provided by RefSeq, Jul 2008].', hgnc_symbol: 'MSN', alias: ['HEL70', 'IMD50'], + uniprotkb_accessions: [], is_igap: false, is_eqtl: false, is_any_rna_changed_in_ad_brain: true, @@ -2986,6 +2987,7 @@ export const geneMock2: Gene = { 'PLEC1b', 'PLTN', ], + uniprotkb_accessions: [], is_igap: false, is_eqtl: true, is_any_rna_changed_in_ad_brain: true, @@ -3164,6 +3166,7 @@ export const geneMock3: Gene = { 'p59Hck', 'p61Hck', ], + uniprotkb_accessions: [], is_igap: false, is_eqtl: true, is_any_rna_changed_in_ad_brain: true, @@ -3372,6 +3375,7 @@ export const nominatedGeneMock1: Gene = { summary: '', hgnc_symbol: 'MSN', alias: [], + uniprotkb_accessions: [], is_igap: false, is_eqtl: false, is_any_rna_changed_in_ad_brain: false, @@ -3469,6 +3473,7 @@ export const noHGNCgeneMock: Gene = { summary: '', hgnc_symbol: '', alias: [], + uniprotkb_accessions: [], is_igap: false, is_eqtl: false, is_any_rna_changed_in_ad_brain: false, diff --git a/src/server/models/genes.ts b/src/server/models/genes.ts index a4fe82b2..aea8b9e3 100644 --- a/src/server/models/genes.ts +++ b/src/server/models/genes.ts @@ -67,6 +67,7 @@ const GeneSchema = new Schema( summary: { type: String, required: true }, hgnc_symbol: { type: String, required: true }, alias: [{ type: String, required: true }], + uniprotkb_accessions: [{ type: String, required: true }], is_igap: { type: Boolean, required: true }, is_eqtl: { type: Boolean, required: true }, is_any_rna_changed_in_ad_brain: { type: Boolean, required: true },