@molgenis/vip-report-template 2.6.2 → 2.7.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/.scannerwork/css-bundle/stylelintconfig.json +1 -1
- package/.scannerwork/report-task.txt +5 -5
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_AnnotationsNav_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_Gene_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordCommonDetails_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoDetailsItemValue_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoDetailsItem_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoDetails_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoUnnestedDetails_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordTable_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_SampleNavigation_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_SamplePedigree_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_TreeVisualisation_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_annotation_AnnotationControl_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_globals_utils_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_store_actions_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_store_getters_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_store_mutations_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_types_Consequence_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_types_Gene_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_utils_treeBuilder_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_utils_treeDrawer_ts_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_views_Samples_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_views_VcfViewer_vue_1_1_P1_ENTRY.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_AnnotationsNav_vue_55_20_FE_92_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordCommonDetails_vue_80_11_FE_119_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordCommonDetails_vue_86_10_FE_120_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetailsItemValue_vue_110_23_FE_34_0.ucfg → src_components_RecordInfoDetailsItemValue_vue_114_23_FE_34_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetailsItemValue_vue_119_13_FE_35_val.ucfg → src_components_RecordInfoDetailsItemValue_vue_123_13_FE_35_val.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetailsItemValue_vue_147_16_FE_36_val.ucfg → src_components_RecordInfoDetailsItemValue_vue_151_16_FE_36_val.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetailsItemValue_vue_90_19_FE_32_0.ucfg → src_components_RecordInfoDetailsItemValue_vue_94_19_FE_32_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetailsItemValue_vue_95_22_FE_33_0.ucfg → src_components_RecordInfoDetailsItemValue_vue_99_22_FE_33_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordInfoDetails_vue_44_17_FE_101_thi_tha.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordInfoDetails_vue_47_18_FE_102_met.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordInfoUnnestedDetails_vue_39_11_FE_46_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordInfoUnnestedDetails_vue_46_10_FE_47_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_297_19_FE_2_0.ucfg → src_components_RecordTable_vue_298_19_FE_2_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_300_11_FE_3_0.ucfg → src_components_RecordTable_vue_301_11_FE_3_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_345_13_FE_4_ctx.ucfg → src_components_RecordTable_vue_346_13_FE_4_ctx.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_353_44_A_9_0.ucfg → src_components_RecordTable_vue_354_44_A_9_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_360_9_FE_5_rec_ind_but.ucfg → src_components_RecordTable_vue_361_9_FE_5_rec_ind_but.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_365_19_FE_6_0.ucfg → src_components_RecordTable_vue_366_19_FE_6_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_369_16_FE_7_0.ucfg → src_components_RecordTable_vue_370_16_FE_7_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_402_22_FE_8_0.ucfg → src_components_RecordTable_vue_403_22_FE_8_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_409_33_FE_9_0.ucfg → src_components_RecordTable_vue_410_33_FE_9_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_436_28_FE_10_0.ucfg → src_components_RecordTable_vue_437_28_FE_10_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_443_31_FE_11_0.ucfg → src_components_RecordTable_vue_444_31_FE_11_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_450_24_FE_12_0.ucfg → src_components_RecordTable_vue_451_24_FE_12_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_453_32_FE_13_0.ucfg → src_components_RecordTable_vue_454_32_FE_13_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_455_18_A_10_phe.ucfg → src_components_RecordTable_vue_456_18_A_10_phe.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_456_14_A_11_phe.ucfg → src_components_RecordTable_vue_457_14_A_11_phe.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_463_15_FE_14_ctx.ucfg → src_components_RecordTable_vue_464_15_FE_14_ctx.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_471_19_A_12_a_b.ucfg → src_components_RecordTable_vue_472_19_A_12_a_b.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_480_19_A_13_a_b.ucfg → src_components_RecordTable_vue_481_19_A_13_a_b.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_504_19_FE_15_rec.ucfg → src_components_RecordTable_vue_505_19_FE_15_rec.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_510_41_A_14_con.ucfg → src_components_RecordTable_vue_511_41_A_14_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordTable_vue_515_41_A_15_con.ucfg +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_519_43_A_16_con.ucfg → src_components_RecordTable_vue_527_43_A_16_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_524_41_A_17_con.ucfg → src_components_RecordTable_vue_532_41_A_17_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_528_41_A_18_con.ucfg → src_components_RecordTable_vue_536_41_A_18_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_532_41_A_19_con.ucfg → src_components_RecordTable_vue_540_41_A_19_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_543_41_A_20_con.ucfg → src_components_RecordTable_vue_551_41_A_20_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_547_41_A_21_con.ucfg → src_components_RecordTable_vue_555_41_A_21_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_551_41_A_22_con.ucfg → src_components_RecordTable_vue_559_41_A_22_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_555_41_A_23_con.ucfg → src_components_RecordTable_vue_563_41_A_23_con.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_567_11_FE_16_0.ucfg → src_components_RecordTable_vue_575_11_FE_16_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_571_33_FE_17_0.ucfg → src_components_RecordTable_vue_579_33_FE_17_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_582_41_FE_20_0.ucfg → src_components_RecordTable_vue_582_44_FE_18_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_586_40_FE_21_0.ucfg → src_components_RecordTable_vue_586_46_FE_19_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_578_46_FE_19_0.ucfg → src_components_RecordTable_vue_590_41_FE_20_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_574_44_FE_18_0.ucfg → src_components_RecordTable_vue_594_40_FE_21_0.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_23_19_FE_49_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_31_10_FE_50_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_34_13_FE_51_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_37_13_FE_52_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_40_15_FE_53_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_SamplePedigree_vue_30_19_FE_103_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_SamplePedigree_vue_34_19_FE_104_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_124_14_FE_64_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_127_13_FE_65_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_130_10_FE_66_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_133_10_FE_67_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_153_14_FE_72_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_162_14_FE_73_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_167_11_FE_74_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_170_11_FE_75_pro.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_176_16_FE_76_nod_g.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_177_21_A_27_nod.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_181_16_FE_77_edg_g.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_186_18_FE_78_nod_edg.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_199_14_FE_79_g.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_209_15_FE_80_svg_min_max.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_225_11_FE_81_nod_edg.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_78_7_FE_57_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_annotation_AnnotationControl_vue_27_13_FE_89_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_122_1_FD_2_getInfoConsequences.ucfg → src_globals_utils_ts_132_1_FD_2_getInfoConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_216_1_FD_3_hasVepConsequences.ucfg → src_globals_utils_ts_232_1_FD_3_hasVepConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_221_1_FD_4_getVepConsequences.ucfg → src_globals_utils_ts_237_1_FD_4_getVepConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_249_1_FD_5_hasSnpEffConsequences.ucfg → src_globals_utils_ts_266_1_FD_5_hasSnpEffConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_254_1_FD_6_getSnpEffConsequences.ucfg → src_globals_utils_ts_271_1_FD_6_getSnpEffConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_345_1_FD_7_sortConsequences.ucfg → src_globals_utils_ts_363_1_FD_7_sortConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_375_8_FD_8_getConsequences.ucfg → src_globals_utils_ts_393_8_FD_8_getConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_387_1_FD_9_getVepPhenotypesIndex.ucfg → src_globals_utils_ts_405_1_FD_9_getVepPhenotypesIndex.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_403_8_FD_10_getPhenotypesSelector.ucfg → src_globals_utils_ts_421_8_FD_10_getPhenotypesSelector.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_411_1_FD_11_getVepInheritanceModesGeneIndex.ucfg → src_globals_utils_ts_429_1_FD_11_getVepInheritanceModesGeneIndex.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_427_8_FD_12_getInheritanceModesGeneSelector.ucfg → src_globals_utils_ts_445_8_FD_12_getInheritanceModesGeneSelector.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_435_8_FD_13_getVariant.ucfg → src_globals_utils_ts_453_8_FD_13_getVariant.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_53_1_FD_0_createConsequence.ucfg → src_globals_utils_ts_59_1_FD_0_createConsequence.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_globals_utils_ts_84_1_FD_1_createConsequences.ucfg → src_globals_utils_ts_92_1_FD_1_createConsequences.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_100_27_FE_135_Ptr_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_103_26_FE_136_Ptr_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_106_11_FE_137_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_110_13_FE_138_Ptr_loc.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_113_13_FE_139_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_117_9_FE_140_Ptr_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_120_24_FE_141_0.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_129_8_FD_14_setTestApi.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_25_21_FE_121_Ptr.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_29_24_FE_122_Ptr.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_40_20_FE_123_Ptr.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_45_21_FE_124_Ptr_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_57_24_FE_125_Ptr.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_67_20_FE_126_Ptr_par.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_71_15_FE_127_Ptr_rec.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_74_14_FE_128_Ptr_ale.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_77_20_FE_129_Ptr.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_80_21_FE_130_Ptr.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_83_20_FE_131_Ptr_ann.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_86_19_FE_132_Ptr_ann.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_94_30_FE_133_Ptr_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_actions_ts_97_32_FE_134_Ptr_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_125_24_A_83_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_146_31_A_85_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_167_32_A_87_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_180_27_A_88_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_193_26_A_89_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_23_18_A_70_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_23_36_A_71_id.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_29_19_A_73_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_42_19_A_75_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_55_20_A_77_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_7_12_A_69_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_85_14_A_78_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_88_20_A_79_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_94_24_A_80_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_97_18_A_81_sta.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_getters_ts_97_36_A_82_rec.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_10_13_FE_106_sta_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_13_20_FE_107_sta_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_17_30_FE_108_sta_phe.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_20_13_FE_109_sta_rec.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_24_20_FE_110_sta_rec.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_27_11_FE_111_sta_ale.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_32_14_FE_112_sta_ale.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_35_17_FE_113_sta_ann.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_38_30_FE_114_sta_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_41_32_FE_115_sta_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_44_27_FE_116_sta_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_47_26_FE_117_sta_val.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_store_mutations_ts_7_14_FE_105_sta_met.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeBuilder_ts_62_30_A_5_inp.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeBuilder_ts_64_40_A_6_key.ucfg +0 -0
- package/.scannerwork/ucfg2/js/{src_utils_treeBuilder_ts_73_44_A_7_cat.ucfg → src_utils_treeBuilder_ts_75_46_A_7_cat.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/{src_utils_treeBuilder_ts_81_33_A_8_k.ucfg → src_utils_treeBuilder_ts_96_33_A_8_k.ucfg} +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_109_32_A_49_svg_pro.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_113_24_A_50_thi_nex_thi_nex_xOf_yOf_bar.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_133_24_A_51_lab_fon_typ_fon.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_153_18_A_52_svg_x1_y1_x2_y2_str.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_16_41_A_33_fon.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_171_18_A_53_gEl_x_y_wid_hei_isE.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_192_18_A_54_gEl_x_y_lab_fon_nod.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_20_34_A_34_bar.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_210_25_A_55_svg.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_226_29_A_56_ele_can_can.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_234_23_A_57_bar_g_e_fon_val_off_svg.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_254_18_A_58_coo_bar_svg_nex_ind.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_273_26_A_59_svg_g_fon_gra_gra_hor.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_282_21_A_60_v.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_301_26_A_61_svg_g_bar_fon_gra_gra_hor.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_312_21_A_62_e.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_utils_treeDrawer_ts_43_26_A_39_y_ind_fon_lab.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_views_Samples_vue_29_10_FE_83_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_views_Samples_vue_40_40_A_30_sam.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_views_VcfViewer_vue_22_16_FE_98_0.ucfg +0 -0
- package/.travis.yml +5 -1
- package/README.md +1 -1
- package/package.json +4 -4
- package/src/components/Gene.vue +30 -0
- package/src/components/RecordInfoDetailsItem.vue +8 -1
- package/src/components/RecordInfoDetailsItemValue.vue +6 -2
- package/src/components/RecordTable.vue +16 -8
- package/src/globals/utils.ts +18 -0
- package/src/locales/en.json +2 -1
- package/src/mocks/apiDataMock.ts +1 -1
- package/src/types/Consequence.ts +2 -0
- package/src/types/DecisionTree.d.ts +2 -2
- package/src/types/Gene.ts +4 -0
- package/src/utils/treeBuilder.ts +28 -13
- package/tests/unit/globals/utils.spec.ts +15 -0
- package/tests/unit/utils/treeBuilder.spec.ts +54 -0
- package/.scannerwork/css-bundle/bin/server +0 -15
- package/.scannerwork/css-bundle/lib/src/server.d.ts +0 -14
- package/.scannerwork/css-bundle/lib/src/server.js +0 -83
- package/.scannerwork/css-bundle/lib/src/server.js.map +0 -1
- package/.scannerwork/css-bundle/lib/tsconfig.tsbuildinfo +0 -1369
- package/.scannerwork/css-bundle/package/package.json +0 -11
- package/.scannerwork/ucfg2/js/sonar_internal_aws_sam_handler.ucfg +0 -0
- package/.scannerwork/ucfg2/js/sonar_internal_serverless_handler.ucfg +0 -0
- package/.scannerwork/ucfg2/js/src_components_RecordTable_vue_514_41_A_15_con.ucfg +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<span>
|
|
3
|
+
<Anchor
|
|
4
|
+
:href="'https://www.omim.org/search?search=' + encodeURIComponent(value.symbol) + '&field=approved_gene_symbol'"
|
|
5
|
+
:text="value.symbol"
|
|
6
|
+
/>
|
|
7
|
+
<b-button pill
|
|
8
|
+
v-if="value.incompletePenetrance"
|
|
9
|
+
size="sm"
|
|
10
|
+
variant="info"
|
|
11
|
+
class="ml-2 p-0"
|
|
12
|
+
v-b-tooltip.click
|
|
13
|
+
:title="$t('incompletePenetrance')"
|
|
14
|
+
> <sup>IP</sup>
|
|
15
|
+
</b-button>
|
|
16
|
+
</span>
|
|
17
|
+
</template>
|
|
18
|
+
|
|
19
|
+
<script lang="ts">
|
|
20
|
+
import Vue, { PropType } from 'vue';
|
|
21
|
+
import Anchor from '@/components/Anchor.vue';
|
|
22
|
+
import { Gene } from '@/types/Gene';
|
|
23
|
+
|
|
24
|
+
export default Vue.extend({
|
|
25
|
+
components: { Anchor },
|
|
26
|
+
props: {
|
|
27
|
+
value: { type: Object as PropType<Gene> }
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
</script>
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<span v-if="metadata.number.type === 'NUMBER' && metadata.number.count === 1">
|
|
3
|
+
<span v-if="metadata.id === 'GeneObject'">
|
|
4
|
+
<Gene v-if="value.length > 0" :value="value" />
|
|
5
|
+
</span>
|
|
3
6
|
<RecordInfoDetailsItemValue v-if="value !== null" :metadataId="metadata.id" :value="value" :details="details" />
|
|
4
7
|
</span>
|
|
5
8
|
<span v-else>
|
|
6
9
|
<span v-if="metadata.id === 'PUBMED'">
|
|
7
10
|
<PubMedAnchor v-if="value.length > 0" :pubMedIds="value" />
|
|
8
11
|
</span>
|
|
12
|
+
<span v-else-if="metadata.id === 'GeneObject'">
|
|
13
|
+
<Gene v-if="value.length > 0" :value="value" />
|
|
14
|
+
</span>
|
|
9
15
|
<span v-else>
|
|
10
16
|
<span v-for="(item, index) in value" :key="index">
|
|
11
17
|
<RecordInfoDetailsItemValue v-if="value !== null" :metadataId="metadata.id" :value="item" :details="details" />
|
|
@@ -20,9 +26,10 @@ import Vue, { PropType } from 'vue';
|
|
|
20
26
|
import { Vcf } from '@molgenis/vip-report-api';
|
|
21
27
|
import RecordInfoDetailsItemValue from '@/components/RecordInfoDetailsItemValue.vue';
|
|
22
28
|
import PubMedAnchor from '@/components/PubMedAnchor.vue';
|
|
29
|
+
import Gene from '@/components/Gene.vue';
|
|
23
30
|
|
|
24
31
|
export default Vue.extend({
|
|
25
|
-
components: { PubMedAnchor, RecordInfoDetailsItemValue },
|
|
32
|
+
components: { Gene, PubMedAnchor, RecordInfoDetailsItemValue },
|
|
26
33
|
props: {
|
|
27
34
|
metadata: Object as PropType<Vcf.InfoMetadata>,
|
|
28
35
|
value: [String, Number, Boolean, Array, Object] as PropType<
|
|
@@ -9,7 +9,10 @@
|
|
|
9
9
|
:text="details ? value : value.replace(/_variant$/, '')"
|
|
10
10
|
/>
|
|
11
11
|
</span>
|
|
12
|
-
<span v-else-if="metadataId === '
|
|
12
|
+
<span v-else-if="metadataId === 'GeneObject'">
|
|
13
|
+
<Gene :value="value" />
|
|
14
|
+
</span>
|
|
15
|
+
<span v-else-if="metadataId === 'Gene_Name'">
|
|
13
16
|
<Anchor
|
|
14
17
|
:href="'https://www.omim.org/search?search=' + encodeURIComponent(value) + '&field=approved_gene_symbol'"
|
|
15
18
|
:text="value"
|
|
@@ -73,10 +76,11 @@
|
|
|
73
76
|
<script lang="ts">
|
|
74
77
|
import Vue, { PropType } from 'vue';
|
|
75
78
|
import Anchor from '@/components/Anchor.vue';
|
|
79
|
+
import Gene from '@/components/Gene.vue';
|
|
76
80
|
import { mapState } from 'vuex';
|
|
77
81
|
|
|
78
82
|
export default Vue.extend({
|
|
79
|
-
components: { Anchor },
|
|
83
|
+
components: { Anchor, Gene },
|
|
80
84
|
props: {
|
|
81
85
|
metadataId: String as PropType<string>,
|
|
82
86
|
value: [String, Number, Boolean, Object] as PropType<string | number | boolean | unknown>,
|
|
@@ -86,10 +86,10 @@
|
|
|
86
86
|
:values="data.item.expand ? data.item.effect.items : data.item.effect.items.slice(0, 1)"
|
|
87
87
|
/>
|
|
88
88
|
</template>
|
|
89
|
-
<template v-slot:cell(
|
|
89
|
+
<template v-slot:cell(gene)="data">
|
|
90
90
|
<RecordInfoDetailsItemMultiline
|
|
91
|
-
:metadata="data.item.
|
|
92
|
-
:values="data.item.expand ? data.item.
|
|
91
|
+
:metadata="data.item.gene.metadata"
|
|
92
|
+
:values="data.item.expand ? data.item.gene.items : data.item.gene.items.slice(0, 1)"
|
|
93
93
|
/>
|
|
94
94
|
</template>
|
|
95
95
|
<template v-slot:cell(inheritance)="data">
|
|
@@ -229,7 +229,7 @@ interface Row {
|
|
|
229
229
|
f: string[];
|
|
230
230
|
s: Vcf.RecordSample[];
|
|
231
231
|
effect?: unknown;
|
|
232
|
-
|
|
232
|
+
gene?: unknown;
|
|
233
233
|
inheritance?: unknown;
|
|
234
234
|
hgvsC?: unknown;
|
|
235
235
|
hgvsP?: unknown;
|
|
@@ -281,6 +281,7 @@ export default Vue.extend({
|
|
|
281
281
|
'isSamplesContainInheritance',
|
|
282
282
|
'isSamplesContainDenovo',
|
|
283
283
|
'isSamplesContainDepth',
|
|
284
|
+
'isRecordsContainIncompletePenetrance',
|
|
284
285
|
'sampleMaternal',
|
|
285
286
|
'samplePaternal'
|
|
286
287
|
]),
|
|
@@ -316,7 +317,7 @@ export default Vue.extend({
|
|
|
316
317
|
if (this.hasConsequences) {
|
|
317
318
|
fields.push({ key: 'expand', label: '', class: ['compact', 'align-top'] });
|
|
318
319
|
fields.push({ key: 'effect', label: 'effect' });
|
|
319
|
-
fields.push({ key: '
|
|
320
|
+
fields.push({ key: 'gene', label: 'symbol' });
|
|
320
321
|
if (this.isSamplesContainInheritance) {
|
|
321
322
|
fields.push({ key: 'inheritance', label: 'inheritance' });
|
|
322
323
|
}
|
|
@@ -509,9 +510,16 @@ export default Vue.extend({
|
|
|
509
510
|
metadata: consequences.metadata.effect,
|
|
510
511
|
items: consequences.items.map((consequence) => consequence.effect)
|
|
511
512
|
};
|
|
512
|
-
row.
|
|
513
|
-
metadata:
|
|
514
|
-
items: consequences.items.map((consequence) =>
|
|
513
|
+
row.gene = {
|
|
514
|
+
metadata: { id: 'GeneObject', type: 'Other', number: { type: 'NUMBER', count: 1 }, description: 'GeneObject' },
|
|
515
|
+
items: consequences.items.map((consequence) =>
|
|
516
|
+
consequence.symbol !== null
|
|
517
|
+
? {
|
|
518
|
+
symbol: consequence.symbol,
|
|
519
|
+
incompletePenetrance: consequence.incompletePenetrance
|
|
520
|
+
}
|
|
521
|
+
: null
|
|
522
|
+
)
|
|
515
523
|
};
|
|
516
524
|
if (this.isSamplesContainInheritance) {
|
|
517
525
|
row.inheritance = {
|
package/src/globals/utils.ts
CHANGED
|
@@ -10,6 +10,12 @@ const consequenceMetadata: ConsequenceMetadata = {
|
|
|
10
10
|
description: 'Consequence'
|
|
11
11
|
},
|
|
12
12
|
symbol: { id: 'SYMBOL', type: 'STRING', number: { type: 'NUMBER', count: 1 }, description: 'SYMBOL' },
|
|
13
|
+
incompletePenetrance: {
|
|
14
|
+
id: 'IncompletePenetrance',
|
|
15
|
+
type: 'FLAG',
|
|
16
|
+
number: { type: 'NUMBER', count: 1 },
|
|
17
|
+
description: 'IncompletePenetrance'
|
|
18
|
+
},
|
|
13
19
|
inheritance: {
|
|
14
20
|
id: 'InheritanceModesGene',
|
|
15
21
|
type: 'STRING',
|
|
@@ -54,6 +60,7 @@ function createConsequence(
|
|
|
54
60
|
info: Vcf.Value[],
|
|
55
61
|
effectIndex: number | undefined,
|
|
56
62
|
symbolIndex: number | undefined,
|
|
63
|
+
incompletePenetranceIndex: number | undefined,
|
|
57
64
|
inheritanceIndex: number | undefined,
|
|
58
65
|
hgvsCIndex: number | undefined,
|
|
59
66
|
hgvsPIndex: number | undefined,
|
|
@@ -68,6 +75,7 @@ function createConsequence(
|
|
|
68
75
|
return {
|
|
69
76
|
effect: effectIndex !== undefined ? (info[effectIndex] as string[]) : [],
|
|
70
77
|
symbol: symbolIndex !== undefined ? (info[symbolIndex] as string | null) : null,
|
|
78
|
+
incompletePenetrance: incompletePenetranceIndex !== undefined ? (info[incompletePenetranceIndex] as boolean) : false,
|
|
71
79
|
inheritance: inheritanceIndex !== undefined ? (info[inheritanceIndex] as string[]) : [],
|
|
72
80
|
hgvsC: hgvsCIndex !== undefined ? (info[hgvsCIndex] as string | null) : null,
|
|
73
81
|
hgvsP: hgvsPIndex !== undefined ? (info[hgvsPIndex] as string | null) : null,
|
|
@@ -85,6 +93,7 @@ function createConsequences(
|
|
|
85
93
|
info: Vcf.Value[][],
|
|
86
94
|
effectIndex: number | undefined,
|
|
87
95
|
symbolIndex: number | undefined,
|
|
96
|
+
incompletePenetranceIndex: number | undefined,
|
|
88
97
|
inheritanceIndex: number | undefined,
|
|
89
98
|
hgvsCIndex: number | undefined,
|
|
90
99
|
hgvsPIndex: number | undefined,
|
|
@@ -102,6 +111,7 @@ function createConsequences(
|
|
|
102
111
|
item,
|
|
103
112
|
effectIndex,
|
|
104
113
|
symbolIndex,
|
|
114
|
+
incompletePenetranceIndex,
|
|
105
115
|
inheritanceIndex,
|
|
106
116
|
hgvsCIndex,
|
|
107
117
|
hgvsPIndex,
|
|
@@ -124,6 +134,7 @@ function getInfoConsequences(
|
|
|
124
134
|
info: Vcf.Value[][],
|
|
125
135
|
effectId: string,
|
|
126
136
|
symbolId: string,
|
|
137
|
+
incompletePenetranceId: string | null,
|
|
127
138
|
inheritanceId: string | null,
|
|
128
139
|
hgvsCId: string,
|
|
129
140
|
hgvsPId: string,
|
|
@@ -141,6 +152,7 @@ function getInfoConsequences(
|
|
|
141
152
|
|
|
142
153
|
let effectIndex,
|
|
143
154
|
symbolIndex,
|
|
155
|
+
incompletePenetranceIndex,
|
|
144
156
|
inheritanceIndex,
|
|
145
157
|
hgvsCIndex,
|
|
146
158
|
hgvsPIndex,
|
|
@@ -160,6 +172,9 @@ function getInfoConsequences(
|
|
|
160
172
|
case symbolId:
|
|
161
173
|
symbolIndex = index;
|
|
162
174
|
break;
|
|
175
|
+
case incompletePenetranceId:
|
|
176
|
+
incompletePenetranceIndex = index;
|
|
177
|
+
break;
|
|
163
178
|
case inheritanceId:
|
|
164
179
|
inheritanceIndex = index;
|
|
165
180
|
break;
|
|
@@ -200,6 +215,7 @@ function getInfoConsequences(
|
|
|
200
215
|
info,
|
|
201
216
|
effectIndex,
|
|
202
217
|
symbolIndex,
|
|
218
|
+
incompletePenetranceIndex,
|
|
203
219
|
inheritanceIndex,
|
|
204
220
|
hgvsCIndex,
|
|
205
221
|
hgvsPIndex,
|
|
@@ -233,6 +249,7 @@ function getVepConsequences(record: Vcf.Record, metadata: Vcf.Metadata): Consequ
|
|
|
233
249
|
csqInfo,
|
|
234
250
|
'Consequence',
|
|
235
251
|
'SYMBOL',
|
|
252
|
+
'IncompletePenetrance',
|
|
236
253
|
'InheritanceModesGene',
|
|
237
254
|
'HGVSc',
|
|
238
255
|
'HGVSp',
|
|
@@ -267,6 +284,7 @@ function getSnpEffConsequences(record: Vcf.Record, metadata: Vcf.Metadata): Cons
|
|
|
267
284
|
'Annotation',
|
|
268
285
|
'Gene_Name',
|
|
269
286
|
null,
|
|
287
|
+
null,
|
|
270
288
|
'HGVS.c',
|
|
271
289
|
'HGVS.p',
|
|
272
290
|
null,
|
package/src/locales/en.json
CHANGED
|
@@ -77,5 +77,6 @@
|
|
|
77
77
|
"genomeBrowserUnavailable": "Genome browser unavailable for selected record.",
|
|
78
78
|
"treeViewer": "Decision tree",
|
|
79
79
|
"missingDecisionTree": "Decision tree unavailable",
|
|
80
|
-
"treeInfo": "Click and drag in the tree to navigate, scroll to zoom."
|
|
80
|
+
"treeInfo": "Click and drag in the tree to navigate, scroll to zoom.",
|
|
81
|
+
"incompletePenetrance": "Gene associated with incomplete penetrance."
|
|
81
82
|
}
|
package/src/mocks/apiDataMock.ts
CHANGED
|
@@ -102,7 +102,7 @@ export const apiData: ApiData.Container = {
|
|
|
102
102
|
},
|
|
103
103
|
base85: {
|
|
104
104
|
vcfGz:
|
|
105
|
-
'ABzY800000008Y
|
|
105
|
+
'ABzY800000008Y>=~E-elK+e&{68po5qJ-fD(f!x;RsoPhBcQ#gU6o~8qsL94<xN5{5%`=$8Toe>TX@k_;@p55A=~ORsJ$7uR8i~e|s1{1`p%uQ*VBB*E;=G*7>*J{Oxb2XXl-ho1?#<9UomcZ*TXHgIRw%oXm&g(a~=6@v(-F&4cNzHtEe~!Ts*{;X_w97tK!i(DC*D<@3|~V0r}mosW~?=xj6(2EnxOL6gaJ{M!(}JE%>A-hJ&pn9M)a{*8`jwSNxr_~NG{u2gM2jZWVq5s}Yoy=f3PBDnwe()YJJh3~(ePluzy;@7u>(RhwGOHbdOB~RCvKiwSFg3<F+FzwNKZTwK1jAygq`^TU*9DN9;!+CGi4{A^2`(ReD_=?sh2%Y6VsWpC@jGssMwb{Hkf3Ez@<843l7$Nv|yy6qv8z6x=2C=w$qebR>^ZtjbkG<Hop%?T?g?5J0C;dGNe(OC=9)s?$!KC|Z|DiV;jq8ze)IUBw67kvP=~ejMt!Ap4&FH&NAIH7<;x{AFS?dIqd;VcO2u8#HaQ?A2K}{R>Lt+2h!*u*qYYe92=gF+`{L~*D4Ep`X{At3Vfja#^L4Q7Lpy;0;d(-Y{FzZf+li+bU3L4Yr(X4?WjvK%7I<K?FG?+a<&ZBGH=vp0ls1N?Ho801E;s|*U@UY*T4EsSt#s?f}E1r$JM8@{*Pa8<GH6G1^|9uV!@%St8`m7eRdxH0#-appvPOj^<)6irb*3cFNkAcrU=+7>$o2`z&{pI3^t8-7v;ZFmU+cfA>Z%a=64`)}MU#?I5$-Apde|Fiq!9Q=>cenlU_r&*)FPmNLQ$uQlZyn!eC)d;QJQ$9$3(cqDXx#1fhxapV%RRQnpZqqQ&5^_Iuf6H87g3#`pPZj`FW+AH<FngN^Rji~Z#y^5%VU3f-fZ7`l=_cx!@IXvZ*TDaoAza^dv@$^PEK!6e(ItMx85WtSEu-=6E-(F9*o9M&EszKG&{P<pIt1R-Trs(?4)^{J3BqQ%$;4Hp5)H1I&X4kx6yO0bA00VtnF{Fu#smifBoj<^2%So{o&%|*tg!Cw0`VjyM3-#U65@G1$6gg`y3nBiVj-m(chDs=IzDX+vw!{ZF2ka$Fu0*rg{9s)!XClMS2Sl+Ue2T=;)5_o{jor>Z0@D8ozHorLQlj=-t_MtI##8bQH<ZPxOZ~>WK4c5Y+mQ=!Aw3!+t2`_){ymJUT~>AVXcU&o%UbwfTpjhMhg2$8W~Z=wz1KmMPt?&u709?d|ws{!esAArtrk_=)>>=o_iEqHgM9{}_Aj(Jp5k4wyRNy2i|*aJ&0x(Vu#w`*XAlS0Q(^quu@(P2q3zqrdkbhy8!l`{QX)Z$;N?<M(7(YQ1@l{bnA_gOCqkB(U#mp^lH{-LS=fm|YUx$jDaE)E;_I!^e+NgZ|zfj_V!d;Oy$>X>T$KrnOP;DLDG>MJ>JW&3jQx=~sOc+<zBJ@#wqhcj%J)<9pPZqwn5!P7myN-zN<r({qHh7--x-_k;WHB-O(e?ZcB<^o69^jnR0NdoH}z&0m`jgD$DitQ(9_HUF<mGH1XQ>B`Dh{v-JK&++vBsF_+_^f%*vfYH_LNY+sKjylulxXYjgKHB{inB1++hfihI3bm`&@AW_6y&Mm*1#jT<4Sc%sVf-}i&d`knqZtbI0Zlkv@3wDRAB5S(W`^_!!|@SbuEV`}|6T{_<%j1{AGr<hJwV?W&69f(eeVJ8`x$*|h{L<4FU@-%)POODpE7<zMt3J4db2?6)>>D$7iX=bUB~elrGD3&hFl_+yR|p%i{k^dYv)8k7ZC>vL-9L4Vl)yqzCHo`nEUs)mk1Roq!@&tBOvXQ%huKLNex_hF?jzxe7vU*0>qFAL$i9cJLPrQ#h~u-<KzQ!xl8Je-yY!<eenS>!W_&Y6Ni%54r=YzX_wItNT%vsb+hJlLoSE?`rzS#K4uVqG1S>^4ei(bXqSGg@M}UbpIvv!z{O_b=wSG#gd7!}`=DR@<Bbe-V?+P3k=XwOf~WpJGwdw~<3G1aW%9fT6Mw+)t_W|$4)=%-YIu;C@Paq1r^K!Eh_+9m)@b%TTl+-pzN5$DleG_#n~$ELqqXE13q;g-u$DL<FGNqpR~i?ad>5J9=rKClg#2wv{&p?-UD~L-HH{$`JsgDY9`+xD(O~}Jh)c&6(;W6wOY~lt?+fI7;coV<0Oy1eMRHL|4$d-;&#)r7%qRd&9yfYrV^m6RnFGZ&TS=}{as&ABOq-SDS#y;GVYL=3$!$t5wa^k7TuJUSa^N5kz?I~{QhK43kVdX<JU}(_LNTTl=n_3&LNBZW>r{z;iDUsk+gW2v^qFXx5z;BST2_$BmT@IOxYcliu56EELP?`adI>3o1#k*OoYkLhD?i;>W(=2QW?dyYsu8!&mKwuT*=m8zD!#fgyjrx<0(TXXLOo2r9|V(1ukKUts^yBUGEC`GkNqWM4!i%l55MSCf4WxMg|rlGhq(sDCQNXaxS+)SgzhQ1n1mIzm&O%^Ks<>Jet$>&S>uoK^AyAE2IBlM9Mt;{gWAEQ_L&ls+QC0+2M-8%>&?y8#m@EB?atZp4rbvy&GXLAPj8#&J5i-|hqB<Es6@7Njjjgshn<TtrlixI(;of#_8Zu-sDKREPJO4f)4|_Vn%!wNuQ9AZiL3u=-Trjc@lV4U1qeYmc47VkqurZk=fqz(Z+<i$K!EZcOjn|;+FxE^$O^!PFs9D^BrdK*DT+4@;|nB*{kqh;^?k=*UWeB~Tj}a>IH@<M15mm%op=S(BbCQff7AHcw+4eoXE5;7nFj3l+VMS%^6!*Y7K3GMmZ$&yNtif=MG5-hb@Uwp<~E*rTh~U!$Eq%ciI1Ufl#P#>_iPWsf8IB5yuW*U8-7sqcmJjEV1s#GEypIhUjW8|6NuIVDu%xR75JTDf&Zf7%TZ^i-8nqIKD;}_|BvzC#ST7msMuli_z(_J@f!6*s6NZ|Q=(?J+pX44dr?KDflxya{BZOz#r(Q^A3O$OVeWU)Py=0Q1b#<ZORuM6P?l~fa0lqXJW?MZHOj>t;4R<2ZnXVifNabggTWl-W3;r!2;fUJRo9J9(Wd`oU4x6R)T4w@N0RWd4E(i^exVTdUy91+idn!TRn8n3#vCZ)UH}GsUNrpY(MMoRV)$dL3?{=6bFIO=ytr(3z$3Gam-Uf5V~njs5q#B9zCeQbBm0@f<W?GH5{t>1A=`kI9;rN@7Hk7Z?z9Et_F5OfjX~qF1b0zS`#i5(2RRw&I?6LA0nHs=&Bi$J)6hI{4NN#K_BghYbME2;L83aprvIY@G8<@4@5lcf&9Di*r?B#s$MEd*?Br$>3|+ZTr$0-WH|Sj|I^iGA{>yZSb7M_iE>)cP{-V|xp}9=lNun~Kw^f-x7qZXPu_+1Spu&z_a5EUi+puG|R|x0!_{|Sq3&%<tDUi{+DBDx(^Y=+IO0>UkMg5sO2ccw8CLHW-F!dUpJd$`k^*=Xm{k%PB%v+&kFasrD?-+`Pq4cy&4g?A4psHV|KaazI1dkuP1tCO!{WyX7+DEW2pdCZJ!}5P}Xgc!SJIx}REJCySJEJKx>zJZRdJd-bafWDe>`AESKziOnJ@2EQ_YqA@bhuPfM|uuS$`DqEd219(;bU4E&0Yd6+oS&=LO8`Zg?I_T3x8sOmBJ=f`5{dAUF?TulgD8n{r`A0o~9tbIcvY!8elKc|1Sb8x%f|Lf8R{as&JU{a?8|S>lSlUV<a7D&YaC~Q*t?OP{#;j!N*52XWq-BMlTqQBA`^eu~zFnFj^a@4IW?=X%!x5$&?Xn5Bs@R+{ryaS1z0o3sMLLu~g4(@+TDoFkLMMY1f7W+loP!^;`lcAr$m{HUVLqvysPe#Y>8+g!RXbOW*Fz8_nL_lWq&kbt)P3DjOIJA7j0!xD|Q}he|HdTQI8HFo25<!)!jDbO$|5f$v|Yt`#^5DJty&fa;)i73j{81Y=@__TWFz9`w*2^e8e_G@!(+ift-tQmW0|!cxpk-6_&$UC`z%gDR+Tti(RkQ>i$*XjN3t<wk-he`2r=M)(3@?i9gRnyJrjg?SlukfK>eeKwKyuJ;(`tVrP{>E@juH2aM~C$hmb$|<Z2ZLkI5mclISqL3I+0&AQ}peM5-I6BXgHQsw3^@Hgg^{hJ^4n|>3p5~iGK?nwtXd~<%rO-+kmXku+QfGljyA*s7f`_mWb1c0?azp83C()*|lSt6ZI?44lMu!***pj%I09F+oI-kE!#zaBdNl=K8RbYTRiPUIJ6ly5`TkIqtjHQw!xk~KF7}rIe1P!gyD@=YU9WJ?!%{v#6$&s#L=Yu7|;$C*xsP?o;kK)Qmuo`7aOlbytTqxlbhL}!c^NiVZXehZrCqV-d63{nbo{RZCK7;u`=Th$>0X7FPELHe<7!K@lgK*>3DBrw}TzKTi_qP%dU~sLOEN3mep?!fQ>{UEhD-)U-ok&Vr5>(W&ICZQS$>~*0)nXD_Xs60zQmN%jNeaD*MtUgQ`pg~bs}a;@aj{ee!2(`sI?eL<;^J-Rmp3R0S5YLy;1LXzW$qe~_RWMQ%;HogbcW_y=q&YcBy?*9CUOcxRaX$Yvc_0$!%zdogE=_G97^ENGJ#7JWiiU2|3sbZDALFYcxkGa3KTR*<{Zk+89_-t9-#L`(c*z{QV6<&ii!DMD5Y3PE4tHKZ21P*@)%oNz&5LRaTa3B9AazHd$U(;5jU{`wql9i+7#PZZ<&78+Z=9k18n6IY+V6cBVKJnI^tr{cdW)Xp+Rho$W_6CgLRorkcP0u@E!4W9#6N&7QQTSxfA&LtHDiZ2wcYULktLTrno{z&P;ox@_72SD{hDzY=CVXC|J9QEoT|Fp))g7@wMp81bf96apN0c8wCo&xB|9WD$7HoVA0SbmB-UpY!SB#gA1$y#utc+-Yf)H79)k%2zLQoy@BHDC5o#Gifb^fe^uOzB&Ajr&dfF-9WPI42wTWGGa(G-iYc~CCfNg0q2|k1Y-wKV2G~M1ww4vJHB!A|OSl2YpK|d$GYBz37~7_(3N2J-W@QMe!zYjg1KTeV(zWwI-drD_dn+*$C_;>1sC2pDotpx(8X!Ta{sl2ge-Iv8B^L43ou}M)gWvFS38^K@c+&-m@g;>-Ps3Tidvn<&H6)*(-8vlA(VdeThHiZm`2IEY>+=C9@&MYXA7{4^Kx|<MApZSQ0IV4AU0RP7ta`lHn6*QYpR+J4%<{slpt(<0E00t(hoCU`Nl4%t9UBQrqH&SSgrw`nr88&K!+7dbHWezY(xU)2uD<)lvb#|Dur+%EB)7_Nn#rIwe&`-omNRA89!Tdv8MBAp!7v3xqm3{eZy6N6GpGXwBTr^TD&J%@fB%zYvPD5xvZV!Gkl}nZM>F2g$ANs6$tTEUi$ZXzpX3U`VLvg}zV?&PAd@W$$R(M$qD<h`c738uwk<q!SYCJrl8Ix+BNfKyu&GSoRVbfSu-29@Em(6KIe9c*mU}#X?I@ohlPwC}hAl00^T^3dl!-wn&tIMVr^sZB0=b6e1@h2%;Wdv`9#3Co@(D88rm&v(^2NgXYliX}g|bCKzSL1vp`#cyTCW}DlVq}GA)h<GtdQ?)k~AWbcdst~QzWu^`M)HQto$EKgqv51e1b%_88iT1J!l}J_!mWhBpy#+Me)0iF;w9xDAfJ3ApNrjCA5kLB`_pfj`tU?zklQy2FPd(0|EIu@m@OQvAF6ATfwxmOXi@9^~<i#FHi&$+g%a7Dr~H*^aH{dXlR`X7mzLv#B4$eCPH`6e*7o_&?#Wliv1^CCV&@wyK&>&=n$HrL*NXQ6)qZ^a?&l`Q^nSi>D(es!MPW8rc{1iR(MBo5g*Y!7Pjr0EXf2d<)W2wOc={(s0u7<4K2>vLwV6w56M5ja7J5VycBiI!-euyc^vox5y39F%)zdmQW@-$hp<bDup^zv3$L&*hrKF&=6P+8i3oP=$_3bE0y_dguyabBiOv%uudpwLy*feWzCcrrx+<U!#;8}+SE8=aUzLMNgq-<2K@o4Iw0H%3JFvkp+9^ja)$fF05o{xbjf<q82sV6mXxmD(!RHAo(B@yUYHzx{oE;MAhp^eDZ@=L?(r65Lr3<$OC~S2joR(|1y1BT0!!c|Ty1dSuD<}u2BCD)M1XNbFqVs(_UTDr`B<b_u89fV0TGH%%i>{hme~xnQclwQfn|1~;f>{d&<9(Vq1&Y}fJ6B;8UYIat>lU(WtK^qRDcRUAlhpppzyZoaER=WmlKIhqn1*_TRVhS3TR{LzP|{%xNzo$`dCfP*=#PSE>1th<{K+&?g&S0~nxzd?oRjhPe&IHDvk$|E`Qk1%pGOmIS6G+sVwY-T`*8$<-Sr+HW}RS)-^1kr?WTec9N+^Oy)*w)<DG9c2aRyMMPU@0GPz70)1QS5)??~rn6s%>Naxv+roDvqt@X^YE@t7`wuU)fLkzUcAQ0Rg2$~w}*a3tSvsNMS82~8gQ6ti${GV^Xkvo`g3(k1B9a1UfHo#zQ%6)y^<enR*%WM9%!<<=`H=If{zlZ>VR4&`7(^^3(c(fOybJ%CSM%_aa1kd^F#<}me2916v+`o$=3*~4t9_p_Q(mgw|3kc0uFZO3VS<uh1`O!6?qi~NzD>Gjw5b5N|=;a&GaD%Q-ITKbuqW#vQUBJRW`!52L%#p6hDw3UglKbHrm}D5#SZ5_q_mt$Ca1_`uB%#X1*NUU5+IvU){Qby*<Z(>*=G2^E<j76zJ-$*DT^U82<p2>uIHgGBVN}U}ubkVkTRX%MLlv4&^fDmfuYu$yw$|)O477~^sM_*OI<|hx==S*;f@Op$`)uT{uB)m&$&h12L8`5lO_N}Z)Lm$6TOVgiiO$EVry1;?h-e=d-)j8g=k0!D-V7bix-HIpy17~Gh1SI4jV#J0z9{hC<Wh{LmQICRJvCdM^460M_?j4KTRdGAoEQ#tQO&X-AjP!(_>7H2MGr#&DxL{<K<|R^^w0r4gpm=$$OsX=#bBV_Y<K$eMt}a7g4*tA?9vLPs4mN^WNVlqHnnQ>r1j<)(@v$U0xkg>gMf0tg+^HxNC<2L<^c07mF=B~DXWpRKyFRo6y03}tZMPu^2TBcZ7a3{6RaWP9gJd%FrKmL=z+#~nI#*NVgwVeKSR~U4(4bNJiOw6Zv02IDQR<1<OsH6X=5D-Su99=#Whj`kcwWU#KJxAn{6~=#Q_?zuESk7o8T?&*iqUR&oU^33y@V#BZ_bfFJrp+%cfmU7{}9Hyqsu1ehj-DC{EjEOYC%1{lLc#=rNBZ{s#M7vmFKB#&RJXI;drkC*_W8tPTB8TI>K2w4-*i?|ZaCluZtlDsIyo@3EcViWjq$wd3h0@2+lJ(kqlgX+)jYA5}y)xe@g|k7zb4*XVtAHnX2iJfy>H#3-q?AWPG1Hrvh8=8Nd1?HVO({?KYtx2h-<vx-8oVhxp5idj@C)<()M{>oHL$z+H24*|yx-T5$$&AMUA9AKb?IUPQAKu^(ZTzf!dzH@up=)Cj2ezVi+bmsF$uRq_yzVAihM(*_hn;;2z$Tf2`W*ZvqVpkO+st>fv2JoucK?NyK+CXhEvND@vK2Lz?S%+CjTA|WW*oUzNci|QX4l@uW@p$TgA;Z^eHRioGg?${HR*bd@y>J+1a~1CwDx_VpybsXcLSY|EQCE-+mzV30OE(Z@w99g`i&{EgU>l$S-IRrjK~J6T8kv&NR(BL6C&enDjZss;F!YVqe>*R!q=!28MFJ)`M>eWnCXp&vN>k7;5cvI0mQ;*?*(w&Ip(`gDf-lfiB3A5_KvN7q2{QPXz|3rbnOTCFE@H-<`3ls`t{%`%XeuEyMaTdnkS`xHw}F<qC6L*Ymg%nmGQ-wunPE#Hb0uSD*;fD=tlmvGCZTlH=mo?aV`+%tc$kkW?U4$@X8r{OCfA1;@v327&@mU!{zJqf6|-8Pb{YS#qhK2)4w(E4$v|T6QaK_dHLR)j{CD$0cq>fh{3xabuX@3dNM4bVl8_8AuacTCz9+*dP*Q|17!eq=sI3OfsE~{4tzzhe$~pL|a`<wt1g&f;zw}Ecv3`6%e2s#RYeGQtWm!@r#Iy5{GcT0&NP;d>`;*3xzTF!%n!Uj)uHiGVy^&go9b=TC$!nE0KpnrnYZZd6^Glj7%S6@I;JR{>sL0;km5@-rl%JR@lt^ZXwm!~4N-AMX%9jMtOwqW2J#WmL^YC>)_%Yz{<F*@U-BMeY^Qx(gP_7|1q|e_kaH*w@-Zk|i7U9J_ZloG=$2vi838qSXr(K$gfGDgf*mOEAOY^81RE@}6YpO=%X>21~bQlvMZcgXkGRRSB<Kg&=U@kbEJqB@Qklt3}JiX-!FZ+weJKvkP8@&)g1eP<S*-`}QZ9A%9ta)9_>{|LJy_~=L6a;t$0;~bj7l_Era3~-E2?D@O9sy=t$UPpcLEz5^KvVz#xfOK@Q8+8Z769N009r5bPp=Pf)@%J&W*<!-8oBBz^uia2C_J_*V;}9K)G}coJx7jzij$DolRx>Z^S@?NbwWdH_*{{Fm9nq%>|4b>5_?+3@mFP^);c&{JuVWdenLT}4-(E13~(lN8D#g^g47N7Na^wFUzcrXG3G9hXXMz9DHinI35#92TG@eF_{(cMaRn7`hssQSLb0IeA>X`O%bkNiSj)FrShoy{n=X21p%+#%Cc@9|9ggb27$+1w9i;Cl{XIC_Fc>1IqK(z8YK}0&Kz{8U;j_zAdcUIN6_GL%V4z|YhBtU>3lo}fR=CaP!7{F`jb_%J2hS>6)I*aoX{v{a=fMsd{r14GA51U3#BTp(EYU!jtK>)cJi#I}2AtT66ZivI5u9MJm|doP{{8|dlnBO^h2KFY8>y_>L5rxcv(OaKW~-FjIk#>a&E+Y*vRjLa5yQ&qcF<79=P4-HmqO&`5v!;OigwHbPiD|Kga+*dk$MZ@J7muKtwyiE1RPj7U1t9U908MDI$q6`^#!6LUnpwjl&NNo-dM1LHQ0)`ji-SSmxUQ0OE1OBqP4K5atVYsT&y*3TWX7}(iSZMa%&)BZ9y>UowL-3w06=Hm8UBU{it<;{z0m6g1@8z@(pGV?N!VjdJ&IH^+)n*{n5h6oC(kLCuEkZkXeKI8xeZCvJtbeCAYtqKDiy*{!fF{m2Z!B3SxaKReH~l&u_eNvOLWLLm^XDkAno?h=9uCT4wVU6r=+$U~N<rXC6sBo>tU&nPoyoHC_qPyI`FY1~0NL3NJ5tahx&q4rO{R9KF|&^F3=V$1b@??~XQjP71{7owV@;l1z@Iwp&06^vYIetEQf(Xr?p;KmjZ_+<azCzYs`WRk1T$Vv^8M9Z*66(o9XGcQm0kd!(ZIZC?<i%Z3+LBWoF}99_V~VUZ?$?}9u4$2q~9j4ynRh=~ml6B%O6sV@Stje=wJPev+mE}CXua!^*Rn~m7+T>o&5K^^UxQn_!gRjO(+h4Tdx${U!<RW^Zh5!=`1Y$TLOrX+G2LqcOh<Q}j4ONu6&{Vf9Jn+*fyHQYHRc}3+q&s|JH+<`SY?kpE^Er+;sI?o+vj%Jb=RBQbwaVJpUDrSS*Y}hZnAM%wJ<T2f2%*8MA9#LqQ7n#N0LOUT+B=@H<1vHLRIma_zXcpfOmpwotEQP(mrA$e-C@Gp#fV3X3S1<)zakWX8eYYcNJc@BzW>a1mi-Bjn%w{%u9QK3m{dhE<E+X{v@eR$s2bw-!4&Zq>5v*)7!wn}EX{b2K&42Pvwp!sfEJ?$%SpbE({qN2f>Jl$)H0B4YV!O3y51t$awO6oJ?S*X{{5)AXr~Ue-dCE!aMR~S>;UHE_Y0ou{UgNz9oJ*#oFUe=#ogeSNJHNqnB}6q#VK%=(>Im3K8jn>~84fCoU6$coU0=fa&mJ?r(x3=uOhb8nl1koq9^Vh=N~Pf=c3r8Wbtp7ZDtf=Cph=$)&Sc5Qj?s)2CY{h5tV4kq-L?5*1-5LnOW%I;{|eMS+8(C>00',
|
|
106
106
|
fastaGz: {
|
|
107
107
|
'1:10042288-10042788':
|
|
108
108
|
'ABzY800000002#qTMEKZ3`GCC7ojbJmwpH#AKAd{e=X)rs#sd@Bbi6W_i-Kj{yfjM9^Smx+9Larlo`ELg<l1~z3r8!GUQJ0m8ym)8U`}CE7g=s>8808G~E!>54$YrvcZ(-L#$VpmdhA9B{jC$1ds_c=59}2<_dJ*g<OWidWM*zjL2IkV8;uzj1g9GufGD*XpWdclZc##2HWWTs+BF8P=j=ugvRU~z|$)$)-To>Kk^RtKZLTEbcW-=QQY~_Iit)WY}kGW$@poJA~D%3|Je2cTbQ393jzQD',
|
package/src/types/Consequence.ts
CHANGED
|
@@ -3,6 +3,7 @@ import { Vcf } from '@molgenis/vip-report-api';
|
|
|
3
3
|
export interface ConsequenceMetadata {
|
|
4
4
|
effect: Vcf.InfoMetadata;
|
|
5
5
|
symbol: Vcf.InfoMetadata;
|
|
6
|
+
incompletePenetrance: Vcf.InfoMetadata;
|
|
6
7
|
inheritance: Vcf.InfoMetadata;
|
|
7
8
|
hgvsC: Vcf.InfoMetadata;
|
|
8
9
|
hgvsP: Vcf.InfoMetadata;
|
|
@@ -17,6 +18,7 @@ export interface Consequence {
|
|
|
17
18
|
alleleIndex: number | null;
|
|
18
19
|
effect: string[];
|
|
19
20
|
symbol: string | null;
|
|
21
|
+
incompletePenetrance: boolean | false;
|
|
20
22
|
inheritance: string[];
|
|
21
23
|
hgvsC: string | null;
|
|
22
24
|
hgvsP: string | null;
|
package/src/utils/treeBuilder.ts
CHANGED
|
@@ -63,19 +63,34 @@ export const retrieveEdges = (inputTree: DecisionTree): TreeEdgesArray => {
|
|
|
63
63
|
let edges: TreeEdgesObj = {};
|
|
64
64
|
Object.keys(inputTree.nodes).forEach((key) => {
|
|
65
65
|
const node: Node = inputTree.nodes[key];
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
66
|
+
switch (node.type) {
|
|
67
|
+
case 'BOOL':
|
|
68
|
+
edges = createSimpleEdge('True', node, key, edges);
|
|
69
|
+
edges = createSimpleEdge('False', node, key, edges);
|
|
70
|
+
if ('outcomeMissing' in node) {
|
|
71
|
+
edges = createSimpleEdge('Missing', node, key, edges);
|
|
72
|
+
}
|
|
73
|
+
break;
|
|
74
|
+
case 'CATEGORICAL':
|
|
75
|
+
Object.keys(node.outcomeMap).forEach((category) => {
|
|
76
|
+
const nextNode = node.outcomeMap[category].nextNode;
|
|
77
|
+
edges = createEdge(nextNode, category, key, edges);
|
|
78
|
+
});
|
|
79
|
+
if ('outcomeMissing' in node) {
|
|
80
|
+
edges = createSimpleEdge('Missing', node, key, edges);
|
|
81
|
+
}
|
|
82
|
+
if ('outcomeDefault' in node) {
|
|
83
|
+
edges = createSimpleEdge('Default', node, key, edges);
|
|
84
|
+
}
|
|
85
|
+
break;
|
|
86
|
+
case 'EXISTS':
|
|
87
|
+
edges = createSimpleEdge('True', node, key, edges);
|
|
88
|
+
edges = createSimpleEdge('False', node, key, edges);
|
|
89
|
+
break;
|
|
90
|
+
case 'LEAF':
|
|
91
|
+
break;
|
|
92
|
+
default:
|
|
93
|
+
throw new Error('unknown node type');
|
|
79
94
|
}
|
|
80
95
|
});
|
|
81
96
|
return Object.keys(edges).map((k) => edges[k]);
|
|
@@ -6,6 +6,12 @@ import { Consequence } from '@/types/Consequence';
|
|
|
6
6
|
const expectedMetadata = {
|
|
7
7
|
effect: { id: 'Consequence', type: 'STRING', number: { type: 'OTHER' }, description: 'Consequence' },
|
|
8
8
|
symbol: { id: 'SYMBOL', type: 'STRING', number: { type: 'NUMBER', count: 1 }, description: 'SYMBOL' },
|
|
9
|
+
incompletePenetrance: {
|
|
10
|
+
id: 'IncompletePenetrance',
|
|
11
|
+
type: 'FLAG',
|
|
12
|
+
number: { type: 'NUMBER', count: 1 },
|
|
13
|
+
description: 'IncompletePenetrance'
|
|
14
|
+
},
|
|
9
15
|
inheritance: {
|
|
10
16
|
id: 'InheritanceModesGene',
|
|
11
17
|
type: 'STRING',
|
|
@@ -169,6 +175,7 @@ test('get consequences in case of CSQ info', () => {
|
|
|
169
175
|
gnomAD: null,
|
|
170
176
|
hgvsC: 'hgvsC1',
|
|
171
177
|
hgvsP: 'hgvsP1',
|
|
178
|
+
incompletePenetrance: false,
|
|
172
179
|
pubMed: [],
|
|
173
180
|
clinVar: [],
|
|
174
181
|
mvl: null,
|
|
@@ -183,6 +190,7 @@ test('get consequences in case of CSQ info', () => {
|
|
|
183
190
|
gnomAD: null,
|
|
184
191
|
hgvsC: 'hgvsC0',
|
|
185
192
|
hgvsP: 'hgvsP0',
|
|
193
|
+
incompletePenetrance: false,
|
|
186
194
|
pubMed: [],
|
|
187
195
|
clinVar: [],
|
|
188
196
|
mvl: null,
|
|
@@ -243,6 +251,7 @@ test('get consequences in case of CSQ info with extended info', () => {
|
|
|
243
251
|
gnomAD: 0.1234,
|
|
244
252
|
hgvsC: 'hgvsC1',
|
|
245
253
|
hgvsP: 'hgvsP1',
|
|
254
|
+
incompletePenetrance: false,
|
|
246
255
|
pubMed: ['12345678', '23456789'],
|
|
247
256
|
clinVar: ['likely_pathogenic', 'pathogenic'],
|
|
248
257
|
vkgl: 'B',
|
|
@@ -257,6 +266,7 @@ test('get consequences in case of CSQ info with extended info', () => {
|
|
|
257
266
|
gnomAD: 0.2345,
|
|
258
267
|
hgvsC: 'hgvsC0',
|
|
259
268
|
hgvsP: 'hgvsP0',
|
|
269
|
+
incompletePenetrance: false,
|
|
260
270
|
pubMed: ['12345678'],
|
|
261
271
|
clinVar: ['benign'],
|
|
262
272
|
vkgl: 'VUS',
|
|
@@ -289,6 +299,7 @@ test('get consequences in case of ANN info', () => {
|
|
|
289
299
|
gnomAD: null,
|
|
290
300
|
hgvsC: 'hgvsC1',
|
|
291
301
|
hgvsP: 'hgvsP1',
|
|
302
|
+
incompletePenetrance: false,
|
|
292
303
|
pubMed: [],
|
|
293
304
|
clinVar: [],
|
|
294
305
|
mvl: null,
|
|
@@ -303,6 +314,7 @@ test('get consequences in case of ANN info', () => {
|
|
|
303
314
|
gnomAD: null,
|
|
304
315
|
hgvsC: 'hgvsC0',
|
|
305
316
|
hgvsP: 'hgvsP0',
|
|
317
|
+
incompletePenetrance: false,
|
|
306
318
|
pubMed: [],
|
|
307
319
|
clinVar: [],
|
|
308
320
|
mvl: null,
|
|
@@ -336,6 +348,7 @@ test('get consequences in case of CSQ and ANN info', () => {
|
|
|
336
348
|
gnomAD: null,
|
|
337
349
|
hgvsC: 'hgvsC1',
|
|
338
350
|
hgvsP: 'hgvsP1',
|
|
351
|
+
incompletePenetrance: false,
|
|
339
352
|
pubMed: [],
|
|
340
353
|
clinVar: [],
|
|
341
354
|
mvl: null,
|
|
@@ -350,6 +363,7 @@ test('get consequences in case of CSQ and ANN info', () => {
|
|
|
350
363
|
gnomAD: null,
|
|
351
364
|
hgvsC: 'hgvsC0',
|
|
352
365
|
hgvsP: 'hgvsP0',
|
|
366
|
+
incompletePenetrance: false,
|
|
353
367
|
pubMed: [],
|
|
354
368
|
clinVar: [],
|
|
355
369
|
mvl: null,
|
|
@@ -364,6 +378,7 @@ test('get consequences in case of CSQ and ANN info', () => {
|
|
|
364
378
|
gnomAD: null,
|
|
365
379
|
hgvsC: 'hgvsC2',
|
|
366
380
|
hgvsP: 'hgvsP2',
|
|
381
|
+
incompletePenetrance: false,
|
|
367
382
|
pubMed: [],
|
|
368
383
|
clinVar: [],
|
|
369
384
|
mvl: null,
|
|
@@ -199,4 +199,58 @@ describe('treeBuilder', () => {
|
|
|
199
199
|
];
|
|
200
200
|
expect(outcome).toStrictEqual(expected);
|
|
201
201
|
});
|
|
202
|
+
it('should generate edges for CATEGORICAL node without default/missing', () => {
|
|
203
|
+
const decisionTree: DecisionTree = {
|
|
204
|
+
files: {
|
|
205
|
+
panel: {
|
|
206
|
+
path: 'path/to/tsv'
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
rootNode: 'ROOT',
|
|
210
|
+
nodes: {
|
|
211
|
+
categoricalField: {
|
|
212
|
+
type: 'CATEGORICAL',
|
|
213
|
+
description: 'check categorical field',
|
|
214
|
+
field: 'FIELD_TO_CHECK',
|
|
215
|
+
outcomeMap: {
|
|
216
|
+
P: {
|
|
217
|
+
nextNode: 'exit_t'
|
|
218
|
+
},
|
|
219
|
+
LP: {
|
|
220
|
+
nextNode: 'exit_t'
|
|
221
|
+
},
|
|
222
|
+
LB: {
|
|
223
|
+
nextNode: 'exit_f'
|
|
224
|
+
},
|
|
225
|
+
B: {
|
|
226
|
+
nextNode: 'exit_f'
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
exit_t: {
|
|
231
|
+
type: 'LEAF',
|
|
232
|
+
class: 'T'
|
|
233
|
+
},
|
|
234
|
+
exit_f: {
|
|
235
|
+
type: 'LEAF',
|
|
236
|
+
class: 'F'
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
|
|
241
|
+
const outcome = retrieveEdges(decisionTree);
|
|
242
|
+
const expected = [
|
|
243
|
+
{
|
|
244
|
+
from: 'categoricalField',
|
|
245
|
+
to: 'exit_t',
|
|
246
|
+
label: 'P\nLP'
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
from: 'categoricalField',
|
|
250
|
+
to: 'exit_f',
|
|
251
|
+
label: 'LB\nB'
|
|
252
|
+
}
|
|
253
|
+
];
|
|
254
|
+
expect(outcome).toStrictEqual(expected);
|
|
255
|
+
});
|
|
202
256
|
});
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
/*
|
|
4
|
-
* This script expects following arguments
|
|
5
|
-
*
|
|
6
|
-
* port - port number on which server should listen
|
|
7
|
-
* host - host address on which server should listen
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
const server = require("../lib/src/server");
|
|
11
|
-
|
|
12
|
-
const port = process.argv[2];
|
|
13
|
-
const host = process.argv[3];
|
|
14
|
-
|
|
15
|
-
server.start(port, host);
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { Server } from "http";
|
|
3
|
-
export declare function setLogHandlersForTests(logHandler: typeof console.log, errorHandler: typeof console.error): void;
|
|
4
|
-
export declare function start(port?: number, host?: string): Promise<Server>;
|
|
5
|
-
export interface AnalysisInput {
|
|
6
|
-
filePath: string;
|
|
7
|
-
fileContent: string | undefined;
|
|
8
|
-
configFile: string;
|
|
9
|
-
}
|
|
10
|
-
export interface Issue {
|
|
11
|
-
line: number;
|
|
12
|
-
rule: string;
|
|
13
|
-
text: string;
|
|
14
|
-
}
|