icn3d 3.47.3 → 3.48.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.
- package/icn3d.js +179 -117
- package/icn3d.min.js +3 -3
- package/icn3d.module.js +179 -117
- package/package.json +1 -1
package/icn3d.module.js
CHANGED
|
@@ -63994,20 +63994,20 @@ class SetDialog {
|
|
|
63994
63994
|
group2tpl['IgC1'] = ['B2Microglobulin_7phrL_human_C1', 'CD3d_6jxrd_human_C1', 'CD3e_6jxrf_human_C1', 'FAB-LIGHT_5esv_C1-n2', 'FAB-HEAVY_5esv_C1-n2', 'GHR_1axiB_human_C1-n1', 'LAG3_7tzgD_human_C1-n2', 'MHCIa_7phrH_human_C1', 'Siglec3_5j0bB_human_C1-n2', 'TCRa_6jxrm_human_C1-n2', 'VTCN1_Q7Z7D3_human_C1-n2'];
|
|
63995
63995
|
group2tpl['IgC2'] = ['CD2_1hnfA_human_C2-n2', 'CD3g_6jxrg_human_C2'];
|
|
63996
63996
|
group2tpl['IgI'] = ['BTLA_2aw2A_human_Iset', 'Contactin1_3s97C_human_Iset-n2', 'JAM1_1nbqA_human_Iset-n2', 'Palladin_2dm3A_human_Iset-n1', 'Titin_4uowM_human_Iset-n152'];
|
|
63997
|
-
group2tpl['IgE'] = ['CoAtomerGamma1_1r4xA_human', 'Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4', 'IsdA_2iteA_bacteria', 'NaKATPaseTransporterBeta_2zxeB_spurdogshark', 'TP34_2o6cA_bacteria', 'TP47_1o75A_bacteria'];
|
|
63997
|
+
//group2tpl['IgE'] = ['CoAtomerGamma1_1r4xA_human', 'Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4', 'IsdA_2iteA_bacteria', 'NaKATPaseTransporterBeta_2zxeB_spurdogshark', 'TP34_2o6cA_bacteria', 'TP47_1o75A_bacteria'];
|
|
63998
63998
|
|
|
63999
63999
|
group2tpl['IgFN3'] = ['Contactin1_2ee2A_human_FN3-n9', 'IL6Rb_1bquB_human_FN3-n2', 'IL6Rb_1bquB_human_FN3-n3', 'InsulinR_8guyE_human_FN3-n1', 'InsulinR_8guyE_human_FN3-n2', 'Sidekick2_1wf5A_human_FN3-n7'];
|
|
64000
64000
|
|
|
64001
|
-
group2tpl['IgFN3-like'] = ['ASF1A_2iijA_human', 'BArrestin1_4jqiA_rat_n1', 'C3_2qkiD_human_n1', 'MPT63_1lmiA_bacteria', 'NaCaExchanger_2fwuA_dog_n2', 'RBPJ_6py8C_human_Unk-n1', 'TEAD1_3kysC_human'];
|
|
64001
|
+
//group2tpl['IgFN3-like'] = ['ASF1A_2iijA_human', 'BArrestin1_4jqiA_rat_n1', 'C3_2qkiD_human_n1', 'MPT63_1lmiA_bacteria', 'NaCaExchanger_2fwuA_dog_n2', 'RBPJ_6py8C_human_Unk-n1', 'TEAD1_3kysC_human'];
|
|
64002
64002
|
|
|
64003
|
-
group2tpl['Other Ig'] = ['CD19_6al5A_human-n1', '
|
|
64003
|
+
group2tpl['Other Ig'] = ['CD19_6al5A_human-n1', 'ECadherin_4zt1A_human_n2', 'LaminAC_1ifrA_human'];
|
|
64004
64004
|
|
|
64005
64005
|
let tpl2strandsig = {};
|
|
64006
|
-
tpl2strandsig['ASF1A_2iijA_human'] = "A A' B C C' E F G G+";
|
|
64006
|
+
//tpl2strandsig['ASF1A_2iijA_human'] = "A A' B C C' E F G G+";
|
|
64007
64007
|
tpl2strandsig['B2Microglobulin_7phrL_human_C1'] = "A B C C' D E F G";
|
|
64008
|
-
tpl2strandsig['BArrestin1_4jqiA_rat_n1'] = "A- A A' B C C' E F G";
|
|
64008
|
+
//tpl2strandsig['BArrestin1_4jqiA_rat_n1'] = "A- A A' B C C' E F G";
|
|
64009
64009
|
tpl2strandsig['BTLA_2aw2A_human_Iset'] = "A A' B C C' D E F G";
|
|
64010
|
-
tpl2strandsig['C3_2qkiD_human_n1'] = "A A' B C C' E F G";
|
|
64010
|
+
//tpl2strandsig['C3_2qkiD_human_n1'] = "A A' B C C' E F G";
|
|
64011
64011
|
tpl2strandsig['CD19_6al5A_human-n1'] = "A' B C C' D E F G";
|
|
64012
64012
|
tpl2strandsig['CD28_1yjdC_human_V'] = "A A' B C C' C'' D E F G";
|
|
64013
64013
|
tpl2strandsig['CD2_1hnfA_human_C2-n2'] = "A B C C' E F G";
|
|
@@ -64016,12 +64016,12 @@ class SetDialog {
|
|
|
64016
64016
|
tpl2strandsig['CD3e_6jxrf_human_C1'] = "A B C C' D E F G";
|
|
64017
64017
|
tpl2strandsig['CD3g_6jxrg_human_C2'] = "A B C C' E F G G+";
|
|
64018
64018
|
tpl2strandsig['CD8a_1cd8A_human_V'] = "A A' B C C' C'' D E F G";
|
|
64019
|
-
tpl2strandsig['CoAtomerGamma1_1r4xA_human'] = "A- A B C D E F G";
|
|
64019
|
+
//tpl2strandsig['CoAtomerGamma1_1r4xA_human'] = "A- A B C D E F G";
|
|
64020
64020
|
tpl2strandsig['Contactin1_2ee2A_human_FN3-n9'] = "A A' B C C' E F G";
|
|
64021
64021
|
tpl2strandsig['Contactin1_3s97C_human_Iset-n2'] = "A A' B C D E F G";
|
|
64022
|
-
tpl2strandsig['CuZnSuperoxideDismutase_1hl5C_human'] = "A- A B C C' E F G";
|
|
64022
|
+
//tpl2strandsig['CuZnSuperoxideDismutase_1hl5C_human'] = "A- A B C C' E F G";
|
|
64023
64023
|
tpl2strandsig['ECadherin_4zt1A_human_n2'] = "A' B C D E F G";
|
|
64024
|
-
tpl2strandsig['Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4'] = "A--- A-- A- A B C C' C'' D E F G";
|
|
64024
|
+
//tpl2strandsig['Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4'] = "A--- A-- A- A B C C' C'' D E F G";
|
|
64025
64025
|
tpl2strandsig['FAB-HEAVY_5esv_C1-n2'] = "A B C D E F G";
|
|
64026
64026
|
tpl2strandsig['FAB-HEAVY_5esv_V-n1'] = "A B C C' C'' D E F G";
|
|
64027
64027
|
tpl2strandsig['FAB-LIGHT_5esv_C1-n2'] = "A B C C' D E F G";
|
|
@@ -64032,28 +64032,28 @@ class SetDialog {
|
|
|
64032
64032
|
tpl2strandsig['IL6Rb_1bquB_human_FN3-n3'] = "A B C C' E F G";
|
|
64033
64033
|
tpl2strandsig['InsulinR_8guyE_human_FN3-n1'] = "A B C C' E F G";
|
|
64034
64034
|
tpl2strandsig['InsulinR_8guyE_human_FN3-n2'] = "A B C C' E F G";
|
|
64035
|
-
tpl2strandsig['IsdA_2iteA_bacteria'] = "A- A B C C' D E F G";
|
|
64035
|
+
//tpl2strandsig['IsdA_2iteA_bacteria'] = "A- A B C C' D E F G";
|
|
64036
64036
|
tpl2strandsig['JAM1_1nbqA_human_Iset-n2'] = "A A' B C C' D E F G";
|
|
64037
64037
|
tpl2strandsig['LAG3_7tzgD_human_C1-n2'] = "A A' B C C' D E F G";
|
|
64038
64038
|
tpl2strandsig['LAG3_7tzgD_human_V-n1'] = "A' B C C' D E F G";
|
|
64039
64039
|
tpl2strandsig['LaminAC_1ifrA_human'] = "A- A B C C' E E+ F G";
|
|
64040
64040
|
tpl2strandsig['MHCIa_7phrH_human_C1'] = "A B C C' D E F G";
|
|
64041
|
-
tpl2strandsig['MPT63_1lmiA_bacteria'] = "A-- A- A BC C' E F G";
|
|
64042
|
-
tpl2strandsig['NaCaExchanger_2fwuA_dog_n2'] = "A A' B C C' E F G";
|
|
64043
|
-
tpl2strandsig['NaKATPaseTransporterBeta_2zxeB_spurdogshark']= "A A' B C D E F G";
|
|
64044
|
-
tpl2strandsig['ORF7a_1xakA_virus'] = "A' B C D E F G";
|
|
64041
|
+
//tpl2strandsig['MPT63_1lmiA_bacteria'] = "A-- A- A BC C' E F G";
|
|
64042
|
+
//tpl2strandsig['NaCaExchanger_2fwuA_dog_n2'] = "A A' B C C' E F G";
|
|
64043
|
+
//tpl2strandsig['NaKATPaseTransporterBeta_2zxeB_spurdogshark']= "A A' B C D E F G";
|
|
64044
|
+
//tpl2strandsig['ORF7a_1xakA_virus'] = "A' B C D E F G";
|
|
64045
64045
|
tpl2strandsig['PD1_4zqkB_human_V'] = "A A' B C C' D E F G";
|
|
64046
64046
|
tpl2strandsig['PDL1_4z18B_human_V-n1'] = "A A' B C C' C'' D E F G";
|
|
64047
64047
|
tpl2strandsig['Palladin_2dm3A_human_Iset-n1'] = "A A' B C C' D E F G";
|
|
64048
|
-
tpl2strandsig['RBPJ_6py8C_human_Unk-n1'] = "A A' B C C' E F G";
|
|
64049
|
-
tpl2strandsig['RBPJ_6py8C_human_Unk-n2'] = "A B C D E F G";
|
|
64048
|
+
//tpl2strandsig['RBPJ_6py8C_human_Unk-n1'] = "A A' B C C' E F G";
|
|
64049
|
+
//tpl2strandsig['RBPJ_6py8C_human_Unk-n2'] = "A B C D E F G";
|
|
64050
64050
|
tpl2strandsig['Sidekick2_1wf5A_human_FN3-n7'] = "A B C C' E F G";
|
|
64051
64051
|
tpl2strandsig['Siglec3_5j0bB_human_C1-n2'] = "A A' B C D E F G";
|
|
64052
64052
|
tpl2strandsig['TCRa_6jxrm_human_C1-n2'] = "A B C D E F G";
|
|
64053
64053
|
tpl2strandsig['TCRa_6jxrm_human_V-n1'] = "A A' B C C' C'' D E F G";
|
|
64054
|
-
tpl2strandsig['TEAD1_3kysC_human'] = "A A+ A' B C C' E F G G+";
|
|
64055
|
-
tpl2strandsig['TP34_2o6cA_bacteria'] = "A- A B C C' D E F G";
|
|
64056
|
-
tpl2strandsig['TP47_1o75A_bacteria'] = "A B C C' D E F G";
|
|
64054
|
+
//tpl2strandsig['TEAD1_3kysC_human'] = "A A+ A' B C C' E F G G+";
|
|
64055
|
+
//tpl2strandsig['TP34_2o6cA_bacteria'] = "A- A B C C' D E F G";
|
|
64056
|
+
//tpl2strandsig['TP47_1o75A_bacteria'] = "A B C C' D E F G";
|
|
64057
64057
|
tpl2strandsig['Titin_4uowM_human_Iset-n152'] = "A A' B C C' D E F G";
|
|
64058
64058
|
tpl2strandsig['VISTA_6oilA_human_V'] = "A A' B C C' C'' D E F G G+";
|
|
64059
64059
|
tpl2strandsig['VNAR_1t6vN_shark_V'] = "A A' B C C' D E F G";
|
|
@@ -75419,7 +75419,7 @@ class Scene {
|
|
|
75419
75419
|
if(ic.opts['slab'] === 'yes') ic.cameraCls.setSlab();
|
|
75420
75420
|
|
|
75421
75421
|
// if(!ic.bSetVrArButtons) { // call once
|
|
75422
|
-
if(!me.cfg.imageonly) this.setVrArButtons();
|
|
75422
|
+
if(!me.cfg.imageonly && ( 'xr' in navigator )) this.setVrArButtons();
|
|
75423
75423
|
// }
|
|
75424
75424
|
|
|
75425
75425
|
// if((ic.bVr || ic.bAr) && !ic.bSetVrAr) { // call once
|
|
@@ -84874,7 +84874,7 @@ class ApplyMissingRes {
|
|
|
84874
84874
|
line.serial1 = ic.missingResResid2serial[resid0 + ',' + resid1];
|
|
84875
84875
|
line.serial2 = ic.missingResResid2serial[resid1 + ',' + resid0];
|
|
84876
84876
|
|
|
84877
|
-
line.color = "#" + ic.atoms[line.serial1].color.getHexString();
|
|
84877
|
+
line.color = (ic.atoms[line.serial1]) ? "#" + ic.atoms[line.serial1].color.getHexString() : undefined;
|
|
84878
84878
|
|
|
84879
84879
|
line.radius = ic.coilWidth;
|
|
84880
84880
|
|
|
@@ -100331,7 +100331,7 @@ class HlUpdate {
|
|
|
100331
100331
|
if(ic.mmdbid_q !== undefined && ic.mmdbid_q === ic.mmdbid_t) {
|
|
100332
100332
|
html2ddgm += ic.diagram2dCls.draw2Ddgm(ic.interactionData2, ic.mmdbidArray[0].toUpperCase(), 1, true);
|
|
100333
100333
|
}
|
|
100334
|
-
else {
|
|
100334
|
+
else if(ic.mmdbidArray.length > 1) {
|
|
100335
100335
|
html2ddgm += ic.diagram2dCls.draw2Ddgm(ic.interactionData2, ic.mmdbidArray[1].toUpperCase(), 1, true);
|
|
100336
100336
|
}
|
|
100337
100337
|
html2ddgm += ic.diagram2dCls.set2DdgmNote(true);
|
|
@@ -104613,16 +104613,31 @@ class ChainalignParser {
|
|
|
104613
104613
|
|
|
104614
104614
|
// dynamically align pairs in all chainids
|
|
104615
104615
|
// the resrange from VASTSrv or VAST search uses NCBI residue numbers!!!
|
|
104616
|
-
let atomSet_t
|
|
104616
|
+
let atomSet_t;
|
|
104617
|
+
if(me.cfg.resrange) {
|
|
104618
|
+
let result = ic.realignParserCls.getSeqCoorResid([resRangeArray[0]], chainidArray[0], true);
|
|
104619
|
+
atomSet_t = result.hAtoms;
|
|
104620
|
+
}
|
|
104621
|
+
else {
|
|
104622
|
+
atomSet_t = ic.chains[chainidArray[0]];
|
|
104623
|
+
}
|
|
104624
|
+
|
|
104617
104625
|
for(let index = 1, indexl = chainidArray.length; index < indexl; ++index) {
|
|
104618
|
-
let atomSet_q
|
|
104626
|
+
let atomSet_q;
|
|
104627
|
+
if(me.cfg.resrange) {
|
|
104628
|
+
let result = ic.realignParserCls.getSeqCoorResid([resRangeArray[index]], chainidArray[index], true);
|
|
104629
|
+
atomSet_q = result.hAtoms;
|
|
104630
|
+
}
|
|
104631
|
+
else {
|
|
104632
|
+
atomSet_q = ic.chains[chainidArray[index]];
|
|
104633
|
+
}
|
|
104619
104634
|
// end of new version to be done for VASTsrv ==============
|
|
104620
104635
|
|
|
104621
104636
|
let alignAjax;
|
|
104622
104637
|
if(me.cfg.aligntool != 'tmalign') {
|
|
104623
104638
|
let jsonStr_q = ic.domain3dCls.getDomainJsonForAlign(atomSet_q);
|
|
104624
104639
|
let jsonStr_t = ic.domain3dCls.getDomainJsonForAlign(atomSet_t);
|
|
104625
|
-
|
|
104640
|
+
|
|
104626
104641
|
let dataObj = {'domains1': jsonStr_q, 'domains2': jsonStr_t};
|
|
104627
104642
|
alignAjax = me.getAjaxPostPromise(urlalign, dataObj);
|
|
104628
104643
|
}
|
|
@@ -104658,6 +104673,7 @@ class ChainalignParser {
|
|
|
104658
104673
|
//let bTargetTransformed = (ic.qt_start_end[0]) ? true : false;
|
|
104659
104674
|
|
|
104660
104675
|
// modify the previous trans and rotation matrix
|
|
104676
|
+
let bAligned = false;
|
|
104661
104677
|
for(let i = 0, il = dataArray.length; i < il; ++i) {
|
|
104662
104678
|
// let align = (me.bNode) ? dataArray[i] : dataArray[i].value;//[0];
|
|
104663
104679
|
let align = dataArray[i].value;//[0];
|
|
@@ -104673,7 +104689,7 @@ class ChainalignParser {
|
|
|
104673
104689
|
|
|
104674
104690
|
me.htmlCls.clickMenuCls.setLogCmd("Align " + mmdbid_t + " with " + mmdbid_q, false);
|
|
104675
104691
|
|
|
104676
|
-
this.processAlign(align, index, queryData, bEqualMmdbid, bEqualChain);
|
|
104692
|
+
bAligned =await this.processAlign(align, index, queryData, bEqualMmdbid, bEqualChain, undefined);
|
|
104677
104693
|
}
|
|
104678
104694
|
|
|
104679
104695
|
// do not transform the target
|
|
@@ -104681,28 +104697,34 @@ class ChainalignParser {
|
|
|
104681
104697
|
// this.transformStructure(mmdbid_t, indexArray[0], 'target');
|
|
104682
104698
|
//}
|
|
104683
104699
|
|
|
104684
|
-
|
|
104685
|
-
|
|
104686
|
-
let
|
|
104687
|
-
|
|
104688
|
-
|
|
104689
|
-
|
|
104700
|
+
if(bAligned) {
|
|
104701
|
+
// transform the rest
|
|
104702
|
+
for(let i = 0, il = dataArray.length; i < il; ++i) {
|
|
104703
|
+
let mmdbid_q = struArray[i];
|
|
104704
|
+
let index = indexArray[i];
|
|
104705
|
+
this.transformStructure(mmdbid_q, index, 'query');
|
|
104706
|
+
}
|
|
104690
104707
|
|
|
104691
|
-
|
|
104708
|
+
let hAtomsAll = {};
|
|
104692
104709
|
|
|
104693
|
-
|
|
104694
|
-
|
|
104695
|
-
|
|
104696
|
-
|
|
104710
|
+
if(ic.bFullUi && ic.q_rotation !== undefined && !me.cfg.resnum && !me.cfg.resdef) {
|
|
104711
|
+
// set multiple sequence alignment from ic.qt_start_end
|
|
104712
|
+
hAtomsAll = this.setMsa(chainidArray);
|
|
104713
|
+
}
|
|
104697
104714
|
|
|
104698
|
-
|
|
104699
|
-
|
|
104700
|
-
|
|
104715
|
+
// highlight all aligned atoms
|
|
104716
|
+
//ic.hAtoms = me.hashUtilsCls.cloneHash(hAtomsTmp);
|
|
104717
|
+
ic.hAtoms = me.hashUtilsCls.cloneHash(hAtomsAll);
|
|
104701
104718
|
|
|
104702
|
-
|
|
104719
|
+
ic.transformCls.zoominSelection();
|
|
104703
104720
|
|
|
104704
|
-
|
|
104705
|
-
|
|
104721
|
+
// do the rest
|
|
104722
|
+
await this.downloadChainalignmentPart3(chainresiCalphaHash2, chainidArray, ic.hAtoms);
|
|
104723
|
+
}
|
|
104724
|
+
else {
|
|
104725
|
+
me.cfg.aligntool = 'tmalign';
|
|
104726
|
+
await ic.chainalignParserCls.downloadChainalignment(me.cfg.chainalign);
|
|
104727
|
+
}
|
|
104706
104728
|
}
|
|
104707
104729
|
|
|
104708
104730
|
setMsa(chainidArray, bVastplus, bRealign) { let ic = this.icn3d, me = ic.icn3dui;
|
|
@@ -104773,7 +104795,7 @@ class ChainalignParser {
|
|
|
104773
104795
|
|
|
104774
104796
|
let bNoAlert = true;
|
|
104775
104797
|
|
|
104776
|
-
let bAligned = this.processAlign(align, i, queryData, bEqualMmdbid, bEqualChain, bNoAlert);
|
|
104798
|
+
let bAligned = await this.processAlign(align, i, queryData, bEqualMmdbid, bEqualChain, bNoAlert);
|
|
104777
104799
|
|
|
104778
104800
|
if(bAligned) {
|
|
104779
104801
|
bFoundAlignment = true;
|
|
@@ -105265,7 +105287,7 @@ class ChainalignParser {
|
|
|
105265
105287
|
|
|
105266
105288
|
me.htmlCls.clickMenuCls.setLogCmd("Align " + mmdbid_t + " with " + mmdbid_q, false);
|
|
105267
105289
|
|
|
105268
|
-
this.processAlign(align, index-1, queryData, bEqualMmdbid, bEqualChain);
|
|
105290
|
+
await this.processAlign(align, index-1, queryData, bEqualMmdbid, bEqualChain, undefined);
|
|
105269
105291
|
}
|
|
105270
105292
|
}
|
|
105271
105293
|
}
|
|
@@ -105275,13 +105297,13 @@ class ChainalignParser {
|
|
|
105275
105297
|
await this.loadOpmDataForChainalign(targetData, queryDataArray, chainidArray, ic.mmdbidArray);
|
|
105276
105298
|
}
|
|
105277
105299
|
|
|
105278
|
-
processAlign(align, index, queryData, bEqualMmdbid, bEqualChain, bNoAlert) { let ic = this.icn3d, me = ic.icn3dui;
|
|
105300
|
+
async processAlign(align, index, queryData, bEqualMmdbid, bEqualChain, bNoAlert) { let ic = this.icn3d, me = ic.icn3dui;
|
|
105279
105301
|
let bAligned = false;
|
|
105280
105302
|
|
|
105281
|
-
if((
|
|
105282
|
-
let serverName = (me.cfg.aligntool == 'tmalign') ? 'TM-align' : 'VAST';
|
|
105283
|
-
|
|
105284
|
-
if(ic.bRender) var aaa = 1; //alert("These chains can not be aligned by " + serverName + ".");
|
|
105303
|
+
if((align === "error" || align === undefined || align.length == 0) && !bNoAlert) {
|
|
105304
|
+
// let serverName = (me.cfg.aligntool == 'tmalign') ? 'TM-align' : 'VAST';
|
|
105305
|
+
|
|
105306
|
+
// if(ic.bRender) var aaa = 1; //alert("These chains can not be aligned by " + serverName + ".");
|
|
105285
105307
|
return bAligned;
|
|
105286
105308
|
}
|
|
105287
105309
|
|
|
@@ -105430,7 +105452,6 @@ class ChainalignParser {
|
|
|
105430
105452
|
let structArrayTmp = idlist.split(',');
|
|
105431
105453
|
|
|
105432
105454
|
let structArray = [];
|
|
105433
|
-
|
|
105434
105455
|
// only when bNoDuplicate is undefined/false, it's allowed to load multiple copies of the same structure
|
|
105435
105456
|
if(!bNoDuplicate) {
|
|
105436
105457
|
structArray = this.addPostfixForStructureids(structArrayTmp);
|
|
@@ -105443,7 +105464,7 @@ class ChainalignParser {
|
|
|
105443
105464
|
if(!ic.structures.hasOwnProperty(id)) structArray.push(structArrayTmp[i]);
|
|
105444
105465
|
}
|
|
105445
105466
|
}
|
|
105446
|
-
|
|
105467
|
+
|
|
105447
105468
|
if(structArray.length == 0) return;
|
|
105448
105469
|
|
|
105449
105470
|
ic.structArray = ic.structArray.concat(structArray);
|
|
@@ -105543,6 +105564,8 @@ class ChainalignParser {
|
|
|
105543
105564
|
let bNoSeqalign = true;
|
|
105544
105565
|
let pdbid = structArray[i];
|
|
105545
105566
|
|
|
105567
|
+
if(queryDataArray[i].pdbId) queryDataArray[i].pdbId = pdbid;
|
|
105568
|
+
|
|
105546
105569
|
//hAtomsTmp contains all atoms
|
|
105547
105570
|
await ic.mmdbParserCls.parseMmdbData(queryDataArray[i], targetOrQuery, undefined, undefined, bLastQuery, bNoSeqalign, pdbid);
|
|
105548
105571
|
}
|
|
@@ -107119,7 +107142,7 @@ class MmdbParser {
|
|
|
107119
107142
|
return;
|
|
107120
107143
|
}
|
|
107121
107144
|
|
|
107122
|
-
if(Object.keys(data.atoms).length == 0) { // for large structures such as 3J3Q
|
|
107145
|
+
if(!data.atoms || Object.keys(data.atoms).length == 0) { // for large structures such as 3J3Q
|
|
107123
107146
|
// use mmtfid
|
|
107124
107147
|
let pdbid = data.pdbId;
|
|
107125
107148
|
await ic.bcifParserCls.downloadBcif(pdbid);
|
|
@@ -107129,6 +107152,7 @@ class MmdbParser {
|
|
|
107129
107152
|
|
|
107130
107153
|
let bCalphaOnly = me.utilsCls.isCalphaPhosOnly(data.atoms); //, 'CA');
|
|
107131
107154
|
|
|
107155
|
+
//if(!data.pdbId) data.pdbId = mmdbid;
|
|
107132
107156
|
if(bCalphaOnly || data.atomCount <= ic.maxatomcnt) {
|
|
107133
107157
|
await this.parseMmdbData(data);
|
|
107134
107158
|
}
|
|
@@ -107290,8 +107314,18 @@ class MmdbParser {
|
|
|
107290
107314
|
async parseMmdbData(data, type, chainid, chainIndex, bLastQuery, bNoTransformNoSeqalign, pdbidIn) { let ic = this.icn3d, me = ic.icn3dui;
|
|
107291
107315
|
let hAtoms;
|
|
107292
107316
|
let pdbid = (data.pdbId !== undefined) ? data.pdbId : data.mmdbId;
|
|
107317
|
+
if(!pdbid && chainid) {
|
|
107318
|
+
pdbid = chainid.substr(0, chainid.lastIndexOf('_'));
|
|
107319
|
+
}
|
|
107320
|
+
|
|
107293
107321
|
if(pdbidIn) pdbid = pdbidIn;
|
|
107294
107322
|
|
|
107323
|
+
// if(!data.atoms || Object.keys(data.atoms).length == 0) { // for large structures such as 3J3Q
|
|
107324
|
+
// ic.bRender = false;
|
|
107325
|
+
// await ic.bcifParserCls.downloadBcif(pdbid);
|
|
107326
|
+
// return;
|
|
107327
|
+
// }
|
|
107328
|
+
|
|
107295
107329
|
this.parseMmdbDataPart1(data, type);
|
|
107296
107330
|
|
|
107297
107331
|
if(type === undefined) { // default mmdbid input
|
|
@@ -108958,7 +108992,7 @@ class PdbParser {
|
|
|
108958
108992
|
}
|
|
108959
108993
|
|
|
108960
108994
|
// if(!ic.bSecondaryStructure && Object.keys(ic.proteins).length > 0) {
|
|
108961
|
-
if((!ic.bSecondaryStructure || bCalcSecondary) && Object.keys(ic.proteins).length > 0 && !bNoDssp) {
|
|
108995
|
+
if((!ic.bSecondaryStructure || bCalcSecondary) && Object.keys(ic.proteins).length > 0 && !bNoDssp) {
|
|
108962
108996
|
await this.applyCommandDssp(bAppend);
|
|
108963
108997
|
}
|
|
108964
108998
|
else {
|
|
@@ -110933,8 +110967,7 @@ class RealignParser {
|
|
|
110933
110967
|
// If rmsd from vastsrv is too large, realign the chains
|
|
110934
110968
|
//if(me.cfg.chainalign && !me.cfg.usepdbnum && me.cfg.resdef && rmsd > 5) {
|
|
110935
110969
|
// redo algnment only for VAST serv page
|
|
110936
|
-
if(!me.cfg.usepdbnum && me.cfg.resdef && rmsd > 5 && me.cfg.chainalign) {
|
|
110937
|
-
console.log("RMSD from VAST is larger than 5. Realign the chains with TM-align.");
|
|
110970
|
+
if(!me.cfg.usepdbnum && (me.cfg.resdef || me.cfg.resrange) && rmsd > 5 && me.cfg.chainalign) {
|
|
110938
110971
|
//let nameArray = me.cfg.chainalign.split(',');
|
|
110939
110972
|
let nameArray = Object.keys(chainidHash);
|
|
110940
110973
|
if(nameArray.length > 0) {
|
|
@@ -111186,15 +111219,30 @@ let resRangeArray = (me.cfg.resrange) ? decodeURIComponent(me.cfg.resrange).spli
|
|
|
111186
111219
|
if(bVastsearch && me.cfg.resrange) {
|
|
111187
111220
|
let resRangeArray = decodeURIComponent(me.cfg.resrange).split(' | ');
|
|
111188
111221
|
|
|
111189
|
-
let atomSet_t
|
|
111222
|
+
let atomSet_t;
|
|
111223
|
+
if(me.cfg.resrange) {
|
|
111224
|
+
let result = ic.realignParserCls.getSeqCoorResid([resRangeArray[0]], ic.chainidArray[0], true);
|
|
111225
|
+
atomSet_t = result.hAtoms;
|
|
111226
|
+
}
|
|
111227
|
+
else {
|
|
111228
|
+
atomSet_t = ic.chains[ic.chainidArray[0]];
|
|
111229
|
+
}
|
|
111230
|
+
|
|
111190
111231
|
for(let index = 1, indexl = ic.chainidArray.length; index < indexl; ++index) {
|
|
111191
|
-
let atomSet_q
|
|
111232
|
+
let atomSet_q;
|
|
111233
|
+
if(me.cfg.resrange) {
|
|
111234
|
+
let result = ic.realignParserCls.getSeqCoorResid([resRangeArray[index]], ic.chainidArray[index], true);
|
|
111235
|
+
atomSet_q = result.hAtoms;
|
|
111236
|
+
}
|
|
111237
|
+
else {
|
|
111238
|
+
atomSet_q = ic.chains[ic.chainidArray[index]];
|
|
111239
|
+
}
|
|
111192
111240
|
|
|
111193
111241
|
let alignAjax;
|
|
111194
111242
|
if(me.cfg.aligntool != 'tmalign') {
|
|
111195
111243
|
let jsonStr_q = ic.domain3dCls.getDomainJsonForAlign(atomSet_q);
|
|
111196
111244
|
let jsonStr_t = ic.domain3dCls.getDomainJsonForAlign(atomSet_t);
|
|
111197
|
-
|
|
111245
|
+
|
|
111198
111246
|
let dataObj = {'domains1': jsonStr_q, 'domains2': jsonStr_t};
|
|
111199
111247
|
alignAjax = me.getAjaxPostPromise(urlalign, dataObj);
|
|
111200
111248
|
}
|
|
@@ -111255,9 +111303,7 @@ let resRangeArray = (me.cfg.resrange) ? decodeURIComponent(me.cfg.resrange).spli
|
|
|
111255
111303
|
let alignAjax;
|
|
111256
111304
|
if(me.cfg.aligntool != 'tmalign') {
|
|
111257
111305
|
let jsonStr_q = ic.domain3dCls.getDomainJsonForAlign(struct2domain[struct2][chainid2]);
|
|
111258
|
-
|
|
111259
|
-
console.log("@@@ jsonStr_q " + jsonStr_q);
|
|
111260
|
-
console.log("@@@ jsonStr_t " + jsonStr_t);
|
|
111306
|
+
|
|
111261
111307
|
let dataObj = {'domains1': jsonStr_q, 'domains2': jsonStr_t};
|
|
111262
111308
|
alignAjax = me.getAjaxPostPromise(urlalign, dataObj);
|
|
111263
111309
|
}
|
|
@@ -111327,7 +111373,7 @@ console.log("@@@ jsonStr_t " + jsonStr_t);
|
|
|
111327
111373
|
|
|
111328
111374
|
if(me.cfg.aligntool != 'tmalign') {
|
|
111329
111375
|
let jsonStr_q = ic.domain3dCls.getDomainJsonForAlign(chainid2domain[chainid2]);
|
|
111330
|
-
|
|
111376
|
+
|
|
111331
111377
|
let dataObj = {'domains1': jsonStr_q, 'domains2': jsonStr_t};
|
|
111332
111378
|
alignAjax = me.getAjaxPostPromise(urlalign, dataObj);
|
|
111333
111379
|
}
|
|
@@ -111587,6 +111633,8 @@ console.log("@@@ jsonStr_t " + jsonStr_t);
|
|
|
111587
111633
|
let hAtoms = {};
|
|
111588
111634
|
|
|
111589
111635
|
for(let j = 0, jl = resiArray.length; j < jl; ++j) {
|
|
111636
|
+
if(!resiArray[j]) continue;
|
|
111637
|
+
|
|
111590
111638
|
if(resiArray[j].indexOf('-') != -1) {
|
|
111591
111639
|
let startEnd = resiArray[j].split('-');
|
|
111592
111640
|
for(let k = parseInt(startEnd[0]); k <= parseInt(startEnd[1]); ++k) {
|
|
@@ -116757,7 +116805,8 @@ class LoadPDB {
|
|
|
116757
116805
|
}
|
|
116758
116806
|
|
|
116759
116807
|
isSecondary(resid, residArray, bNMR, bNonFull) { let ic = this.icn3d; ic.icn3dui;
|
|
116760
|
-
|
|
116808
|
+
// still need to get the secondary info
|
|
116809
|
+
//if(bNonFull) return false;
|
|
116761
116810
|
|
|
116762
116811
|
if(!bNMR) {
|
|
116763
116812
|
return $.inArray(resid, residArray) != -1;
|
|
@@ -124663,29 +124712,29 @@ class Dssp {
|
|
|
124663
124712
|
|
|
124664
124713
|
setRefPdbs() { let ic = this.icn3d; ic.icn3dui;
|
|
124665
124714
|
// round 1, 16 templates
|
|
124666
|
-
ic.refpdbArray = ['1InsulinR_8guyE_human_FN3-n1', '
|
|
124715
|
+
ic.refpdbArray = ['1InsulinR_8guyE_human_FN3-n1', '1ICOS_6x4gA_human_V', '1FAB-LIGHT_5esv_C1-n2', '1CD2_1hnfA_human_C2-n2', '1ECadherin_4zt1A_human_n2', '1FAB-HEAVY_5esv_V-n1', '1PDL1_4z18B_human_V-n1', '1BTLA_2aw2A_human_Iset', '1LaminAC_1ifrA_human', '1CD3g_6jxrg_human_C2', '1CD28_1yjdC_human_V', '1CD19_6al5A_human-n1'];
|
|
124667
124716
|
|
|
124668
124717
|
// round 2
|
|
124669
124718
|
ic.refpdbHash = {};
|
|
124670
124719
|
ic.refpdbHash['1InsulinR_8guyE_human_FN3-n1'] = ['InsulinR_8guyE_human_FN3-n1', 'IL6Rb_1bquB_human_FN3-n3', 'Sidekick2_1wf5A_human_FN3-n7', 'InsulinR_8guyE_human_FN3-n2', 'Contactin1_2ee2A_human_FN3-n9', 'IL6Rb_1bquB_human_FN3-n2'];
|
|
124671
|
-
ic.refpdbHash['
|
|
124672
|
-
ic.refpdbHash['1CoAtomerGamma1_1r4xA_human'] = ['CoAtomerGamma1_1r4xA_human', 'TP34_2o6cA_bacteria'];
|
|
124673
|
-
ic.refpdbHash['1C3_2qkiD_human_n1'] = ['C3_2qkiD_human_n1', '
|
|
124674
|
-
ic.refpdbHash['1CuZnSuperoxideDismutase_1hl5C_human'] = ['
|
|
124675
|
-
ic.refpdbHash['1ASF1A_2iijA_human'] = ['ASF1A_2iijA_human', '
|
|
124720
|
+
ic.refpdbHash['1ICOS_6x4gA_human_V'] = ['ICOS_6x4gA_human_V'];
|
|
124721
|
+
//ic.refpdbHash['1CoAtomerGamma1_1r4xA_human'] = ['CoAtomerGamma1_1r4xA_human', 'TP34_2o6cA_bacteria'];
|
|
124722
|
+
//ic.refpdbHash['1C3_2qkiD_human_n1'] = ['C3_2qkiD_human_n1', 'RBPJ_6py8C_human_Unk-n1'];
|
|
124723
|
+
//ic.refpdbHash['1CuZnSuperoxideDismutase_1hl5C_human'] = ['TEAD1_3kysC_human'];
|
|
124724
|
+
//ic.refpdbHash['1ASF1A_2iijA_human'] = ['ASF1A_2iijA_human', 'TP47_1o75A_bacteria'];
|
|
124676
124725
|
ic.refpdbHash['1FAB-LIGHT_5esv_C1-n2'] = ['FAB-LIGHT_5esv_C1-n2', 'GHR_1axiB_human_C1-n1', 'VTCN1_Q7Z7D3_human_C1-n2', 'B2Microglobulin_7phrL_human_C1', 'FAB-HEAVY_5esv_C1-n2', 'MHCIa_7phrH_human_C1'];
|
|
124677
124726
|
ic.refpdbHash['1CD2_1hnfA_human_C2-n2'] = ['CD2_1hnfA_human_C2-n2', 'Siglec3_5j0bB_human_C1-n2'];
|
|
124678
|
-
ic.refpdbHash['
|
|
124679
|
-
ic.refpdbHash['1NaKATPaseTransporterBeta_2zxeB_spurdogshark'] = ['NaKATPaseTransporterBeta_2zxeB_spurdogshark'];
|
|
124727
|
+
ic.refpdbHash['1ECadherin_4zt1A_human_n2'] = ['ECadherin_4zt1A_human_n2'];
|
|
124728
|
+
//ic.refpdbHash['1NaKATPaseTransporterBeta_2zxeB_spurdogshark'] = ['NaKATPaseTransporterBeta_2zxeB_spurdogshark'];
|
|
124680
124729
|
ic.refpdbHash['1FAB-HEAVY_5esv_V-n1'] = ['FAB-HEAVY_5esv_V-n1', 'FAB-LIGHT_5esv_V-n1', 'VNAR_1t6vN_shark_V', 'TCRa_6jxrm_human_V-n1', 'VISTA_6oilA_human_V', 'CD8a_1cd8A_human_V', 'PD1_4zqkB_human_V'];
|
|
124681
124730
|
ic.refpdbHash['1PDL1_4z18B_human_V-n1'] = ['PDL1_4z18B_human_V-n1', 'CD2_1hnfA_human_V-n1', 'LAG3_7tzgD_human_V-n1'];
|
|
124682
124731
|
ic.refpdbHash['1BTLA_2aw2A_human_Iset'] = ['BTLA_2aw2A_human_Iset', 'Palladin_2dm3A_human_Iset-n1', 'Titin_4uowM_human_Iset-n152', 'LAG3_7tzgD_human_C1-n2', 'JAM1_1nbqA_human_Iset-n2', 'Contactin1_3s97C_human_Iset-n2'];
|
|
124683
124732
|
ic.refpdbHash['1LaminAC_1ifrA_human'] = ['LaminAC_1ifrA_human', 'CD3d_6jxrd_human_C1'];
|
|
124684
|
-
ic.refpdbHash['1CD3g_6jxrg_human_C2'] = ['CD3g_6jxrg_human_C2', 'TCRa_6jxrm_human_C1-n2'
|
|
124685
|
-
ic.refpdbHash['1CD28_1yjdC_human_V'] = ['CD28_1yjdC_human_V', '
|
|
124733
|
+
ic.refpdbHash['1CD3g_6jxrg_human_C2'] = ['CD3g_6jxrg_human_C2', 'TCRa_6jxrm_human_C1-n2'];
|
|
124734
|
+
ic.refpdbHash['1CD28_1yjdC_human_V'] = ['CD28_1yjdC_human_V', 'CD3e_6jxrf_human_C1'];
|
|
124686
124735
|
ic.refpdbHash['1CD19_6al5A_human-n1'] = ['CD19_6al5A_human-n1'];
|
|
124687
124736
|
|
|
124688
|
-
ic.refpdbHash['all_templates'] = ['
|
|
124737
|
+
ic.refpdbHash['all_templates'] = ['B2Microglobulin_7phrL_human_C1', 'BTLA_2aw2A_human_Iset', 'CD19_6al5A_human-n1', 'CD28_1yjdC_human_V', 'CD2_1hnfA_human_C2-n2', 'CD2_1hnfA_human_V-n1', 'CD3d_6jxrd_human_C1', 'CD3e_6jxrf_human_C1', 'CD3g_6jxrg_human_C2', 'CD8a_1cd8A_human_V', 'Contactin1_2ee2A_human_FN3-n9', 'Contactin1_3s97C_human_Iset-n2', 'ECadherin_4zt1A_human_n2', 'FAB-HEAVY_5esv_C1-n2', 'FAB-HEAVY_5esv_V-n1', 'FAB-LIGHT_5esv_C1-n2', 'FAB-LIGHT_5esv_V-n1', 'GHR_1axiB_human_C1-n1', 'ICOS_6x4gA_human_V', 'IL6Rb_1bquB_human_FN3-n2', 'IL6Rb_1bquB_human_FN3-n3', 'InsulinR_8guyE_human_FN3-n1', 'InsulinR_8guyE_human_FN3-n2', 'JAM1_1nbqA_human_Iset-n2', 'LAG3_7tzgD_human_C1-n2', 'LAG3_7tzgD_human_V-n1', 'LaminAC_1ifrA_human', 'MHCIa_7phrH_human_C1', 'PD1_4zqkB_human_V', 'PDL1_4z18B_human_V-n1', 'Palladin_2dm3A_human_Iset-n1', 'Sidekick2_1wf5A_human_FN3-n7', 'Siglec3_5j0bB_human_C1-n2', 'TCRa_6jxrm_human_C1-n2', 'TCRa_6jxrm_human_V-n1', 'Titin_4uowM_human_Iset-n152', 'VISTA_6oilA_human_V', 'VNAR_1t6vN_shark_V', 'VTCN1_Q7Z7D3_human_C1-n2'];
|
|
124689
124738
|
|
|
124690
124739
|
// use known ref structure
|
|
124691
124740
|
ic.refpdbHash['5ESV_C'] = ['FAB-HEAVY_5esv_V-n1', 'FAB-HEAVY_5esv_C1-n2'];
|
|
@@ -124694,36 +124743,36 @@ class Dssp {
|
|
|
124694
124743
|
ic.refpdbHash['6JXR_m'] = ['TCRa_6jxrm_human_V-n1', 'TCRa_6jxrm_human_C1-n2'];
|
|
124695
124744
|
ic.refpdbHash['1HNF_A'] = ['CD2_1hnfA_human_V-n1', 'CD2_1hnfA_human_C2-n2'];
|
|
124696
124745
|
ic.refpdbHash['7TZG_D'] = ['LAG3_7tzgD_human_V-n1', 'LAG3_7tzgD_human_C1-n2'];
|
|
124697
|
-
ic.refpdbHash['6PY8_C'] = ['RBPJ_6py8C_human_Unk-n1'
|
|
124746
|
+
//ic.refpdbHash['6PY8_C'] = ['RBPJ_6py8C_human_Unk-n1'];
|
|
124698
124747
|
ic.refpdbHash['1BQU_B'] = ['IL6Rb_1bquB_human_FN3-n2', 'IL6Rb_1bquB_human_FN3-n3'];
|
|
124699
124748
|
|
|
124700
|
-
ic.refpdbHash['1R4X_A'] = ['CoAtomerGamma1_1r4xA_human'];
|
|
124749
|
+
//ic.refpdbHash['1R4X_A'] = ['CoAtomerGamma1_1r4xA_human'];
|
|
124701
124750
|
ic.refpdbHash['6OIL_A'] = ['VISTA_6oilA_human_V'];
|
|
124702
|
-
ic.refpdbHash['2ZXE_B'] = ['NaKATPaseTransporterBeta_2zxeB_spurdogshark'];
|
|
124703
|
-
ic.refpdbHash['1I8A_A'] = ['Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4'];
|
|
124704
|
-
ic.refpdbHash['2FWU_A'] = ['NaCaExchanger_2fwuA_dog_n2'];
|
|
124705
|
-
ic.refpdbHash['4JQI_A'] = ['BArrestin1_4jqiA_rat_n1'];
|
|
124751
|
+
//ic.refpdbHash['2ZXE_B'] = ['NaKATPaseTransporterBeta_2zxeB_spurdogshark'];
|
|
124752
|
+
//ic.refpdbHash['1I8A_A'] = ['Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4'];
|
|
124753
|
+
//ic.refpdbHash['2FWU_A'] = ['NaCaExchanger_2fwuA_dog_n2'];
|
|
124754
|
+
//ic.refpdbHash['4JQI_A'] = ['BArrestin1_4jqiA_rat_n1'];
|
|
124706
124755
|
ic.refpdbHash['1NBQ_A'] = ['JAM1_1nbqA_human_Iset-n2'];
|
|
124707
|
-
ic.refpdbHash['1O75_A'] = ['TP47_1o75A_bacteria'];
|
|
124756
|
+
//ic.refpdbHash['1O75_A'] = ['TP47_1o75A_bacteria'];
|
|
124708
124757
|
ic.refpdbHash['7PHR_H'] = ['MHCIa_7phrH_human_C1'];
|
|
124709
|
-
ic.refpdbHash['2IIJ_A'] = ['ASF1A_2iijA_human'];
|
|
124758
|
+
//ic.refpdbHash['2IIJ_A'] = ['ASF1A_2iijA_human'];
|
|
124710
124759
|
ic.refpdbHash['4Z18_B'] = ['PDL1_4z18B_human_V-n1'];
|
|
124711
124760
|
ic.refpdbHash['1T6V_N'] = ['VNAR_1t6vN_shark_V'];
|
|
124712
|
-
ic.refpdbHash['2O6C_A'] = ['TP34_2o6cA_bacteria'];
|
|
124713
|
-
ic.refpdbHash['3KYS_C'] = ['TEAD1_3kysC_human'];
|
|
124761
|
+
//ic.refpdbHash['2O6C_A'] = ['TP34_2o6cA_bacteria'];
|
|
124762
|
+
//ic.refpdbHash['3KYS_C'] = ['TEAD1_3kysC_human'];
|
|
124714
124763
|
ic.refpdbHash['7PHR_L'] = ['B2Microglobulin_7phrL_human_C1'];
|
|
124715
124764
|
ic.refpdbHash['2AW2_A'] = ['BTLA_2aw2A_human_Iset'];
|
|
124716
|
-
ic.refpdbHash['1HL5_C'] = ['CuZnSuperoxideDismutase_1hl5C_human'];
|
|
124765
|
+
//ic.refpdbHash['1HL5_C'] = ['CuZnSuperoxideDismutase_1hl5C_human'];
|
|
124717
124766
|
ic.refpdbHash['1WF5_A'] = ['Sidekick2_1wf5A_human_FN3-n7'];
|
|
124718
124767
|
ic.refpdbHash['5J0B_B'] = ['Siglec3_5j0bB_human_C1-n2'];
|
|
124719
124768
|
ic.refpdbHash['1IFR_A'] = ['LaminAC_1ifrA_human'];
|
|
124720
124769
|
ic.refpdbHash['Q7Z7D3_A'] = ['VTCN1_Q7Z7D3_human_C1-n2'];
|
|
124721
124770
|
ic.refpdbHash['4ZQK_B'] = ['PD1_4zqkB_human_V'];
|
|
124722
124771
|
ic.refpdbHash['2DM3_A'] = ['Palladin_2dm3A_human_Iset-n1'];
|
|
124723
|
-
ic.refpdbHash['2ITE_A'] = ['IsdA_2iteA_bacteria'];
|
|
124724
|
-
ic.refpdbHash['1XAK_A'] = ['ORF7a_1xakA_virus'];
|
|
124772
|
+
//ic.refpdbHash['2ITE_A'] = ['IsdA_2iteA_bacteria'];
|
|
124773
|
+
//ic.refpdbHash['1XAK_A'] = ['ORF7a_1xakA_virus'];
|
|
124725
124774
|
ic.refpdbHash['4ZT1_A'] = ['ECadherin_4zt1A_human_n2'];
|
|
124726
|
-
ic.refpdbHash['1LMI_A'] = ['MPT63_1lmiA_bacteria'];
|
|
124775
|
+
//ic.refpdbHash['1LMI_A'] = ['MPT63_1lmiA_bacteria'];
|
|
124727
124776
|
ic.refpdbHash['1CD8_A'] = ['CD8a_1cd8A_human_V'];
|
|
124728
124777
|
ic.refpdbHash['3S97_C'] = ['Contactin1_3s97C_human_Iset-n2'];
|
|
124729
124778
|
ic.refpdbHash['1AXI_B'] = ['GHR_1axiB_human_C1-n1'];
|
|
@@ -124731,7 +124780,7 @@ class Dssp {
|
|
|
124731
124780
|
ic.refpdbHash['2EE2_A'] = ['Contactin1_2ee2A_human_FN3-n9'];
|
|
124732
124781
|
ic.refpdbHash['4UOW_M'] = ['Titin_4uowM_human_Iset-n152'];
|
|
124733
124782
|
ic.refpdbHash['6A15_A'] = ['CD19_6al5A_human-n1'];
|
|
124734
|
-
ic.refpdbHash['2QKI_D'] = ['C3_2qkiD_human_n1'];
|
|
124783
|
+
//ic.refpdbHash['2QKI_D'] = ['C3_2qkiD_human_n1'];
|
|
124735
124784
|
ic.refpdbHash['1YJD_C'] = ['CD28_1yjdC_human_V'];
|
|
124736
124785
|
ic.refpdbHash['6JXR_d'] = ['CD3d_6jxrd_human_C1'];
|
|
124737
124786
|
ic.refpdbHash['6JXR_f'] = ['CD3e_6jxrf_human_C1'];
|
|
@@ -124740,11 +124789,11 @@ class Dssp {
|
|
|
124740
124789
|
// assign Ig types
|
|
124741
124790
|
ic.ref2igtype = {};
|
|
124742
124791
|
|
|
124743
|
-
ic.ref2igtype['ASF1A_2iijA_human'] = 'IgFN3-like';
|
|
124792
|
+
//ic.ref2igtype['ASF1A_2iijA_human'] = 'IgFN3-like';
|
|
124744
124793
|
ic.ref2igtype['B2Microglobulin_7phrL_human_C1'] = 'IgC1';
|
|
124745
|
-
ic.ref2igtype['BArrestin1_4jqiA_rat_n1'] = 'IgFN3-like';
|
|
124794
|
+
//ic.ref2igtype['BArrestin1_4jqiA_rat_n1'] = 'IgFN3-like';
|
|
124746
124795
|
ic.ref2igtype['BTLA_2aw2A_human_Iset'] = 'IgI';
|
|
124747
|
-
ic.ref2igtype['C3_2qkiD_human_n1'] = 'IgFN3-like';
|
|
124796
|
+
//ic.ref2igtype['C3_2qkiD_human_n1'] = 'IgFN3-like';
|
|
124748
124797
|
ic.ref2igtype['CD19_6al5A_human-n1'] = 'CD19';
|
|
124749
124798
|
ic.ref2igtype['CD28_1yjdC_human_V'] = 'IgV';
|
|
124750
124799
|
ic.ref2igtype['CD2_1hnfA_human_C2-n2'] = 'IgC2';
|
|
@@ -124753,12 +124802,12 @@ class Dssp {
|
|
|
124753
124802
|
ic.ref2igtype['CD3e_6jxrf_human_C1'] = 'IgC1';
|
|
124754
124803
|
ic.ref2igtype['CD3g_6jxrg_human_C2'] = 'IgC2';
|
|
124755
124804
|
ic.ref2igtype['CD8a_1cd8A_human_V'] = 'IgV';
|
|
124756
|
-
ic.ref2igtype['CoAtomerGamma1_1r4xA_human'] = 'IgE';
|
|
124805
|
+
//ic.ref2igtype['CoAtomerGamma1_1r4xA_human'] = 'IgE';
|
|
124757
124806
|
ic.ref2igtype['Contactin1_2ee2A_human_FN3-n9'] = 'IgFN3';
|
|
124758
124807
|
ic.ref2igtype['Contactin1_3s97C_human_Iset-n2'] = 'IgI';
|
|
124759
|
-
ic.ref2igtype['CuZnSuperoxideDismutase_1hl5C_human'] = 'SOD';
|
|
124808
|
+
//ic.ref2igtype['CuZnSuperoxideDismutase_1hl5C_human'] = 'SOD';
|
|
124760
124809
|
ic.ref2igtype['ECadherin_4zt1A_human_n2'] = 'Cadherin';
|
|
124761
|
-
ic.ref2igtype['Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4'] = 'IgE';
|
|
124810
|
+
//ic.ref2igtype['Endo-1,4-BetaXylanase10A_1i8aA_bacteria_n4'] = 'IgE';
|
|
124762
124811
|
ic.ref2igtype['FAB-HEAVY_5esv_C1-n2'] = 'IgC1';
|
|
124763
124812
|
ic.ref2igtype['FAB-HEAVY_5esv_V-n1'] = 'IgV';
|
|
124764
124813
|
ic.ref2igtype['FAB-LIGHT_5esv_C1-n2'] = 'IgC1';
|
|
@@ -124769,28 +124818,28 @@ class Dssp {
|
|
|
124769
124818
|
ic.ref2igtype['IL6Rb_1bquB_human_FN3-n3'] = 'IgFN3';
|
|
124770
124819
|
ic.ref2igtype['InsulinR_8guyE_human_FN3-n1'] = 'IgFN3';
|
|
124771
124820
|
ic.ref2igtype['InsulinR_8guyE_human_FN3-n2'] = 'IgFN3';
|
|
124772
|
-
ic.ref2igtype['IsdA_2iteA_bacteria'] = 'IgE';
|
|
124821
|
+
//ic.ref2igtype['IsdA_2iteA_bacteria'] = 'IgE';
|
|
124773
124822
|
ic.ref2igtype['JAM1_1nbqA_human_Iset-n2'] = 'IgI';
|
|
124774
124823
|
ic.ref2igtype['LAG3_7tzgD_human_C1-n2'] = 'IgC1';
|
|
124775
124824
|
ic.ref2igtype['LAG3_7tzgD_human_V-n1'] = 'IgV';
|
|
124776
124825
|
ic.ref2igtype['LaminAC_1ifrA_human'] = 'Lamin';
|
|
124777
124826
|
ic.ref2igtype['MHCIa_7phrH_human_C1'] = 'IgC1';
|
|
124778
|
-
ic.ref2igtype['MPT63_1lmiA_bacteria'] = 'IgFN3-like';
|
|
124779
|
-
ic.ref2igtype['NaCaExchanger_2fwuA_dog_n2'] = 'IgFN3-like';
|
|
124780
|
-
ic.ref2igtype['NaKATPaseTransporterBeta_2zxeB_spurdogshark'] = 'IgE';
|
|
124781
|
-
ic.ref2igtype['ORF7a_1xakA_virus'] = 'ORF';
|
|
124827
|
+
//ic.ref2igtype['MPT63_1lmiA_bacteria'] = 'IgFN3-like';
|
|
124828
|
+
//ic.ref2igtype['NaCaExchanger_2fwuA_dog_n2'] = 'IgFN3-like';
|
|
124829
|
+
//ic.ref2igtype['NaKATPaseTransporterBeta_2zxeB_spurdogshark'] = 'IgE';
|
|
124830
|
+
//ic.ref2igtype['ORF7a_1xakA_virus'] = 'ORF';
|
|
124782
124831
|
ic.ref2igtype['PD1_4zqkB_human_V'] = 'IgV';
|
|
124783
124832
|
ic.ref2igtype['PDL1_4z18B_human_V-n1'] = 'IgV';
|
|
124784
124833
|
ic.ref2igtype['Palladin_2dm3A_human_Iset-n1'] = 'IgI';
|
|
124785
|
-
ic.ref2igtype['RBPJ_6py8C_human_Unk-n1'] = 'IgFN3-like';
|
|
124834
|
+
//ic.ref2igtype['RBPJ_6py8C_human_Unk-n1'] = 'IgFN3-like';
|
|
124786
124835
|
//ic.ref2igtype['RBPJ_6py8C_human_Unk-n2'] = 'IgFN3-like';
|
|
124787
124836
|
ic.ref2igtype['Sidekick2_1wf5A_human_FN3-n7'] = 'IgFN3';
|
|
124788
124837
|
ic.ref2igtype['Siglec3_5j0bB_human_C1-n2'] = 'IgC1';
|
|
124789
124838
|
ic.ref2igtype['TCRa_6jxrm_human_C1-n2'] = 'IgC1';
|
|
124790
124839
|
ic.ref2igtype['TCRa_6jxrm_human_V-n1'] = 'IgV';
|
|
124791
|
-
ic.ref2igtype['TEAD1_3kysC_human'] = 'IgFN3-like';
|
|
124792
|
-
ic.ref2igtype['TP34_2o6cA_bacteria'] = 'IgE';
|
|
124793
|
-
ic.ref2igtype['TP47_1o75A_bacteria'] = 'IgE';
|
|
124840
|
+
//ic.ref2igtype['TEAD1_3kysC_human'] = 'IgFN3-like';
|
|
124841
|
+
//ic.ref2igtype['TP34_2o6cA_bacteria'] = 'IgE';
|
|
124842
|
+
//ic.ref2igtype['TP47_1o75A_bacteria'] = 'IgE';
|
|
124794
124843
|
ic.ref2igtype['Titin_4uowM_human_Iset-n152'] = 'IgI';
|
|
124795
124844
|
ic.ref2igtype['VISTA_6oilA_human_V'] = 'IgV';
|
|
124796
124845
|
ic.ref2igtype['VNAR_1t6vN_shark_V'] = 'IgV';
|
|
@@ -126341,6 +126390,7 @@ class Dssp {
|
|
|
126341
126390
|
}
|
|
126342
126391
|
else {
|
|
126343
126392
|
let bBefore = false, bInRange= false, bAfter = false;
|
|
126393
|
+
/*
|
|
126344
126394
|
// 100, 100A
|
|
126345
126395
|
if(parseInt(currResi) == parseInt(strandArray[strandCnt].startResi) && currResi != strandArray[strandCnt].startResi) {
|
|
126346
126396
|
bBefore = currResi < strandArray[strandCnt].startResi;
|
|
@@ -126356,6 +126406,14 @@ class Dssp {
|
|
|
126356
126406
|
else {
|
|
126357
126407
|
bAfter = parseInt(currResi) > parseInt(strandArray[strandCnt].endResi);
|
|
126358
126408
|
}
|
|
126409
|
+
*/
|
|
126410
|
+
|
|
126411
|
+
let currResiNcbi = ic.ParserUtilsCls.getResiNCBI(chnid, currResi);
|
|
126412
|
+
let startResiNcbi = ic.ParserUtilsCls.getResiNCBI(chnid, strandArray[strandCnt].startResi);
|
|
126413
|
+
let endResiNcbi = ic.ParserUtilsCls.getResiNCBI(chnid, strandArray[strandCnt].endResi);
|
|
126414
|
+
|
|
126415
|
+
bBefore = parseInt(currResiNcbi) < parseInt(startResiNcbi);
|
|
126416
|
+
bAfter = parseInt(currResiNcbi) > parseInt(endResiNcbi);
|
|
126359
126417
|
|
|
126360
126418
|
bInRange = (!bBefore && !bAfter) ? true : false;
|
|
126361
126419
|
|
|
@@ -132174,8 +132232,9 @@ class ShareLink {
|
|
|
132174
132232
|
}
|
|
132175
132233
|
|
|
132176
132234
|
let paraHash = {};
|
|
132177
|
-
|
|
132178
|
-
|
|
132235
|
+
/*
|
|
132236
|
+
for(let key in me.cfg) {
|
|
132237
|
+
let value = me.cfg[key];
|
|
132179
132238
|
//if(key === 'inpara' || ic.key === 'command' || value === undefined) continue;
|
|
132180
132239
|
if(key === 'inpara' || key === 'command' || key === 'usepdbnum'
|
|
132181
132240
|
|| key === 'date' || key === 'v' || value === undefined) continue;
|
|
@@ -132225,7 +132284,7 @@ class ShareLink {
|
|
|
132225
132284
|
paraHash[key] = value;
|
|
132226
132285
|
}
|
|
132227
132286
|
}
|
|
132228
|
-
|
|
132287
|
+
*/
|
|
132229
132288
|
if(ic.bAfMem) {
|
|
132230
132289
|
paraHash['afmem'] = 'on';
|
|
132231
132290
|
}
|
|
@@ -132247,6 +132306,12 @@ class ShareLink {
|
|
|
132247
132306
|
if(key_value.length == 2) paraHash[key_value[0]] = key_value[1];
|
|
132248
132307
|
}
|
|
132249
132308
|
|
|
132309
|
+
// BLAST RID is usually added at the end of the URL. It should be included.
|
|
132310
|
+
if(me.cfg.rid && !paraHash['RID']) {
|
|
132311
|
+
url += 'RID=' + me.cfg.rid + '&';
|
|
132312
|
+
}
|
|
132313
|
+
|
|
132314
|
+
// sometimes idname is not part of the URL
|
|
132250
132315
|
if(me.cfg.idname && !paraHash[me.cfg.idname]) { // somehow it is not included
|
|
132251
132316
|
url += me.cfg.idname + '=' + me.cfg.idvalue + '&';
|
|
132252
132317
|
}
|
|
@@ -135360,7 +135425,7 @@ class iCn3DUI {
|
|
|
135360
135425
|
//even when multiple iCn3D viewers are shown together.
|
|
135361
135426
|
this.pre = this.cfg.divid + "_";
|
|
135362
135427
|
|
|
135363
|
-
this.REVISION = '3.
|
|
135428
|
+
this.REVISION = '3.48.0';
|
|
135364
135429
|
|
|
135365
135430
|
// In nodejs, iCn3D defines "window = {navigator: {}}", and added window = {navigator: {}, "__THREE__":"177"}
|
|
135366
135431
|
this.bNode = (Object.keys(window).length < 3) ? true : false;
|
|
@@ -135562,14 +135627,8 @@ iCn3DUI.prototype.show3DStructure = async function(pdbStr) { let me = this;
|
|
|
135562
135627
|
let domainidArray = me.cfg.matchedchains.split(',');
|
|
135563
135628
|
let chainidArray = [];
|
|
135564
135629
|
for(let i = 0, il = domainidArray.length; i < il; ++i) {
|
|
135565
|
-
let
|
|
135566
|
-
|
|
135567
|
-
if(!isNaN(lastId)) { // lastId is domain id
|
|
135568
|
-
chainidArray.push(domainidArray[i].substr(0, pos));
|
|
135569
|
-
}
|
|
135570
|
-
else {
|
|
135571
|
-
chainidArray.push(domainidArray[i]);
|
|
135572
|
-
}
|
|
135630
|
+
let idArray = domainidArray[i].split('_');
|
|
135631
|
+
chainidArray.push(idArray[0] + '_' + idArray[1]);
|
|
135573
135632
|
}
|
|
135574
135633
|
|
|
135575
135634
|
// get the matched structures, do not include the template
|
|
@@ -135798,6 +135857,9 @@ iCn3DUI.prototype.show3DStructure = async function(pdbStr) { let me = this;
|
|
|
135798
135857
|
if(me.cfg.align.indexOf('185055,') != -1) {
|
|
135799
135858
|
me.cfg.align = me.cfg.align.replace('185055,', '199731,'); //the mmdbid of PDB 6M17 was changed from 185055 to 199731
|
|
135800
135859
|
}
|
|
135860
|
+
else if(me.cfg.align == '54567,1,12161,1,2,1') {
|
|
135861
|
+
me.cfg.align = '3HHR,1BQU'; // somehow the VAST+ data for this published alignment were not there anymore
|
|
135862
|
+
}
|
|
135801
135863
|
|
|
135802
135864
|
let alignArray = me.cfg.align.split(','); // e.g., 6 IDs: 103701,1,4,68563,1,167 [mmdbid1,biounit,molecule,mmdbid2,biounit,molecule], or 2IDs: 103701,68563 [mmdbid1,mmdbid2]
|
|
135803
135865
|
|