@sjcrh/proteinpaint-shared 2.188.1 → 2.189.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/constants/AiHisto.ts +17 -13
  2. package/dist/constants/AiHisto.d.ts +14 -12
  3. package/dist/constants/AiHisto.js +15 -17
  4. package/dist/constants/AiHisto.js.map +3 -3
  5. package/dist/src/aiHisto.d.ts +2 -2
  6. package/dist/src/aiHisto.js.map +2 -2
  7. package/dist/src/bulk.cnv.d.ts +2 -0
  8. package/dist/src/bulk.cnv.js +1 -1
  9. package/dist/src/bulk.cnv.js.map +3 -3
  10. package/dist/src/bulk.d.ts +56 -0
  11. package/dist/src/bulk.del.d.ts +2 -0
  12. package/dist/src/bulk.del.js +2 -2
  13. package/dist/src/bulk.del.js.map +3 -3
  14. package/dist/src/bulk.itd.d.ts +2 -0
  15. package/dist/src/bulk.itd.js +2 -2
  16. package/dist/src/bulk.itd.js.map +3 -3
  17. package/dist/src/bulk.js +1 -2
  18. package/dist/src/bulk.js.map +3 -3
  19. package/dist/src/bulk.snv.d.ts +2 -0
  20. package/dist/src/bulk.snv.js +3 -3
  21. package/dist/src/bulk.snv.js.map +3 -3
  22. package/dist/src/bulk.sv.d.ts +3 -0
  23. package/dist/src/bulk.sv.js +1 -1
  24. package/dist/src/bulk.sv.js.map +3 -3
  25. package/dist/src/bulk.svjson.d.ts +2 -0
  26. package/dist/src/bulk.svjson.js +3 -3
  27. package/dist/src/bulk.svjson.js.map +3 -3
  28. package/dist/src/bulk.trunc.d.ts +2 -0
  29. package/dist/src/bulk.trunc.js +1 -1
  30. package/dist/src/bulk.trunc.js.map +3 -3
  31. package/dist/src/clustering.d.ts +10 -0
  32. package/dist/src/clustering.js.map +1 -1
  33. package/dist/src/common.d.ts +431 -0
  34. package/dist/src/common.js +62 -22
  35. package/dist/src/common.js.map +3 -3
  36. package/dist/src/compute.percentile.d.ts +1 -0
  37. package/dist/src/compute.percentile.js.map +1 -1
  38. package/dist/src/fetch-helpers.d.ts +8 -0
  39. package/dist/src/fetch-helpers.js +17 -18
  40. package/dist/src/fetch-helpers.js.map +3 -3
  41. package/dist/src/fileSize.d.ts +1 -0
  42. package/dist/src/fileSize.js.map +1 -1
  43. package/dist/src/hash.d.ts +1 -0
  44. package/dist/src/hash.js.map +1 -1
  45. package/dist/src/helpers.d.ts +14 -0
  46. package/dist/src/helpers.js +3 -4
  47. package/dist/src/helpers.js.map +3 -3
  48. package/dist/src/mds3tk.d.ts +6 -0
  49. package/dist/src/mds3tk.js.map +3 -3
  50. package/dist/src/roundValue.d.ts +14 -0
  51. package/dist/src/roundValue.js.map +1 -1
  52. package/dist/src/termdb.bins.d.ts +5 -0
  53. package/dist/src/termdb.bins.js +1 -1
  54. package/dist/src/termdb.bins.js.map +3 -3
  55. package/dist/src/termdb.initbinconfig.d.ts +1 -0
  56. package/dist/src/termdb.initbinconfig.js +1 -1
  57. package/dist/src/termdb.initbinconfig.js.map +3 -3
  58. package/dist/src/termdb.usecase.d.ts +2 -0
  59. package/dist/src/termdb.usecase.js.map +3 -3
  60. package/dist/src/terms.d.ts +26 -26
  61. package/dist/src/tree.d.ts +1 -0
  62. package/dist/src/tree.js.map +3 -3
  63. package/dist/src/vcf.ann.d.ts +1 -0
  64. package/dist/src/vcf.ann.js +1 -2
  65. package/dist/src/vcf.ann.js.map +3 -3
  66. package/dist/src/vcf.csq.d.ts +1 -0
  67. package/dist/src/vcf.csq.js +1 -2
  68. package/dist/src/vcf.csq.js.map +3 -3
  69. package/dist/src/vcf.d.ts +2 -0
  70. package/dist/src/vcf.info.d.ts +1 -0
  71. package/dist/src/vcf.info.js.map +1 -1
  72. package/dist/src/vcf.js +47 -42
  73. package/dist/src/vcf.js.map +4 -4
  74. package/dist/src/vcf.type.d.ts +1 -0
  75. package/dist/src/vcf.type.js.map +1 -1
  76. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/bulk.sv.js"],
4
- "sourcesContent": ["import * as bulk from './bulk.js'\nimport * as common from './common.js'\n\n/////////////////////////////////\n//\n// client/server shared\n//\n/////////////////////////////////\n\n// work for both sv/fusion\n// must tell if the data is fusion or sv\n\nexport function parseheader(line, flag, issv) {\n\tconst header = line.toLowerCase().split('\\t')\n\tif (header.length <= 1) return 'invalid file header for fusions'\n\tconst htry = (...lst) => {\n\t\tfor (const a of lst) {\n\t\t\tconst j = header.indexOf(a)\n\t\t\tif (j != -1) return j\n\t\t}\n\t\treturn -1\n\t}\n\tlet i = htry('gene_a', 'gene1', 'genea')\n\tif (i == -1) return 'gene_a missing from header'\n\theader[i] = 'gene1'\n\ti = htry('gene_b', 'gene2', 'geneb')\n\tif (i == -1) return 'gene_b missing from header'\n\theader[i] = 'gene2'\n\ti = htry('chr_a', 'chr1', 'chra')\n\tif (i == -1) return 'chr_a missing from header'\n\theader[i] = 'chr1'\n\ti = htry('chr_b', 'chr2', 'chrb')\n\tif (i == -1) return 'chr_b missing from header'\n\theader[i] = 'chr2'\n\ti = htry('pos_a', 'position_a', 'position1', 'posa')\n\tif (i == -1) return 'pos_a missing from header'\n\theader[i] = 'position1'\n\ti = htry('pos_b', 'position_b', 'position2', 'posb')\n\tif (i == -1) return 'pos_b missing from header'\n\theader[i] = 'position2'\n\ti = htry('isoform_a', 'refseq_a', 'refseq1', 'isoform1', 'sv_refseqa')\n\tif (i == -1) return 'isoform_a missing from header'\n\theader[i] = 'isoform1'\n\ti = htry('isoform_b', 'refseq_b', 'refseq2', 'isoform2', 'sv_refseqb')\n\tif (i == -1) return 'isoform_b missing from header'\n\theader[i] = 'isoform2'\n\ti = htry('strand_a', 'orta')\n\tif (i == -1) return 'strand_a missing from header'\n\theader[i] = 'strand1'\n\ti = htry('strand_b', 'ortb')\n\tif (i == -1) return 'strand_b missing from header'\n\theader[i] = 'strand2'\n\t// optional\n\ti = htry('sample', 'sample_name', 'tumor_sample_barcode')\n\tif (i != -1) header[i] = 'sample'\n\ti = htry('patient', 'donor', 'target_case_id')\n\tif (i != -1) header[i] = 'patient'\n\ti = htry('sampletype', 'sample type', 'sample_type')\n\tif (i != -1) header[i] = 'sampletype'\n\ti = htry('disease')\n\tif (i != -1) header[i] = 'disease'\n\ti = htry('origin')\n\tif (i != -1) header[i] = 'origin'\n\tif (issv) {\n\t\tflag.sv.loaded = true\n\t\tflag.sv.header = header\n\t} else {\n\t\tflag.fusion.loaded = true\n\t\tflag.fusion.header = header\n\t}\n\treturn false\n}\n\nexport function parseline(i, line, flag, issv) {\n\tif (line == '' || line[0] == '#') return\n\tconst lst = line.split('\\t')\n\tconst m = {}\n\tconst header = issv ? flag.sv.header : flag.fusion.header\n\tconst badlines = issv ? flag.sv.badlines : flag.fusion.badlines\n\n\tfor (let j = 0; j < header.length; j++) {\n\t\tm[header[j]] = lst[j]\n\t}\n\tif (!m.chr1) {\n\t\tbadlines.push([i, 'missing chr1', lst])\n\t\treturn\n\t}\n\tif (m.chr1.toLowerCase().indexOf('chr') != 0) {\n\t\tm.chr1 = 'chr' + m.chr1\n\t}\n\tif (!m.chr2) {\n\t\tbadlines.push([i, 'missing chr2', lst])\n\t\treturn\n\t}\n\tif (m.chr2.toLowerCase().indexOf('chr') != 0) {\n\t\tm.chr2 = 'chr' + m.chr2\n\t}\n\tlet v = m.position1\n\tif (!v) {\n\t\tbadlines.push([i, 'missing position1', lst])\n\t\treturn\n\t}\n\tlet v2 = Number.parseInt(v)\n\tif (Number.isNaN(v2) || v2 <= 0) {\n\t\tbadlines.push([i, 'invalid value for position1', lst])\n\t\treturn\n\t}\n\tm.position1 = v2\n\tv = m.position2\n\tif (!v) {\n\t\tbadlines.push([i, 'missing position2', lst])\n\t\treturn\n\t}\n\tv2 = Number.parseInt(v)\n\tif (Number.isNaN(v2) || v2 <= 0) {\n\t\tbadlines.push([i, 'invalid value for position2', lst])\n\t\treturn\n\t}\n\tm.position2 = v2\n\tif (bulk.parsesample(m, flag, i, lst, badlines)) {\n\t\treturn\n\t}\n\tif (m.isoform1 && m.isoform1.indexOf(',') != -1) {\n\t\tconst lst2 = m.isoform1.split(',')\n\t\tm.isoform1 = undefined\n\t\tfor (const t of lst2) {\n\t\t\tif (t != '') m.isoform1 = t\n\t\t}\n\t}\n\tif (m.isoform2 && m.isoform2.indexOf(',') != -1) {\n\t\tconst lst2 = m.isoform2.split(',')\n\t\tm.isoform2 = undefined\n\t\tfor (const t of lst2) {\n\t\t\tif (t != '') m.isoform2 = t\n\t\t}\n\t}\n\tif (!m.gene1) {\n\t\tm.isoform1 = undefined\n\t}\n\tif (!m.gene2) {\n\t\tm.isoform2 = undefined\n\t}\n\tif (m.gene1) {\n\t\t// put data under gene1\n\t\tflag.good++\n\t\tconst m2 = {\n\t\t\tdt: issv ? common.dtsv : common.dtfusionrna,\n\t\t\tclass: issv ? common.mclasssv : common.mclassfusionrna,\n\t\t\tisoform: m.isoform1,\n\t\t\tmname: m.gene2 || m.chr2,\n\t\t\tsample: m.sample,\n\t\t\tpatient: m.patient,\n\t\t\tsampletype: m.sampletype,\n\t\t\torigin: m.origin,\n\t\t\tdisease: m.disease,\n\t\t\tpairlst: [\n\t\t\t\t{\n\t\t\t\t\ta: {\n\t\t\t\t\t\tname: m.gene1,\n\t\t\t\t\t\tisoform: m.isoform1,\n\t\t\t\t\t\tstrand: m.strand1,\n\t\t\t\t\t\tchr: m.chr1,\n\t\t\t\t\t\tposition: m.position1\n\t\t\t\t\t},\n\t\t\t\t\tb: {\n\t\t\t\t\t\tname: m.gene2,\n\t\t\t\t\t\tisoform: m.isoform2,\n\t\t\t\t\t\tstrand: m.strand2,\n\t\t\t\t\t\tchr: m.chr2,\n\t\t\t\t\t\tposition: m.position2\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t\tconst n = flag.geneToUpper ? m.gene1.toUpperCase() : m.gene1\n\t\tif (!flag.data[n]) {\n\t\t\tflag.data[n] = []\n\t\t}\n\t\tflag.data[n].push(m2)\n\t}\n\tif (m.gene2 && m.gene2 != m.gene1) {\n\t\t// put data under gene2\n\t\tflag.good++\n\t\tconst m2 = {\n\t\t\tdt: issv ? common.dtsv : common.dtfusionrna,\n\t\t\tclass: issv ? common.mclasssv : common.mclassfusionrna,\n\t\t\tisoform: m.isoform2,\n\t\t\tmname: m.gene1 || m.chr1,\n\t\t\tsample: m.sample,\n\t\t\tpatient: m.patient,\n\t\t\tsampletype: m.sampletype,\n\t\t\torigin: m.origin,\n\t\t\tdisease: m.disease,\n\t\t\tpairlst: [\n\t\t\t\t{\n\t\t\t\t\ta: {\n\t\t\t\t\t\tname: m.gene1,\n\t\t\t\t\t\tisoform: m.isoform1,\n\t\t\t\t\t\tstrand: m.strand1,\n\t\t\t\t\t\tchr: m.chr1,\n\t\t\t\t\t\tposition: m.position1\n\t\t\t\t\t},\n\t\t\t\t\tb: {\n\t\t\t\t\t\tname: m.gene2,\n\t\t\t\t\t\tisoform: m.isoform2,\n\t\t\t\t\t\tstrand: m.strand2,\n\t\t\t\t\t\tchr: m.chr2,\n\t\t\t\t\t\tposition: m.position2\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t\tconst n = flag.geneToUpper ? m.gene2.toUpperCase() : m.gene2\n\t\tif (!flag.data[n]) {\n\t\t\tflag.data[n] = []\n\t\t}\n\t\tflag.data[n].push(m2)\n\t}\n}\n\nexport function duplicate(m) {\n\tconst n = {}\n\tfor (const k in m) {\n\t\tif (k == 'pairlst') continue\n\t\tconst v = m[k]\n\t\tconst type = typeof v\n\t\tif (type == 'object') {\n\t\t\tcontinue\n\t\t}\n\t\tn[k] = v\n\t}\n\tif (m.pairlst) {\n\t\tn.pairlst = []\n\t\tfor (const pair of m.pairlst) {\n\t\t\tconst p = {}\n\t\t\tfor (const k in pair) {\n\t\t\t\tif (k == 'a' || k == 'b' || k == 'interstitial') {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tp[k] = pair[k]\n\t\t\t}\n\t\t\tif (pair.a) {\n\t\t\t\tp.a = {}\n\t\t\t\tfor (const k in pair.a) {\n\t\t\t\t\tconst v = pair.a[k]\n\t\t\t\t\tif (typeof v == 'object') {\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tp.a[k] = v\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pair.b) {\n\t\t\t\tp.b = {}\n\t\t\t\tfor (const k in pair.b) {\n\t\t\t\t\tconst v = pair.b[k]\n\t\t\t\t\tif (typeof v == 'object') {\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tp.b[k] = v\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pair.interstitial) {\n\t\t\t\tp.interstitial = {}\n\t\t\t\tfor (const k in pair.interstitial) {\n\t\t\t\t\tconst v = pair.interstitial[k]\n\t\t\t\t\tif (typeof v == 'object') {\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tp.interstitial[k] = v\n\t\t\t\t}\n\t\t\t}\n\t\t\tn.pairlst.push(p)\n\t\t}\n\t}\n\treturn n\n}\n"],
5
- "mappings": "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",
3
+ "sources": ["../../src/bulk.sv.ts"],
4
+ "sourcesContent": ["import * as bulk from './bulk.js'\nimport * as common from './common.js'\n\n/////////////////////////////////\n//\n// client/server shared\n//\n/////////////////////////////////\n\n// work for both sv/fusion\n// must tell if the data is fusion or sv\n\nexport function parseheader(line, flag, issv) {\n\tconst header = line.toLowerCase().split('\\t')\n\tif (header.length <= 1) return 'invalid file header for fusions'\n\tconst htry = (...lst) => {\n\t\tfor (const a of lst) {\n\t\t\tconst j = header.indexOf(a)\n\t\t\tif (j != -1) return j\n\t\t}\n\t\treturn -1\n\t}\n\tlet i = htry('gene_a', 'gene1', 'genea')\n\tif (i == -1) return 'gene_a missing from header'\n\theader[i] = 'gene1'\n\ti = htry('gene_b', 'gene2', 'geneb')\n\tif (i == -1) return 'gene_b missing from header'\n\theader[i] = 'gene2'\n\ti = htry('chr_a', 'chr1', 'chra')\n\tif (i == -1) return 'chr_a missing from header'\n\theader[i] = 'chr1'\n\ti = htry('chr_b', 'chr2', 'chrb')\n\tif (i == -1) return 'chr_b missing from header'\n\theader[i] = 'chr2'\n\ti = htry('pos_a', 'position_a', 'position1', 'posa')\n\tif (i == -1) return 'pos_a missing from header'\n\theader[i] = 'position1'\n\ti = htry('pos_b', 'position_b', 'position2', 'posb')\n\tif (i == -1) return 'pos_b missing from header'\n\theader[i] = 'position2'\n\ti = htry('isoform_a', 'refseq_a', 'refseq1', 'isoform1', 'sv_refseqa')\n\tif (i == -1) return 'isoform_a missing from header'\n\theader[i] = 'isoform1'\n\ti = htry('isoform_b', 'refseq_b', 'refseq2', 'isoform2', 'sv_refseqb')\n\tif (i == -1) return 'isoform_b missing from header'\n\theader[i] = 'isoform2'\n\ti = htry('strand_a', 'orta')\n\tif (i == -1) return 'strand_a missing from header'\n\theader[i] = 'strand1'\n\ti = htry('strand_b', 'ortb')\n\tif (i == -1) return 'strand_b missing from header'\n\theader[i] = 'strand2'\n\t// optional\n\ti = htry('sample', 'sample_name', 'tumor_sample_barcode')\n\tif (i != -1) header[i] = 'sample'\n\ti = htry('patient', 'donor', 'target_case_id')\n\tif (i != -1) header[i] = 'patient'\n\ti = htry('sampletype', 'sample type', 'sample_type')\n\tif (i != -1) header[i] = 'sampletype'\n\ti = htry('disease')\n\tif (i != -1) header[i] = 'disease'\n\ti = htry('origin')\n\tif (i != -1) header[i] = 'origin'\n\tif (issv) {\n\t\tflag.sv.loaded = true\n\t\tflag.sv.header = header\n\t} else {\n\t\tflag.fusion.loaded = true\n\t\tflag.fusion.header = header\n\t}\n\treturn false\n}\n\nexport function parseline(i, line, flag, issv) {\n\tif (line == '' || line[0] == '#') return\n\tconst lst = line.split('\\t')\n\tconst m: Record<string, any> = {}\n\tconst header = issv ? flag.sv.header : flag.fusion.header\n\tconst badlines = issv ? flag.sv.badlines : flag.fusion.badlines\n\n\tfor (let j = 0; j < header.length; j++) {\n\t\tm[header[j]] = lst[j]\n\t}\n\tif (!m.chr1) {\n\t\tbadlines.push([i, 'missing chr1', lst])\n\t\treturn\n\t}\n\tif (m.chr1.toLowerCase().indexOf('chr') != 0) {\n\t\tm.chr1 = 'chr' + m.chr1\n\t}\n\tif (!m.chr2) {\n\t\tbadlines.push([i, 'missing chr2', lst])\n\t\treturn\n\t}\n\tif (m.chr2.toLowerCase().indexOf('chr') != 0) {\n\t\tm.chr2 = 'chr' + m.chr2\n\t}\n\tlet v = m.position1\n\tif (!v) {\n\t\tbadlines.push([i, 'missing position1', lst])\n\t\treturn\n\t}\n\tlet v2 = Number.parseInt(v)\n\tif (Number.isNaN(v2) || v2 <= 0) {\n\t\tbadlines.push([i, 'invalid value for position1', lst])\n\t\treturn\n\t}\n\tm.position1 = v2\n\tv = m.position2\n\tif (!v) {\n\t\tbadlines.push([i, 'missing position2', lst])\n\t\treturn\n\t}\n\tv2 = Number.parseInt(v)\n\tif (Number.isNaN(v2) || v2 <= 0) {\n\t\tbadlines.push([i, 'invalid value for position2', lst])\n\t\treturn\n\t}\n\tm.position2 = v2\n\tif (bulk.parsesample(m, flag, i, lst)) {\n\t\treturn\n\t}\n\tif (m.isoform1 && m.isoform1.indexOf(',') != -1) {\n\t\tconst lst2 = m.isoform1.split(',')\n\t\tm.isoform1 = undefined\n\t\tfor (const t of lst2) {\n\t\t\tif (t != '') m.isoform1 = t\n\t\t}\n\t}\n\tif (m.isoform2 && m.isoform2.indexOf(',') != -1) {\n\t\tconst lst2 = m.isoform2.split(',')\n\t\tm.isoform2 = undefined\n\t\tfor (const t of lst2) {\n\t\t\tif (t != '') m.isoform2 = t\n\t\t}\n\t}\n\tif (!m.gene1) {\n\t\tm.isoform1 = undefined\n\t}\n\tif (!m.gene2) {\n\t\tm.isoform2 = undefined\n\t}\n\tif (m.gene1) {\n\t\t// put data under gene1\n\t\tflag.good++\n\t\tconst m2 = {\n\t\t\tdt: issv ? common.dtsv : common.dtfusionrna,\n\t\t\tclass: issv ? common.mclasssv : common.mclassfusionrna,\n\t\t\tisoform: m.isoform1,\n\t\t\tmname: m.gene2 || m.chr2,\n\t\t\tsample: m.sample,\n\t\t\tpatient: m.patient,\n\t\t\tsampletype: m.sampletype,\n\t\t\torigin: m.origin,\n\t\t\tdisease: m.disease,\n\t\t\tpairlst: [\n\t\t\t\t{\n\t\t\t\t\ta: {\n\t\t\t\t\t\tname: m.gene1,\n\t\t\t\t\t\tisoform: m.isoform1,\n\t\t\t\t\t\tstrand: m.strand1,\n\t\t\t\t\t\tchr: m.chr1,\n\t\t\t\t\t\tposition: m.position1\n\t\t\t\t\t},\n\t\t\t\t\tb: {\n\t\t\t\t\t\tname: m.gene2,\n\t\t\t\t\t\tisoform: m.isoform2,\n\t\t\t\t\t\tstrand: m.strand2,\n\t\t\t\t\t\tchr: m.chr2,\n\t\t\t\t\t\tposition: m.position2\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t\tconst n = flag.geneToUpper ? m.gene1.toUpperCase() : m.gene1\n\t\tif (!flag.data[n]) {\n\t\t\tflag.data[n] = []\n\t\t}\n\t\tflag.data[n].push(m2)\n\t}\n\tif (m.gene2 && m.gene2 != m.gene1) {\n\t\t// put data under gene2\n\t\tflag.good++\n\t\tconst m2 = {\n\t\t\tdt: issv ? common.dtsv : common.dtfusionrna,\n\t\t\tclass: issv ? common.mclasssv : common.mclassfusionrna,\n\t\t\tisoform: m.isoform2,\n\t\t\tmname: m.gene1 || m.chr1,\n\t\t\tsample: m.sample,\n\t\t\tpatient: m.patient,\n\t\t\tsampletype: m.sampletype,\n\t\t\torigin: m.origin,\n\t\t\tdisease: m.disease,\n\t\t\tpairlst: [\n\t\t\t\t{\n\t\t\t\t\ta: {\n\t\t\t\t\t\tname: m.gene1,\n\t\t\t\t\t\tisoform: m.isoform1,\n\t\t\t\t\t\tstrand: m.strand1,\n\t\t\t\t\t\tchr: m.chr1,\n\t\t\t\t\t\tposition: m.position1\n\t\t\t\t\t},\n\t\t\t\t\tb: {\n\t\t\t\t\t\tname: m.gene2,\n\t\t\t\t\t\tisoform: m.isoform2,\n\t\t\t\t\t\tstrand: m.strand2,\n\t\t\t\t\t\tchr: m.chr2,\n\t\t\t\t\t\tposition: m.position2\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t\tconst n = flag.geneToUpper ? m.gene2.toUpperCase() : m.gene2\n\t\tif (!flag.data[n]) {\n\t\t\tflag.data[n] = []\n\t\t}\n\t\tflag.data[n].push(m2)\n\t}\n}\n\nexport function duplicate(m) {\n\tconst n: Record<string, any> = {}\n\tfor (const k in m) {\n\t\tif (k == 'pairlst') continue\n\t\tconst v = m[k]\n\t\tconst type = typeof v\n\t\tif (type == 'object') {\n\t\t\tcontinue\n\t\t}\n\t\tn[k] = v\n\t}\n\tif (m.pairlst) {\n\t\tn.pairlst = []\n\t\tfor (const pair of m.pairlst) {\n\t\t\tconst p: Record<string, any> = {}\n\t\t\tfor (const k in pair) {\n\t\t\t\tif (k == 'a' || k == 'b' || k == 'interstitial') {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tp[k] = pair[k]\n\t\t\t}\n\t\t\tif (pair.a) {\n\t\t\t\tp.a = {}\n\t\t\t\tfor (const k in pair.a) {\n\t\t\t\t\tconst v = pair.a[k]\n\t\t\t\t\tif (typeof v == 'object') {\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tp.a[k] = v\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pair.b) {\n\t\t\t\tp.b = {}\n\t\t\t\tfor (const k in pair.b) {\n\t\t\t\t\tconst v = pair.b[k]\n\t\t\t\t\tif (typeof v == 'object') {\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tp.b[k] = v\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (pair.interstitial) {\n\t\t\t\tp.interstitial = {}\n\t\t\t\tfor (const k in pair.interstitial) {\n\t\t\t\t\tconst v = pair.interstitial[k]\n\t\t\t\t\tif (typeof v == 'object') {\n\t\t\t\t\t\tcontinue\n\t\t\t\t\t}\n\t\t\t\t\tp.interstitial[k] = v\n\t\t\t\t}\n\t\t\t}\n\t\t\tn.pairlst.push(p)\n\t\t}\n\t}\n\treturn n\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,2 @@
1
+ export declare function parseheader(line: any): any[] | "invalid file header for svjson";
2
+ export declare function parseline(i: any, line: any, flag: any, header: any): void;
@@ -1,6 +1,6 @@
1
1
  import * as common from "./common.js";
2
2
  import * as bulk from "./bulk.js";
3
- function parseheader(line, flag) {
3
+ function parseheader(line) {
4
4
  const header = line.toLowerCase().split(" ");
5
5
  if (header.length <= 1) return "invalid file header for svjson";
6
6
  const htry = (...lst) => {
@@ -33,13 +33,13 @@ function parseline(i, line, flag, header) {
33
33
  badlines.push([i, "missing jsontext", lst]);
34
34
  return;
35
35
  }
36
- if (bulk.parsesample(m, flag, i, lst, badlines)) {
36
+ if (bulk.parsesample(m, flag, i, lst)) {
37
37
  return;
38
38
  }
39
39
  let json;
40
40
  try {
41
41
  json = JSON.parse(m.jsontext);
42
- } catch (e) {
42
+ } catch (_) {
43
43
  badlines.push([i, "invalid JSON text", lst]);
44
44
  return;
45
45
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/bulk.svjson.js"],
4
- "sourcesContent": ["/////////////////////////////////\n//\n// client/server shared\n//\n/////////////////////////////////\n\nimport * as common from './common.js'\nimport * as bulk from './bulk.js'\n\n// work for both sv/fusion\n// must tell if the data is fusion or sv\n\nexport function parseheader(line, flag) {\n\tconst header = line.toLowerCase().split('\\t')\n\tif (header.length <= 1) return 'invalid file header for svjson'\n\tconst htry = (...lst) => {\n\t\tfor (const a of lst) {\n\t\t\tconst j = header.indexOf(a)\n\t\t\tif (j != -1) return j\n\t\t}\n\t\treturn -1\n\t}\n\tlet i = htry('sample')\n\tif (i != -1) header[i] = 'sample'\n\ti = htry('sampletype')\n\tif (i != -1) header[i] = 'sampletype'\n\ti = htry('patient')\n\tif (i != -1) header[i] = 'patient'\n\ti = htry('json', 'jsontext')\n\tif (i == -1) return ['json missing from header']\n\theader[i] = 'jsontext'\n\treturn [null, header]\n}\n\nexport function parseline(i, line, flag, header) {\n\tif (line == '' || line[0] == '#') return\n\tconst lst = line.split('\\t')\n\tconst m = {}\n\tconst badlines = flag.svjson.badlines\n\n\tfor (let j = 0; j < header.length; j++) {\n\t\tm[header[j]] = lst[j]\n\t}\n\tif (!m.jsontext) {\n\t\tbadlines.push([i, 'missing jsontext', lst])\n\t\treturn\n\t}\n\tif (bulk.parsesample(m, flag, i, lst, badlines)) {\n\t\treturn\n\t}\n\tlet json\n\ttry {\n\t\tjson = JSON.parse(m.jsontext)\n\t} catch (e) {\n\t\tbadlines.push([i, 'invalid JSON text', lst])\n\t\treturn\n\t}\n\t// duplicating logic in pediatric.js\n\tif (Array.isArray(json)) {\n\t\t// json is pairlst\n\t\tfor (const pair of json) {\n\t\t\tif (pair.a && pair.a.name && pair.a.isoform) {\n\t\t\t\tflag.good++\n\t\t\t\tconst m2 = {\n\t\t\t\t\tdt: common.dtfusionrna,\n\t\t\t\t\tclass: common.mclassfusionrna,\n\t\t\t\t\tisoform: pair.a.isoform,\n\t\t\t\t\tmname: pair.b.name\n\t\t\t\t}\n\t\t\t\tfor (const k in m) {\n\t\t\t\t\tif (k != 'jsontext') m2[k] = m[k]\n\t\t\t\t}\n\t\t\t\tm2.pairlst = duplicate(json)\n\t\t\t\tconst n = pair.a.name.toUpperCase()\n\t\t\t\tif (!flag.data[n]) {\n\t\t\t\t\tflag.data[n] = []\n\t\t\t\t}\n\t\t\t\tflag.data[n].push(m2)\n\t\t\t}\n\t\t\tif (pair.b && pair.b.name && pair.b.isoform) {\n\t\t\t\tflag.good++\n\t\t\t\tconst m2 = {\n\t\t\t\t\tdt: common.dtfusionrna,\n\t\t\t\t\tclass: common.mclassfusionrna,\n\t\t\t\t\tisoform: pair.b.isoform,\n\t\t\t\t\tmname: pair.a.name\n\t\t\t\t}\n\t\t\t\tfor (const k in m) {\n\t\t\t\t\tif (k != 'jsontext') m2[k] = m[k]\n\t\t\t\t}\n\t\t\t\tm2.pairlst = duplicate(json)\n\t\t\t\tconst n = pair.b.name.toUpperCase()\n\t\t\t\tif (!flag.data[n]) {\n\t\t\t\t\tflag.data[n] = []\n\t\t\t\t}\n\t\t\t\tflag.data[n].push(m2)\n\t\t\t}\n\t\t}\n\t} else {\n\t\tjson.dt = json.typecode\n\t\tdelete json.typecode\n\t\tswitch (json.dt) {\n\t\t\tcase common.dtitd:\n\t\t\t\tjson.class = common.mclassitd\n\t\t\t\tjson.mname = 'ITD'\n\t\t\t\tbreak\n\t\t\tcase common.dtnloss:\n\t\t\t\tjson.class = common.mclassnloss\n\t\t\t\tjson.mname = 'N-loss'\n\t\t\t\tbreak\n\t\t\tcase common.dtcloss:\n\t\t\t\tjson.class = common.mclasscloss\n\t\t\t\tjson.mname = 'C-loss'\n\t\t\t\tbreak\n\t\t\tcase common.dtdel:\n\t\t\t\tjson.class = common.mclassdel\n\t\t\t\tjson.mname = 'Del'\n\t\t\t\tbreak\n\t\t\tcase common.dtsv:\n\t\t\t\tjson.class = common.mclasssv\n\t\t\t\tjson.mname = 'SV'\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tbadlines.push([i, 'unknown datatype', lst])\n\t\t\t\treturn\n\t\t}\n\t\t// record only about a single gene\n\t\tif (!json.gene) {\n\t\t\tbadlines.push([i, 'json.gene missing', lst])\n\t\t\treturn\n\t\t}\n\t\tflag.good++\n\t\tfor (const k in m) {\n\t\t\tif (k != 'jsontext') {\n\t\t\t\tjson[k] = m[k]\n\t\t\t}\n\t\t}\n\t\tconst n = flag.geneToUpper ? json.gene.toUpperCase() : json.gene.toUpperCase()\n\t\tif (!flag.data[n]) {\n\t\t\tflag.data[n] = []\n\t\t}\n\t\tflag.data[n].push(json)\n\t}\n}\n\nfunction duplicate(lst) {\n\tconst d = []\n\tfor (const pair of lst) {\n\t\tconst p = { a: {}, b: {} }\n\t\tfor (const k in pair) {\n\t\t\tif (k != 'a' && k != 'b') p[k] = pair[k]\n\t\t}\n\t\tfor (const k in pair.a) {\n\t\t\tp.a[k] = pair.a[k]\n\t\t}\n\t\tfor (const k in pair.b) {\n\t\t\tp.b[k] = pair.b[k]\n\t\t}\n\t\td.push(p)\n\t}\n\treturn d\n}\n"],
5
- "mappings": "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",
3
+ "sources": ["../../src/bulk.svjson.ts"],
4
+ "sourcesContent": ["/////////////////////////////////\n//\n// client/server shared\n//\n/////////////////////////////////\n\nimport * as common from './common.js'\nimport * as bulk from './bulk.js'\n\n// work for both sv/fusion\n// must tell if the data is fusion or sv\n\nexport function parseheader(line) {\n\tconst header = line.toLowerCase().split('\\t')\n\tif (header.length <= 1) return 'invalid file header for svjson'\n\tconst htry = (...lst) => {\n\t\tfor (const a of lst) {\n\t\t\tconst j = header.indexOf(a)\n\t\t\tif (j != -1) return j\n\t\t}\n\t\treturn -1\n\t}\n\tlet i = htry('sample')\n\tif (i != -1) header[i] = 'sample'\n\ti = htry('sampletype')\n\tif (i != -1) header[i] = 'sampletype'\n\ti = htry('patient')\n\tif (i != -1) header[i] = 'patient'\n\ti = htry('json', 'jsontext')\n\tif (i == -1) return ['json missing from header']\n\theader[i] = 'jsontext'\n\treturn [null, header]\n}\n\nexport function parseline(i, line, flag, header) {\n\tif (line == '' || line[0] == '#') return\n\tconst lst = line.split('\\t')\n\tconst m: Record<string, any> = {}\n\tconst badlines = flag.svjson.badlines\n\n\tfor (let j = 0; j < header.length; j++) {\n\t\tm[header[j]] = lst[j]\n\t}\n\tif (!m.jsontext) {\n\t\tbadlines.push([i, 'missing jsontext', lst])\n\t\treturn\n\t}\n\tif (bulk.parsesample(m, flag, i, lst)) {\n\t\treturn\n\t}\n\tlet json\n\ttry {\n\t\tjson = JSON.parse(m.jsontext)\n\t} catch (_) {\n\t\tbadlines.push([i, 'invalid JSON text', lst])\n\t\treturn\n\t}\n\t// duplicating logic in pediatric.js\n\tif (Array.isArray(json)) {\n\t\t// json is pairlst\n\t\tfor (const pair of json) {\n\t\t\tif (pair.a && pair.a.name && pair.a.isoform) {\n\t\t\t\tflag.good++\n\t\t\t\tconst m2: Record<string, any> = {\n\t\t\t\t\tdt: common.dtfusionrna,\n\t\t\t\t\tclass: common.mclassfusionrna,\n\t\t\t\t\tisoform: pair.a.isoform,\n\t\t\t\t\tmname: pair.b.name\n\t\t\t\t}\n\t\t\t\tfor (const k in m) {\n\t\t\t\t\tif (k != 'jsontext') m2[k] = m[k]\n\t\t\t\t}\n\t\t\t\tm2.pairlst = duplicate(json)\n\t\t\t\tconst n = pair.a.name.toUpperCase()\n\t\t\t\tif (!flag.data[n]) {\n\t\t\t\t\tflag.data[n] = []\n\t\t\t\t}\n\t\t\t\tflag.data[n].push(m2)\n\t\t\t}\n\t\t\tif (pair.b && pair.b.name && pair.b.isoform) {\n\t\t\t\tflag.good++\n\t\t\t\tconst m2: Record<string, any> = {\n\t\t\t\t\tdt: common.dtfusionrna,\n\t\t\t\t\tclass: common.mclassfusionrna,\n\t\t\t\t\tisoform: pair.b.isoform,\n\t\t\t\t\tmname: pair.a.name\n\t\t\t\t}\n\t\t\t\tfor (const k in m) {\n\t\t\t\t\tif (k != 'jsontext') m2[k] = m[k]\n\t\t\t\t}\n\t\t\t\tm2.pairlst = duplicate(json)\n\t\t\t\tconst n = pair.b.name.toUpperCase()\n\t\t\t\tif (!flag.data[n]) {\n\t\t\t\t\tflag.data[n] = []\n\t\t\t\t}\n\t\t\t\tflag.data[n].push(m2)\n\t\t\t}\n\t\t}\n\t} else {\n\t\tjson.dt = json.typecode\n\t\tdelete json.typecode\n\t\tswitch (json.dt) {\n\t\t\tcase common.dtitd:\n\t\t\t\tjson.class = common.mclassitd\n\t\t\t\tjson.mname = 'ITD'\n\t\t\t\tbreak\n\t\t\tcase common.dtnloss:\n\t\t\t\tjson.class = common.mclassnloss\n\t\t\t\tjson.mname = 'N-loss'\n\t\t\t\tbreak\n\t\t\tcase common.dtcloss:\n\t\t\t\tjson.class = common.mclasscloss\n\t\t\t\tjson.mname = 'C-loss'\n\t\t\t\tbreak\n\t\t\tcase common.dtdel:\n\t\t\t\tjson.class = common.mclassdel\n\t\t\t\tjson.mname = 'Del'\n\t\t\t\tbreak\n\t\t\tcase common.dtsv:\n\t\t\t\tjson.class = common.mclasssv\n\t\t\t\tjson.mname = 'SV'\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tbadlines.push([i, 'unknown datatype', lst])\n\t\t\t\treturn\n\t\t}\n\t\t// record only about a single gene\n\t\tif (!json.gene) {\n\t\t\tbadlines.push([i, 'json.gene missing', lst])\n\t\t\treturn\n\t\t}\n\t\tflag.good++\n\t\tfor (const k in m) {\n\t\t\tif (k != 'jsontext') {\n\t\t\t\tjson[k] = m[k]\n\t\t\t}\n\t\t}\n\t\tconst n = flag.geneToUpper ? json.gene.toUpperCase() : json.gene.toUpperCase()\n\t\tif (!flag.data[n]) {\n\t\t\tflag.data[n] = []\n\t\t}\n\t\tflag.data[n].push(json)\n\t}\n}\n\nfunction duplicate(lst) {\n\tconst d: any[] = []\n\tfor (const pair of lst) {\n\t\tconst p: Record<string, any> = { a: {}, b: {} }\n\t\tfor (const k in pair) {\n\t\t\tif (k != 'a' && k != 'b') p[k] = pair[k]\n\t\t}\n\t\tfor (const k in pair.a) {\n\t\t\tp.a[k] = pair.a[k]\n\t\t}\n\t\tfor (const k in pair.b) {\n\t\t\tp.b[k] = pair.b[k]\n\t\t}\n\t\td.push(p)\n\t}\n\treturn d\n}\n"],
5
+ "mappings": "AAMA,YAAY,YAAY;AACxB,YAAY,UAAU;AAKf,SAAS,YAAY,MAAM;AACjC,QAAM,SAAS,KAAK,YAAY,EAAE,MAAM,GAAI;AAC5C,MAAI,OAAO,UAAU,EAAG,QAAO;AAC/B,QAAM,OAAO,IAAI,QAAQ;AACxB,eAAW,KAAK,KAAK;AACpB,YAAM,IAAI,OAAO,QAAQ,CAAC;AAC1B,UAAI,KAAK,GAAI,QAAO;AAAA,IACrB;AACA,WAAO;AAAA,EACR;AACA,MAAI,IAAI,KAAK,QAAQ;AACrB,MAAI,KAAK,GAAI,QAAO,CAAC,IAAI;AACzB,MAAI,KAAK,YAAY;AACrB,MAAI,KAAK,GAAI,QAAO,CAAC,IAAI;AACzB,MAAI,KAAK,SAAS;AAClB,MAAI,KAAK,GAAI,QAAO,CAAC,IAAI;AACzB,MAAI,KAAK,QAAQ,UAAU;AAC3B,MAAI,KAAK,GAAI,QAAO,CAAC,0BAA0B;AAC/C,SAAO,CAAC,IAAI;AACZ,SAAO,CAAC,MAAM,MAAM;AACrB;AAEO,SAAS,UAAU,GAAG,MAAM,MAAM,QAAQ;AAChD,MAAI,QAAQ,MAAM,KAAK,CAAC,KAAK,IAAK;AAClC,QAAM,MAAM,KAAK,MAAM,GAAI;AAC3B,QAAM,IAAyB,CAAC;AAChC,QAAM,WAAW,KAAK,OAAO;AAE7B,WAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACvC,MAAE,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC;AAAA,EACrB;AACA,MAAI,CAAC,EAAE,UAAU;AAChB,aAAS,KAAK,CAAC,GAAG,oBAAoB,GAAG,CAAC;AAC1C;AAAA,EACD;AACA,MAAI,KAAK,YAAY,GAAG,MAAM,GAAG,GAAG,GAAG;AACtC;AAAA,EACD;AACA,MAAI;AACJ,MAAI;AACH,WAAO,KAAK,MAAM,EAAE,QAAQ;AAAA,EAC7B,SAAS,GAAG;AACX,aAAS,KAAK,CAAC,GAAG,qBAAqB,GAAG,CAAC;AAC3C;AAAA,EACD;AAEA,MAAI,MAAM,QAAQ,IAAI,GAAG;AAExB,eAAW,QAAQ,MAAM;AACxB,UAAI,KAAK,KAAK,KAAK,EAAE,QAAQ,KAAK,EAAE,SAAS;AAC5C,aAAK;AACL,cAAM,KAA0B;AAAA,UAC/B,IAAI,OAAO;AAAA,UACX,OAAO,OAAO;AAAA,UACd,SAAS,KAAK,EAAE;AAAA,UAChB,OAAO,KAAK,EAAE;AAAA,QACf;AACA,mBAAW,KAAK,GAAG;AAClB,cAAI,KAAK,WAAY,IAAG,CAAC,IAAI,EAAE,CAAC;AAAA,QACjC;AACA,WAAG,UAAU,UAAU,IAAI;AAC3B,cAAM,IAAI,KAAK,EAAE,KAAK,YAAY;AAClC,YAAI,CAAC,KAAK,KAAK,CAAC,GAAG;AAClB,eAAK,KAAK,CAAC,IAAI,CAAC;AAAA,QACjB;AACA,aAAK,KAAK,CAAC,EAAE,KAAK,EAAE;AAAA,MACrB;AACA,UAAI,KAAK,KAAK,KAAK,EAAE,QAAQ,KAAK,EAAE,SAAS;AAC5C,aAAK;AACL,cAAM,KAA0B;AAAA,UAC/B,IAAI,OAAO;AAAA,UACX,OAAO,OAAO;AAAA,UACd,SAAS,KAAK,EAAE;AAAA,UAChB,OAAO,KAAK,EAAE;AAAA,QACf;AACA,mBAAW,KAAK,GAAG;AAClB,cAAI,KAAK,WAAY,IAAG,CAAC,IAAI,EAAE,CAAC;AAAA,QACjC;AACA,WAAG,UAAU,UAAU,IAAI;AAC3B,cAAM,IAAI,KAAK,EAAE,KAAK,YAAY;AAClC,YAAI,CAAC,KAAK,KAAK,CAAC,GAAG;AAClB,eAAK,KAAK,CAAC,IAAI,CAAC;AAAA,QACjB;AACA,aAAK,KAAK,CAAC,EAAE,KAAK,EAAE;AAAA,MACrB;AAAA,IACD;AAAA,EACD,OAAO;AACN,SAAK,KAAK,KAAK;AACf,WAAO,KAAK;AACZ,YAAQ,KAAK,IAAI;AAAA,MAChB,KAAK,OAAO;AACX,aAAK,QAAQ,OAAO;AACpB,aAAK,QAAQ;AACb;AAAA,MACD,KAAK,OAAO;AACX,aAAK,QAAQ,OAAO;AACpB,aAAK,QAAQ;AACb;AAAA,MACD,KAAK,OAAO;AACX,aAAK,QAAQ,OAAO;AACpB,aAAK,QAAQ;AACb;AAAA,MACD,KAAK,OAAO;AACX,aAAK,QAAQ,OAAO;AACpB,aAAK,QAAQ;AACb;AAAA,MACD,KAAK,OAAO;AACX,aAAK,QAAQ,OAAO;AACpB,aAAK,QAAQ;AACb;AAAA,MACD;AACC,iBAAS,KAAK,CAAC,GAAG,oBAAoB,GAAG,CAAC;AAC1C;AAAA,IACF;AAEA,QAAI,CAAC,KAAK,MAAM;AACf,eAAS,KAAK,CAAC,GAAG,qBAAqB,GAAG,CAAC;AAC3C;AAAA,IACD;AACA,SAAK;AACL,eAAW,KAAK,GAAG;AAClB,UAAI,KAAK,YAAY;AACpB,aAAK,CAAC,IAAI,EAAE,CAAC;AAAA,MACd;AAAA,IACD;AACA,UAAM,IAAI,KAAK,cAAc,KAAK,KAAK,YAAY,IAAI,KAAK,KAAK,YAAY;AAC7E,QAAI,CAAC,KAAK,KAAK,CAAC,GAAG;AAClB,WAAK,KAAK,CAAC,IAAI,CAAC;AAAA,IACjB;AACA,SAAK,KAAK,CAAC,EAAE,KAAK,IAAI;AAAA,EACvB;AACD;AAEA,SAAS,UAAU,KAAK;AACvB,QAAM,IAAW,CAAC;AAClB,aAAW,QAAQ,KAAK;AACvB,UAAM,IAAyB,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE;AAC9C,eAAW,KAAK,MAAM;AACrB,UAAI,KAAK,OAAO,KAAK,IAAK,GAAE,CAAC,IAAI,KAAK,CAAC;AAAA,IACxC;AACA,eAAW,KAAK,KAAK,GAAG;AACvB,QAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;AAAA,IAClB;AACA,eAAW,KAAK,KAAK,GAAG;AACvB,QAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;AAAA,IAClB;AACA,MAAE,KAAK,CAAC;AAAA,EACT;AACA,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,2 @@
1
+ export declare function parseheader(line: any, flag: any): false | "gene missing from header" | "isoform missing from header" | "invalid header line for truncation" | "lossType missing from header" | "genomic position missing from header" | "neither rnaposition nor genomic position is given";
2
+ export declare function parseline(i: any, line: any, flag: any): void;
@@ -96,7 +96,7 @@ function parseline(i, line, flag) {
96
96
  flag.truncation.badlines.push([i, 'lossType value not "n" or "c"', lst]);
97
97
  return;
98
98
  }
99
- if (bulk.parsesample(m, flag, i, lst, flag.truncation.badlines)) {
99
+ if (bulk.parsesample(m, flag, i, lst)) {
100
100
  return;
101
101
  }
102
102
  if (m.losstype == "n") {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/bulk.trunc.js"],
4
- "sourcesContent": ["////////////////////////////////////\n//\n// shared between client and server\n//\n////////////////////////////////////\n\nimport * as common from './common.js'\nimport * as bulk from './bulk.js'\n\nexport function parseheader(line, flag) {\n\tconst header = line.toLowerCase().split('\\t')\n\tif (header.length <= 1) return 'invalid header line for truncation'\n\tconst htry = (...lst) => {\n\t\tfor (const e of lst) {\n\t\t\tconst j = header.indexOf(e)\n\t\t\tif (j != -1) return j\n\t\t}\n\t\treturn -1\n\t}\n\tlet i = htry('gene')\n\tif (i == -1) return 'gene missing from header'\n\theader[i] = 'gene'\n\ti = htry(\n\t\t'annovar_isoform',\n\t\t'mrna_accession',\n\t\t'mrna accession',\n\t\t'refseq_mrna_id',\n\t\t'annovar_sj_filter_isoform',\n\t\t'refseq',\n\t\t'isoform'\n\t)\n\tif (i == -1) return 'isoform missing from header'\n\theader[i] = 'isoform'\n\tlet hasrnapos = false\n\ti = htry('rnaposition')\n\tif (i != -1) {\n\t\theader[i] = 'rnaposition'\n\t\thasrnapos = true\n\t}\n\ti = htry('losstype')\n\tif (i == -1) return 'lossType missing from header'\n\theader[i] = 'losstype'\n\tlet hasgenomic = false\n\ti = htry('chromosome', 'chr')\n\tif (i != -1) {\n\t\theader[i] = 'chr'\n\t\ti = htry('start', 'start_position', 'wu_hg19_pos', 'chr_position', 'position')\n\t\tif (i == -1) {\n\t\t\treturn 'genomic position missing from header'\n\t\t}\n\t\theader[i] = 'pos'\n\t\thasgenomic = true\n\t}\n\tif (!hasrnapos && !hasgenomic) {\n\t\treturn 'neither rnaposition nor genomic position is given'\n\t}\n\n\ti = htry('sample', 'sample_name', 'tumor_sample_barcode')\n\tif (i != -1) header[i] = 'sample'\n\ti = htry('patient', 'donor', 'target_case_id')\n\tif (i != -1) header[i] = 'patient'\n\ti = htry('disease')\n\tif (i != -1) header[i] = 'disease'\n\ti = htry('origin')\n\tif (i != -1) header[i] = 'origin'\n\ti = htry('sampletype', 'sample type', 'sample_type')\n\tif (i != -1) header[i] = 'sampletype'\n\tflag.truncation.header = header\n\tflag.truncation.loaded = true\n\treturn false\n}\n\nexport function parseline(i, line, flag) {\n\tif (line == '' || line[0] == '#') return\n\tconst lst = line.split('\\t')\n\tconst m = {}\n\tfor (let j = 0; j < flag.truncation.header.length; j++) {\n\t\tm[flag.truncation.header[j]] = lst[j]\n\t}\n\tif (!m.gene) {\n\t\tflag.truncation.badlines.push([i, 'missing gene', lst])\n\t\treturn\n\t}\n\tif (m.rnaposition) {\n\t\tconst v = Number.parseInt(m.rnaposition)\n\t\tif (Number.isNaN(v) || v < 0) {\n\t\t\tflag.truncation.badlines.push([i, 'invalid rnaPosition value', lst])\n\t\t\treturn\n\t\t}\n\t\tm.rnaposition = v\n\t}\n\tif (m.pos) {\n\t\tconst v = Number.parseInt(m.pos)\n\t\tif (Number.isNaN(v) || v < 0) {\n\t\t\tflag.truncation.badlines.push([i, 'invalid genomic position', lst])\n\t\t\treturn\n\t\t}\n\t\tm.pos = v\n\t}\n\tif (!m.losstype) {\n\t\tflag.truncation.badlines.push([i, 'missing lossType value', lst])\n\t\treturn\n\t}\n\tif (m.losstype != 'n' && m.losstype != 'c') {\n\t\tflag.truncation.badlines.push([i, 'lossType value not \"n\" or \"c\"', lst])\n\t\treturn\n\t}\n\tif (bulk.parsesample(m, flag, i, lst, flag.truncation.badlines)) {\n\t\treturn\n\t}\n\tif (m.losstype == 'n') {\n\t\tm.dt = common.dtnloss\n\t\tm.class = common.mclassnloss\n\t\tm.mname = 'N-loss'\n\t} else {\n\t\tm.dt = common.dtcloss\n\t\tm.class = common.mclasscloss\n\t\tm.mname = 'C-loss'\n\t}\n\tflag.good++\n\tconst n = flag.geneToUpper ? m.gene.toUpperCase() : m.gene\n\tif (!(n in flag.data)) {\n\t\tflag.data[n] = []\n\t}\n\tflag.data[n].push(m)\n}\n"],
5
- "mappings": "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",
3
+ "sources": ["../../src/bulk.trunc.ts"],
4
+ "sourcesContent": ["////////////////////////////////////\n//\n// shared between client and server\n//\n////////////////////////////////////\n\nimport * as common from './common.js'\nimport * as bulk from './bulk.js'\n\nexport function parseheader(line, flag) {\n\tconst header = line.toLowerCase().split('\\t')\n\tif (header.length <= 1) return 'invalid header line for truncation'\n\tconst htry = (...lst) => {\n\t\tfor (const e of lst) {\n\t\t\tconst j = header.indexOf(e)\n\t\t\tif (j != -1) return j\n\t\t}\n\t\treturn -1\n\t}\n\tlet i = htry('gene')\n\tif (i == -1) return 'gene missing from header'\n\theader[i] = 'gene'\n\ti = htry(\n\t\t'annovar_isoform',\n\t\t'mrna_accession',\n\t\t'mrna accession',\n\t\t'refseq_mrna_id',\n\t\t'annovar_sj_filter_isoform',\n\t\t'refseq',\n\t\t'isoform'\n\t)\n\tif (i == -1) return 'isoform missing from header'\n\theader[i] = 'isoform'\n\tlet hasrnapos = false\n\ti = htry('rnaposition')\n\tif (i != -1) {\n\t\theader[i] = 'rnaposition'\n\t\thasrnapos = true\n\t}\n\ti = htry('losstype')\n\tif (i == -1) return 'lossType missing from header'\n\theader[i] = 'losstype'\n\tlet hasgenomic = false\n\ti = htry('chromosome', 'chr')\n\tif (i != -1) {\n\t\theader[i] = 'chr'\n\t\ti = htry('start', 'start_position', 'wu_hg19_pos', 'chr_position', 'position')\n\t\tif (i == -1) {\n\t\t\treturn 'genomic position missing from header'\n\t\t}\n\t\theader[i] = 'pos'\n\t\thasgenomic = true\n\t}\n\tif (!hasrnapos && !hasgenomic) {\n\t\treturn 'neither rnaposition nor genomic position is given'\n\t}\n\n\ti = htry('sample', 'sample_name', 'tumor_sample_barcode')\n\tif (i != -1) header[i] = 'sample'\n\ti = htry('patient', 'donor', 'target_case_id')\n\tif (i != -1) header[i] = 'patient'\n\ti = htry('disease')\n\tif (i != -1) header[i] = 'disease'\n\ti = htry('origin')\n\tif (i != -1) header[i] = 'origin'\n\ti = htry('sampletype', 'sample type', 'sample_type')\n\tif (i != -1) header[i] = 'sampletype'\n\tflag.truncation.header = header\n\tflag.truncation.loaded = true\n\treturn false\n}\n\nexport function parseline(i, line, flag) {\n\tif (line == '' || line[0] == '#') return\n\tconst lst = line.split('\\t')\n\tconst m: Record<string, any> = {}\n\tfor (let j = 0; j < flag.truncation.header.length; j++) {\n\t\tm[flag.truncation.header[j]] = lst[j]\n\t}\n\tif (!m.gene) {\n\t\tflag.truncation.badlines.push([i, 'missing gene', lst])\n\t\treturn\n\t}\n\tif (m.rnaposition) {\n\t\tconst v = Number.parseInt(m.rnaposition)\n\t\tif (Number.isNaN(v) || v < 0) {\n\t\t\tflag.truncation.badlines.push([i, 'invalid rnaPosition value', lst])\n\t\t\treturn\n\t\t}\n\t\tm.rnaposition = v\n\t}\n\tif (m.pos) {\n\t\tconst v = Number.parseInt(m.pos)\n\t\tif (Number.isNaN(v) || v < 0) {\n\t\t\tflag.truncation.badlines.push([i, 'invalid genomic position', lst])\n\t\t\treturn\n\t\t}\n\t\tm.pos = v\n\t}\n\tif (!m.losstype) {\n\t\tflag.truncation.badlines.push([i, 'missing lossType value', lst])\n\t\treturn\n\t}\n\tif (m.losstype != 'n' && m.losstype != 'c') {\n\t\tflag.truncation.badlines.push([i, 'lossType value not \"n\" or \"c\"', lst])\n\t\treturn\n\t}\n\tif (bulk.parsesample(m, flag, i, lst)) {\n\t\treturn\n\t}\n\tif (m.losstype == 'n') {\n\t\tm.dt = common.dtnloss\n\t\tm.class = common.mclassnloss\n\t\tm.mname = 'N-loss'\n\t} else {\n\t\tm.dt = common.dtcloss\n\t\tm.class = common.mclasscloss\n\t\tm.mname = 'C-loss'\n\t}\n\tflag.good++\n\tconst n = flag.geneToUpper ? m.gene.toUpperCase() : m.gene\n\tif (!(n in flag.data)) {\n\t\tflag.data[n] = []\n\t}\n\tflag.data[n].push(m)\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,10 @@
1
+ export declare const clusterMethodLst: {
2
+ label: string;
3
+ value: string;
4
+ title: string;
5
+ }[];
6
+ export declare const distanceMethodLst: {
7
+ label: string;
8
+ value: string;
9
+ title: string;
10
+ }[];
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/clustering.js"],
3
+ "sources": ["../../src/clustering.ts"],
4
4
  "sourcesContent": ["export const clusterMethodLst = [\n\t{\n\t\tlabel: 'Average',\n\t\tvalue: 'average',\n\t\ttitle: `Cluster by average value`\n\t},\n\t{\n\t\tlabel: `Complete`,\n\t\tvalue: 'complete',\n\t\ttitle: `Use the complete clustering method`\n\t},\n\t{\n\t\tlabel: `Single`,\n\t\tvalue: 'single',\n\t\ttitle: `Use the single clustering method`\n\t},\n\t{\n\t\tlabel: `Ward.D`,\n\t\tvalue: 'ward.D',\n\t\ttitle: `Use the ward.D clustering method`\n\t},\n\t{\n\t\tlabel: `Ward.D2`,\n\t\tvalue: 'ward.D2',\n\t\ttitle: `Use the ward.D2 clustering method`\n\t},\n\t{\n\t\tlabel: `Mcquitty`,\n\t\tvalue: 'mcquitty',\n\t\ttitle: `Use the Mcquity clustering method`\n\t}\n\t/* These methods are currently disabled because the dendrogram lines tend to cross one another.\n\t{\n\t\tlabel: `Centroid`,\n\t\tvalue: 'centroid',\n\t\ttitle: `Use the centroid clustering method`\n\t},\n \t{\n\t\tlabel: `Median`,\n\t\tvalue: 'median',\n\t\ttitle: `Use the median clustering method`\n\t}\n */\n]\nexport const distanceMethodLst = [\n\t{\n\t\tlabel: 'Euclidean',\n\t\tvalue: 'euclidean',\n\t\ttitle: `Calculate distance using euclidean method`\n\t},\n\t{\n\t\tlabel: 'Maximum',\n\t\tvalue: 'maximum',\n\t\ttitle: `Maximum distance between two components of x and y`\n\t},\n\t{\n\t\tlabel: 'Manhattan',\n\t\tvalue: 'manhattan',\n\t\ttitle: `Calculate distance using the absolute distance between the two vectors`\n\t},\n\t{\n\t\tlabel: 'Canberra',\n\t\tvalue: 'canberra',\n\t\ttitle: `Calculate distance using Canberra method`\n\t}\n]\n"],
5
5
  "mappings": "AAAO,MAAM,mBAAmB;AAAA,EAC/B;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaD;AACO,MAAM,oBAAoB;AAAA,EAChC;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EACR;AACD;",
6
6
  "names": []
@@ -0,0 +1,431 @@
1
+ import * as d3scale from 'd3-scale';
2
+ import * as d3 from 'd3';
3
+ export declare class TermTypeGroups {
4
+ static DICTIONARY_VARIABLES: string;
5
+ static DNA_METHYLATION: string;
6
+ static GENE_DEPENDENCY: string;
7
+ static GENE_EXPRESSION: string;
8
+ static ISOFORM_EXPRESSION: string;
9
+ static GSEA: string;
10
+ static METABOLITE_INTENSITY: string;
11
+ static PROTEOME_ABUNDANCE: string;
12
+ static MUTATION_CNV_FUSION: string;
13
+ static MUTATION_SIGNATURE: string;
14
+ static PROTEIN_EXPRESSION: string;
15
+ static SINGLECELL_CELLTYPE: string;
16
+ static SINGLECELL_GENE_EXPRESSION: string;
17
+ static SNP: string;
18
+ static SNP_LIST: string;
19
+ static SNP_LOCUS: string;
20
+ static SPLICE_JUNCTION: string;
21
+ static SSGSEA: string;
22
+ static TERM_COLLECTION: string;
23
+ static VARIANT_GENOTYPE: string;
24
+ }
25
+ export declare const defaultcolor: d3.RGBColor;
26
+ export declare const default_text_color: d3.RGBColor;
27
+ export declare const exoncolor = "#4F8053";
28
+ export declare const plotColor = "#ce768e";
29
+ export declare const IN_frame = true;
30
+ export declare const OUT_frame = false;
31
+ /********************************
32
+ * on dt usage *
33
+ *********************************
34
+ - once a dt value is decided and used with actual dataset,
35
+ the value must not be altered, since dataset file may hardcode such value and reassigning to a new integer will break!
36
+ - never test dt value by range e.g. if(dt>10), it breaks! only test equality!
37
+ - in code import variable from here and DO NOT use literal values, to make code tractable
38
+ */
39
+ export declare const dtsnvindel = 1;
40
+ export declare const dtfusionrna = 2;
41
+ export declare const dtgeneexpression = 3;
42
+ export declare const dtcnv = 4;
43
+ export declare const dtsv = 5;
44
+ export declare const dtitd = 6;
45
+ export declare const dtdel = 7;
46
+ export declare const dtnloss = 8;
47
+ export declare const dtcloss = 9;
48
+ export declare const dtloh = 10;
49
+ export declare const dtmetaboliteintensity = 11;
50
+ export declare const dtssgsea = 12;
51
+ export declare const dtdnamethylation = 13;
52
+ export declare const dtproteomeabundance = 14;
53
+ export declare const dt2label: {
54
+ 1: string;
55
+ 2: string;
56
+ 4: string;
57
+ 5: string;
58
+ 6: string;
59
+ 7: string;
60
+ 8: string;
61
+ 9: string;
62
+ 10: string;
63
+ 3: string;
64
+ 11: string;
65
+ 14: string;
66
+ };
67
+ export declare const dt2lesion: {
68
+ 1: {
69
+ uilabel: string;
70
+ lesionTypes: {
71
+ name: string;
72
+ lesionType: string;
73
+ color: string;
74
+ }[];
75
+ };
76
+ 4: {
77
+ uilabel: string;
78
+ lesionTypes: {
79
+ name: string;
80
+ lesionType: string;
81
+ color: string;
82
+ }[];
83
+ };
84
+ 5: {
85
+ uilabel: string;
86
+ lesionTypes: {
87
+ name: string;
88
+ lesionType: string;
89
+ color: string;
90
+ }[];
91
+ };
92
+ 2: {
93
+ uilabel: string;
94
+ lesionTypes: {
95
+ name: string;
96
+ lesionType: string;
97
+ color: string;
98
+ }[];
99
+ };
100
+ };
101
+ export declare const optionToDt: {
102
+ snvindelOptions: number;
103
+ cnvOptions: number;
104
+ fusionOptions: number;
105
+ svOptions: number;
106
+ };
107
+ export declare const mclass: {
108
+ M: {
109
+ label: string;
110
+ color: string;
111
+ dt: number;
112
+ desc: string;
113
+ key: string;
114
+ };
115
+ E: {
116
+ label: string;
117
+ color: string;
118
+ dt: number;
119
+ desc: string;
120
+ key: string;
121
+ };
122
+ F: {
123
+ label: string;
124
+ color: string;
125
+ dt: number;
126
+ desc: string;
127
+ key: string;
128
+ };
129
+ N: {
130
+ label: string;
131
+ color: string;
132
+ dt: number;
133
+ desc: string;
134
+ key: string;
135
+ };
136
+ S: {
137
+ label: string;
138
+ color: string;
139
+ dt: number;
140
+ desc: string;
141
+ key: string;
142
+ };
143
+ D: {
144
+ label: string;
145
+ color: string;
146
+ dt: number;
147
+ desc: string;
148
+ key: string;
149
+ };
150
+ I: {
151
+ label: string;
152
+ color: string;
153
+ dt: number;
154
+ desc: string;
155
+ key: string;
156
+ };
157
+ ProteinAltering: {
158
+ label: string;
159
+ color: string;
160
+ dt: number;
161
+ desc: string;
162
+ key: string;
163
+ };
164
+ P: {
165
+ label: string;
166
+ color: string;
167
+ dt: number;
168
+ desc: string;
169
+ key: string;
170
+ };
171
+ L: {
172
+ label: string;
173
+ color: string;
174
+ dt: number;
175
+ desc: string;
176
+ key: string;
177
+ };
178
+ Intron: {
179
+ label: string;
180
+ color: string;
181
+ dt: number;
182
+ desc: string;
183
+ key: string;
184
+ };
185
+ StopLost: {
186
+ label: string;
187
+ color: string;
188
+ dt: number;
189
+ desc: string;
190
+ key: string;
191
+ };
192
+ StartLost: {
193
+ label: string;
194
+ color: string;
195
+ dt: number;
196
+ desc: string;
197
+ key: string;
198
+ };
199
+ Blank: {
200
+ label: string;
201
+ color: string;
202
+ dt: number;
203
+ desc: string;
204
+ key: string;
205
+ };
206
+ WT: {
207
+ label: string;
208
+ color: string;
209
+ dt: number;
210
+ desc: string;
211
+ key: string;
212
+ };
213
+ };
214
+ export declare const mclassitd = "ITD";
215
+ export declare const mclassdel = "DEL";
216
+ export declare const mclassnloss = "NLOSS";
217
+ export declare const mclasscloss = "CLOSS";
218
+ export declare const mclassutr3 = "Utr3";
219
+ export declare const mclassutr5 = "Utr5";
220
+ export declare const mclassnonstandard = "X";
221
+ export declare const mclassnoncoding = "noncoding";
222
+ export declare const class2SOterm: Map<any, any>;
223
+ export declare const SOterm2class: Map<any, any>;
224
+ export declare function mclasstester(s: any): "M" | "F" | "N" | "S" | "D" | "I" | "ProteinAltering" | "P" | "L" | "Blank" | "Utr3" | "Utr5" | "X" | "noncoding" | null;
225
+ export declare const mclassfusionrna = "Fuserna";
226
+ export declare const mclasssv = "SV";
227
+ export declare const mclasscnvgain = "CNV_amp";
228
+ export declare const mclasscnvloss = "CNV_loss";
229
+ export declare const mclasscnvAmp = "CNV_amplification";
230
+ export declare const mclasscnvHomozygousDel = "CNV_homozygous_deletion";
231
+ export declare const mclasscnvloh = "CNV_loh";
232
+ export declare const mclasssnv = "snv";
233
+ export declare const mclassmnv = "mnv";
234
+ export declare const mclassinsertion = "insertion";
235
+ export declare const mclassdeletion = "deletion";
236
+ export declare function mds3tkMclass(k: any): any;
237
+ export declare const dt2color: {
238
+ 1: string;
239
+ };
240
+ export declare function applyOverrides(overrides?: Record<string, any>): void;
241
+ export declare const vepinfo: (s: any) => (string | number)[];
242
+ export declare const germlinelegend = "<circle cx=\"7\" cy=\"12\" r=\"7\" fill=\"#b1b1b1\"></circle><path d=\"M6.735557395310443e-16,-11A11,11 0 0,1 11,0L9,0A9,9 0 0,0 5.51091059616309e-16,-9Z\" transform=\"translate(7,12)\" fill=\"#858585\" stroke=\"none\"></path>";
243
+ export declare const morigin: Record<string, any>;
244
+ export declare const moriginsomatic = "S";
245
+ export declare const morigingermline = "G";
246
+ export declare const moriginrelapse = "R";
247
+ export declare const morigingermlinepathogenic = "GP";
248
+ export declare const morigingermlinenonpathogenic = "GNP";
249
+ export declare const tkt: {
250
+ usegm: string;
251
+ ds: string;
252
+ bigwig: string;
253
+ bigwigstranded: string;
254
+ junction: string;
255
+ mdsjunction: string;
256
+ mdssvcnv: string;
257
+ mdsexpressionrank: string;
258
+ mdsvcf: string;
259
+ bedj: string;
260
+ pgv: string;
261
+ bampile: string;
262
+ hicstraw: string;
263
+ expressionrank: string;
264
+ aicheck: string;
265
+ ase: string;
266
+ mds3: string;
267
+ bedgraphdot: string;
268
+ bam: string;
269
+ ld: string;
270
+ };
271
+ export declare function validtkt(what: any): boolean;
272
+ export declare const mdsvcftype: {
273
+ vcf: string;
274
+ };
275
+ export declare const custommdstktype: {
276
+ vcf: string;
277
+ svcnvitd: string;
278
+ geneexpression: string;
279
+ };
280
+ export declare const codon: {
281
+ GCT: string;
282
+ GCC: string;
283
+ GCA: string;
284
+ GCG: string;
285
+ CGT: string;
286
+ CGC: string;
287
+ CGA: string;
288
+ CGG: string;
289
+ AGA: string;
290
+ AGG: string;
291
+ AAT: string;
292
+ AAC: string;
293
+ GAT: string;
294
+ GAC: string;
295
+ TGT: string;
296
+ TGC: string;
297
+ CAA: string;
298
+ CAG: string;
299
+ GAA: string;
300
+ GAG: string;
301
+ GGT: string;
302
+ GGC: string;
303
+ GGA: string;
304
+ GGG: string;
305
+ CAT: string;
306
+ CAC: string;
307
+ ATT: string;
308
+ ATC: string;
309
+ ATA: string;
310
+ TTA: string;
311
+ TTG: string;
312
+ CTT: string;
313
+ CTC: string;
314
+ CTA: string;
315
+ CTG: string;
316
+ AAA: string;
317
+ AAG: string;
318
+ ATG: string;
319
+ TTT: string;
320
+ TTC: string;
321
+ CCT: string;
322
+ CCC: string;
323
+ CCA: string;
324
+ CCG: string;
325
+ TCT: string;
326
+ TCC: string;
327
+ TCA: string;
328
+ TCG: string;
329
+ AGT: string;
330
+ AGC: string;
331
+ ACT: string;
332
+ ACC: string;
333
+ ACA: string;
334
+ ACG: string;
335
+ TGG: string;
336
+ TAT: string;
337
+ TAC: string;
338
+ GTT: string;
339
+ GTC: string;
340
+ GTA: string;
341
+ GTG: string;
342
+ };
343
+ export declare const codon_stop = "*";
344
+ export declare function nt2aa(gm: any): string | undefined;
345
+ export declare function bplen(len: any, isfile?: boolean): string;
346
+ export declare const basecolor: {
347
+ A: string;
348
+ T: string;
349
+ C: string;
350
+ G: string;
351
+ };
352
+ export declare function basecompliment(nt: any): any;
353
+ export declare function reversecompliment(s: any): string;
354
+ export declare function spliceeventchangegmexon(gm: any, evt: any): {
355
+ chr: any;
356
+ start: any;
357
+ stop: any;
358
+ strand: any;
359
+ coding: number[][];
360
+ };
361
+ export declare function fasta2gmframecheck(gm: any, str: any): boolean;
362
+ export declare function validate_vcfinfofilter(obj: any): string | undefined;
363
+ export declare function contigNameNoChr(genome: any, chrlst: any): boolean;
364
+ export declare function contigNameNoChr2(genome: any, chrlst: any): number[];
365
+ export declare function getMax_byiqr(lst: any, novaluemax: any): any;
366
+ export declare function alleleInGenotypeStr(genotype: any, allele: any): boolean;
367
+ export declare const gmmode: {
368
+ genomic: string;
369
+ splicingrna: string;
370
+ exononly: string;
371
+ protein: string;
372
+ gmsum: string;
373
+ };
374
+ export declare function vcfcopymclass(m: any, block: any): void;
375
+ export declare const not_annotated = "Unannotated";
376
+ export declare function kernelDensityEstimator(kernel: any, X: any): (V: any) => any;
377
+ export declare function kernelEpanechnikov(k: any): (v: any) => number;
378
+ export declare const schemeCategory20: string[];
379
+ export declare const schemeCategory2: string[];
380
+ export declare function getColorScheme(number: any): readonly string[];
381
+ export declare function getColors(number: any): d3scale.ScaleOrdinal<string, string, never>;
382
+ export declare function proteinDomainColorScale(): d3scale.ScaleOrdinal<string, unknown, never>;
383
+ export declare const truncatingMutations: string[];
384
+ export declare const proteinChangingMutations: string[];
385
+ export declare const synonymousMutations: string[];
386
+ export declare const mutationClasses: string[];
387
+ export declare const CNVClasses: string[];
388
+ export declare const dtTerms: any[];
389
+ export declare const colorScaleMap: {
390
+ blueWhiteRed: {
391
+ domain: number[];
392
+ range: string[];
393
+ };
394
+ greenWhiteRed: {
395
+ domain: number[];
396
+ range: string[];
397
+ };
398
+ blueYellowRed: {
399
+ domain: number[];
400
+ range: string[];
401
+ };
402
+ greenBlackRed: {
403
+ domain: number[];
404
+ range: string[];
405
+ };
406
+ blueBlackYellow: {
407
+ domain: number[];
408
+ range: string[];
409
+ };
410
+ whiteRed: {
411
+ domain: number[];
412
+ range: string[];
413
+ };
414
+ };
415
+ export declare function invalidcoord(thisgenome: any, chrom: any, start: any, stop: any): string | false;
416
+ export declare function string2pos(s: any, genome: any, donotextend: any): {
417
+ chr: any;
418
+ chrlen: any;
419
+ start: number;
420
+ stop: number;
421
+ actualposition?: undefined;
422
+ } | {
423
+ chr: any;
424
+ chrlen: any;
425
+ start: number;
426
+ stop: number;
427
+ actualposition: {
428
+ position: number;
429
+ len: number;
430
+ };
431
+ } | null;