@molgenis/vip-report-template 2.6.4 → 2.7.3

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.
Files changed (250) hide show
  1. package/.scannerwork/css-bundle/stylelintconfig.json +1 -1
  2. package/.scannerwork/report-task.txt +5 -5
  3. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_AnnotationsNav_vue_1_1_P1_ENTRY.ucfg +0 -0
  4. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_Gene_vue_1_1_P1_ENTRY.ucfg +0 -0
  5. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordCommonDetails_vue_1_1_P1_ENTRY.ucfg +0 -0
  6. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoDetailsItemValue_vue_1_1_P1_ENTRY.ucfg +0 -0
  7. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoDetailsItem_vue_1_1_P1_ENTRY.ucfg +0 -0
  8. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoDetails_vue_1_1_P1_ENTRY.ucfg +0 -0
  9. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordInfoUnnestedDetails_vue_1_1_P1_ENTRY.ucfg +0 -0
  10. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_RecordTable_vue_1_1_P1_ENTRY.ucfg +0 -0
  11. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_SampleNavigation_vue_1_1_P1_ENTRY.ucfg +0 -0
  12. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_SamplePedigree_vue_1_1_P1_ENTRY.ucfg +0 -0
  13. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_TreeVisualisation_vue_1_1_P1_ENTRY.ucfg +0 -0
  14. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_components_annotation_AnnotationControl_vue_1_1_P1_ENTRY.ucfg +0 -0
  15. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_globals_utils_ts_1_1_P1_ENTRY.ucfg +0 -0
  16. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_store_actions_ts_1_1_P1_ENTRY.ucfg +0 -0
  17. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_store_getters_ts_1_1_P1_ENTRY.ucfg +0 -0
  18. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_store_mutations_ts_1_1_P1_ENTRY.ucfg +0 -0
  19. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_types_Consequence_ts_1_1_P1_ENTRY.ucfg +0 -0
  20. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_types_Gene_ts_1_1_P1_ENTRY.ucfg +0 -0
  21. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_utils_treeBuilder_ts_1_1_P1_ENTRY.ucfg +0 -0
  22. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_utils_treeDrawer_ts_1_1_P1_ENTRY.ucfg +0 -0
  23. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_views_DecisionTreeViewer_vue_1_1_P1_ENTRY.ucfg +0 -0
  24. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_views_Samples_vue_1_1_P1_ENTRY.ucfg +0 -0
  25. package/.scannerwork/ucfg2/js/_home_travis_build_molgenis_vip_report_template_src_views_VcfViewer_vue_1_1_P1_ENTRY.ucfg +0 -0
  26. package/.scannerwork/ucfg2/js/src_components_AnnotationsNav_vue_32_20_FE_91_0.ucfg +0 -0
  27. package/.scannerwork/ucfg2/js/{src_components_AnnotationsNav_vue_36_24_A_63_0.ucfg → src_components_AnnotationsNav_vue_36_24_A_65_0.ucfg} +0 -0
  28. package/.scannerwork/ucfg2/js/{src_components_AnnotationsNav_vue_44_25_A_64_eve.ucfg → src_components_AnnotationsNav_vue_44_25_A_66_eve.ucfg} +0 -0
  29. package/.scannerwork/ucfg2/js/src_components_AnnotationsNav_vue_55_20_FE_92_0.ucfg +0 -0
  30. package/.scannerwork/ucfg2/js/src_components_GenomeBrowser_vue_52_30_FE_27_rec.ucfg +0 -0
  31. package/.scannerwork/ucfg2/js/{src_components_GenomeBrowser_vue_73_26_A_24_sam.ucfg → src_components_GenomeBrowser_vue_73_26_A_26_sam.ucfg} +0 -0
  32. package/.scannerwork/ucfg2/js/src_components_Genotype_vue_46_21_FE_87_0.ucfg +0 -0
  33. package/.scannerwork/ucfg2/js/{src_components_Genotype_vue_49_48_A_31_a_b.ucfg → src_components_Genotype_vue_49_48_A_33_a_b.ucfg} +0 -0
  34. package/.scannerwork/ucfg2/js/src_components_RecordCommonDetails_vue_80_11_FE_119_0.ucfg +0 -0
  35. package/.scannerwork/ucfg2/js/src_components_RecordCommonDetails_vue_86_10_FE_120_0.ucfg +0 -0
  36. 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
  37. 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
  38. 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
  39. 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
  40. 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
  41. package/.scannerwork/ucfg2/js/src_components_RecordInfoDetails_vue_32_23_FE_99_0.ucfg +0 -0
  42. package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetails_vue_33_68_A_66_inf.ucfg → src_components_RecordInfoDetails_vue_33_68_A_68_inf.ucfg} +0 -0
  43. package/.scannerwork/ucfg2/js/src_components_RecordInfoDetails_vue_37_21_FE_100_0.ucfg +0 -0
  44. package/.scannerwork/ucfg2/js/{src_components_RecordInfoDetails_vue_38_66_A_67_inf.ucfg → src_components_RecordInfoDetails_vue_38_66_A_69_inf.ucfg} +0 -0
  45. package/.scannerwork/ucfg2/js/src_components_RecordInfoDetails_vue_44_17_FE_101_thi_tha.ucfg +0 -0
  46. package/.scannerwork/ucfg2/js/src_components_RecordInfoDetails_vue_47_18_FE_102_met.ucfg +0 -0
  47. package/.scannerwork/ucfg2/js/src_components_RecordInfoUnnestedDetails_vue_39_11_FE_46_0.ucfg +0 -0
  48. package/.scannerwork/ucfg2/js/src_components_RecordInfoUnnestedDetails_vue_46_10_FE_47_0.ucfg +0 -0
  49. 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
  50. 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
  51. 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
  52. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_353_44_A_9_0.ucfg → src_components_RecordTable_vue_354_44_A_11_0.ucfg} +0 -0
  53. 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
  54. 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
  55. 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
  56. 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
  57. 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
  58. 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
  59. 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
  60. 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
  61. 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
  62. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_455_18_A_10_phe.ucfg → src_components_RecordTable_vue_456_18_A_12_phe.ucfg} +0 -0
  63. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_456_14_A_11_phe.ucfg → src_components_RecordTable_vue_457_14_A_13_phe.ucfg} +0 -0
  64. 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
  65. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_471_19_A_12_a_b.ucfg → src_components_RecordTable_vue_472_19_A_14_a_b.ucfg} +0 -0
  66. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_480_19_A_13_a_b.ucfg → src_components_RecordTable_vue_481_19_A_15_a_b.ucfg} +0 -0
  67. 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
  68. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_510_41_A_14_con.ucfg → src_components_RecordTable_vue_511_41_A_16_con.ucfg} +0 -0
  69. package/.scannerwork/ucfg2/js/src_components_RecordTable_vue_520_41_A_17_con.ucfg +0 -0
  70. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_519_43_A_16_con.ucfg → src_components_RecordTable_vue_532_43_A_18_con.ucfg} +0 -0
  71. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_524_41_A_17_con.ucfg → src_components_RecordTable_vue_537_41_A_19_con.ucfg} +0 -0
  72. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_528_41_A_18_con.ucfg → src_components_RecordTable_vue_541_41_A_20_con.ucfg} +0 -0
  73. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_532_41_A_19_con.ucfg → src_components_RecordTable_vue_545_41_A_21_con.ucfg} +0 -0
  74. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_543_41_A_20_con.ucfg → src_components_RecordTable_vue_556_41_A_22_con.ucfg} +0 -0
  75. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_547_41_A_21_con.ucfg → src_components_RecordTable_vue_560_41_A_23_con.ucfg} +0 -0
  76. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_551_41_A_22_con.ucfg → src_components_RecordTable_vue_564_41_A_24_con.ucfg} +0 -0
  77. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_555_41_A_23_con.ucfg → src_components_RecordTable_vue_568_41_A_25_con.ucfg} +0 -0
  78. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_567_11_FE_16_0.ucfg → src_components_RecordTable_vue_580_11_FE_16_0.ucfg} +0 -0
  79. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_571_33_FE_17_0.ucfg → src_components_RecordTable_vue_584_33_FE_17_0.ucfg} +0 -0
  80. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_574_44_FE_18_0.ucfg → src_components_RecordTable_vue_587_44_FE_18_0.ucfg} +0 -0
  81. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_578_46_FE_19_0.ucfg → src_components_RecordTable_vue_591_46_FE_19_0.ucfg} +0 -0
  82. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_582_41_FE_20_0.ucfg → src_components_RecordTable_vue_595_41_FE_20_0.ucfg} +0 -0
  83. package/.scannerwork/ucfg2/js/{src_components_RecordTable_vue_586_40_FE_21_0.ucfg → src_components_RecordTable_vue_599_40_FE_21_0.ucfg} +0 -0
  84. package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_23_19_FE_49_0.ucfg +0 -0
  85. package/.scannerwork/ucfg2/js/{src_components_SampleNavigation_vue_24_34_A_26_sam.ucfg → src_components_SampleNavigation_vue_24_34_A_28_sam.ucfg} +0 -0
  86. package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_31_10_FE_50_sam.ucfg +0 -0
  87. package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_34_13_FE_51_sam.ucfg +0 -0
  88. package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_37_13_FE_52_sam.ucfg +0 -0
  89. package/.scannerwork/ucfg2/js/src_components_SampleNavigation_vue_40_15_FE_53_sam.ucfg +0 -0
  90. package/.scannerwork/ucfg2/js/src_components_SamplePedigree_vue_30_19_FE_103_0.ucfg +0 -0
  91. package/.scannerwork/ucfg2/js/src_components_SamplePedigree_vue_34_19_FE_104_0.ucfg +0 -0
  92. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_124_14_FE_64_0.ucfg +0 -0
  93. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_127_13_FE_65_0.ucfg +0 -0
  94. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_130_10_FE_66_0.ucfg +0 -0
  95. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_133_10_FE_67_0.ucfg +0 -0
  96. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_153_14_FE_72_0.ucfg +0 -0
  97. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_162_14_FE_73_0.ucfg +0 -0
  98. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_167_11_FE_74_0.ucfg +0 -0
  99. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_170_11_FE_75_pro.ucfg +0 -0
  100. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_176_16_FE_76_nod_g.ucfg +0 -0
  101. package/.scannerwork/ucfg2/js/{src_components_TreeVisualisation_vue_177_21_A_27_nod.ucfg → src_components_TreeVisualisation_vue_177_21_A_29_nod.ucfg} +0 -0
  102. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_181_16_FE_77_edg_g.ucfg +0 -0
  103. package/.scannerwork/ucfg2/js/{src_components_TreeVisualisation_vue_182_21_A_28_edg.ucfg → src_components_TreeVisualisation_vue_182_21_A_30_edg.ucfg} +0 -0
  104. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_186_18_FE_78_nod_edg.ucfg +0 -0
  105. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_199_14_FE_79_g.ucfg +0 -0
  106. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_209_15_FE_80_svg_min_max.ucfg +0 -0
  107. package/.scannerwork/ucfg2/js/{src_components_TreeVisualisation_vue_216_21_A_29_eve.ucfg → src_components_TreeVisualisation_vue_216_21_A_31_eve.ucfg} +0 -0
  108. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_225_11_FE_81_nod_edg.ucfg +0 -0
  109. package/.scannerwork/ucfg2/js/src_components_TreeVisualisation_vue_78_7_FE_57_0.ucfg +0 -0
  110. package/.scannerwork/ucfg2/js/src_components_annotation_AnnotationControl_vue_27_13_FE_89_val.ucfg +0 -0
  111. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_122_1_FD_2_getInfoConsequences.ucfg → src_globals_utils_ts_133_1_FD_2_getInfoConsequences.ucfg} +0 -0
  112. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_216_1_FD_3_hasVepConsequences.ucfg → src_globals_utils_ts_233_1_FD_3_hasVepConsequences.ucfg} +0 -0
  113. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_221_1_FD_4_getVepConsequences.ucfg → src_globals_utils_ts_238_1_FD_4_getVepConsequences.ucfg} +0 -0
  114. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_249_1_FD_5_hasSnpEffConsequences.ucfg → src_globals_utils_ts_267_1_FD_5_hasSnpEffConsequences.ucfg} +0 -0
  115. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_254_1_FD_6_getSnpEffConsequences.ucfg → src_globals_utils_ts_272_1_FD_6_getSnpEffConsequences.ucfg} +0 -0
  116. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_345_1_FD_7_sortConsequences.ucfg → src_globals_utils_ts_364_1_FD_7_sortConsequences.ucfg} +0 -0
  117. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_375_8_FD_8_getConsequences.ucfg → src_globals_utils_ts_394_8_FD_8_getConsequences.ucfg} +0 -0
  118. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_387_1_FD_9_getVepPhenotypesIndex.ucfg → src_globals_utils_ts_406_1_FD_9_getVepPhenotypesIndex.ucfg} +0 -0
  119. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_403_8_FD_10_getPhenotypesSelector.ucfg → src_globals_utils_ts_422_8_FD_10_getPhenotypesSelector.ucfg} +0 -0
  120. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_411_1_FD_11_getVepInheritanceModesGeneIndex.ucfg → src_globals_utils_ts_430_1_FD_11_getVepInheritanceModesGeneIndex.ucfg} +0 -0
  121. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_427_8_FD_12_getInheritanceModesGeneSelector.ucfg → src_globals_utils_ts_446_8_FD_12_getInheritanceModesGeneSelector.ucfg} +0 -0
  122. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_435_8_FD_13_getVariant.ucfg → src_globals_utils_ts_454_8_FD_13_getVariant.ucfg} +0 -0
  123. 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
  124. package/.scannerwork/ucfg2/js/{src_globals_utils_ts_84_1_FD_1_createConsequences.ucfg → src_globals_utils_ts_93_1_FD_1_createConsequences.ucfg} +0 -0
  125. package/.scannerwork/ucfg2/js/src_store_actions_ts_100_27_FE_135_Ptr_val.ucfg +0 -0
  126. package/.scannerwork/ucfg2/js/src_store_actions_ts_103_26_FE_136_Ptr_val.ucfg +0 -0
  127. package/.scannerwork/ucfg2/js/src_store_actions_ts_106_11_FE_137_0.ucfg +0 -0
  128. package/.scannerwork/ucfg2/js/src_store_actions_ts_110_13_FE_138_Ptr_loc.ucfg +0 -0
  129. package/.scannerwork/ucfg2/js/src_store_actions_ts_113_13_FE_139_0.ucfg +0 -0
  130. package/.scannerwork/ucfg2/js/src_store_actions_ts_117_9_FE_140_Ptr_sam.ucfg +0 -0
  131. package/.scannerwork/ucfg2/js/src_store_actions_ts_120_24_FE_141_0.ucfg +0 -0
  132. package/.scannerwork/ucfg2/js/src_store_actions_ts_129_8_FD_14_setTestApi.ucfg +0 -0
  133. package/.scannerwork/ucfg2/js/src_store_actions_ts_25_21_FE_121_Ptr.ucfg +0 -0
  134. package/.scannerwork/ucfg2/js/src_store_actions_ts_29_24_FE_122_Ptr.ucfg +0 -0
  135. package/.scannerwork/ucfg2/js/src_store_actions_ts_40_20_FE_123_Ptr.ucfg +0 -0
  136. package/.scannerwork/ucfg2/js/src_store_actions_ts_45_21_FE_124_Ptr_sam.ucfg +0 -0
  137. package/.scannerwork/ucfg2/js/src_store_actions_ts_57_24_FE_125_Ptr.ucfg +0 -0
  138. package/.scannerwork/ucfg2/js/src_store_actions_ts_67_20_FE_126_Ptr_par.ucfg +0 -0
  139. package/.scannerwork/ucfg2/js/src_store_actions_ts_71_15_FE_127_Ptr_rec.ucfg +0 -0
  140. package/.scannerwork/ucfg2/js/src_store_actions_ts_74_14_FE_128_Ptr_ale.ucfg +0 -0
  141. package/.scannerwork/ucfg2/js/src_store_actions_ts_77_20_FE_129_Ptr.ucfg +0 -0
  142. package/.scannerwork/ucfg2/js/src_store_actions_ts_80_21_FE_130_Ptr.ucfg +0 -0
  143. package/.scannerwork/ucfg2/js/src_store_actions_ts_83_20_FE_131_Ptr_ann.ucfg +0 -0
  144. package/.scannerwork/ucfg2/js/src_store_actions_ts_86_19_FE_132_Ptr_ann.ucfg +0 -0
  145. package/.scannerwork/ucfg2/js/src_store_actions_ts_94_30_FE_133_Ptr_val.ucfg +0 -0
  146. package/.scannerwork/ucfg2/js/src_store_actions_ts_97_32_FE_134_Ptr_val.ucfg +0 -0
  147. package/.scannerwork/ucfg2/js/{src_store_getters_ts_97_18_A_81_sta.ucfg → src_store_getters_ts_100_5_A_83_sta.ucfg} +0 -0
  148. package/.scannerwork/ucfg2/js/{src_store_getters_ts_97_36_A_82_rec.ucfg → src_store_getters_ts_101_5_A_84_rec.ucfg} +0 -0
  149. package/.scannerwork/ucfg2/js/{src_store_getters_ts_125_24_A_83_sta.ucfg → src_store_getters_ts_129_24_A_85_sta.ucfg} +0 -0
  150. package/.scannerwork/ucfg2/js/{src_store_getters_ts_137_46_A_84_ite.ucfg → src_store_getters_ts_141_46_A_86_ite.ucfg} +0 -0
  151. package/.scannerwork/ucfg2/js/{src_store_getters_ts_146_31_A_85_sta.ucfg → src_store_getters_ts_150_31_A_87_sta.ucfg} +0 -0
  152. package/.scannerwork/ucfg2/js/{src_store_getters_ts_158_64_A_86_ite.ucfg → src_store_getters_ts_162_64_A_88_ite.ucfg} +0 -0
  153. package/.scannerwork/ucfg2/js/{src_store_getters_ts_167_32_A_87_sta.ucfg → src_store_getters_ts_171_32_A_89_sta.ucfg} +0 -0
  154. package/.scannerwork/ucfg2/js/{src_store_getters_ts_180_27_A_88_sta.ucfg → src_store_getters_ts_184_27_A_90_sta.ucfg} +0 -0
  155. package/.scannerwork/ucfg2/js/{src_store_getters_ts_193_26_A_89_sta.ucfg → src_store_getters_ts_197_26_A_91_sta.ucfg} +0 -0
  156. package/.scannerwork/ucfg2/js/{src_store_getters_ts_23_18_A_70_sta.ucfg → src_store_getters_ts_24_5_A_72_sta.ucfg} +0 -0
  157. package/.scannerwork/ucfg2/js/{src_store_getters_ts_23_36_A_71_id.ucfg → src_store_getters_ts_25_5_A_73_id.ucfg} +0 -0
  158. package/.scannerwork/ucfg2/js/{src_store_getters_ts_27_37_A_72_sam.ucfg → src_store_getters_ts_29_39_A_74_sam.ucfg} +0 -0
  159. package/.scannerwork/ucfg2/js/{src_store_getters_ts_29_19_A_73_sta.ucfg → src_store_getters_ts_31_19_A_75_sta.ucfg} +0 -0
  160. package/.scannerwork/ucfg2/js/{src_store_getters_ts_53_37_A_76_sam.ucfg → src_store_getters_ts_42_37_A_76_sam.ucfg} +0 -0
  161. package/.scannerwork/ucfg2/js/{src_store_getters_ts_42_19_A_75_sta.ucfg → src_store_getters_ts_44_19_A_77_sta.ucfg} +0 -0
  162. package/.scannerwork/ucfg2/js/{src_store_getters_ts_40_37_A_74_sam.ucfg → src_store_getters_ts_55_37_A_78_sam.ucfg} +0 -0
  163. package/.scannerwork/ucfg2/js/{src_store_getters_ts_55_20_A_77_sta.ucfg → src_store_getters_ts_57_20_A_79_sta.ucfg} +0 -0
  164. package/.scannerwork/ucfg2/js/{src_store_getters_ts_7_12_A_69_sta.ucfg → src_store_getters_ts_7_12_A_71_sta.ucfg} +0 -0
  165. package/.scannerwork/ucfg2/js/{src_store_getters_ts_85_14_A_78_sta.ucfg → src_store_getters_ts_87_14_A_80_sta.ucfg} +0 -0
  166. package/.scannerwork/ucfg2/js/{src_store_getters_ts_88_20_A_79_sta.ucfg → src_store_getters_ts_90_20_A_81_sta.ucfg} +0 -0
  167. package/.scannerwork/ucfg2/js/{src_store_getters_ts_94_24_A_80_sta.ucfg → src_store_getters_ts_96_24_A_82_sta.ucfg} +0 -0
  168. package/.scannerwork/ucfg2/js/src_store_mutations_ts_10_13_FE_106_sta_sam.ucfg +0 -0
  169. package/.scannerwork/ucfg2/js/src_store_mutations_ts_13_20_FE_107_sta_sam.ucfg +0 -0
  170. package/.scannerwork/ucfg2/js/src_store_mutations_ts_17_30_FE_108_sta_phe.ucfg +0 -0
  171. package/.scannerwork/ucfg2/js/src_store_mutations_ts_20_13_FE_109_sta_rec.ucfg +0 -0
  172. package/.scannerwork/ucfg2/js/src_store_mutations_ts_24_20_FE_110_sta_rec.ucfg +0 -0
  173. package/.scannerwork/ucfg2/js/src_store_mutations_ts_27_11_FE_111_sta_ale.ucfg +0 -0
  174. package/.scannerwork/ucfg2/js/src_store_mutations_ts_32_14_FE_112_sta_ale.ucfg +0 -0
  175. package/.scannerwork/ucfg2/js/{src_store_mutations_ts_33_40_A_68_anA.ucfg → src_store_mutations_ts_33_40_A_70_anA.ucfg} +0 -0
  176. package/.scannerwork/ucfg2/js/src_store_mutations_ts_35_17_FE_113_sta_ann.ucfg +0 -0
  177. package/.scannerwork/ucfg2/js/src_store_mutations_ts_38_30_FE_114_sta_val.ucfg +0 -0
  178. package/.scannerwork/ucfg2/js/src_store_mutations_ts_41_32_FE_115_sta_val.ucfg +0 -0
  179. package/.scannerwork/ucfg2/js/src_store_mutations_ts_44_27_FE_116_sta_val.ucfg +0 -0
  180. package/.scannerwork/ucfg2/js/src_store_mutations_ts_47_26_FE_117_sta_val.ucfg +0 -0
  181. package/.scannerwork/ucfg2/js/src_store_mutations_ts_7_14_FE_105_sta_met.ucfg +0 -0
  182. package/.scannerwork/ucfg2/js/{src_utils_treeBuilder_ts_81_33_A_8_k.ucfg → src_utils_treeBuilder_ts_111_33_A_10_k.ucfg} +0 -0
  183. package/.scannerwork/ucfg2/js/src_utils_treeBuilder_ts_62_30_A_5_inp.ucfg +0 -0
  184. package/.scannerwork/ucfg2/js/src_utils_treeBuilder_ts_64_40_A_6_key.ucfg +0 -0
  185. package/.scannerwork/ucfg2/js/src_utils_treeBuilder_ts_75_31_A_7_out.ucfg +0 -0
  186. package/.scannerwork/ucfg2/js/src_utils_treeBuilder_ts_78_18_A_8_que.ucfg +0 -0
  187. package/.scannerwork/ucfg2/js/{src_utils_treeBuilder_ts_73_44_A_7_cat.ucfg → src_utils_treeBuilder_ts_90_46_A_9_cat.ucfg} +0 -0
  188. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_103_29_A_47_lab.ucfg → src_utils_treeDrawer_ts_103_29_A_49_lab.ucfg} +0 -0
  189. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_104_35_A_48_a_b.ucfg → src_utils_treeDrawer_ts_104_35_A_50_a_b.ucfg} +0 -0
  190. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_109_32_A_49_svg_pro.ucfg → src_utils_treeDrawer_ts_109_32_A_51_svg_pro.ucfg} +0 -0
  191. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_113_24_A_50_thi_nex_thi_nex_xOf_yOf_bar.ucfg → src_utils_treeDrawer_ts_113_24_A_52_thi_nex_thi_nex_xOf_yOf_bar.ucfg} +0 -0
  192. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_12_26_A_32_fon.ucfg → src_utils_treeDrawer_ts_12_26_A_34_fon.ucfg} +0 -0
  193. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_133_24_A_51_lab_fon_typ_fon.ucfg → src_utils_treeDrawer_ts_133_24_A_53_lab_fon_typ_fon.ucfg} +0 -0
  194. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_153_18_A_52_svg_x1_y1_x2_y2_str.ucfg → src_utils_treeDrawer_ts_153_18_A_54_svg_x1_y1_x2_y2_str.ucfg} +0 -0
  195. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_16_41_A_33_fon.ucfg → src_utils_treeDrawer_ts_16_41_A_35_fon.ucfg} +0 -0
  196. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_171_18_A_53_gEl_x_y_wid_hei_isE.ucfg → src_utils_treeDrawer_ts_171_18_A_55_gEl_x_y_wid_hei_isE.ucfg} +0 -0
  197. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_192_18_A_54_gEl_x_y_lab_fon_nod.ucfg → src_utils_treeDrawer_ts_192_18_A_56_gEl_x_y_lab_fon_nod.ucfg} +0 -0
  198. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_20_34_A_34_bar.ucfg → src_utils_treeDrawer_ts_20_34_A_36_bar.ucfg} +0 -0
  199. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_210_25_A_55_svg.ucfg → src_utils_treeDrawer_ts_210_25_A_57_svg.ucfg} +0 -0
  200. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_226_29_A_56_ele_can_can.ucfg → src_utils_treeDrawer_ts_226_29_A_58_ele_can_can.ucfg} +0 -0
  201. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_234_23_A_57_bar_g_e_fon_val_off_svg.ucfg → src_utils_treeDrawer_ts_234_23_A_59_bar_g_e_fon_val_off_svg.ucfg} +0 -0
  202. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_24_28_A_35_edg.ucfg → src_utils_treeDrawer_ts_24_28_A_37_edg.ucfg} +0 -0
  203. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_254_18_A_58_coo_bar_svg_nex_ind.ucfg → src_utils_treeDrawer_ts_254_18_A_60_coo_bar_svg_nex_ind.ucfg} +0 -0
  204. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_273_26_A_59_svg_g_fon_gra_gra_hor.ucfg → src_utils_treeDrawer_ts_273_26_A_61_svg_g_fon_gra_gra_hor.ucfg} +0 -0
  205. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_282_21_A_60_v.ucfg → src_utils_treeDrawer_ts_282_21_A_62_v.ucfg} +0 -0
  206. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_28_30_A_36_svg_gra.ucfg → src_utils_treeDrawer_ts_28_30_A_38_svg_gra.ucfg} +0 -0
  207. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_301_26_A_61_svg_g_bar_fon_gra_gra_hor.ucfg → src_utils_treeDrawer_ts_301_26_A_63_svg_g_bar_fon_gra_gra_hor.ucfg} +0 -0
  208. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_312_21_A_62_e.ucfg → src_utils_treeDrawer_ts_312_21_A_64_e.ucfg} +0 -0
  209. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_32_36_A_37_wid_hei.ucfg → src_utils_treeDrawer_ts_32_36_A_39_wid_hei.ucfg} +0 -0
  210. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_39_26_A_38_y_ind_fon_yOf.ucfg → src_utils_treeDrawer_ts_39_26_A_40_y_ind_fon_yOf.ucfg} +0 -0
  211. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_43_26_A_39_y_ind_fon_lab.ucfg → src_utils_treeDrawer_ts_43_26_A_41_y_ind_fon_lab.ucfg} +0 -0
  212. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_48_17_A_40_y_bar_off.ucfg → src_utils_treeDrawer_ts_48_17_A_42_y_bar_off.ucfg} +0 -0
  213. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_55_17_A_41_x_xOf.ucfg → src_utils_treeDrawer_ts_55_17_A_43_x_xOf.ucfg} +0 -0
  214. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_59_26_A_42_xPo_tex.ucfg → src_utils_treeDrawer_ts_59_26_A_44_xPo_tex.ucfg} +0 -0
  215. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_63_21_A_43_xPo_wid.ucfg → src_utils_treeDrawer_ts_63_21_A_45_xPo_wid.ucfg} +0 -0
  216. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_71_20_A_44_svg_gra_hor.ucfg → src_utils_treeDrawer_ts_71_20_A_46_svg_gra_hor.ucfg} +0 -0
  217. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_80_20_A_45_svg_gra.ucfg → src_utils_treeDrawer_ts_80_20_A_47_svg_gra.ucfg} +0 -0
  218. package/.scannerwork/ucfg2/js/{src_utils_treeDrawer_ts_85_22_A_46_inn_fon_fon.ucfg → src_utils_treeDrawer_ts_85_22_A_48_inn_fon_fon.ucfg} +0 -0
  219. package/.scannerwork/ucfg2/js/{src_views_DecisionTreeViewer_vue_21_9_A_25_0.ucfg → src_views_DecisionTreeViewer_vue_21_9_A_27_0.ucfg} +0 -0
  220. package/.scannerwork/ucfg2/js/src_views_Samples_vue_29_10_FE_83_sam.ucfg +0 -0
  221. package/.scannerwork/ucfg2/js/src_views_Samples_vue_33_16_FE_84_0.ucfg +0 -0
  222. package/.scannerwork/ucfg2/js/{src_views_Samples_vue_40_40_A_30_sam.ucfg → src_views_Samples_vue_40_40_A_32_sam.ucfg} +0 -0
  223. package/.scannerwork/ucfg2/js/{src_views_VcfViewer_vue_16_9_A_65_0.ucfg → src_views_VcfViewer_vue_16_9_A_67_0.ucfg} +0 -0
  224. package/.scannerwork/ucfg2/js/src_views_VcfViewer_vue_22_16_FE_98_0.ucfg +0 -0
  225. package/.travis.yml +5 -1
  226. package/README.md +1 -1
  227. package/package.json +2 -2
  228. package/src/components/Gene.vue +32 -0
  229. package/src/components/RecordInfoDetailsItem.vue +8 -1
  230. package/src/components/RecordInfoDetailsItemValue.vue +6 -2
  231. package/src/components/RecordTable.vue +27 -14
  232. package/src/globals/utils.ts +19 -0
  233. package/src/locales/en.json +2 -1
  234. package/src/mocks/apiDataMock.ts +3 -3
  235. package/src/store/getters.ts +35 -31
  236. package/src/types/Consequence.ts +2 -0
  237. package/src/types/DecisionTree.d.ts +21 -4
  238. package/src/types/Gene.ts +4 -0
  239. package/src/utils/treeBuilder.ts +43 -13
  240. package/tests/unit/globals/utils.spec.ts +15 -0
  241. package/tests/unit/store/getters.spec.ts +1 -1
  242. package/tests/unit/utils/treeBuilder.spec.ts +118 -0
  243. package/tests/unit/utils/treeDrawer.spec.ts +1 -1
  244. package/.scannerwork/css-bundle/bin/server +0 -15
  245. package/.scannerwork/css-bundle/lib/src/server.d.ts +0 -14
  246. package/.scannerwork/css-bundle/lib/src/server.js +0 -83
  247. package/.scannerwork/css-bundle/lib/src/server.js.map +0 -1
  248. package/.scannerwork/css-bundle/lib/tsconfig.tsbuildinfo +0 -1369
  249. package/.scannerwork/css-bundle/package/package.json +0 -11
  250. package/.scannerwork/ucfg2/js/src_components_RecordTable_vue_514_41_A_15_con.ucfg +0 -0
@@ -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;
@@ -12,7 +12,7 @@ type BoolOutcome = {
12
12
  type Query = {
13
13
  field: string;
14
14
  operator: string;
15
- value: string;
15
+ value: string | string[] | number | number[];
16
16
  };
17
17
 
18
18
  type BoolNode = {
@@ -21,6 +21,22 @@ type BoolNode = {
21
21
  outcomeMissing?: Outcome;
22
22
  } & BoolOutcome;
23
23
 
24
+ type MultiOperator = 'AND' | 'OR';
25
+
26
+ type BoolMultiQuery = {
27
+ operator?: MultiOperator;
28
+ queries: Query[];
29
+ outcomeTrue: Outcome;
30
+ };
31
+
32
+ type BoolMultiNode = {
33
+ type: 'BOOL_MULTI';
34
+ fields: string[];
35
+ outcomes: BoolMultiQuery[];
36
+ outcomeMissing?: Outcome;
37
+ outcomeDefault?: Outcome;
38
+ };
39
+
24
40
  type ExistsNode = {
25
41
  type: Exists;
26
42
  field: string;
@@ -32,8 +48,8 @@ type CategoricalNode = {
32
48
  outcomeMap: {
33
49
  [key: string]: Outcome;
34
50
  };
35
- outcomeMissing: Outcome;
36
- outcomeDefault: Outcome;
51
+ outcomeMissing?: Outcome;
52
+ outcomeDefault?: Outcome;
37
53
  };
38
54
 
39
55
  type ExitNode = {
@@ -45,10 +61,11 @@ type NodeDescription = { description: string };
45
61
 
46
62
  type NodeWithSimpleOutcome = NodeDescription & (BoolNode | ExistsNode);
47
63
  type NodeWithCategoricalOutcome = NodeDescription & CategoricalNode;
64
+ type NodeWithBoolMultiOutcome = NodeDescription & BoolMultiNode;
48
65
 
49
66
  type Edge = { from: string; to: string; label: string };
50
67
 
51
- export type NodeWithOutcome = NodeWithSimpleOutcome | NodeWithCategoricalOutcome;
68
+ export type NodeWithOutcome = NodeWithSimpleOutcome | NodeWithCategoricalOutcome | NodeWithBoolMultiOutcome;
52
69
 
53
70
  export type Node = NodeWithOutcome | ExitNode;
54
71
 
@@ -0,0 +1,4 @@
1
+ export interface Gene {
2
+ symbol: string | null;
3
+ incompletePenetrance: boolean | false;
4
+ }
@@ -63,19 +63,49 @@ 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
- if ('outcomeTrue' in node) {
67
- edges = createSimpleEdge('True', node, key, edges);
68
- edges = createSimpleEdge('False', node, key, edges);
69
- if ('outcomeMissing' in node) {
70
- edges = createSimpleEdge('Missing', node, key, edges);
71
- }
72
- } else if ('outcomeMap' in node) {
73
- Object.keys(node.outcomeMap).forEach((category) => {
74
- const nextNode = node.outcomeMap[category].nextNode;
75
- edges = createEdge(nextNode, category, key, edges);
76
- });
77
- edges = createSimpleEdge('Missing', node, key, edges);
78
- edges = createSimpleEdge('Default', node, key, edges);
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 'BOOL_MULTI':
75
+ node.outcomes.forEach((outcome) => {
76
+ const nextNode = outcome.outcomeTrue.nextNode;
77
+ const label = outcome.queries
78
+ .map((query) => `${query.field} ${query.operator} ${query.value}`)
79
+ .join(` ${outcome.operator} `);
80
+ edges = createEdge(nextNode, label, key, edges);
81
+ });
82
+ if ('outcomeMissing' in node) {
83
+ edges = createSimpleEdge('Missing', node, key, edges);
84
+ }
85
+ if ('outcomeDefault' in node) {
86
+ edges = createSimpleEdge('Default', node, key, edges);
87
+ }
88
+ break;
89
+ case 'CATEGORICAL':
90
+ Object.keys(node.outcomeMap).forEach((category) => {
91
+ const nextNode = node.outcomeMap[category].nextNode;
92
+ edges = createEdge(nextNode, category, key, edges);
93
+ });
94
+ if ('outcomeMissing' in node) {
95
+ edges = createSimpleEdge('Missing', node, key, edges);
96
+ }
97
+ if ('outcomeDefault' in node) {
98
+ edges = createSimpleEdge('Default', node, key, edges);
99
+ }
100
+ break;
101
+ case 'EXISTS':
102
+ edges = createSimpleEdge('True', node, key, edges);
103
+ edges = createSimpleEdge('False', node, key, edges);
104
+ break;
105
+ case 'LEAF':
106
+ break;
107
+ default:
108
+ throw new Error('unknown node type');
79
109
  }
80
110
  });
81
111
  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,
@@ -517,7 +517,7 @@ test('whether records contain MVL annotations - no meta', () => {
517
517
 
518
518
  test('whether records contain MVL annotations - no info meta', () => {
519
519
  const recordsMetadata = mock<Vcf.Metadata>();
520
- recordsMetadata.info = { };
520
+ recordsMetadata.info = {};
521
521
 
522
522
  const metadata = mock<Api.Metadata>();
523
523
  metadata.records = recordsMetadata;
@@ -28,6 +28,55 @@ describe('treeBuilder', () => {
28
28
  nextNode: 'existsNode'
29
29
  }
30
30
  },
31
+ boolMultiNode: {
32
+ type: 'BOOL_MULTI',
33
+ description: 'Bool multi type node',
34
+ fields: ['my_multi_1', 'my_multi_2'],
35
+ outcomeDefault: {
36
+ nextNode: 'exit_t'
37
+ },
38
+ outcomeMissing: {
39
+ nextNode: 'exit_f'
40
+ },
41
+ outcomes: [
42
+ {
43
+ operator: 'AND',
44
+ queries: [
45
+ {
46
+ field: 'my_multi_1',
47
+ operator: '>',
48
+ value: 0.1
49
+ },
50
+ {
51
+ field: 'my_multi_1',
52
+ operator: '<=',
53
+ value: 0.2
54
+ }
55
+ ],
56
+ outcomeTrue: {
57
+ nextNode: 'exit_f'
58
+ }
59
+ },
60
+ {
61
+ operator: 'OR',
62
+ queries: [
63
+ {
64
+ field: 'my_multi_2',
65
+ operator: '<',
66
+ value: 0.1
67
+ },
68
+ {
69
+ field: 'my_multi_2',
70
+ operator: '>',
71
+ value: 0.2
72
+ }
73
+ ],
74
+ outcomeTrue: {
75
+ nextNode: 'exit_t'
76
+ }
77
+ }
78
+ ]
79
+ },
31
80
  existsNode: {
32
81
  type: 'EXISTS',
33
82
  description: 'check some field exists',
@@ -82,6 +131,11 @@ describe('treeBuilder', () => {
82
131
  label: 'boolNode\n(== val)',
83
132
  type: 'BOOL'
84
133
  },
134
+ {
135
+ id: 'boolMultiNode',
136
+ label: 'boolMultiNode',
137
+ type: 'BOOL_MULTI'
138
+ },
85
139
  {
86
140
  id: 'existsNode',
87
141
  label: 'existsNode\n(exists)',
@@ -181,6 +235,16 @@ describe('treeBuilder', () => {
181
235
  to: 'existsNode',
182
236
  label: 'False\nMissing'
183
237
  },
238
+ {
239
+ from: 'boolMultiNode',
240
+ to: 'exit_f',
241
+ label: 'my_multi_1 > 0.1 AND my_multi_1 <= 0.2\nMissing'
242
+ },
243
+ {
244
+ from: 'boolMultiNode',
245
+ to: 'exit_t',
246
+ label: 'my_multi_2 < 0.1 OR my_multi_2 > 0.2\nDefault'
247
+ },
184
248
  {
185
249
  from: 'existsNode',
186
250
  to: 'categorical_field',
@@ -199,4 +263,58 @@ describe('treeBuilder', () => {
199
263
  ];
200
264
  expect(outcome).toStrictEqual(expected);
201
265
  });
266
+ it('should generate edges for CATEGORICAL node without default/missing', () => {
267
+ const decisionTree: DecisionTree = {
268
+ files: {
269
+ panel: {
270
+ path: 'path/to/tsv'
271
+ }
272
+ },
273
+ rootNode: 'ROOT',
274
+ nodes: {
275
+ categoricalField: {
276
+ type: 'CATEGORICAL',
277
+ description: 'check categorical field',
278
+ field: 'FIELD_TO_CHECK',
279
+ outcomeMap: {
280
+ P: {
281
+ nextNode: 'exit_t'
282
+ },
283
+ LP: {
284
+ nextNode: 'exit_t'
285
+ },
286
+ LB: {
287
+ nextNode: 'exit_f'
288
+ },
289
+ B: {
290
+ nextNode: 'exit_f'
291
+ }
292
+ }
293
+ },
294
+ exit_t: {
295
+ type: 'LEAF',
296
+ class: 'T'
297
+ },
298
+ exit_f: {
299
+ type: 'LEAF',
300
+ class: 'F'
301
+ }
302
+ }
303
+ };
304
+
305
+ const outcome = retrieveEdges(decisionTree);
306
+ const expected = [
307
+ {
308
+ from: 'categoricalField',
309
+ to: 'exit_t',
310
+ label: 'P\nLP'
311
+ },
312
+ {
313
+ from: 'categoricalField',
314
+ to: 'exit_f',
315
+ label: 'LB\nB'
316
+ }
317
+ ];
318
+ expect(outcome).toStrictEqual(expected);
319
+ });
202
320
  });
@@ -1,4 +1,4 @@
1
- import treeDrawer, { calculateScaleToFit, getGraphScale } from '@/utils/treeDrawer';
1
+ import treeDrawer from '@/utils/treeDrawer';
2
2
 
3
3
  describe('retrieveTreeFromFile', () => {
4
4
  it('getLineThickness', () => {
@@ -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
- }
@@ -1,83 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.start = exports.setLogHandlersForTests = void 0;
4
- const express = require("express");
5
- const stylelint = require("stylelint");
6
- const fs = require("fs");
7
- const bodyParser = require("body-parser");
8
- // for testing purposes
9
- let log = console.log;
10
- let logError = console.error;
11
- const MAX_REQUEST_SIZE = "50mb";
12
- function setLogHandlersForTests(logHandler, errorHandler) {
13
- log = logHandler;
14
- logError = errorHandler;
15
- }
16
- exports.setLogHandlersForTests = setLogHandlersForTests;
17
- function start(port = 0, host = "127.0.0.1") {
18
- return new Promise(resolve => {
19
- log("DEBUG starting stylelint-bridge server at port", port);
20
- const app = express();
21
- app.use(bodyParser.json({ limit: MAX_REQUEST_SIZE }));
22
- app.post("/analyze", analyzeWithStylelint);
23
- app.get("/status", (_, resp) => resp.send("OK!"));
24
- app.post("/close", (_req, resp) => {
25
- console.log("DEBUG stylelint-bridge server will shutdown");
26
- resp.end(() => {
27
- server.close();
28
- });
29
- });
30
- // every time something is wrong we log error and send empty response (with 0 issues)
31
- // it's important to keep this call last in configuring "app"
32
- app.use((error, _req, response, _next) => processError(error, response));
33
- const server = app.listen(port, host, () => {
34
- log("DEBUG stylelint-bridge server is running at port", server.address().port);
35
- resolve(server);
36
- });
37
- });
38
- }
39
- exports.start = start;
40
- function analyzeWithStylelint(request, response) {
41
- const parsedRequest = request.body;
42
- const { filePath, fileContent, configFile } = parsedRequest;
43
- const code = typeof fileContent == "string" ? fileContent : getFileContent(filePath);
44
- const options = {
45
- code,
46
- codeFilename: filePath,
47
- configFile
48
- };
49
- stylelint
50
- .lint(options)
51
- .then(result => response.json(toIssues(result.results, filePath)))
52
- .catch(error => processError(error, response));
53
- }
54
- function processError(error, response) {
55
- logError(error);
56
- response.json([]);
57
- }
58
- function toIssues(results, filePath) {
59
- const analysisResponse = [];
60
- // we should have only one element in 'results' as we are analyzing only 1 file
61
- results.forEach(result => {
62
- // to avoid reporting on "fake" source like <input ccs 1>
63
- if (result.source !== filePath) {
64
- log(`DEBUG For file [${filePath}] received issues with [${result.source}] as a source. They will not be reported.`);
65
- return;
66
- }
67
- result.warnings.forEach(warning => analysisResponse.push({
68
- line: warning.line,
69
- text: warning.text,
70
- rule: warning.rule
71
- }));
72
- });
73
- return analysisResponse;
74
- }
75
- function getFileContent(filePath) {
76
- const fileContent = fs.readFileSync(filePath, { encoding: "utf8" });
77
- // strip BOM
78
- if (fileContent.charCodeAt(0) === 0xfeff) {
79
- return fileContent.slice(1);
80
- }
81
- return fileContent;
82
- }
83
- //# sourceMappingURL=server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}