@molgenis/vip-report-template 5.8.0 → 6.0.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@molgenis/vip-report-template",
3
- "version": "5.8.0",
3
+ "version": "6.0.1",
4
4
  "description": "Report Template for Variant Call Format (VCF) Report Generator",
5
5
  "scripts": {
6
6
  "build": "vite build",
@@ -15,33 +15,33 @@
15
15
  },
16
16
  "license": "LGPL-3.0",
17
17
  "devDependencies": {
18
- "@molgenis/vite-plugin-inline": "^1.0.19",
19
- "@typescript-eslint/eslint-plugin": "^6.13.2",
20
- "@typescript-eslint/parser": "^6.13.2",
21
- "@vitest/coverage-v8": "^1.0.1",
18
+ "@molgenis/vite-plugin-inline": "^1.0.21",
19
+ "@typescript-eslint/eslint-plugin": "^6.19.1",
20
+ "@typescript-eslint/parser": "^6.19.1",
21
+ "@vitest/coverage-v8": "^1.2.1",
22
22
  "bulma": "^0.9.4",
23
- "eslint": "^8.55.0",
23
+ "eslint": "^8.56.0",
24
24
  "eslint-config-prettier": "^9.1.0",
25
- "eslint-plugin-prettier": "^5.0.1",
26
- "eslint-plugin-solid": "^0.13.0",
27
- "husky": "^8.0.3",
28
- "jsdom": "^23.0.1",
29
- "prettier": "^3.1.0",
30
- "sass": "^1.69.5",
25
+ "eslint-plugin-prettier": "^5.1.3",
26
+ "eslint-plugin-solid": "^0.13.1",
27
+ "husky": "^9.0.5",
28
+ "jsdom": "^24.0.0",
29
+ "prettier": "^3.2.4",
30
+ "sass": "^1.70.0",
31
31
  "typescript": "^5.3.3",
32
- "vite": "^5.0.6",
33
- "vite-plugin-solid": "^2.7.2",
34
- "vitest": "^1.0.1"
32
+ "vite": "^5.0.12",
33
+ "vite-plugin-solid": "^2.9.1",
34
+ "vitest": "^1.2.1"
35
35
  },
36
36
  "dependencies": {
37
37
  "@fortawesome/fontawesome-svg-core": "^6.5.1",
38
38
  "@fortawesome/free-solid-svg-icons": "^6.5.1",
39
- "@molgenis/vip-report-api": "^4.8.0",
40
- "@molgenis/vip-report-vcf": "^1.8.0",
39
+ "@molgenis/vip-report-api": "^5.0.2",
40
+ "@molgenis/vip-report-vcf": "^2.0.0",
41
41
  "@solidjs/router": "^0.9.1",
42
42
  "base64-js": "^1.5.1",
43
43
  "igv": "^2.15.11",
44
- "solid-js": "^1.8.7"
44
+ "solid-js": "^1.8.12"
45
45
  },
46
46
  "lint-staged": {
47
47
  "src/**/*.{tsx,ts}": [
@@ -66,14 +66,12 @@ export const FilterVariantType: Component<
66
66
  };
67
67
 
68
68
  if (props.query !== undefined && props.query.args.length > 0) {
69
- console.log(props.query);
70
- const query: Query = props.query.args[0] as Query;
71
- (query.args as Query[]).forEach((childQuery) => {
72
- if (childQuery.operator == "and") {
69
+ (props.query.args as Query[]).forEach((childQuery) => {
70
+ if (childQuery.operator == "or") {
73
71
  group["SNV"] = true;
74
72
  snvChecked = true;
75
73
  }
76
- if (childQuery.operator == "or") {
74
+ if (childQuery.operator == "and") {
77
75
  group["SV"] = true;
78
76
  svChecked = true;
79
77
  }
@@ -0,0 +1,454 @@
1
+ {
2
+ "format": {
3
+ "VI": {
4
+ "label": "Inheritance",
5
+ "description": "An enumeration of possible inheritance modes based on the pedigree of the sample. Potential values: AD, AD_IP, AR, AR_C, XLR, XLD, YL, MT",
6
+ "numberType": "OTHER",
7
+ "separator": ",",
8
+ "type": "CATEGORICAL",
9
+ "categories": [
10
+ "AD",
11
+ "AD_IP",
12
+ "AR",
13
+ "AR_C",
14
+ "XLD",
15
+ "XLR",
16
+ "YL",
17
+ "MT"
18
+ ]
19
+ }
20
+ },
21
+ "info": {
22
+ "CSQ": {
23
+ "nestedFields": {
24
+ "ALLELE_NUM": {
25
+ "label": "Allele Nr.",
26
+ "description": "Allele nr within the VCF file.",
27
+ "numberType": "NUMBER",
28
+ "numberCount": 1,
29
+ "type": "INTEGER"
30
+ },
31
+ "ALPHSCORE": {
32
+ "label": "AlphScore",
33
+ "description": "AlphScore pathogenicity score for missense variants",
34
+ "numberType": "NUMBER",
35
+ "numberCount": 1,
36
+ "type": "FLOAT"
37
+ },
38
+ "CAPICE_CL": {
39
+ "label": "CAPICE",
40
+ "description": "CAPICE classification",
41
+ "numberType": "NUMBER",
42
+ "numberCount": 1,
43
+ "type": "CATEGORICAL",
44
+ "categories": [
45
+ "B",
46
+ "LB",
47
+ "VUS",
48
+ "LP",
49
+ "P"
50
+ ]
51
+ },
52
+ "CAPICE_SC": {
53
+ "label": "CAPICE",
54
+ "description": "CAPICE pathogenicity score",
55
+ "numberType": "NUMBER",
56
+ "numberCount": 1,
57
+ "type": "FLOAT"
58
+ },
59
+ "cDNA_position": {
60
+ "label": "cDNA pos",
61
+ "description": "Position within the cDNA.",
62
+ "numberType": "NUMBER",
63
+ "numberCount": 1,
64
+ "type": "STRING"
65
+ },
66
+ "CDS_position": {
67
+ "label": "CDS pos",
68
+ "description": "Position within the coding sequence.",
69
+ "numberType": "NUMBER",
70
+ "numberCount": 1,
71
+ "type": "STRING"
72
+ },
73
+ "CLIN_SIG": {
74
+ "label": "ClinVar",
75
+ "description": "ClinVar classification(s)",
76
+ "numberType": "OTHER",
77
+ "separator": "&",
78
+ "type": "STRING"
79
+ },
80
+ "clinVar": {
81
+ "label": "ClinVar ID",
82
+ "description": "ClinVar Variation ID",
83
+ "numberType": "OTHER",
84
+ "type": "INTEGER"
85
+ },
86
+ "clinVar_CLNID": {
87
+ "label": "ClinVar ID",
88
+ "description": "ClinVar Variation ID",
89
+ "numberType": "OTHER",
90
+ "type": "INTEGER"
91
+ },
92
+ "clinVar_CLNSIG": {
93
+ "label": "ClinVar variant",
94
+ "description": "Clinical significance for this single variant",
95
+ "numberType": "OTHER",
96
+ "separator": "/",
97
+ "type": "CATEGORICAL",
98
+ "categories": [
99
+ "Benign",
100
+ "Likely_benign",
101
+ "Uncertain_significance",
102
+ "Likely_pathogenic",
103
+ "Pathogenic",
104
+ "Conflicting_interpretations_of_pathogenicity"
105
+ ]
106
+ },
107
+ "clinVar_CLNSIGINCL": {
108
+ "label": "ClinVar variant combination",
109
+ "description": "Clinical significance for a haplotype or genotype that includes this variant",
110
+ "numberType": "OTHER",
111
+ "separator": "&",
112
+ "type": "CATEGORICAL",
113
+ "categories": [
114
+ "Benign",
115
+ "Likely_benign",
116
+ "Uncertain_significance",
117
+ "Likely_pathogenic",
118
+ "Pathogenic",
119
+ "Conflicting_interpretations_of_pathogenicity"
120
+ ]
121
+ },
122
+ "clinVar_CLNREVSTAT": {
123
+ "label": "ClinVar status",
124
+ "description": "ClinVar review status",
125
+ "numberType": "OTHER",
126
+ "separator": "&",
127
+ "type": "CATEGORICAL",
128
+ "categories": [
129
+ "practice_guideline",
130
+ "reviewed_by_expert_panel",
131
+ "criteria_provided",
132
+ "_multiple_submitters",
133
+ "_no_conflicts",
134
+ "_single_submitter",
135
+ "_conflicting_interpretations",
136
+ "no_assertion_criteria_provided",
137
+ "no_assertion_provided"
138
+ ]
139
+ },
140
+ "Consequence": {
141
+ "label": "Effect",
142
+ "description": "Effect(s) described as Sequence Ontology term(s)",
143
+ "numberType": "OTHER",
144
+ "separator": "&",
145
+ "type": "STRING"
146
+ },
147
+ "Existing_variation": {
148
+ "label": "Ex. var.",
149
+ "description": "Existing variation.",
150
+ "numberType": "OTHER",
151
+ "separator": "&",
152
+ "type": "STRING"
153
+ },
154
+ "Feature_type": {
155
+ "label": "Feature Type.",
156
+ "description": "The VEP feature type",
157
+ "numberType": "NUMBER",
158
+ "numberCount": 1,
159
+ "type": "CATEGORICAL",
160
+ "categories": [
161
+ "Transcript",
162
+ "RegulatoryFeature",
163
+ "MotifFeature"
164
+ ],
165
+ "required": true
166
+ },
167
+ "FLAGS": {
168
+ "label": "Flags",
169
+ "description": "Flags",
170
+ "numberType": "OTHER",
171
+ "separator": "&",
172
+ "type": "STRING"
173
+ },
174
+ "GADO_PD": {
175
+ "label": "GADO_PD",
176
+ "description": "The GADO prediction for the relation between the HPO terms of the proband(s) and the gene, HC: high confidence, LC: low confidence.",
177
+ "numberType": "NUMBER",
178
+ "numberCount": 1,
179
+ "type": "CATEGORICAL",
180
+ "categories": [
181
+ "LC",
182
+ "HC"
183
+ ]
184
+ },
185
+ "GADO_SC": {
186
+ "label": "GADO_SC",
187
+ "description": "The combined prioritization GADO Z-score over the HPO of the proband(s) terms for this case.",
188
+ "numberType": "NUMBER",
189
+ "numberCount": 1,
190
+ "type": "FLOAT"
191
+ },
192
+ "gnomAD_AF": {
193
+ "label": "gnomAD AF",
194
+ "description": "gnomAD allele frequency",
195
+ "numberType": "NUMBER",
196
+ "numberCount": 1,
197
+ "type": "FLOAT"
198
+ },
199
+ "gnomAD_COV": {
200
+ "label": "gnomAD COV",
201
+ "description": "gnomAD coverage (percent of individuals in gnomAD source)",
202
+ "numberType": "NUMBER",
203
+ "numberCount": 1,
204
+ "type": "FLOAT"
205
+ },
206
+ "gnomAD_FAF95": {
207
+ "label": "gnomAD FAF95",
208
+ "description": "gnomAD filter allele frequency (95% confidence)",
209
+ "numberType": "NUMBER",
210
+ "numberCount": 1,
211
+ "type": "FLOAT"
212
+ },
213
+ "gnomAD_FAF99": {
214
+ "label": "gnomAD FAF99",
215
+ "description": "gnomAD filter allele frequency (99% confidence)",
216
+ "numberType": "NUMBER",
217
+ "numberCount": 1,
218
+ "type": "FLOAT"
219
+ },
220
+ "gnomAD_HN": {
221
+ "label": "gnomAD HN",
222
+ "description": "gnomAD number of homozygotes",
223
+ "numberType": "NUMBER",
224
+ "numberCount": 1,
225
+ "type": "INTEGER"
226
+ },
227
+ "gnomAD_SRC": {
228
+ "label": "gnomAD SRC",
229
+ "description": "gnomAD source (E=exomes, G=genomes, T=total)",
230
+ "numberType": "NUMBER",
231
+ "numberCount": 1,
232
+ "type": "CATEGORICAL",
233
+ "categories": [
234
+ "E",
235
+ "G",
236
+ "T"
237
+ ]
238
+ },
239
+ "gnomAD_QC": {
240
+ "label": "gnomAD QC",
241
+ "description": "gnomAD quality control filters that failed",
242
+ "numberType": "OTHER",
243
+ "separator": "&",
244
+ "type": "STRING"
245
+ },
246
+ "HGNC_ID": {
247
+ "label": "HGNC ID",
248
+ "description": "The HGNC gene ID",
249
+ "numberType": "NUMBER",
250
+ "numberCount": 1,
251
+ "type": "INTEGER"
252
+ },
253
+ "HGVSc": {
254
+ "label": "HGVS C",
255
+ "description": "HGVS nomenclature: coding DNA reference sequence",
256
+ "numberType": "NUMBER",
257
+ "numberCount": 1,
258
+ "type": "STRING"
259
+ },
260
+ "HGVSp": {
261
+ "label": "HGVS P",
262
+ "description": "HGVS nomenclature: protein reference sequence",
263
+ "numberType": "NUMBER",
264
+ "numberCount": 1,
265
+ "type": "STRING"
266
+ },
267
+ "HPO": {
268
+ "label": "HPO",
269
+ "description": "Human phenotype ontology matches.",
270
+ "numberType": "OTHER",
271
+ "separator": "&",
272
+ "type": "STRING"
273
+ },
274
+ "IMPACT": {
275
+ "label": "Impact",
276
+ "description": "The Impact as predicted by VEP",
277
+ "numberType": "NUMBER",
278
+ "numberCount": 1,
279
+ "type": "CATEGORICAL",
280
+ "categories": [
281
+ "LOW",
282
+ "MODERATE",
283
+ "HIGH",
284
+ "MODIFIER"
285
+ ],
286
+ "required": true
287
+ },
288
+ "IncompletePenetrance": {
289
+ "label": "Gene: Inc.Pen.",
290
+ "description": "The gene is associated with Incomplete Penetrance (1:true)",
291
+ "numberType": "NUMBER",
292
+ "numberCount": 1,
293
+ "type": "STRING"
294
+ },
295
+ "InheritanceModesGene": {
296
+ "label": "Inh.Pat.",
297
+ "description": "Inheritance pattern",
298
+ "numberType": "OTHER",
299
+ "separator": "&",
300
+ "type": "STRING"
301
+ },
302
+ "ncER": {
303
+ "label": "ncER",
304
+ "description": "Non-coding essential regulation, from: 0(probably not essential for regulation) to 100 (probably essential for regulation).",
305
+ "numberType": "NUMBER",
306
+ "numberCount": 1,
307
+ "type": "FLOAT"
308
+ },
309
+ "PHENO": {
310
+ "label": "Pheno",
311
+ "description": "Phenotype match.",
312
+ "numberType": "OTHER",
313
+ "separator": "&",
314
+ "type": "INTEGER"
315
+ },
316
+ "PICK": {
317
+ "label": "PICK",
318
+ "description": "Boolean indicating if this is the VEP picked transcript.",
319
+ "numberType": "NUMBER",
320
+ "numberCount": 1,
321
+ "type": "INTEGER"
322
+ },
323
+ "PolyPhen": {
324
+ "label": "PolyPhen",
325
+ "description": "PolyPhen score.",
326
+ "numberType": "NUMBER",
327
+ "numberCount": 1,
328
+ "type": "FLOAT"
329
+ },
330
+ "Protein_position": {
331
+ "label": "Protein pos",
332
+ "description": "Position within the protein.",
333
+ "numberType": "NUMBER",
334
+ "numberCount": 1,
335
+ "type": "STRING"
336
+ },
337
+ "PUBMED": {
338
+ "label": "PubMed",
339
+ "description": "PubMed citations",
340
+ "numberType": "OTHER",
341
+ "separator": "&",
342
+ "type": "INTEGER"
343
+ },
344
+ "SIFT": {
345
+ "label": "SIFT",
346
+ "description": "SIFT score.",
347
+ "numberType": "NUMBER",
348
+ "numberCount": 1,
349
+ "type": "FLOAT"
350
+ },
351
+ "SOMATIC": {
352
+ "label": "Somatic",
353
+ "description": "Somatic.",
354
+ "numberType": "OTHER",
355
+ "separator": "&",
356
+ "type": "INTEGER"
357
+ },
358
+ "SpliceAI_pred_DS_AG": {
359
+ "label": "SpliceAI AG",
360
+ "description": "SpliceAI Delta score (acceptor gain).",
361
+ "numberType": "NUMBER",
362
+ "numberCount": 1,
363
+ "type": "FLOAT"
364
+ },
365
+ "SpliceAI_pred_DS_AL": {
366
+ "label": "SpliceAI AL",
367
+ "description": "SpliceAI Delta score (acceptor loss).",
368
+ "numberType": "NUMBER",
369
+ "numberCount": 1,
370
+ "type": "FLOAT"
371
+ },
372
+ "SpliceAI_pred_DS_DG": {
373
+ "label": "SpliceAI DG",
374
+ "description": "SpliceAI Delta score (donor gain).",
375
+ "numberType": "NUMBER",
376
+ "numberCount": 1,
377
+ "type": "FLOAT"
378
+ },
379
+ "SpliceAI_pred_DS_DL": {
380
+ "label": "SpliceAI DL",
381
+ "description": "SpliceAI Delta score (donor loss).",
382
+ "numberType": "NUMBER",
383
+ "numberCount": 1,
384
+ "type": "FLOAT"
385
+ },
386
+ "STRAND": {
387
+ "label": "Strand",
388
+ "description": "The strand of the gene (0=- 1=+).",
389
+ "numberType": "NUMBER",
390
+ "numberCount": 1,
391
+ "type": "INTEGER"
392
+ },
393
+ "SYMBOL": {
394
+ "label": "Gene",
395
+ "description": "Gene symbol",
396
+ "numberType": "NUMBER",
397
+ "numberCount": 1,
398
+ "type": "STRING"
399
+ },
400
+ "VIPC": {
401
+ "label": "VIP",
402
+ "description": "VIP classification",
403
+ "numberType": "NUMBER",
404
+ "numberCount": 1,
405
+ "type": "STRING",
406
+ "required": true
407
+ },
408
+ "VIPL": {
409
+ "label": "VIP labels",
410
+ "description": "VIP decision tree labels",
411
+ "numberType": "NUMBER",
412
+ "numberCount": 1,
413
+ "type": "STRING"
414
+ },
415
+ "VIPP": {
416
+ "label": "VIP path",
417
+ "description": "VIP decision tree path",
418
+ "numberType": "OTHER",
419
+ "separator": "&",
420
+ "type": "STRING",
421
+ "required": true
422
+ },
423
+ "VKGL_CL": {
424
+ "label": "VKGL",
425
+ "description": "VKGL consensus classification",
426
+ "numberType": "NUMBER",
427
+ "numberCount": 1,
428
+ "type": "CATEGORICAL",
429
+ "categories": [
430
+ "B",
431
+ "LB",
432
+ "VUS",
433
+ "LP",
434
+ "P"
435
+ ]
436
+ },
437
+ "VKGL_UMCG": {
438
+ "label": "MVL",
439
+ "description": "UMCG managed variant list classification",
440
+ "numberType": "NUMBER",
441
+ "numberCount": 1,
442
+ "type": "CATEGORICAL",
443
+ "categories": [
444
+ "B",
445
+ "LB",
446
+ "VUS",
447
+ "LP",
448
+ "P"
449
+ ]
450
+ }
451
+ }
452
+ }
453
+ }
454
+ }
@@ -39,6 +39,7 @@ import fastaUrlX_48932771_48933271 from "./fasta/X-48932771-48933271.fasta.gz.bl
39
39
  import fastaUrlY_2655391_2655891 from "./fasta/Y-2655391-2655891.fasta.gz.blob";
40
40
  import fastaUrlMT_15076_15576 from "./fasta/MT-15076-15576.fasta.gz.blob";
41
41
  import genesUrl from "./genes.gff.gz.blob";
42
+ import vcfMetaJson from "./field_metadata.json";
42
43
  import vcfUrlFamily from "./vcf/family.vcf.blob";
43
44
  import vcfUrlNoVep from "./vcf/no_vep.vcf.blob";
44
45
  import vcfUrlSamples0 from "./vcf/samples_0.vcf.blob";
@@ -47,11 +48,12 @@ import vcfUrlSamples100 from "./vcf/samples_100.vcf.blob";
47
48
 
48
49
  import { fetchAsBytes } from "../utils";
49
50
  import { DecisionTree } from "@molgenis/vip-report-api/src/Api";
51
+ import { Metadata } from "@molgenis/vip-report-vcf/src/FieldMetadata";
50
52
 
51
53
  export const cram = await fetchAsBytes(cramUrl as string);
52
54
  export const crai = await fetchAsBytes(craiUrl as string);
53
55
 
54
- export const decisionTree: DecisionTree = decisionTreeJson as DecisionTree;
56
+ export const decisionTree: DecisionTree = decisionTreeJson as unknown as DecisionTree;
55
57
 
56
58
  export const fastaGz = {
57
59
  "1:10042288-10042788": await fetchAsBytes(fastaUrl1_10042288_10042788 as string),
@@ -95,6 +97,8 @@ export const fastaGz = {
95
97
 
96
98
  export const genesGz = await fetchAsBytes(genesUrl as string);
97
99
 
100
+ export const vcfMeta = vcfMetaJson as unknown as Metadata;
101
+
98
102
  export const vcfFamily = await fetchAsBytes(vcfUrlFamily as string);
99
103
 
100
104
  export const vcfNoVep = await fetchAsBytes(vcfUrlNoVep as string);
@@ -0,0 +1,454 @@
1
+ {
2
+ "format": {
3
+ "VI": {
4
+ "label": "Inheritance",
5
+ "description": "An enumeration of possible inheritance modes based on the pedigree of the sample. Potential values: AD, AD_IP, AR, AR_C, XLR, XLD, YL, MT",
6
+ "numberType": "OTHER",
7
+ "separator": ",",
8
+ "type": "CATEGORICAL",
9
+ "categories": [
10
+ "AD",
11
+ "AD_IP",
12
+ "AR",
13
+ "AR_C",
14
+ "XLD",
15
+ "XLR",
16
+ "YL",
17
+ "MT"
18
+ ]
19
+ }
20
+ },
21
+ "info": {
22
+ "CSQ": {
23
+ "nestedFields": {
24
+ "ALLELE_NUM": {
25
+ "label": "Allele Nr.",
26
+ "description": "Allele nr within the VCF file.",
27
+ "numberType": "NUMBER",
28
+ "numberCount": 1,
29
+ "type": "INTEGER"
30
+ },
31
+ "ALPHSCORE": {
32
+ "label": "AlphScore",
33
+ "description": "AlphScore pathogenicity score for missense variants",
34
+ "numberType": "NUMBER",
35
+ "numberCount": 1,
36
+ "type": "FLOAT"
37
+ },
38
+ "CAPICE_CL": {
39
+ "label": "CAPICE",
40
+ "description": "CAPICE classification",
41
+ "numberType": "NUMBER",
42
+ "numberCount": 1,
43
+ "type": "CATEGORICAL",
44
+ "categories": [
45
+ "B",
46
+ "LB",
47
+ "VUS",
48
+ "LP",
49
+ "P"
50
+ ]
51
+ },
52
+ "CAPICE_SC": {
53
+ "label": "CAPICE",
54
+ "description": "CAPICE pathogenicity score",
55
+ "numberType": "NUMBER",
56
+ "numberCount": 1,
57
+ "type": "FLOAT"
58
+ },
59
+ "cDNA_position": {
60
+ "label": "cDNA pos",
61
+ "description": "Position within the cDNA.",
62
+ "numberType": "NUMBER",
63
+ "numberCount": 1,
64
+ "type": "STRING"
65
+ },
66
+ "CDS_position": {
67
+ "label": "CDS pos",
68
+ "description": "Position within the coding sequence.",
69
+ "numberType": "NUMBER",
70
+ "numberCount": 1,
71
+ "type": "STRING"
72
+ },
73
+ "CLIN_SIG": {
74
+ "label": "ClinVar",
75
+ "description": "ClinVar classification(s)",
76
+ "numberType": "OTHER",
77
+ "separator": "&",
78
+ "type": "STRING"
79
+ },
80
+ "clinVar": {
81
+ "label": "ClinVar ID",
82
+ "description": "ClinVar Variation ID",
83
+ "numberType": "OTHER",
84
+ "type": "INTEGER"
85
+ },
86
+ "clinVar_CLNID": {
87
+ "label": "ClinVar ID",
88
+ "description": "ClinVar Variation ID",
89
+ "numberType": "OTHER",
90
+ "type": "INTEGER"
91
+ },
92
+ "clinVar_CLNSIG": {
93
+ "label": "ClinVar variant",
94
+ "description": "Clinical significance for this single variant",
95
+ "numberType": "OTHER",
96
+ "separator": "/",
97
+ "type": "CATEGORICAL",
98
+ "categories": [
99
+ "Benign",
100
+ "Likely_benign",
101
+ "Uncertain_significance",
102
+ "Likely_pathogenic",
103
+ "Pathogenic",
104
+ "Conflicting_interpretations_of_pathogenicity"
105
+ ]
106
+ },
107
+ "clinVar_CLNSIGINCL": {
108
+ "label": "ClinVar variant combination",
109
+ "description": "Clinical significance for a haplotype or genotype that includes this variant",
110
+ "numberType": "OTHER",
111
+ "separator": "&",
112
+ "type": "CATEGORICAL",
113
+ "categories": [
114
+ "Benign",
115
+ "Likely_benign",
116
+ "Uncertain_significance",
117
+ "Likely_pathogenic",
118
+ "Pathogenic",
119
+ "Conflicting_interpretations_of_pathogenicity"
120
+ ]
121
+ },
122
+ "clinVar_CLNREVSTAT": {
123
+ "label": "ClinVar status",
124
+ "description": "ClinVar review status",
125
+ "numberType": "OTHER",
126
+ "separator": "&",
127
+ "type": "CATEGORICAL",
128
+ "categories": [
129
+ "practice_guideline",
130
+ "reviewed_by_expert_panel",
131
+ "criteria_provided",
132
+ "_multiple_submitters",
133
+ "_no_conflicts",
134
+ "_single_submitter",
135
+ "_conflicting_interpretations",
136
+ "no_assertion_criteria_provided",
137
+ "no_assertion_provided"
138
+ ]
139
+ },
140
+ "Consequence": {
141
+ "label": "Effect",
142
+ "description": "Effect(s) described as Sequence Ontology term(s)",
143
+ "numberType": "OTHER",
144
+ "separator": "&",
145
+ "type": "STRING"
146
+ },
147
+ "Existing_variation": {
148
+ "label": "Ex. var.",
149
+ "description": "Existing variation.",
150
+ "numberType": "OTHER",
151
+ "separator": "&",
152
+ "type": "STRING"
153
+ },
154
+ "Feature_type": {
155
+ "label": "Feature Type.",
156
+ "description": "The VEP feature type",
157
+ "numberType": "NUMBER",
158
+ "numberCount": 1,
159
+ "type": "CATEGORICAL",
160
+ "categories": [
161
+ "Transcript",
162
+ "RegulatoryFeature",
163
+ "MotifFeature"
164
+ ],
165
+ "required": true
166
+ },
167
+ "FLAGS": {
168
+ "label": "Flags",
169
+ "description": "Flags",
170
+ "numberType": "OTHER",
171
+ "separator": "&",
172
+ "type": "STRING"
173
+ },
174
+ "GADO_PD": {
175
+ "label": "GADO_PD",
176
+ "description": "The GADO prediction for the relation between the HPO terms of the proband(s) and the gene, HC: high confidence, LC: low confidence.",
177
+ "numberType": "NUMBER",
178
+ "numberCount": 1,
179
+ "type": "CATEGORICAL",
180
+ "categories": [
181
+ "LC",
182
+ "HC"
183
+ ]
184
+ },
185
+ "GADO_SC": {
186
+ "label": "GADO_SC",
187
+ "description": "The combined prioritization GADO Z-score over the HPO of the proband(s) terms for this case.",
188
+ "numberType": "NUMBER",
189
+ "numberCount": 1,
190
+ "type": "FLOAT"
191
+ },
192
+ "gnomAD_AF": {
193
+ "label": "gnomAD AF",
194
+ "description": "gnomAD allele frequency",
195
+ "numberType": "NUMBER",
196
+ "numberCount": 1,
197
+ "type": "FLOAT"
198
+ },
199
+ "gnomAD_COV": {
200
+ "label": "gnomAD COV",
201
+ "description": "gnomAD coverage (percent of individuals in gnomAD source)",
202
+ "numberType": "NUMBER",
203
+ "numberCount": 1,
204
+ "type": "FLOAT"
205
+ },
206
+ "gnomAD_FAF95": {
207
+ "label": "gnomAD FAF95",
208
+ "description": "gnomAD filter allele frequency (95% confidence)",
209
+ "numberType": "NUMBER",
210
+ "numberCount": 1,
211
+ "type": "FLOAT"
212
+ },
213
+ "gnomAD_FAF99": {
214
+ "label": "gnomAD FAF99",
215
+ "description": "gnomAD filter allele frequency (99% confidence)",
216
+ "numberType": "NUMBER",
217
+ "numberCount": 1,
218
+ "type": "FLOAT"
219
+ },
220
+ "gnomAD_HN": {
221
+ "label": "gnomAD HN",
222
+ "description": "gnomAD number of homozygotes",
223
+ "numberType": "NUMBER",
224
+ "numberCount": 1,
225
+ "type": "INTEGER"
226
+ },
227
+ "gnomAD_SRC": {
228
+ "label": "gnomAD SRC",
229
+ "description": "gnomAD source (E=exomes, G=genomes, T=total)",
230
+ "numberType": "NUMBER",
231
+ "numberCount": 1,
232
+ "type": "CATEGORICAL",
233
+ "categories": [
234
+ "E",
235
+ "G",
236
+ "T"
237
+ ]
238
+ },
239
+ "gnomAD_QC": {
240
+ "label": "gnomAD QC",
241
+ "description": "gnomAD quality control filters that failed",
242
+ "numberType": "OTHER",
243
+ "separator": "&",
244
+ "type": "STRING"
245
+ },
246
+ "HGNC_ID": {
247
+ "label": "HGNC ID",
248
+ "description": "The HGNC gene ID",
249
+ "numberType": "NUMBER",
250
+ "numberCount": 1,
251
+ "type": "INTEGER"
252
+ },
253
+ "HGVSc": {
254
+ "label": "HGVS C",
255
+ "description": "HGVS nomenclature: coding DNA reference sequence",
256
+ "numberType": "NUMBER",
257
+ "numberCount": 1,
258
+ "type": "STRING"
259
+ },
260
+ "HGVSp": {
261
+ "label": "HGVS P",
262
+ "description": "HGVS nomenclature: protein reference sequence",
263
+ "numberType": "NUMBER",
264
+ "numberCount": 1,
265
+ "type": "STRING"
266
+ },
267
+ "HPO": {
268
+ "label": "HPO",
269
+ "description": "Human phenotype ontology matches.",
270
+ "numberType": "OTHER",
271
+ "separator": "&",
272
+ "type": "STRING"
273
+ },
274
+ "IMPACT": {
275
+ "label": "Impact",
276
+ "description": "The Impact as predicted by VEP",
277
+ "numberType": "NUMBER",
278
+ "numberCount": 1,
279
+ "type": "CATEGORICAL",
280
+ "categories": [
281
+ "LOW",
282
+ "MODERATE",
283
+ "HIGH",
284
+ "MODIFIER"
285
+ ],
286
+ "required": true
287
+ },
288
+ "IncompletePenetrance": {
289
+ "label": "Gene: Inc.Pen.",
290
+ "description": "The gene is associated with Incomplete Penetrance (1:true)",
291
+ "numberType": "NUMBER",
292
+ "numberCount": 1,
293
+ "type": "STRING"
294
+ },
295
+ "InheritanceModesGene": {
296
+ "label": "Inh.Pat.",
297
+ "description": "Inheritance pattern",
298
+ "numberType": "OTHER",
299
+ "separator": "&",
300
+ "type": "STRING"
301
+ },
302
+ "ncER": {
303
+ "label": "ncER",
304
+ "description": "Non-coding essential regulation, from: 0(probably not essential for regulation) to 100 (probably essential for regulation).",
305
+ "numberType": "NUMBER",
306
+ "numberCount": 1,
307
+ "type": "FLOAT"
308
+ },
309
+ "PHENO": {
310
+ "label": "Pheno",
311
+ "description": "Phenotype match.",
312
+ "numberType": "OTHER",
313
+ "separator": "&",
314
+ "type": "INTEGER"
315
+ },
316
+ "PICK": {
317
+ "label": "PICK",
318
+ "description": "Boolean indicating if this is the VEP picked transcript.",
319
+ "numberType": "NUMBER",
320
+ "numberCount": 1,
321
+ "type": "INTEGER"
322
+ },
323
+ "PolyPhen": {
324
+ "label": "PolyPhen",
325
+ "description": "PolyPhen score.",
326
+ "numberType": "NUMBER",
327
+ "numberCount": 1,
328
+ "type": "FLOAT"
329
+ },
330
+ "Protein_position": {
331
+ "label": "Protein pos",
332
+ "description": "Position within the protein.",
333
+ "numberType": "NUMBER",
334
+ "numberCount": 1,
335
+ "type": "STRING"
336
+ },
337
+ "PUBMED": {
338
+ "label": "PubMed",
339
+ "description": "PubMed citations",
340
+ "numberType": "OTHER",
341
+ "separator": "&",
342
+ "type": "INTEGER"
343
+ },
344
+ "SIFT": {
345
+ "label": "SIFT",
346
+ "description": "SIFT score.",
347
+ "numberType": "NUMBER",
348
+ "numberCount": 1,
349
+ "type": "FLOAT"
350
+ },
351
+ "SOMATIC": {
352
+ "label": "Somatic",
353
+ "description": "Somatic.",
354
+ "numberType": "OTHER",
355
+ "separator": "&",
356
+ "type": "INTEGER"
357
+ },
358
+ "SpliceAI_pred_DS_AG": {
359
+ "label": "SpliceAI AG",
360
+ "description": "SpliceAI Delta score (acceptor gain).",
361
+ "numberType": "NUMBER",
362
+ "numberCount": 1,
363
+ "type": "FLOAT"
364
+ },
365
+ "SpliceAI_pred_DS_AL": {
366
+ "label": "SpliceAI AL",
367
+ "description": "SpliceAI Delta score (acceptor loss).",
368
+ "numberType": "NUMBER",
369
+ "numberCount": 1,
370
+ "type": "FLOAT"
371
+ },
372
+ "SpliceAI_pred_DS_DG": {
373
+ "label": "SpliceAI DG",
374
+ "description": "SpliceAI Delta score (donor gain).",
375
+ "numberType": "NUMBER",
376
+ "numberCount": 1,
377
+ "type": "FLOAT"
378
+ },
379
+ "SpliceAI_pred_DS_DL": {
380
+ "label": "SpliceAI DL",
381
+ "description": "SpliceAI Delta score (donor loss).",
382
+ "numberType": "NUMBER",
383
+ "numberCount": 1,
384
+ "type": "FLOAT"
385
+ },
386
+ "STRAND": {
387
+ "label": "Strand",
388
+ "description": "The strand of the gene (0=- 1=+).",
389
+ "numberType": "NUMBER",
390
+ "numberCount": 1,
391
+ "type": "INTEGER"
392
+ },
393
+ "SYMBOL": {
394
+ "label": "Gene",
395
+ "description": "Gene symbol",
396
+ "numberType": "NUMBER",
397
+ "numberCount": 1,
398
+ "type": "STRING"
399
+ },
400
+ "VIPC": {
401
+ "label": "VIP",
402
+ "description": "VIP classification",
403
+ "numberType": "NUMBER",
404
+ "numberCount": 1,
405
+ "type": "STRING",
406
+ "required": true
407
+ },
408
+ "VIPL": {
409
+ "label": "VIP labels",
410
+ "description": "VIP decision tree labels",
411
+ "numberType": "NUMBER",
412
+ "numberCount": 1,
413
+ "type": "STRING"
414
+ },
415
+ "VIPP": {
416
+ "label": "VIP path",
417
+ "description": "VIP decision tree path",
418
+ "numberType": "OTHER",
419
+ "separator": "&",
420
+ "type": "STRING",
421
+ "required": true
422
+ },
423
+ "VKGL_CL": {
424
+ "label": "VKGL",
425
+ "description": "VKGL consensus classification",
426
+ "numberType": "NUMBER",
427
+ "numberCount": 1,
428
+ "type": "CATEGORICAL",
429
+ "categories": [
430
+ "B",
431
+ "LB",
432
+ "VUS",
433
+ "LP",
434
+ "P"
435
+ ]
436
+ },
437
+ "VKGL_UMCG": {
438
+ "label": "MVL",
439
+ "description": "UMCG managed variant list classification",
440
+ "numberType": "NUMBER",
441
+ "numberCount": 1,
442
+ "type": "CATEGORICAL",
443
+ "categories": [
444
+ "B",
445
+ "LB",
446
+ "VUS",
447
+ "LP",
448
+ "P"
449
+ ]
450
+ }
451
+ }
452
+ }
453
+ }
454
+ }
@@ -27,6 +27,7 @@ import fastaUrl_chrM_15075_15575 from "./fasta/chrM-15075-15575.fasta.gz.blob";
27
27
  import fastaUrl_chrX_49075112_49075612 from "./fasta/chrX-49075112-49075612.fasta.gz.blob";
28
28
  import fastaUrl_chrY_2787350_2787850 from "./fasta/chrY-2787350-2787850.fasta.gz.blob";
29
29
  import genesUrl from "./genes.gff.gz.blob";
30
+ import vcfMetaJson from "./field_metadata.json";
30
31
  import vcfUrlFamily from "./vcf/family.vcf.blob";
31
32
  import vcfUrlNoVep from "./vcf/no_vep.vcf.blob";
32
33
  import vcfUrlSamples0 from "./vcf/samples_0.vcf.blob";
@@ -36,11 +37,12 @@ import vcfUrlSamples100 from "./vcf/samples_100.vcf.blob";
36
37
  import { fetchAsBytes } from "../utils";
37
38
  import decisionTreeJson from "./decisionTree.json";
38
39
  import { DecisionTree } from "@molgenis/vip-report-api/src/Api";
40
+ import { Metadata } from "@molgenis/vip-report-vcf/src/FieldMetadata";
39
41
 
40
42
  export const cram = await fetchAsBytes(cramUrl as string);
41
43
  export const crai = await fetchAsBytes(craiUrl as string);
42
44
 
43
- export const decisionTree: DecisionTree = decisionTreeJson as DecisionTree;
45
+ export const decisionTree: DecisionTree = decisionTreeJson as unknown as DecisionTree;
44
46
 
45
47
  export const fastaGz = {
46
48
  "chr1:9982230-9982730": await fetchAsBytes(fastaUrl_chr1_9982230_9982730 as string),
@@ -73,6 +75,8 @@ export const fastaGz = {
73
75
 
74
76
  export const genesGz = await fetchAsBytes(genesUrl as string);
75
77
 
78
+ export const vcfMeta = vcfMetaJson as unknown as Metadata;
79
+
76
80
  export const vcfFamily = await fetchAsBytes(vcfUrlFamily as string);
77
81
 
78
82
  export const vcfNoVep = await fetchAsBytes(vcfUrlNoVep as string);
@@ -21,6 +21,7 @@ import {
21
21
  fastaGz as fastaGzGRCh37,
22
22
  genesGz as genesGzGRCh37,
23
23
  samplesFamily as samplesFamilyGRCh37,
24
+ vcfMeta as vcfMetaGRCh37,
24
25
  vcfFamily as vcfFamilyGRCh37,
25
26
  vcfNoVep as vcfNoVepGRCh37,
26
27
  vcfSamples0 as vcfSamples0GRCh37,
@@ -35,6 +36,7 @@ import {
35
36
  fastaGz as fastaGzGRCh38,
36
37
  genesGz as genesGzGRCh38,
37
38
  samplesFamily as samplesFamilyGRCh38,
39
+ vcfMeta as vcfMetaGRCh38,
38
40
  vcfFamily as vcfFamilyGRCh38,
39
41
  vcfNoVep as vcfNoVepGRCh38,
40
42
  vcfSamples0 as vcfSamples0GRCh38,
@@ -142,6 +144,7 @@ export class MockApiClient implements Api {
142
144
  },
143
145
  },
144
146
  decisionTree: decisionTreeGRCh37,
147
+ vcfMeta: vcfMetaGRCh37,
145
148
  };
146
149
 
147
150
  const mockReportDataNoVep: ReportData = {
@@ -170,6 +173,7 @@ export class MockApiClient implements Api {
170
173
  },
171
174
  },
172
175
  decisionTree: decisionTreeGRCh37,
176
+ vcfMeta: vcfMetaGRCh37,
173
177
  };
174
178
 
175
179
  const mockReportData1Sample: ReportData = {
@@ -198,6 +202,7 @@ export class MockApiClient implements Api {
198
202
  },
199
203
  },
200
204
  decisionTree: decisionTreeGRCh37,
205
+ vcfMeta: vcfMetaGRCh37,
201
206
  };
202
207
 
203
208
  const mockReportData100Samples: ReportData = {
@@ -220,6 +225,7 @@ export class MockApiClient implements Api {
220
225
  genesGz: genesGzGRCh37,
221
226
  },
222
227
  decisionTree: decisionTreeGRCh37,
228
+ vcfMeta: vcfMetaGRCh37,
223
229
  };
224
230
 
225
231
  const mockReportDataNoSample: ReportData = {
@@ -242,6 +248,7 @@ export class MockApiClient implements Api {
242
248
  genesGz: genesGzGRCh37,
243
249
  },
244
250
  decisionTree: decisionTreeGRCh37,
251
+ vcfMeta: vcfMetaGRCh37,
245
252
  };
246
253
 
247
254
  const mockReportDataFamilyGRCh38: ReportData = {
@@ -270,6 +277,7 @@ export class MockApiClient implements Api {
270
277
  },
271
278
  },
272
279
  decisionTree: decisionTreeGRCh38,
280
+ vcfMeta: vcfMetaGRCh38,
273
281
  };
274
282
 
275
283
  const mockReportDataNoVepGRCh38: ReportData = {
@@ -298,6 +306,7 @@ export class MockApiClient implements Api {
298
306
  },
299
307
  },
300
308
  decisionTree: decisionTreeGRCh38,
309
+ vcfMeta: vcfMetaGRCh38,
301
310
  };
302
311
 
303
312
  const mockReportData1SampleGRCh38: ReportData = {
@@ -326,6 +335,7 @@ export class MockApiClient implements Api {
326
335
  },
327
336
  },
328
337
  decisionTree: decisionTreeGRCh38,
338
+ vcfMeta: vcfMetaGRCh38,
329
339
  };
330
340
 
331
341
  const mockReportData100SamplesGRCh38: ReportData = {
@@ -348,6 +358,7 @@ export class MockApiClient implements Api {
348
358
  genesGz: genesGzGRCh38,
349
359
  },
350
360
  decisionTree: decisionTreeGRCh38,
361
+ vcfMeta: vcfMetaGRCh38,
351
362
  };
352
363
 
353
364
  const mockReportDataNoSampleGRCh38: ReportData = {
@@ -370,6 +381,7 @@ export class MockApiClient implements Api {
370
381
  genesGz: genesGzGRCh38,
371
382
  },
372
383
  decisionTree: decisionTreeGRCh38,
384
+ vcfMeta: vcfMetaGRCh38,
373
385
  };
374
386
 
375
387
  const datasets: { [key: string]: ReportData } = {};
@@ -388,7 +400,7 @@ export class MockApiClient implements Api {
388
400
 
389
401
  private createApiClient(id: string): Api {
390
402
  const reportData = this.datasets[id];
391
- const vcf = parseVcf(new TextDecoder().decode(reportData.binary.vcf));
403
+ const vcf = parseVcf(new TextDecoder().decode(reportData.binary.vcf), reportData.vcfMeta);
392
404
  reportData.metadata.records = vcf.metadata;
393
405
  reportData.data.records = vcf.data;
394
406
 
@@ -196,7 +196,7 @@ export const SampleVariants: Component<{
196
196
  {
197
197
  selector: selectorVi,
198
198
  operator: "has_any",
199
- args: ["AD", "AR", "AR_C", "XLD", "XLR"],
199
+ args: ["AD", "AR", "AR_C", "XLD", "XLR", "YL", "MT"],
200
200
  },
201
201
  selectorKey(selectorVi),
202
202
  );
package/vite.config.mts CHANGED
@@ -9,10 +9,9 @@ export default defineConfig({
9
9
  charset: "ascii",
10
10
  },
11
11
  build: {
12
- polyfillDynamicImport: false,
13
12
  // inline plugin build options
14
13
  rollupOptions: {
15
- input: ["./index.html", "./node_modules/@molgenis/vite-plugin-inline/dist/loader.js"],
14
+ input: ["./index.html", "./node_modules/@molgenis/vite-plugin-inline/dist/loader.mjs"],
16
15
  output: {
17
16
  manualChunks: undefined,
18
17
  },