@molgenis/vip-report-template 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/__tests__/query.test.ts +21 -1
- package/src/components/InfoCollapsablePane.tsx +2 -1
- package/src/components/record/info/Hgvs.tsx +1 -1
- package/src/mocks/GRCh37/vcf/family.vcf.blob +2 -2
- package/src/utils/ApiUtils.ts +10 -9
- package/src/utils/query.ts +14 -0
- package/src/views/SampleVariants.tsx +2 -2
package/package.json
CHANGED
|
@@ -4,6 +4,7 @@ import { Metadata } from "@molgenis/vip-report-vcf/src/Vcf";
|
|
|
4
4
|
import { FilterQueries } from "../store";
|
|
5
5
|
import {
|
|
6
6
|
createQuery,
|
|
7
|
+
createSampleQuery,
|
|
7
8
|
infoFieldKey,
|
|
8
9
|
infoSelector,
|
|
9
10
|
infoSortPath,
|
|
@@ -11,7 +12,7 @@ import {
|
|
|
11
12
|
sampleSelector,
|
|
12
13
|
selectorKey,
|
|
13
14
|
} from "../utils/query";
|
|
14
|
-
import { Person, QueryClause } from "@molgenis/vip-report-api/src/Api";
|
|
15
|
+
import { Item, Person, QueryClause, Sample } from "@molgenis/vip-report-api/src/Api";
|
|
15
16
|
|
|
16
17
|
describe("query utilities", () => {
|
|
17
18
|
let fieldMetaCsq: FieldMetadata = {
|
|
@@ -52,6 +53,25 @@ describe("query utilities", () => {
|
|
|
52
53
|
|
|
53
54
|
const meta: Metadata = { info: { CSQ: fieldMetaCsq } } as unknown as Metadata;
|
|
54
55
|
|
|
56
|
+
test("create sample query - filters", () => {
|
|
57
|
+
const sample = { data: { index: 1 } } as Item<Sample>;
|
|
58
|
+
const queryClause: QueryClause = { selector: ["s", 1, "GT", "t"], operator: "!=", args: "hom_r" };
|
|
59
|
+
const filterQueryClause: QueryClause = { selector: ["n", "CSQ", "*", 0], operator: "==", args: [0] };
|
|
60
|
+
const filterQueries: FilterQueries = {
|
|
61
|
+
"CSQ/field1": filterQueryClause,
|
|
62
|
+
};
|
|
63
|
+
expect(createSampleQuery(sample, undefined, filterQueries, meta)).toStrictEqual({
|
|
64
|
+
operator: "and",
|
|
65
|
+
args: [queryClause, filterQueryClause],
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
test("create sample query - undefined search and undefined filters", () => {
|
|
70
|
+
const sample = { data: { index: 1 } } as Item<Sample>;
|
|
71
|
+
const queryClause: QueryClause = { selector: ["s", 1, "GT", "t"], operator: "!=", args: "hom_r" };
|
|
72
|
+
expect(createSampleQuery(sample, undefined, undefined, meta)).toStrictEqual(queryClause);
|
|
73
|
+
});
|
|
74
|
+
|
|
55
75
|
test("create query", () => {
|
|
56
76
|
const searchText = "my search text";
|
|
57
77
|
const filterQueries: FilterQueries = {
|
|
@@ -22,7 +22,8 @@ export const InfoCollapsablePane: Component<{
|
|
|
22
22
|
const values = createMemo((): FieldValue[][] =>
|
|
23
23
|
props.fields.map((field) => {
|
|
24
24
|
if (field.parent) {
|
|
25
|
-
|
|
25
|
+
const values = (props.record.data.n[field.parent.id] || []) as ValueArray;
|
|
26
|
+
return values.map((nestedValues) => {
|
|
26
27
|
const value =
|
|
27
28
|
field.parent && field.parent.nested
|
|
28
29
|
? (nestedValues as ValueArray)[
|
|
@@ -11,7 +11,7 @@ function abbreviate(notation: string): string {
|
|
|
11
11
|
} else {
|
|
12
12
|
abbreviated = notation;
|
|
13
13
|
}
|
|
14
|
-
return abbreviated;
|
|
14
|
+
return abbreviated.length > 20 ? abbreviated.slice(0, 18) + "\u2026" : abbreviated;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
export const Hgvs: Component<FieldProps> = (props) => {
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
##contig=<ID=MT,length=16569,assembly=b37>
|
|
77
77
|
##fileDate=20200320
|
|
78
78
|
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT Patient Father Mother Sister Nephew Unrelated
|
|
79
|
-
1 10042538 . C T . PASS CSQ=T|missense_variant|MODERATE|NMNAT1|64802|Transcript|NM_001297778.1|protein_coding|5/5||NM_001297778.1:c.619C>
|
|
79
|
+
1 10042538 . C T . PASS CSQ=T|missense_variant|MODERATE|NMNAT1|64802|Transcript|NM_001297778.1|protein_coding|5/5||NM_001297778.1:c.619C>Tblablablablablabla|NP_001284707.1:p.Arg207Trp|778/3796|619/840|207/279|R/W|Cgg/Tgg|rs142968179&CM127756|1||1||1|EntrezGene|||||0.04|0.08||pathogenic||1&1|26103963&22842229&22842230|||||||0|-36|-16|17|0.00|0.00|0.00|0.00|NMNAT1|VUS|0.16572298|||AR|LP||||1:10042538-10042538|3.88948e-05|0|37133|Pathogenic||criteria_provided&_multiple_submitters&_no_conflicts|LP|filter&vkgl&exit_lp|,T|downstream_gene_variant|MODIFIER|NMNAT1|64802|Transcript|NM_001297779.2|protein_coding||||||||||rs142968179&CM127756|1|714|1|||EntrezGene||||||||pathogenic||1&1|26103963&22842229&22842230|||||||0|-36|-16|17|0.00|0.00|0.00|0.00|NMNAT1|VUS|0.033541594|||AR|LP||||1:10042538-10042538|3.88948e-05|0|37133|Pathogenic||criteria_provided&_multiple_submitters&_no_conflicts|LP|filter&vkgl&exit_lp|,T|missense_variant|MODERATE|NMNAT1|64802|Transcript|NM_022787.4|protein_coding|5/5||NM_022787.4:c.619C>T|NP_073624.2:p.Arg207Trp|716/3734|619/840|207/279|R/W|Cgg/Tgg|rs142968179&CM127756|1||1|||EntrezGene|||||0.04|0.08||pathogenic||1&1|26103963&22842229&22842230|||||||0|-36|-16|17|0.00|0.00|0.00|0.00|NMNAT1|VUS|0.14321531|||AR|LP||||1:10042538-10042538|3.88948e-05|0|37133|Pathogenic||criteria_provided&_multiple_submitters&_no_conflicts|LP|filter&vkgl&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM 1|1:0,50:50:AR:.:1:64802:1 0|0:50,0:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.
|
|
80
80
|
1 16375583 . GA G . PASS CSQ=-|intron_variant|MODIFIER|CLCNKB|1188|Transcript|NM_000085.5|protein_coding||7/19|NM_000085.5:c.656-31del|||||||rs751608665|1||1||1|EntrezGene||||||||uncertain_significance&pathogenic||1||||||||20|45|-14|-45|0.05|0.00|0.00|0.00|CLCNKB|VUS|0.032507|HP:0000951||AR|LP||||1:16375584-16375585|0.000548455|0|638508|Conflicting_interpretations_of_pathogenicity||criteria_provided&_conflicting_interpretations|LP|filter&vkgl&exit_lp|,-|frameshift_variant|HIGH|CLCNKB|1188|Transcript|NM_001165945.2|protein_coding|1/13||NM_001165945.2:c.118del|NP_001159417.2:p.Arg40GlyfsTer4|328/2174|118/1554|40/517|R/X|Agg/gg|rs751608665|1||1|||EntrezGene||||||||uncertain_significance&pathogenic||1||||||||20|45|-14|-45|0.05|0.00|0.00|0.00|CLCNKB|VUS|0.9770811|HP:0000951||AR|LP||||1:16375584-16375585|0.000548455|0|638508|Conflicting_interpretations_of_pathogenicity||criteria_provided&_conflicting_interpretations|LP|filter&vkgl&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM:VIS 1|0:25,25:50:AR:1_16376412_G_A,1_16376412_G_N:0:1188:1:AR_C 1|0:25,25:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:.
|
|
81
81
|
1 16376412 n_alt G N . PASS CSQ=N|splice_donor_variant|HIGH|CLCNKB|1188|Transcript|NM_000085.5|protein_coding||10/19||||||||CS1211892&CS971662|1||1||1|EntrezGene||||||||||1&1|||||||||||||||||VUS|0.373989|HP:0000951||AR||||||||||||LP|filter&vkgl&clinVar&gnomad&effect&spliceAI&annotSV&impact&exit_lp|,N|splice_donor_variant|HIGH|CLCNKB|1188|Transcript|NM_001165945.2|protein_coding||3/12||||||||CS1211892&CS971662|1||1|||EntrezGene||||||||||1&1|||||||||||||||||VUS|0.373989|HP:0000951||AR||||||||||||LP|filter&vkgl&clinVar&gnomad&effect&spliceAI&annotSV&impact&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM:VIS 1|0:5,45:50:AR,AD:1_16376412_G_A,1_16375583_GA_G:1:1188:1:AR_C 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:.
|
|
82
82
|
1 16376412 . G A . PASS CSQ=A|splice_donor_variant|HIGH|CLCNKB|1188|Transcript|NM_000085.5|protein_coding||10/19|NM_000085.5:c.968+1G>A|||||||rs201204502&CS1211892&CS971662|1||1||1|EntrezGene||||||||||0&1&1||||||||17|-36|-28|-1|0.00|0.00|0.03|0.97|CLCNKB|VUS|0.9855972|HP:0000951||AR|LP||||1:16376412-16376412|6.38086e-05|0|1285112|Pathogenic/Likely_pathogenic||no_assertion_criteria_provided|LP|filter&vkgl&exit_lp|,A|splice_donor_variant|HIGH|CLCNKB|1188|Transcript|NM_001165945.2|protein_coding||3/12|NM_001165945.2:c.461+1G>A|||||||rs201204502&CS1211892&CS971662|1||1|||EntrezGene||||||||||0&1&1||||||||17|-36|-28|-1|0.00|0.00|0.03|0.97|CLCNKB|VUS|0.9855972|HP:0000951||AR|LP||||1:16376412-16376412|6.38086e-05|0|1285112|Pathogenic/Likely_pathogenic||no_assertion_criteria_provided|LP|filter&vkgl&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM:VIS 0|1:50:50:AR:1_16375583_GA_G,1_16376412_G_N:0:1188:1:AR_C 0|0:50,0:50:.:.:.:.:.:. 1|0:25,25:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:.
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
17 29663879 . T G . PASS CSQ=G|missense_variant|MODERATE|NF1|4763|Transcript|NM_000267.3|protein_coding|41/57||NM_000267.3:c.6311T>G|NP_000258.1:p.Leu2104Arg|6694/12362|6311/8457|2104/2818|L/R|cTg/cGg|CM141499&CM143458|1||1|||EntrezGene|||||0|0.994||||1&1||||||||-42|41|-34|8|0.00|0.00|0.00|0.00|NF1|VUS|0.8564539|HP:0000951|1|AD|LP|||||||996527|Likely_pathogenic||criteria_provided&_single_submitter|LP|filter&vkgl&exit_lp|,G|missense_variant|MODERATE|NF1|4763|Transcript|NM_001042492.3|protein_coding|42/58||NM_001042492.3:c.6374T>G|NP_001035957.1:p.Leu2125Arg|6707/12373|6374/8520|2125/2839|L/R|cTg/cGg|CM141499&CM143458|1||1||1|EntrezGene|||||0|0.993||||1&1||||||||-42|41|-34|8|0.00|0.00|0.00|0.00|NF1|VUS|0.8564539|HP:0000951|1|AD|LP|||||||996527|Likely_pathogenic||criteria_provided&_single_submitter|LP|filter&vkgl&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM:VIS 1|0:25,25:50:AR,AD:17_29683983_C_T:0:4763:1:AD_IP,AR_C 0|0:50,0:50:.:.:.:.:.:. 1|0:25,25:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:.
|
|
98
98
|
17 29683983 . C T . PASS CSQ=T|stop_gained|HIGH|NF1|4763|Transcript|NM_000267.3|protein_coding|52/57||NM_000267.3:c.7681C>T|NP_000258.1:p.Gln2561Ter|8064/12362|7681/8457|2561/2818|Q/*|Cag/Tag|CM143479|1||1|||EntrezGene||||||||||1||||||||24|-5|24|36|0.02|0.00|0.00|0.00|NF1|VUS|0.99177766|HP:0000951|1|AD|LP|||||||||||LP|filter&vkgl&exit_lp|,T|stop_gained|HIGH|NF1|4763|Transcript|NM_001042492.3|protein_coding|53/58||NM_001042492.3:c.7744C>T|NP_001035957.1:p.Gln2582Ter|8077/12373|7744/8520|2582/2839|Q/*|Cag/Tag|CM143479|1||1||1|EntrezGene||||||||||1||||||||24|-5|24|36|0.02|0.00|0.00|0.00|NF1|VUS|0.9919058|HP:0000951|1|AD|LP|||||||||||LP|filter&vkgl&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM:VIS 1|0:25,25:50:AR,AD:17_29663879_T_G:1:4763:1:AR_C 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.:.
|
|
99
99
|
19 11224051 . C CGTGGTCGCTCTGGACACGGAG . PASS CSQ=TCGCTCTGGACACGGAGGTGG|inframe_insertion|MODERATE|LDLR|3949|Transcript|NM_000527.5|protein_coding|9/18||NM_000527.5:c.1289_1309dup|NP_000518.1:p.Val430_Val436dup|1395-1396/5173|1309-1310/2583|437/860|A/VALDTEVA|gcc/gTCGCTCTGGACACGGAGGTGGcc||1||1||1|EntrezGene|||||||25||||||||||||||||||||VUS|0.27201134|HP:0000951&HP:0003124||AD&AR|LP|||||||||||LP|filter&vkgl&exit_lp|,TCGCTCTGGACACGGAGGTGG|inframe_insertion|MODERATE|LDLR|3949|Transcript|NM_001195798.2|protein_coding|9/18||NM_001195798.2:c.1289_1309dup|NP_001182727.1:p.Val430_Val436dup|1395-1396/5167|1309-1310/2577|437/858|A/VALDTEVA|gcc/gTCGCTCTGGACACGGAGGTGGcc||1||1|||EntrezGene|||||||25||||||||||||||||||||VUS|0.27201134|HP:0000951&HP:0003124||AD&AR|LP|||||||||||LP|filter&vkgl&exit_lp|,TCGCTCTGGACACGGAGGTGG|inframe_insertion|MODERATE|LDLR|3949|Transcript|NM_001195799.2|protein_coding|8/17||NM_001195799.2:c.1166_1186dup|NP_001182728.1:p.Val389_Val395dup|1272-1273/5050|1186-1187/2460|396/819|A/VALDTEVA|gcc/gTCGCTCTGGACACGGAGGTGGcc||1||1|||EntrezGene|||||||25||||||||||||||||||||VUS|0.26963568|HP:0000951&HP:0003124||AD&AR|LP|||||||||||LP|filter&vkgl&exit_lp|,TCGCTCTGGACACGGAGGTGG|inframe_insertion|MODERATE|LDLR|3949|Transcript|NM_001195800.2|protein_coding|7/16||NM_001195800.2:c.785_805dup|NP_001182729.1:p.Val262_Val268dup|891-892/4669|805-806/2079|269/692|A/VALDTEVA|gcc/gTCGCTCTGGACACGGAGGTGGcc||1||1|||EntrezGene|||||||25||||||||||||||||||||VUS|0.3952981|HP:0000951&HP:0003124||AD&AR|LP|||||||||||LP|filter&vkgl&exit_lp|,TCGCTCTGGACACGGAGGTGG|inframe_insertion|MODERATE|LDLR|3949|Transcript|NM_001195803.2|protein_coding|8/16||NM_001195803.2:c.908_928dup|NP_001182732.1:p.Val303_Val309dup|1014-1015/4639|928-929/2049|310/682|A/VALDTEVA|gcc/gTCGCTCTGGACACGGAGGTGGcc||1||1|||EntrezGene|||||||25||||||||||||||||||||VUS|0.30903387|HP:0000951&HP:0003124||AD&AR|LP|||||||||||LP|filter&vkgl&exit_lp| GT:AD:DP:VI:VIC:VID:VIG:VIM 1|1:.:10:AR:.:0:3949:1 0|1:.:10:.:.:.:.:. 1|0:25,25:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:. 0|0:50,0:50:.:.:.:.:.
|
|
100
|
-
19 17449399 . C T . PASS
|
|
100
|
+
19 17449399 . C T . PASS . GT:AD:DP:VI:VIC:VID:VIM 1|0:25,25:50:AD:.:1:0 0|0:50,0:50:.:.:.:. 0|0:50,0:50:.:.:.:. 0|0:50,0:50:.:.:.:. 0|0:50,0:50:.:.:.:. 0|0:50,0:50:.:.:.:.
|
|
101
101
|
19 17451997 . GA G . PASS CSQ=-|frameshift_variant|HIGH|GTPBP3|84705|Transcript|NM_001128855.3|protein_coding|8/9||NM_001128855.3:c.1058del|NP_001122327.1:p.Asn353ThrfsTer26|1117/2503|1058/1416|353/471|N/X|aAc/ac||1||1|||EntrezGene|||||||1|||||||||||34|33|-7|33|0.01|0.00|0.00|0.00|GTPBP3|VUS|0.9804278|HP:0000951||AR|LP|||||||||||LP|filter&vkgl&exit_lp|,-|frameshift_variant|HIGH|GTPBP3|84705|Transcript|NM_001195422.1|protein_coding|8/9||NM_001195422.1:c.1187del|NP_001182351.1:p.Asn396ThrfsTer26|1209/2595|1187/1545|396/514|N/X|aAc/ac||1||1|||EntrezGene|||||||1|||||||||||34|33|-7|33|0.01|0.00|0.00|0.00|GTPBP3|VUS|0.98119754|HP:0000951||AR|LP|||||||||||LP|filter&vkgl&exit_lp|,-|frameshift_variant|HIGH|GTPBP3|84705|Transcript|NM_032620.4|protein_coding|8/9||NM_032620.4:c.1121del|NP_116009.2:p.Asn374ThrfsTer26|1180/2566|1121/1479|374/492|N/X|aAc/ac||1||1|||EntrezGene|||||||1|||||||||||34|33|-7|33|0.01|0.00|0.00|0.00|GTPBP3|VUS|0.98185974|HP:0000951||AR|LP|||||||||||LP|filter&vkgl&exit_lp|,-|frameshift_variant|HIGH|GTPBP3|84705|Transcript|NM_133644.4|protein_coding|7/8||NM_133644.4:c.1217del|NP_598399.2:p.Asn406ThrfsTer26|1276/2662|1217/1575|406/524|N/X|aAc/ac||1||1||1|EntrezGene|||||||1|||||||||||34|33|-7|33|0.01|0.00|0.00|0.00|GTPBP3|VUS|0.97986597|HP:0000951||AR|LP|||||||||||LP|filter&vkgl&exit_lp| GT:AD:DP:VIC:VID:VIM 1|1:0,50:50:.:1:0 0|0:10,0:10:.:.:. 0|0:50,0:50:.:.:. 1|0:25,25:50:.:.:. 1|1:0,50:50:.:.:. 1|1:0,50:50:.:.:.
|
|
102
102
|
22 50721546 . C T . PASS CSQ=T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376864.1|protein_coding|17/37||NM_001376864.1:c.2749G>A|NP_001363793.1:p.Gly917Ser|2881/6611|2749/5754|917/1917|G/S|Ggc/Agc|rs1377653283|1||-1||1|EntrezGene||||||||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.14842245||||||||22:50721546-50721546|4.49665e-06|0|||||VUS|filter&vkgl&clinVar&gnomad&effect&sift&polyphen&impact&exit_vus|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376865.1|protein_coding|18/38||NM_001376865.1:c.2818G>A|NP_001363794.1:p.Gly940Ser|2898/6391|2818/5586|940/1861|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene||||||||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.14842245||||||||22:50721546-50721546|4.49665e-06|0|||||VUS|filter&vkgl&clinVar&gnomad&effect&sift&polyphen&impact&exit_vus|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376866.1|protein_coding|17/37||NM_001376866.1:c.2749G>A|NP_001363795.1:p.Gly917Ser|2909/6402|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376867.1|protein_coding|18/38||NM_001376867.1:c.2749G>A|NP_001363796.1:p.Gly917Ser|2969/6462|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376868.1|protein_coding|18/38||NM_001376868.1:c.2749G>A|NP_001363797.1:p.Gly917Ser|2962/6455|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376869.1|protein_coding|16/36||NM_001376869.1:c.2749G>A|NP_001363798.1:p.Gly917Ser|2856/6349|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376870.1|protein_coding|17/37||NM_001376870.1:c.2749G>A|NP_001363799.1:p.Gly917Ser|2881/6374|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376871.1|protein_coding|17/37||NM_001376871.1:c.2749G>A|NP_001363800.1:p.Gly917Ser|2874/6367|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376872.1|protein_coding|19/39||NM_001376872.1:c.2749G>A|NP_001363801.1:p.Gly917Ser|3066/6559|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376873.1|protein_coding|18/38||NM_001376873.1:c.2749G>A|NP_001363802.1:p.Gly917Ser|3218/6711|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376874.1|protein_coding|18/38||NM_001376874.1:c.2749G>A|NP_001363803.1:p.Gly917Ser|2934/6427|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376875.1|protein_coding|16/36||NM_001376875.1:c.2749G>A|NP_001363804.1:p.Gly917Ser|2933/6426|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376876.1|protein_coding|18/38||NM_001376876.1:c.2749G>A|NP_001363805.1:p.Gly917Ser|2927/6420|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376877.1|protein_coding|18/38||NM_001376877.1:c.2749G>A|NP_001363806.1:p.Gly917Ser|3198/6691|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376878.1|protein_coding|16/36||NM_001376878.1:c.2749G>A|NP_001363807.1:p.Gly917Ser|2821/6314|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376879.1|protein_coding|19/39||NM_001376879.1:c.2749G>A|NP_001363808.1:p.Gly917Ser|3101/6594|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376880.1|protein_coding|17/37||NM_001376880.1:c.2749G>A|NP_001363809.1:p.Gly917Ser|2991/6484|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376881.1|protein_coding|18/38||NM_001376881.1:c.2749G>A|NP_001363810.1:p.Gly917Ser|3046/6539|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376882.1|protein_coding|17/37||NM_001376882.1:c.2749G>A|NP_001363811.1:p.Gly917Ser|3165/6658|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376883.1|protein_coding|17/37||NM_001376883.1:c.2749G>A|NP_001363812.1:p.Gly917Ser|2881/6350|2749/5493|917/1830|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene||||||||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.14842245||||||||22:50721546-50721546|4.49665e-06|0|||||VUS|filter&vkgl&clinVar&gnomad&effect&sift&polyphen&impact&exit_vus|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376884.1|protein_coding|16/36||NM_001376884.1:c.2749G>A|NP_001363813.1:p.Gly917Ser|2821/6236|2749/5439|917/1812|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene||||||||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.14842245||||||||22:50721546-50721546|4.49665e-06|0|||||VUS|filter&vkgl&clinVar&gnomad&effect&sift&polyphen&impact&exit_vus|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376885.1|protein_coding|17/37||NM_001376885.1:c.2749G>A|NP_001363814.1:p.Gly917Ser|2909/6324|2749/5439|917/1812|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene||||||||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.14842245||||||||22:50721546-50721546|4.49665e-06|0|||||VUS|filter&vkgl&clinVar&gnomad&effect&sift&polyphen&impact&exit_vus|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_001376886.1|protein_coding|17/37||NM_001376886.1:c.2656G>A|NP_001363815.1:p.Gly886Ser|2876/6369|2656/5424|886/1807|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene||||||||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.14842245||||||||22:50721546-50721546|4.49665e-06|0|||||VUS|filter&vkgl&clinVar&gnomad&effect&sift&polyphen&impact&exit_vus|,T|missense_variant|MODERATE|PLXNB2|23654|Transcript|NM_012401.4|protein_coding|17/37||NM_012401.4:c.2749G>A|NP_036533.2:p.Gly917Ser|2916/6409|2749/5517|917/1838|G/S|Ggc/Agc|rs1377653283|1||-1|||EntrezGene|||||0|1||||||||||||-2|36|-32|-38|0.05|0.00|0.00|0.00|PLXNB2|VUS|0.92206705||||||||22:50721546-50721546|4.49665e-06|0|||||LP|filter&vkgl&clinVar&gnomad&effect&sift&exit_lp| GT:AD:DP:VI:VIC:VID:VIM 1|1:0,50:50:AR:.:1:0 0|0:10,0:10:.:.:.:. 1|0:25,25:50:.:.:.:. 0|0:50,0:50:.:.:.:. 1|0:25,25:50:.:.:.:. 0|0:50,0:50:.:.:.:.
|
|
103
103
|
X 48933021 x_chrom A T . PASS CSQ=T|splice_donor_variant|HIGH|WDR45|11152|Transcript|NM_001029896.2|protein_coding||9/10|NM_001029896.2:c.827+2T>A|||||||CS135341|1||-1|||EntrezGene||||||||||1||||||||27|28|-2|2|0.02|0.00|0.01|0.99|WDR45|VUS|0.9700852|HP:0000951||XL|LP|||||||||||LP|filter&vkgl&exit_lp|,T|splice_donor_variant|HIGH|WDR45|11152|Transcript|NM_007075.4|protein_coding||10/11|NM_007075.4:c.830+2T>A|||||||CS135341|1||-1||1|EntrezGene||||||||||1||||||||27|28|-2|2|0.02|0.00|0.01|0.99|WDR45|VUS|0.9700852|HP:0000951||XL|LP|||||||||||LP|filter&vkgl&exit_lp|,T|upstream_gene_variant|MODIFIER|PRAF2|11230|Transcript|NM_007213.3|protein_coding||||||||||CS135341|1|1360|-1|||EntrezGene||||||||||1||||||||27|28|-2|2|0.02|0.00|0.01|0.99|WDR45|VUS|0.0149048455|||||||||||||||LP|filter&vkgl&clinVar&gnomad&effect&spliceAI&exit_lp| GT:AD:DP:VIC:VID:VIM 1|0:25,25:50:.:1:0 1|0:25,25:50:.:.:. 0|0:50,0:50:.:.:. 1|1:0,50:50:.:.:. 0|0:50,0:50:.:.:. 1|1:0,50:50:.:.:.
|
package/src/utils/ApiUtils.ts
CHANGED
|
@@ -132,15 +132,16 @@ export async function fetchRecords(params: Params) {
|
|
|
132
132
|
const pickIndex = fieldMetas.findIndex((item) => item.id === "PICK");
|
|
133
133
|
|
|
134
134
|
for (const record of records.items) {
|
|
135
|
-
const csqArray = record.data.n.CSQ as Value[][];
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
135
|
+
const csqArray = record.data.n.CSQ as Value[][] | undefined;
|
|
136
|
+
if (csqArray) {
|
|
137
|
+
csqArray.sort((aValue, bValue) => {
|
|
138
|
+
for (const order of orders) {
|
|
139
|
+
const compareValue = compareCsq(aValue, bValue, order.field, order.direction);
|
|
140
|
+
if (compareValue !== 0) return compareValue;
|
|
141
|
+
}
|
|
142
|
+
return compareCsqDefault(aValue, bValue, pickIndex, consequenceIndex);
|
|
143
|
+
});
|
|
144
|
+
}
|
|
144
145
|
}
|
|
145
146
|
return records;
|
|
146
147
|
}
|
package/src/utils/query.ts
CHANGED
|
@@ -12,6 +12,20 @@ import { Metadata } from "@molgenis/vip-report-vcf/src/Vcf";
|
|
|
12
12
|
import { FieldMetadata, InfoMetadata } from "@molgenis/vip-report-vcf/src/MetadataParser";
|
|
13
13
|
import { FilterQueries } from "../store";
|
|
14
14
|
|
|
15
|
+
export function createSampleQuery(
|
|
16
|
+
sample: Item<Sample>,
|
|
17
|
+
search: string | undefined,
|
|
18
|
+
filters: FilterQueries | undefined,
|
|
19
|
+
metadata: Metadata
|
|
20
|
+
): Query | null {
|
|
21
|
+
const sampleQuery: QueryClause = { selector: ["s", sample.data.index, "GT", "t"], operator: "!=", args: "hom_r" };
|
|
22
|
+
const searchFilterQuery = createQuery(search, filters, metadata);
|
|
23
|
+
const query: Query =
|
|
24
|
+
searchFilterQuery !== null ? { operator: "and", args: [sampleQuery, searchFilterQuery] } : sampleQuery;
|
|
25
|
+
console.log(query);
|
|
26
|
+
return query;
|
|
27
|
+
}
|
|
28
|
+
|
|
15
29
|
export function createQuery(
|
|
16
30
|
search: string | undefined,
|
|
17
31
|
filters: FilterQueries | undefined,
|
|
@@ -6,7 +6,7 @@ import { SearchBox } from "../components/SearchBox";
|
|
|
6
6
|
import { Sort, SortEvent } from "../components/Sort";
|
|
7
7
|
import { Pager } from "../components/record/Pager";
|
|
8
8
|
import { RecordDownload } from "../components/record/RecordDownload";
|
|
9
|
-
import {
|
|
9
|
+
import { createSampleQuery, infoSelector, infoSortPath, sampleSelector } from "../utils/query";
|
|
10
10
|
import { VariantsSampleTable } from "../components/VariantsSampleTable";
|
|
11
11
|
import {
|
|
12
12
|
fetchHtsFileMetadata,
|
|
@@ -165,7 +165,7 @@ export const SampleVariants: Component<{
|
|
|
165
165
|
|
|
166
166
|
const params = (): Params => {
|
|
167
167
|
return {
|
|
168
|
-
query:
|
|
168
|
+
query: createSampleQuery(props.sample, searchQuery(), filterQueries(), props.recordsMeta) || undefined,
|
|
169
169
|
sort: sort() || undefined,
|
|
170
170
|
page: page() || undefined,
|
|
171
171
|
size: pageSize() || undefined,
|