@sjcrh/proteinpaint-shared 2.187.0 → 2.188.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.
Files changed (117) hide show
  1. package/README.md +10 -2
  2. package/constants/AiHisto.ts +27 -0
  3. package/constants/README.md +11 -0
  4. package/devTs.ts +3 -0
  5. package/dist/constants/AiHisto.d.ts +23 -0
  6. package/dist/constants/AiHisto.js +31 -0
  7. package/dist/constants/AiHisto.js.map +7 -0
  8. package/dist/src/aiHisto.d.ts +5 -0
  9. package/dist/src/aiHisto.js +15 -0
  10. package/dist/src/aiHisto.js.map +7 -0
  11. package/dist/src/bulk.cnv.js +83 -0
  12. package/dist/src/bulk.cnv.js.map +7 -0
  13. package/dist/src/bulk.del.js +119 -0
  14. package/dist/src/bulk.del.js.map +7 -0
  15. package/dist/src/bulk.itd.js +119 -0
  16. package/dist/src/bulk.itd.js.map +7 -0
  17. package/dist/src/bulk.js +183 -0
  18. package/dist/src/bulk.js.map +7 -0
  19. package/dist/src/bulk.snv.js +175 -0
  20. package/dist/src/bulk.snv.js.map +7 -0
  21. package/dist/src/bulk.sv.js +266 -0
  22. package/dist/src/bulk.sv.js.map +7 -0
  23. package/dist/src/bulk.svjson.js +151 -0
  24. package/dist/src/bulk.svjson.js.map +7 -0
  25. package/dist/src/bulk.trunc.js +122 -0
  26. package/dist/src/bulk.trunc.js.map +7 -0
  27. package/dist/src/clustering.js +71 -0
  28. package/dist/src/clustering.js.map +7 -0
  29. package/dist/src/common.js +1302 -0
  30. package/dist/src/common.js.map +7 -0
  31. package/dist/src/compute.percentile.js +10 -0
  32. package/dist/src/compute.percentile.js.map +7 -0
  33. package/dist/src/doc.d.ts +7 -0
  34. package/dist/src/doc.js +10 -0
  35. package/dist/src/doc.js.map +7 -0
  36. package/dist/src/fetch-helpers.js +177 -0
  37. package/dist/src/fetch-helpers.js.map +7 -0
  38. package/dist/src/fileSize.js +10 -0
  39. package/dist/src/fileSize.js.map +7 -0
  40. package/dist/src/filter.d.ts +62 -0
  41. package/dist/src/filter.js +194 -0
  42. package/dist/src/filter.js.map +7 -0
  43. package/dist/src/hash.js +20 -0
  44. package/dist/src/hash.js.map +7 -0
  45. package/dist/src/helpers.js +66 -0
  46. package/dist/src/helpers.js.map +7 -0
  47. package/dist/src/index.d.ts +26 -0
  48. package/dist/src/index.js +27 -0
  49. package/dist/src/index.js.map +7 -0
  50. package/dist/src/joinUrl.d.ts +1 -0
  51. package/dist/src/joinUrl.js +17 -0
  52. package/dist/src/joinUrl.js.map +7 -0
  53. package/dist/src/mds3tk.js +64 -0
  54. package/dist/src/mds3tk.js.map +7 -0
  55. package/dist/src/roundValue.js +57 -0
  56. package/dist/src/roundValue.js.map +7 -0
  57. package/dist/src/termdb.bins.js +272 -0
  58. package/dist/src/termdb.bins.js.map +7 -0
  59. package/dist/src/termdb.initbinconfig.js +79 -0
  60. package/dist/src/termdb.initbinconfig.js.map +7 -0
  61. package/dist/src/termdb.usecase.js +239 -0
  62. package/dist/src/termdb.usecase.js.map +7 -0
  63. package/dist/src/terms.d.ts +83 -0
  64. package/dist/src/terms.js +327 -0
  65. package/dist/src/terms.js.map +7 -0
  66. package/dist/src/time.d.ts +9 -0
  67. package/dist/src/time.js +23 -0
  68. package/dist/src/time.js.map +7 -0
  69. package/dist/src/tree.js +82 -0
  70. package/dist/src/tree.js.map +7 -0
  71. package/dist/src/urljson.d.ts +8 -0
  72. package/dist/src/urljson.js +31 -0
  73. package/dist/src/urljson.js.map +7 -0
  74. package/dist/src/vcf.ann.js +56 -0
  75. package/dist/src/vcf.ann.js.map +7 -0
  76. package/dist/src/vcf.csq.js +82 -0
  77. package/dist/src/vcf.csq.js.map +7 -0
  78. package/dist/src/vcf.info.js +40 -0
  79. package/dist/src/vcf.info.js.map +7 -0
  80. package/dist/src/vcf.js +439 -0
  81. package/dist/src/vcf.js.map +7 -0
  82. package/dist/src/vcf.type.js +17 -0
  83. package/dist/src/vcf.type.js.map +7 -0
  84. package/package.json +20 -11
  85. package/src/bulk.cnv.js +0 -86
  86. package/src/bulk.del.js +0 -124
  87. package/src/bulk.itd.js +0 -123
  88. package/src/bulk.js +0 -197
  89. package/src/bulk.snv.js +0 -271
  90. package/src/bulk.sv.js +0 -276
  91. package/src/bulk.svjson.js +0 -164
  92. package/src/bulk.trunc.js +0 -132
  93. package/src/clustering.js +0 -66
  94. package/src/common.js +0 -1608
  95. package/src/compute.percentile.js +0 -11
  96. package/src/doc.js +0 -6
  97. package/src/fetch-helpers.js +0 -323
  98. package/src/fileSize.js +0 -6
  99. package/src/filter.js +0 -221
  100. package/src/hash.js +0 -21
  101. package/src/helpers.js +0 -88
  102. package/src/index.js +0 -26
  103. package/src/joinUrl.js +0 -14
  104. package/src/mds3tk.js +0 -100
  105. package/src/roundValue.js +0 -94
  106. package/src/termdb.bins.js +0 -456
  107. package/src/termdb.initbinconfig.js +0 -130
  108. package/src/termdb.usecase.js +0 -344
  109. package/src/terms.js +0 -341
  110. package/src/time.js +0 -22
  111. package/src/tree.js +0 -138
  112. package/src/urljson.js +0 -41
  113. package/src/vcf.ann.js +0 -62
  114. package/src/vcf.csq.js +0 -153
  115. package/src/vcf.info.js +0 -50
  116. package/src/vcf.js +0 -654
  117. package/src/vcf.type.js +0 -24
package/src/vcf.csq.js DELETED
@@ -1,153 +0,0 @@
1
- import { vepinfo } from "./common.js"
2
- /*
3
- parse csq field from a variant line, not header
4
- CSQ header must have already been parsed
5
-
6
- str: the csq value for a vcf line
7
- header: [ // something like this
8
- { name: 'Allele' },
9
- { name: 'Consequence' },
10
- { name: 'IMPACT' },
11
- { name: 'SYMBOL' },
12
- { name: 'Gene' },
13
- { name: 'Feature_type' },
14
- { name: 'Feature' },
15
- { name: 'BIOTYPE' },
16
- { name: 'EXON' },
17
- { name: 'INTRON' },
18
- { name: 'HGVSc' },
19
- { name: 'HGVSp' },
20
- { name: 'cDNA_position' },
21
- { name: 'CDS_position' },
22
- { name: 'Protein_position' },
23
- { name: 'Amino_acids' },
24
- { name: 'Codons' },
25
- { name: 'Existing_variation' },
26
- { name: 'DISTANCE' },
27
- { name: 'STRAND' },
28
- { name: 'FLAGS' },
29
- { name: 'SYMBOL_SOURCE' },
30
- { name: 'HGNC_ID' },
31
- { name: 'CANONICAL' },
32
- { name: 'REFSEQ_MATCH' },
33
- { name: 'GIVEN_REF' },
34
- { name: 'USED_REF' },
35
- { name: 'BAM_EDIT' },
36
- { name: 'HGVS_OFFSET' },
37
- { name: 'CLIN_SIG' },
38
- { name: 'SOMATIC' },
39
- { name: 'PHENO' }
40
- ]
41
-
42
- m: {
43
- mlst[ {} ]
44
- .allele_original
45
- .csq[ {} ] // parse_CSQ will add this array to this allele
46
- ._class
47
- ._csqrank
48
- ._dt
49
- ._gene
50
- ._isoform
51
- ._mname
52
- }
53
-
54
- */
55
-
56
- export function parse_CSQ(str, header, m) {
57
- if (!header) {
58
- return null
59
- }
60
- for (const thisannotation of str.split(",")) {
61
- const lst = thisannotation.replace(/&/g, ",").split("|")
62
-
63
- const o = {}
64
-
65
- for (let i = 0; i < header.length; i++) {
66
- if (lst[i]) {
67
- o[header[i].name] = lst[i]
68
- }
69
- }
70
- if (!o.Allele) {
71
- continue
72
- }
73
- let allele = null
74
-
75
- //////////////////////////////////////
76
- // NOTE
77
- // mds2delete
78
- // m.alleles[] is based on old vcf parsing and may delete?
79
- // latest spec is m.mlst[]
80
- //////////////////////////////////////
81
-
82
- for (const a of m.mlst || m.alleles) {
83
- if (a.allele_original == o.Allele) {
84
- allele = a
85
- break
86
- }
87
- }
88
- if (!allele) {
89
- if (o.Allele == "-") {
90
- // deletion
91
- if (m.mlst) {
92
- if (m.mlst.length == 1) {
93
- allele = m.mlst[0]
94
- }
95
- } else if (m.alleles) {
96
- if (m.alleles.length == 1) {
97
- allele = m.alleles[0]
98
- }
99
- }
100
- } else {
101
- for (const a of m.mlst || m.alleles) {
102
- if (a.allele_original.substr(1) == o.Allele) {
103
- // insertion, without first padding base
104
- allele = a
105
- break
106
- }
107
- }
108
- }
109
- if (!allele) {
110
- // cannot match to allele!!!
111
- continue
112
- }
113
- }
114
- if (!allele.csq) {
115
- allele.csq = []
116
- }
117
- allele.csq.push(o)
118
-
119
- // gene
120
- o._gene = o.SYMBOL || o.Gene
121
-
122
- // isoform
123
- if (o.Feature_type && o.Feature_type == "Transcript") {
124
- o._isoform = o.Feature.split(".")[0] // remove version
125
- } else {
126
- o._isoform = o._gene
127
- }
128
-
129
- // class
130
- if (o.Consequence) {
131
- const [dt, cls, rank] = vepinfo(o.Consequence)
132
- o._dt = dt
133
- o._class = cls
134
- o._csqrank = rank
135
- } else {
136
- // FIXME
137
- o._dt = dtsnvindel
138
- o._class = mclassnonstandard
139
- }
140
- // mname
141
- if (o.HGVSp) {
142
- o._mname = decodeURIComponent(o.HGVSp.substr(o.HGVSp.indexOf(":") + 1))
143
- } else if (o.Protein_position && o.Amino_acids) {
144
- o._mname = decodeURIComponent(o.Protein_position + o.Amino_acids)
145
- } else if (o.HGVSc) {
146
- o._mname = o.HGVSc.substr(o.HGVSc.indexOf(":") + 1)
147
- } else if (o.Existing_variation) {
148
- o._name = o.Existing_variation
149
- } else {
150
- }
151
- }
152
- return true
153
- }
package/src/vcf.info.js DELETED
@@ -1,50 +0,0 @@
1
- /*
2
- to parse a variant line, not header
3
-
4
- cannot simply slice by /[;=]/, but read char by char
5
- case CLNVI=Breast_Cancer_Information_Core__(BRCA2):745-4&base_change=C_to_G;
6
- case k1=v1;DB;k2=v2;
7
- */
8
- export function dissect_INFO(str) {
9
- //let findequal=true
10
- let findsemicolon = false
11
- let findequalorsemicolon = true
12
-
13
- let i = 0
14
- let idx = 0
15
-
16
- const k2v = {}
17
- let lastkey
18
-
19
- while (i < str.length) {
20
- const c = str[i]
21
- if (findequalorsemicolon) {
22
- if (c == "=") {
23
- findsemicolon = true
24
- findequalorsemicolon = false
25
- lastkey = str.substring(idx, i)
26
- idx = i + 1
27
- } else if (c == ";") {
28
- // should be a flag
29
- k2v[str.substring(idx, i)] = 1
30
- idx = i + 1
31
- }
32
- } else if (findsemicolon && c == ";") {
33
- findequalorsemicolon = true
34
- findsemicolon = false
35
- k2v[lastkey] = str.substring(idx, i)
36
- lastkey = null
37
- idx = i + 1
38
- }
39
- i++
40
- }
41
-
42
- const remainstr = str.substr(idx, i)
43
- if (lastkey) {
44
- k2v[lastkey] = remainstr
45
- } else {
46
- k2v[remainstr] = 1
47
- }
48
-
49
- return k2v
50
- }