icn3d 3.31.10 → 3.31.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/icn3d.js CHANGED
@@ -46964,6 +46964,7 @@ class ShowAnno {
46964
46964
  // the missing residues at the end of the seq will be filled up in the API showNewTrack()
46965
46965
  let nGap = 0;
46966
46966
  ic.alnChainsSeq[chnid] = [];
46967
+
46967
46968
  //let offset =(ic.chainid2offset[chnid]) ? ic.chainid2offset[chnid] : 0;
46968
46969
  for(let i = 0, il = targetSeq.length; i < il; ++i) {
46969
46970
  //text += ic.showSeqCls.insertGap(chnid, i, '-', true);
@@ -57057,8 +57058,9 @@ class RealignParser {
57057
57058
  }
57058
57059
 
57059
57060
  // If rmsd from vastsrv is too large, realign the chains
57060
- //if(me.cfg.chainalign && !me.cfg.usepdbnum && me.cfg.resdef && rmsd > 5) {
57061
- if(!me.cfg.usepdbnum && me.cfg.resdef && rmsd > 5) {
57061
+ //if(me.cfg.chainalign && !me.cfg.usepdbnum && me.cfg.resdef && rmsd > 5) {
57062
+ // redo algnment only for VAST serv page
57063
+ if(!me.cfg.usepdbnum && me.cfg.resdef && rmsd > 5) {
57062
57064
  console.log("RMSD from VAST is larger than 5. Realign the chains with TM-align.");
57063
57065
  //let nameArray = me.cfg.chainalign.split(',');
57064
57066
  let nameArray = Object.keys(chainidHash);
@@ -71640,7 +71642,7 @@ class Dssp {
71640
71642
  }
71641
71643
 
71642
71644
  rmStrandFromRefnumlabel(refnumLabel) { let ic = this.icn3d; ic.icn3dui;
71643
- if(isNaN(refnumLabel.substr(0,1))) {
71645
+ if(refnumLabel && isNaN(refnumLabel.substr(0,1))) {
71644
71646
  return (!refnumLabel) ? refnumLabel : refnumLabel.replace(/'/g, '').replace(/\*/g, '').replace(/\^/g, '').replace(/\+/g, '').replace(/\-/g, '').substr(1); // C', C''
71645
71647
  }
71646
71648
  else { // custom ref numbers
@@ -71693,25 +71695,16 @@ class Dssp {
71693
71695
  }
71694
71696
  }
71695
71697
 
71696
- // let bIgDomain = (ic.domainid2info && Object.keys(ic.domainid2info).length > 0) ? 1 : 0;
71697
- let stru2bIgDomain = {};
71698
- for(let domainid in ic.domainid2info) {
71699
- let stru = domainid.split('_')[0];
71700
- stru2bIgDomain[stru] = 1;
71701
- }
71702
-
71703
71698
  // if(bIgDomain) {
71704
71699
  for(let structure in ic.structures) {
71705
- let bIgDomain = stru2bIgDomain.hasOwnProperty(structure) ? 1 : 0;
71706
-
71707
- refData += '{"' + structure + '": {"Ig domain" : ' + bIgDomain + ', "igs": [\n';
71708
-
71700
+ let bIgDomain = 0;
71701
+ let refDataTmp = '';
71709
71702
  for(let m = 0, ml = ic.structures[structure].length; ic.bShowRefnum && m < ml; ++m) {
71710
71703
  let chnid = ic.structures[structure][m];
71711
71704
  let igArray = ic.chain2igArray[chnid];
71712
71705
 
71713
71706
  if(igArray && igArray.length > 0) {
71714
- refData += '{"' + chnid + '": {\n';
71707
+ refDataTmp += '{"' + chnid + '": {\n';
71715
71708
 
71716
71709
  for(let i = 0, il = igArray.length; i < il; ++i) {
71717
71710
  let startPosArray = igArray[i].startPosArray;
@@ -71720,26 +71713,32 @@ class Dssp {
71720
71713
  let info = ic.domainid2info[domainid];
71721
71714
  if(!info) continue;
71722
71715
 
71723
- refData += '"' + domainid + '": {\n';
71716
+ refDataTmp += '"' + domainid + '": {\n';
71724
71717
 
71725
- refData += '"refpdbname":"' + info.refpdbname + '", "score":' + info.score + ', "seqid":' + info.seqid + ', "nresAlign":' + info.nresAlign + ', "data": [';
71718
+ refDataTmp += '"refpdbname":"' + info.refpdbname + '", "score":' + info.score + ', "seqid":' + info.seqid + ', "nresAlign":' + info.nresAlign + ', "data": [';
71726
71719
  for(let j = 0, jl = startPosArray.length; j < jl; ++j) {
71727
71720
  let startPos = startPosArray[j];
71728
71721
  let endPos = endPosArray[j];
71729
71722
  for(let k = startPos; k <= endPos; ++k) {
71730
71723
  const resid = chnid + '_' + ic.chainsSeq[chnid][k].resi + '_' + ic.chainsSeq[chnid][k].name;
71731
- refData += '{"' + resid + '": "' + resid2refnum[resid] + '"},\n';
71724
+ refDataTmp += '{"' + resid + '": "' + resid2refnum[resid] + '"},\n';
71732
71725
  }
71733
71726
  }
71734
- refData += '],\n';
71727
+ refDataTmp += '],\n';
71728
+
71729
+ refDataTmp += '},\n';
71735
71730
 
71736
- refData += '},\n';
71731
+ bIgDomain = 1;
71737
71732
  }
71738
71733
 
71739
- refData += '}},\n';
71734
+ refDataTmp += '}},\n';
71740
71735
  }
71741
71736
  }
71742
71737
 
71738
+ refData += '{"' + structure + '": {"Ig domain" : ' + bIgDomain + ', "igs": [\n';
71739
+
71740
+ if(bIgDomain) refData += refDataTmp;
71741
+
71743
71742
  refData += ']}},\n';
71744
71743
  }
71745
71744
  // }
@@ -72104,7 +72103,7 @@ class Dssp {
72104
72103
  let strandTmp = strandArray[i].strand;
72105
72104
 
72106
72105
  if(strandTmp != 'G' && strandArray[i].endRefnum - strandArray[i].startRefnum + 1 < 3) { // remove the strand
72107
- if(i != il - 1) { // modify
72106
+ if(strandArray[i + 1]) { // modify
72108
72107
  strandArray[i + 1].loopResCnt += strandArray[i].loopResCnt + parseInt(strandArray[i].endResi) - parseInt(strandArray[i].startResi) + 1;
72109
72108
  }
72110
72109