@molgenis/vip-report-template 8.2.2 → 8.3.0
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/scripts/validateConfig/schema.ts +2 -0
- package/src/components/field/composed/FieldComposed.tsx +10 -0
- package/src/components/field/composed/FieldConfidenceInterval.tsx +14 -0
- package/src/components/field/composed/FieldGenotypeStr.tsx +3 -1
- package/src/components/field/composed/FieldSpanningReads.tsx +14 -0
- package/src/mocks/GRCh38/field_metadata.json +11 -13
- package/src/mocks/GRCh38/vcf/str.db.blob +0 -0
- package/src/mocks/GRCh38/vcf/str.vcf +179 -177
- package/src/mocks/config_cram.json +9 -4
- package/src/mocks/config_default_values.json +6 -2
- package/src/mocks/config_vcf.json +4 -4
- package/src/types/config.d.ts +2 -0
- package/src/types/configCellComposed.d.ts +14 -2
- package/src/utils/config/configCellsComposed.ts +89 -15
- package/src/utils/config/configValidator.precompiled.ts +80 -0
- package/tests/utils/config/configCellsComposed.test.ts +44 -32
|
@@ -242,22 +242,23 @@ describe("config cells composed", () => {
|
|
|
242
242
|
};
|
|
243
243
|
|
|
244
244
|
const fieldGt = { id: "FORMAT/GT" };
|
|
245
|
-
const fieldRepCn = { id: "FORMAT/REPCN" };
|
|
246
245
|
const fieldViab = { id: "FORMAT/VIAB" };
|
|
247
246
|
const fieldSvType = { id: "INFO/SVTYPE" };
|
|
248
|
-
const
|
|
247
|
+
const fieldRuCall = { id: "INFO/RU_CALL" };
|
|
248
|
+
const fieldRu = { id: "INFO/RU_NR" };
|
|
249
249
|
const fieldRuMatch = { id: "INFO/RUMATCH" };
|
|
250
250
|
const fieldDisplayRu = { id: "INFO/DisplayRU" };
|
|
251
|
-
vi.mocked(getSampleFields).mockReturnValue([fieldGt,
|
|
251
|
+
vi.mocked(getSampleFields).mockReturnValue([fieldGt, fieldViab] as FieldMetadataWrapper[]);
|
|
252
252
|
vi.mocked(getInfoFields).mockReturnValue([
|
|
253
253
|
fieldSvType,
|
|
254
254
|
fieldRu,
|
|
255
255
|
fieldRuMatch,
|
|
256
256
|
fieldDisplayRu,
|
|
257
|
+
fieldRuCall
|
|
257
258
|
] as FieldMetadataWrapper[]);
|
|
258
259
|
vi.mocked(getInfoValueCount).mockReturnValue(1);
|
|
259
|
-
vi.mocked(getSampleValues).mockReturnValue([0, 1
|
|
260
|
-
vi.mocked(getInfoValues).mockReturnValue([3, 4, 5, 6]);
|
|
260
|
+
vi.mocked(getSampleValues).mockReturnValue([0, 1]);
|
|
261
|
+
vi.mocked(getInfoValues).mockReturnValue([2, 3, 4, 5, "6"]);
|
|
261
262
|
|
|
262
263
|
const cell = initConfigCellComposed(config, variantType, metadata, sample) as ConfigCellCustom<CellValueCustom>;
|
|
263
264
|
expect(cell.type).toStrictEqual("composed");
|
|
@@ -267,20 +268,22 @@ describe("config cells composed", () => {
|
|
|
267
268
|
expect(cell.valueCount(record)).toStrictEqual(1);
|
|
268
269
|
expect(cell.value(record, 1)).toStrictEqual({
|
|
269
270
|
altAlleles: ["C", "T"],
|
|
270
|
-
displayRepeatUnit:
|
|
271
|
+
displayRepeatUnit: 5,
|
|
271
272
|
genotype: 0,
|
|
272
273
|
refAllele: "A",
|
|
273
|
-
repeatCount:
|
|
274
|
-
repeatUnitMatch:
|
|
275
|
-
repeatUnitValue:
|
|
276
|
-
svType:
|
|
277
|
-
viab:
|
|
274
|
+
repeatCount: "6",
|
|
275
|
+
repeatUnitMatch: 4,
|
|
276
|
+
repeatUnitValue: 3,
|
|
277
|
+
svType: 2,
|
|
278
|
+
viab: 1,
|
|
278
279
|
});
|
|
279
280
|
|
|
280
|
-
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "
|
|
281
|
-
expect(getInfoFields).toHaveBeenCalledWith(
|
|
282
|
-
|
|
283
|
-
|
|
281
|
+
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "VIAB");
|
|
282
|
+
expect(getInfoFields).toHaveBeenCalledWith(
|
|
283
|
+
vcfMetadata, "SVTYPE", "RU_CALL", "RU_MATCH", "DisplayRU", "RU_NR",
|
|
284
|
+
);
|
|
285
|
+
expect(getSampleValues).toHaveBeenCalledWith(sample, record, 1, fieldGt, fieldViab);
|
|
286
|
+
expect(getInfoValues).toHaveBeenCalledWith(record, 1, fieldSvType, fieldRu, fieldRuMatch, fieldDisplayRu, fieldRuCall);
|
|
284
287
|
});
|
|
285
288
|
|
|
286
289
|
test("genotype with required fields", () => {
|
|
@@ -314,16 +317,18 @@ describe("config cells composed", () => {
|
|
|
314
317
|
viab: undefined,
|
|
315
318
|
});
|
|
316
319
|
|
|
317
|
-
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "
|
|
318
|
-
expect(getInfoFields).toHaveBeenCalledWith(
|
|
319
|
-
|
|
320
|
-
|
|
320
|
+
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "VIAB");
|
|
321
|
+
expect(getInfoFields).toHaveBeenCalledWith(
|
|
322
|
+
vcfMetadata, "SVTYPE", "RU_CALL", "RU_MATCH", "DisplayRU", "RU_NR",
|
|
323
|
+
);
|
|
324
|
+
expect(getSampleValues).toHaveBeenCalledWith(sample, record, 1, fieldGt, undefined);
|
|
325
|
+
expect(getInfoValues).toHaveBeenCalledWith(record, 1, undefined, undefined, undefined, undefined, undefined);
|
|
321
326
|
});
|
|
322
327
|
|
|
323
328
|
test("genotype without required fields", () => {
|
|
324
329
|
vi.mocked(getSampleFields).mockReturnValue([undefined, undefined, undefined, undefined]);
|
|
325
330
|
expect(initConfigCellComposed(configBase, variantType, metadata, sample)).toStrictEqual(null);
|
|
326
|
-
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "
|
|
331
|
+
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "VIAB");
|
|
327
332
|
});
|
|
328
333
|
|
|
329
334
|
test("genotype without sample", () => {
|
|
@@ -346,10 +351,10 @@ describe("config cells composed", () => {
|
|
|
346
351
|
|
|
347
352
|
const fieldGt = { id: "FORMAT/GT" };
|
|
348
353
|
vi.mocked(getSampleFields).mockReturnValue([fieldGt, undefined, undefined] as FieldMetadataWrapper[]);
|
|
349
|
-
vi.mocked(getInfoFields).mockReturnValue([undefined, undefined, undefined, undefined]);
|
|
354
|
+
vi.mocked(getInfoFields).mockReturnValue([undefined, undefined, undefined, undefined, undefined]);
|
|
350
355
|
vi.mocked(getInfoValueCount).mockReturnValue(1);
|
|
351
356
|
vi.mocked(getSampleValues).mockReturnValue([0, undefined, undefined]);
|
|
352
|
-
vi.mocked(getInfoValues).mockReturnValue([undefined, undefined, undefined, undefined]);
|
|
357
|
+
vi.mocked(getInfoValues).mockReturnValue([undefined, undefined, undefined, undefined, undefined]);
|
|
353
358
|
|
|
354
359
|
const cell = initConfigCellComposed(
|
|
355
360
|
configBase,
|
|
@@ -374,8 +379,10 @@ describe("config cells composed", () => {
|
|
|
374
379
|
viab: undefined,
|
|
375
380
|
});
|
|
376
381
|
|
|
377
|
-
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "
|
|
378
|
-
expect(getInfoFields).toHaveBeenCalledWith(
|
|
382
|
+
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "VIAB");
|
|
383
|
+
expect(getInfoFields).toHaveBeenCalledWith(
|
|
384
|
+
vcfMetadata, "SVTYPE", "RU_CALL", "RU_MATCH", "DisplayRU", "RU_NR",
|
|
385
|
+
);
|
|
379
386
|
expect(getSampleValues).toHaveBeenCalledWith(
|
|
380
387
|
{
|
|
381
388
|
item: {
|
|
@@ -392,9 +399,8 @@ describe("config cells composed", () => {
|
|
|
392
399
|
1,
|
|
393
400
|
fieldGt,
|
|
394
401
|
undefined,
|
|
395
|
-
undefined,
|
|
396
402
|
);
|
|
397
|
-
expect(getInfoValues).toHaveBeenCalledWith(record, 1, undefined, undefined, undefined, undefined);
|
|
403
|
+
expect(getInfoValues).toHaveBeenCalledWith(record, 1, undefined, undefined, undefined, undefined, undefined);
|
|
398
404
|
});
|
|
399
405
|
|
|
400
406
|
test("genotype_maternal no sample", () => {
|
|
@@ -425,10 +431,10 @@ describe("config cells composed", () => {
|
|
|
425
431
|
|
|
426
432
|
const fieldGt = { id: "FORMAT/GT" };
|
|
427
433
|
vi.mocked(getSampleFields).mockReturnValue([fieldGt, undefined, undefined] as FieldMetadataWrapper[]);
|
|
428
|
-
vi.mocked(getInfoFields).mockReturnValue([undefined, undefined, undefined, undefined]);
|
|
434
|
+
vi.mocked(getInfoFields).mockReturnValue([undefined, undefined, undefined, undefined, undefined]);
|
|
429
435
|
vi.mocked(getInfoValueCount).mockReturnValue(1);
|
|
430
436
|
vi.mocked(getSampleValues).mockReturnValue([0, undefined, undefined]);
|
|
431
|
-
vi.mocked(getInfoValues).mockReturnValue([undefined, undefined, undefined, undefined]);
|
|
437
|
+
vi.mocked(getInfoValues).mockReturnValue([undefined, undefined, undefined, undefined, undefined]);
|
|
432
438
|
|
|
433
439
|
const cell = initConfigCellComposed(
|
|
434
440
|
configBase,
|
|
@@ -453,8 +459,15 @@ describe("config cells composed", () => {
|
|
|
453
459
|
viab: undefined,
|
|
454
460
|
});
|
|
455
461
|
|
|
456
|
-
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "
|
|
457
|
-
expect(getInfoFields).toHaveBeenCalledWith(
|
|
462
|
+
expect(getSampleFields).toHaveBeenCalledWith(vcfMetadata, "GT", "VIAB");
|
|
463
|
+
expect(getInfoFields).toHaveBeenCalledWith(
|
|
464
|
+
vcfMetadata,
|
|
465
|
+
"SVTYPE",
|
|
466
|
+
"RU_CALL",
|
|
467
|
+
"RU_MATCH",
|
|
468
|
+
"DisplayRU",
|
|
469
|
+
"RU_NR"
|
|
470
|
+
);
|
|
458
471
|
expect(getSampleValues).toHaveBeenCalledWith(
|
|
459
472
|
{
|
|
460
473
|
item: {
|
|
@@ -471,9 +484,8 @@ describe("config cells composed", () => {
|
|
|
471
484
|
1,
|
|
472
485
|
fieldGt,
|
|
473
486
|
undefined,
|
|
474
|
-
undefined,
|
|
475
487
|
);
|
|
476
|
-
expect(getInfoValues).toHaveBeenCalledWith(record, 1, undefined, undefined, undefined, undefined);
|
|
488
|
+
expect(getInfoValues).toHaveBeenCalledWith(record, 1, undefined, undefined, undefined, undefined, undefined);
|
|
477
489
|
});
|
|
478
490
|
|
|
479
491
|
test("genotype_paternal no sample", () => {
|