From eb6c361b473088e53e7d0bb6a66ade646bcd4bbe Mon Sep 17 00:00:00 2001 From: Michal Ziemski Date: Mon, 22 Feb 2021 16:34:55 +0100 Subject: [PATCH] FIX: corrected LiteMol js file (#21) --- q2_protein_pca/assets/loadings/pdb-litemol/pdb.litemol.min.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/q2_protein_pca/assets/loadings/pdb-litemol/pdb.litemol.min.js b/q2_protein_pca/assets/loadings/pdb-litemol/pdb.litemol.min.js index 3bc9909..fa609f1 100644 --- a/q2_protein_pca/assets/loadings/pdb-litemol/pdb.litemol.min.js +++ b/q2_protein_pca/assets/loadings/pdb-litemol/pdb.litemol.min.js @@ -59,5 +59,5 @@ return n}function h(e,t,r){for(var n=e.atoms,i=(n.count,n.x),o=n.y,a=n.z,s=[Numb for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e};!function(e){var t;!function(e){e.VERSION={number:"1.2.10",date:"Dec 13 2016"}}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(t){var r;!function(t){t.React=e,t.ReactDOM=f;var r;!function(){}(r=t.Controls||(t.Controls={})),r.ChromePickerHelper=p.ChromePicker}(r=t.Plugin||(t.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){function n(e){return 13===e.keyCode||13===e.charCode?!0:!1}function i(e){return t.React.createElement("div",{className:"lm-control-row lm-options-group",title:e.title},t.React.createElement("span",null,e.label),t.React.createElement("div",null,t.React.createElement(r.TextBox,{placeholder:e.placeholder,onChange:e.onChange,value:e.value,onKeyPress:function(t){n(t)&&e.onEnter&&e.onEnter.call(null,t)}})))}var o=e.Bootstrap.Utils.shallowEqual,a=function(e){function t(){return e.apply(this,arguments)||this}return c(t,e),t.prototype.shouldComponentUpdate=function(e,t){return!o(this.props,e)||!o(this.state,t)},t}(t.React.Component);r.Pure=a;var s=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.render=function(){var e=this.props,r="lm-btn";e.size&&"normal"!==e.size&&(r+=" lm-btn-"+e.size),e.asBlock&&(r+=" lm-btn-block"),r+=e.disabled?" lm-btn-"+(e.disabledStyle||e.style||"default"):e.active?" lm-btn-"+(e.activeStyle||e.style||"default"):" lm-btn-"+(e.style||"default"),e.customClass&&(r+=" "+e.customClass);var n=void 0;return e.icon&&(n=e.active&&e.activeIcon?t.React.createElement("span",{className:"lm-icon lm-icon-"+e.activeIcon}):t.React.createElement("span",{className:"lm-icon lm-icon-"+e.icon})),t.React.createElement("button",{title:e.title,className:r,style:e.customStyle,disabled:e.disabled,onClick:function(t){e.onClick.call(null,t),t.target.blur()}},n,e.children)},r}(a);r.Button=s,r.TextBox=function(e){return t.React.createElement("input",{type:"text",className:"lm-form-control",placeholder:e.placeholder,value:e.value,defaultValue:e.defaultValue,onBlur:function(t){e.onBlur&&e.onBlur.call(null,t)},onChange:function(t){return e.onChange.call(null,t.target.value)},onKeyPress:e.onKeyPress})},r.isEnter=n,r.TextBoxGroup=i,r.CommitButton=function(e){return t.React.createElement("div",{style:{marginTop:"1px"}},t.React.createElement("button",{onClick:function(t){e.action(),t.target.blur()},className:"lm-btn lm-btn-block lm-btn-commit lm-btn-commit-"+(e.isOn?"on":"off"),disabled:!e.isOn,title:e.title},t.React.createElement("span",{className:"lm-icon lm-icon-"+(e.isOn?"ok":"cross")}),e.isOn?t.React.createElement("b",null,e.on):e.off?e.off:e.on))},r.Toggle=function(e){return t.React.createElement("div",{className:"lm-control-row lm-toggle-button",title:e.title},t.React.createElement("span",null,e.label),t.React.createElement("div",null,t.React.createElement("button",{onClick:function(t){e.onChange.call(null,!e.value),t.target.blur()}},t.React.createElement("span",{className:"lm-icon lm-icon-"+(e.value?"ok":"off")})," ",e.value?"On":"Off")))},r.ControlGroupExpander=function(e){return t.React.createElement(r.Button,{style:"link",title:(e.isExpanded?"Less":"More")+" options",onClick:function(){return e.onChange.call(null,!e.isExpanded)},icon:e.isExpanded?"minus":"plus",customClass:"lm-conrol-group-expander"})},r.RowText=function(e){return t.React.createElement("div",{className:"lm-control-row lm-row-text",title:e.title},t.React.createElement("span",null,e.label),t.React.createElement("div",null,e.value))},r.HelpBox=function(e){return t.React.createElement("div",{className:"lm-help-row"},t.React.createElement("span",null,e.title),t.React.createElement("div",null,e.content))}}(r=t.Controls||(t.Controls={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t;!function(t){function r(r){var n=r.caption?r.caption:function(e){return e};return e.React.createElement("div",{className:"lm-control-row lm-options-group",title:r.title},e.React.createElement("span",null,r.label),e.React.createElement("div",null,e.React.createElement(t.OptionsBox,{options:r.options,caption:n,current:r.current,onChange:r.onChange})))}var n=function(t){function r(){var e=t.apply(this,arguments)||this;return e.current=void 0,e}return c(r,t),r.prototype.get=function(e){var t=this.props.options;return"undefined"!=typeof t.get?t.get(e):t[e]},r.prototype.render=function(){var t=this,r=this.props.caption,n=this.props.options.indexOf(this.props.current);return 0>n&&(n=0),e.React.createElement("select",{title:this.props.title,value:n.toString(),className:"lm-form-control",onChange:function(e){t.current=t.get(+e.target.value),t.props.onChange(t.current)}},this.props.options.map(function(t,i){return e.React.createElement("option",{key:i,value:""+i,selected:i===n},r(t))}))},r}(e.React.Component);t.OptionsBox=n,t.OptionsGroup=r}(t=e.Controls||(e.Controls={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t;!function(t){var r=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.header=function(){var r=this,n=this.props.isExpanded,i=this.props.title?this.props.title:this.props.header,o=n?"collapse":"expand",a=e.React.createElement("div",{className:"lm-panel-description lm-panel-description-"+(this.props.topRightAction?"with-action":"standalone"),onClick:function(){return r.props.onExpand.call(null,!r.props.isExpanded)}},e.React.createElement("span",{className:"lm-icon lm-icon-info"}),e.React.createElement("div",{className:"lm-panel-description-content"},e.React.createElement("span",{className:"lm-icon lm-icon-info"}),this.props.description));return e.React.createElement("div",{className:"lm-panel-header"},a,this.props.topRightAction,e.React.createElement("div",{className:"lm-panel-expander-wrapper"},e.React.createElement(t.Button,{title:i,onClick:function(){return r.props.onExpand.call(null,!r.props.isExpanded)},icon:o,customClass:"lm-panel-expander",style:"link"},this.props.badge,this.props.header)))},n.prototype.render=function(){var t="lm-panel"+(this.props.className?" "+this.props.className:"")+(this.props.isExpanded?" lm-panel-expanded":" lm-panel-collapsed");return e.React.createElement("div",{className:t},this.header(),e.React.createElement("div",{className:"lm-panel-body",style:{display:this.props.isExpanded?"block":"none"}},this.props.children))},n}(e.React.Component);t.Panel=r,t.ExpandableGroup=function(t){return e.React.createElement("div",{className:"lm-control-group"},t.select,t.colorStripe?e.React.createElement("div",{className:"lm-expandable-group-color-stripe",style:{backgroundColor:"rgb("+(255*t.colorStripe.r|0)+", "+(255*t.colorStripe.g|0)+", "+(255*t.colorStripe.b|0)+")"}}):void 0,t.options.length>0?t.expander:void 0,t.options.length>0?e.React.createElement("div",{style:{display:t.isExpanded?"block":"none"},className:"lm-control-subgroup"},t.options):void 0)}}(t=e.Controls||(e.Controls={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t;!function(t){var r=function(r){function n(){var e=r.apply(this,arguments)||this;return e.state={value:"0"},e.firedValue=0/0,e}return c(n,r),n.prototype.componentWillMount=function(){this.setState({value:""+this.props.value})},n.prototype.componentWillReceiveProps=function(e){this.setState({value:""+e.value})},n.prototype.componentDidMount=function(){var e=this.refs.slider;e.value!==this.state.value&&(e.value=this.state.value)},n.prototype.updateValue=function(e){var t=+e;tthis.props.max&&(t=this.props.max,e=""+t),this.setState({value:e})},n.prototype.fire=function(){var e=+this.state.value;isNaN(e)&&(e=this.props.value),e!==this.props.value&&this.firedValue!==e&&(this.firedValue=e,this.props.onChange.call(null,e))},n.prototype.render=function(){var r=this,n=this.props.step;return void 0===n&&(n=1),e.React.createElement("div",{className:"lm-control-row lm-slider",title:this.props.title},e.React.createElement("span",null,this.props.label),e.React.createElement("div",null,e.React.createElement("div",null,e.React.createElement("div",null,e.React.createElement("form",{noValidate:!0},e.React.createElement("input",{type:"range",min:this.props.min,max:this.props.max,value:this.state.value,ref:"slider",step:n,onInput:function(e){var t=e.target.value;r.setState({value:t})},onSelect:function(e){r.fire(),e.target.blur()},onBlur:function(){return r.fire()},onTouchEnd:function(){return r.fire()}})))),e.React.createElement("div",null,e.React.createElement(t.TextBox,{value:this.state.value,onChange:function(e){return r.updateValue(e)},onBlur:function(){return r.fire()},onKeyPress:function(e){t.isEnter(e)&&r.fire()}}))))},n}(e.React.Component);t.Slider=r}(t=e.Controls||(e.Controls={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){var n=e.Bootstrap.Utils.shallowEqual,i=function(e){function i(){return e.apply(this,arguments)||this}return c(i,e),i.prototype.shouldComponentUpdate=function(e){return!n(this.props,e)},i.prototype.render=function(){var e=this,n=this.props.color,i=n.r,o=void 0===i?1:i,a=n.g,s=void 0===a?1:a,u=n.b,c=void 0===u?1:u,l={a:1,r:255*o,g:255*s,b:255*c},h=function(t){return e.props.onChange({r:t.rgb.r/255,g:t.rgb.g/255,b:t.rgb.b/255})},d=t.React.createElement(r.ChromePickerHelper,{color:l,onChangeComplete:h});return t.React.createElement("div",{className:"lm-color-picker"},d)},i}(t.React.Component);r.ColorPicker=i;var o=function(e){function n(){var t=e.apply(this,arguments)||this;return t.state={isExpanded:!1},t}return c(n,e),n.prototype.render=function(){var e=this,n=this.state.isExpanded?t.React.createElement(i,m({},this.props)):void 0,o=this.props.color,a=this.props.position?this.props.position:"above";return t.React.createElement("div",{className:"lm-control-row lm-toggle-color-picker lm-toggle-color-picker-"+a,onMouseLeave:function(){return e.setState({isExpanded:!1})}},t.React.createElement("span",null,this.props.label),t.React.createElement("div",null,t.React.createElement(r.Button,{onClick:function(){e.setState({isExpanded:!e.state.isExpanded})},asBlock:!0,customStyle:{backgroundColor:"rgb("+(255*o.r|0)+", "+(255*o.g|0)+", "+(255*o.b|0)+")",color:"rgb("+(255*(1-o.r)|0)+","+(255*(1-o.g)|0)+","+(255*(1-o.b)|0)+")"}})),n)},n}(t.React.Component);r.ToggleColorPicker=o}(r=t.Controls||(t.Controls={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t;!function(t){function r(r){return e.React.createElement("div",{className:"lm-control-row"},e.React.createElement(t.TextBox,{placeholder:"Enter query...",onChange:r.onChange,value:r.value,onKeyPress:function(e){t.isEnter(e)&&r.onEnter&&r.onEnter.call(null,e)}}))}t.QueryEditor=r}(t=e.Controls||(e.Controls={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){var n=e.Bootstrap.Utils.shallowEqual,i=function(t){function r(){return t.apply(this,arguments)||this}return c(r,t),r.prototype.update=function(t){var r=e.Bootstrap.Utils.merge(this.props.state,t);r!==this.props.state&&this.props.onChange(r)},r.prototype.shouldComponentUpdate=function(e,t){return!n(this.props,e)||!n(this.state,t)},r}(t.React.Component);r.PureView=i;var o=function(e){function t(){var t=e.apply(this,arguments)||this;return t.subs=[],t}return c(t,e),t.prototype.subscribe=function(e,t){var r=e.subscribe(t);return this.subs.push(r),r},t.prototype.unsubscribe=function(e){for(var t=this.subs.indexOf(e),r=t;r=0?i+=" lm-layout-hide-top":s.push(this.renderTarget(c)),c=a[n.Right],o.hideControls||!c.components.length||u.indexOf(n.Right)>=0?i+=" lm-layout-hide-right":s.push(this.renderTarget(c)),c=a[n.Bottom],o.hideControls||!c.components.length||u.indexOf(n.Bottom)>=0?i+=" lm-layout-hide-bottom":s.push(this.renderTarget(c)),c=a[n.Left],o.hideControls||!c.components.length||u.indexOf(n.Left)>=0?i+=" lm-layout-hide-left":s.push(this.renderTarget(c));var l=a[n.Root].components.map(function(e){return t.React.createElement(e.view,{controller:e.controller})});return t.React.createElement("div",{className:"lm-plugin"},t.React.createElement("div",{className:"lm-plugin-content "+r},t.React.createElement("div",{className:i},s,l)))},i}(r.View);r.Layout=i}(r=t.Views||(t.Views={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){var n;!function(n){var i=function(e){function n(){return e.apply(this,arguments)||this}return c(n,e),Object.defineProperty(n.prototype,"params",{get:function(){return this.controller.latestState.params},enumerable:!0,configurable:!0}),n.prototype.updateParams=function(e){this.controller.updateParams(e)},n.prototype.autoUpdateParams=function(e){this.controller.autoUpdateParams(e)},n.prototype.getPersistentState=function(e,t){return this.controller.context.transforms.getPersistentState(this.controller.transformer,this.transformSourceEntity,e,t)},n.prototype.setPersistentState=function(e,t){this.controller.context.transforms.setPersistentState(this.controller.transformer,this.transformSourceEntity,e,t)&&this.forceUpdate()},Object.defineProperty(n.prototype,"transformSourceEntity",{get:function(){return this.isUpdate?this.controller.entity.parent:this.controller.entity},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"isUpdate",{get:function(){return this.controller.isUpdate},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"canApply",{get:function(){var e=this.controller.latestState,t=e.canApply&&(!this.isUpdate||e.isDirty)&&!e.isBusy;return t&&this.isUpdate&&e.parametersAutoUpdating?!1:t},enumerable:!0,configurable:!0}),n.prototype.applyEnter=function(e){this.canApply&&(e.target.blur(),this.controller.apply())},n.prototype.render=function(){var e=this,n=(this.controller.context,this.isUpdate),i=this.controller.latestState,o=i.issues,a=o&&o.length,s=i.isBusy,u=s?"Working...":n&&!a?"Nothing to update":o?o[0]:void 0,c=this.controller.transformer.info,l=t.React.createElement(t.Controls.CommitButton,{action:function(){return e.controller.apply()},isOn:this.canApply,title:o&&o.length?o[0]:this.canApply?n?"An update will remove all child nodes.":void 0:void 0,on:n?"Update":this.props.isAction?"Apply":"Add",off:u}),h=this.canApply||a,d=this.props.customHeader?this.props.customHeader:(n?"Update ":"")+c.name,p=this.getPersistentState("isExpanded",!0);return t.React.createElement("div",{className:"lm-transformer-wrapper"},t.React.createElement(t.Controls.Panel,{header:d,badge:this.props.hideBadge?void 0:t.React.createElement(r.Entity.Badge,{type:c.to[0].info}),className:"lm-control lm-transformer lm-panel-"+c.to[0].info.typeClass,key:c.id,title:c.description,isExpanded:p,onExpand:function(t){e.setPersistentState("isExpanded",t)},description:this.controller.transformer.info.description,topRightAction:this.props.showVisibilityIcon?t.React.createElement(r.Entity.VisibilityControl,{entity:this.controller.entity}):void 0},this.renderControls(),h?l:void 0))},n}(r.View);n.ControllerBase=i;var o=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){return t.React.createElement("div",null)},r}(n.ControllerBase);n.Empty=o;var a=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.render=function(){var e=this.controller.context,r=e.plugin,n=this.controller.latestState,i=n.transforms,o=i.map(function(e){var n=r.getTransformerInfo(e.transformer).view;return t.React.createElement(n,{controller:e,key:e.transformer.info.id+"-"+e.entity.id})});if(n.update){var a=r.getTransformerInfo(n.update.transformer).view;o.push(t.React.createElement(a,{controller:n.update,key:n.update.transformer.info.id+"-"+n.update.entity.id}))}return t.React.createElement("div",{className:"lm-transform-view"},o)},r}(r.View);n.View=a,n.TransparencyControl=function(e){var r=e.definition.alpha;return t.React.createElement(t.Controls.Slider,{label:"Opacity",onChange:function(t){return e.onChange({alpha:t,writeDepth:e.definition.writeDepth})},min:0,max:1,step:.01,value:r})};var s=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.componentWillMount=function(){var t=this;r.prototype.componentWillMount.call(this),this.subscribe(e.Bootstrap.Event.Tree.NodeUpdated.getStream(this.controller.context),function(e){var r=t.controller.latestState.controller,n=r&&r.entity;e.data===n&&t.forceUpdate()})},n.prototype.render=function(){var e=this.controller.latestState.controller;if(!e)return t.React.createElement("div",{className:"lm-empty-control"});var r=this.controller.context,n=r.plugin,i=n.getTransformerInfo(e.transformer).view;return i?t.React.createElement(i,{controller:e,key:e.transformer.info.id+"-"+e.entity.id,customHeader:this.controller.header,hideBadge:!0,showVisibilityIcon:!0}):(console.warn("Count not find view for updater ("+e.transformer.info.id+"), please register it."),t.React.createElement("div",{className:"lm-empty-control"}))},n}(r.View);n.Updater=s;var u=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.render=function(){var e=this.controller.latestState.controller;if(!e)return t.React.createElement("div",{className:"lm-empty-control"});var r=this.controller.context,n=r.plugin,i=n.getTransformerInfo(e.transformer).view;return i?t.React.createElement(i,{controller:e,key:e.transformer.info.id+"-"+e.entity.id,customHeader:this.controller.header,hideBadge:!0,isAction:!0}):(console.warn("Count not find view for updater ("+e.transformer.info.id+"), please register it."),t.React.createElement("div",{className:"lm-empty-control"}))},r}(r.View);n.Action=u}(n=r.Transform||(r.Transform={}))}(r=t.Views||(t.Views={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){var n;!function(r){var n;!function(n){var i=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.renderControls=function(){var r=this,n=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:e.Bootstrap.Entity.Data.Types,caption:function(e){return e},current:n.type,onChange:function(t){return r.updateParams({type:t,responseCompression:e.Bootstrap.Utils.DataCompressionMethod.None})},label:"Type"}),"Binary"===n.type?t.React.createElement(t.Controls.OptionsGroup,{options:["None","Gzip"],caption:function(e){return e},current:n.responseCompression===e.Bootstrap.Utils.DataCompressionMethod.Gzip?"Gzip":"None",onChange:function(t){return r.updateParams({responseCompression:"None"===t?e.Bootstrap.Utils.DataCompressionMethod.None:e.Bootstrap.Utils.DataCompressionMethod.Gzip})},label:"Compression",title:'Specify the compression of the data. Usually only appliable if you downloading "raw" files.'}):void 0,t.React.createElement(t.Controls.TextBoxGroup,{value:n.url,onChange:function(e){return r.updateParams({url:e})},label:"URL",onEnter:function(e){return r.applyEnter(e)},placeholder:"Enter URL..."}))},n}(r.ControllerBase);n.Download=i;var o=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.renderControls=function(){var r=this,n=this.params,i=this.controller.latestState;return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:e.Bootstrap.Entity.Data.Types,caption:function(e){return e},current:n.type,onChange:function(e){return r.updateParams({type:e})},label:"Type"}),t.React.createElement("div",{className:"lm-btn lm-btn-block lm-btn-action lm-loader-lm-btn-file",style:{marginTop:"1px"}},n.file?n.file.name:"Select a file..."," ",t.React.createElement("input",{disabled:i.isBusy,type:"file",onChange:function(e){return r.updateParams({file:e.target.files[0]})},multiple:!1})))},n}(r.ControllerBase);n.OpenFile=o;var a=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.TextBoxGroup,{value:r.id,onChange:function(t){return e.updateParams({id:t})},label:"Id",onEnter:function(t){return e.applyEnter(t)},placeholder:"Enter PDB id..."}))},r}(r.ControllerBase);n.WithIdField=a;var s=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.TextBoxGroup,{value:r.id,onChange:function(t){return e.updateParams({id:t})},label:"URL",onEnter:function(t){return e.applyEnter(t)},placeholder:"Enter URL..."}))},r}(r.ControllerBase);n.WithUrlIdField=s}(n=r.Data||(r.Data={}))}(n=r.Transform||(r.Transform={}))}(r=t.Views||(t.Views={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){var n;!function(r){var n;!function(n){var i=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.renderControls=function(){var r=this,n=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:e.Core.Formats.Molecule.SupportedFormats.All,caption:function(e){return e.name},current:n.format,onChange:function(e){return r.updateParams({format:e})},label:"Format"}))},n}(r.ControllerBase);n.CreateFromData=i;var o=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.renderControls=function(){var r=this,n=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:e.Core.Formats.Molecule.SupportedFormats.All,caption:function(e){return e.name},current:n.format,onChange:function(e){return r.updateParams({format:e})},label:"Format"}),t.React.createElement(t.Controls.TextBoxGroup,{value:n.id,onChange:function(e){return r.updateParams({id:e})},label:"URL",onEnter:function(e){return r.applyEnter(e)},placeholder:"Enter url..."}))},n}(r.ControllerBase);n.DownloadFromUrl=o;var a=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.renderControls=function(){var r=this,n=this.params,i=this.controller.latestState,o=e.Core.Formats.FormatInfo.formatFileFilters(e.Core.Formats.Molecule.SupportedFormats.All);return t.React.createElement("div",null,t.React.createElement("div",{className:"lm-btn lm-btn-block lm-btn-action lm-loader-lm-btn-file",style:{marginTop:"1px"}},n.file?n.file.name:"Select a file..."," ",t.React.createElement("input",{disabled:i.isBusy,type:"file",accept:o,onChange:function(e){return r.updateParams({file:e.target.files[0]})},multiple:!1})))},n}(r.ControllerBase);n.OpenFile=a;var s=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.TextBoxGroup,{value:r.id,onChange:function(t){return e.updateParams({id:t})},label:"Id",onEnter:function(t){return e.applyEnter(t)},placeholder:"Enter pdb id..."}),t.React.createElement(t.Controls.TextBoxGroup,{value:r.server,onChange:function(t){return e.updateParams({server:t})},label:"Server",onEnter:function(t){return e.applyEnter(t)},placeholder:"Server url..."}))},r}(r.ControllerBase);n.InitCoordinateStreaming=s;var u=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=(this.params,this.transformSourceEntity),n=r.props.dictionary.dataBlocks.map(function(e,t){return{b:e.header,i:t}});return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:n,caption:function(e){return e.b},current:n[this.params.blockIndex],onChange:function(t){return e.updateParams({blockIndex:t.i})},label:"Source"}))},r}(r.ControllerBase);n.CreateFromMmCif=u;var l=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.transformSourceEntity.props.molecule.models.length;return t.React.createElement("div",null,t.React.createElement(t.Controls.Slider,{label:"Index",onChange:function(t){return e.updateParams({modelIndex:t-1})},min:1,max:r,step:1,value:(0|this.params.modelIndex)+1,title:"Index of the model."}))},r}(r.ControllerBase);n.CreateModel=l;var h=function(r){function n(){return r.apply(this,arguments)||this}return c(n,r),n.prototype.renderControls=function(){var r=this,n=this.params,i=e.Bootstrap.Utils.Molecule.findModel(this.transformSourceEntity),o=i.props.model.assemblyInfo;if(!o)return void 0;var a=o.assemblies.map(function(e){return e.name});return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:a,current:n.name,onChange:function(e){return r.updateParams({name:e})},label:"Name"}))},n}(r.ControllerBase);n.CreateAssembly=h;var d=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.params,n=["Mates","Interaction"];return t.React.createElement("div",null,t.React.createElement(t.Controls.OptionsGroup,{options:n,current:r.type,onChange:function(t){return e.updateParams({type:t})},label:"Type",title:"Mates: copies whole asymetric unit. Interaction: Includes only residues that are no more than `radius` from the asymetric unit."}),t.React.createElement(t.Controls.Slider,{label:"Radius",onChange:function(t){return e.updateParams({radius:t})},min:0,max:25,step:.1,value:r.radius,title:"Interaction radius."}))},r}(r.ControllerBase);n.CreateSymmetryMates=d;var p=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.TextBoxGroup,{value:r.name,onChange:function(t){return e.updateParams({name:t})},label:"Name",onEnter:function(t){return e.applyEnter(t)},placeholder:"Optional name..."}),t.React.createElement(t.Controls.QueryEditor,{value:r.queryString,onChange:function(t){return e.updateParams({queryString:t})},onEnter:function(t){return e.applyEnter(t)}}))},r}(r.ControllerBase);n.CreateSelection=p;var f=function(e){function r(){return e.apply(this,arguments)||this}return c(r,e),r.prototype.renderControls=function(){var e=this,r=this.params;return t.React.createElement("div",null,t.React.createElement(t.Controls.Toggle,{onChange:function(t){return e.updateParams({polymer:t})},value:r.polymer,label:"Polymer"}),t.React.createElement(t.Controls.Toggle,{onChange:function(t){return e.updateParams({het:t})},value:r.het,label:"HET"}),t.React.createElement(t.Controls.Toggle,{onChange:function(t){return e.updateParams({water:t})},value:r.water,label:"Water"}))},r}(r.ControllerBase);n.CreateMacromoleculeVisual=f;var m=function(n){function i(){return n.apply(this,arguments)||this}return c(i,n),i.prototype.detail=function(){var r=this,n=this.params.style.params;return[t.React.createElement(t.Controls.OptionsGroup,{options:e.Bootstrap.Visualization.Molecule.DetailTypes,caption:function(e){return e},current:n.detail,onChange:function(e){return r.controller.updateStyleParams({detail:e})},label:"Detail"})]},i.prototype.ballsAndSticks=function(){var r=this,n=this.params.style.params,i=[];return i.push(t.React.createElement(t.Controls.Toggle,{title:"Scale atoms using their VDW radius.",onChange:function(e){return r.controller.updateStyleParams({useVDW:e})},value:n.useVDW,label:"VDW"})),n.useVDW?i.push(t.React.createElement(t.Controls.Slider,{label:"Scale",onChange:function(e){return r.controller.updateStyleParams({vdwScaling:e})},min:.1,max:1,step:.01,value:n.vdwScaling,title:"VDW scale factor."})):i.push(t.React.createElement(t.Controls.Slider,{label:"Atom Rds",onChange:function(e){return r.controller.updateStyleParams({atomRadius:e})},min:.05,max:2,step:.01,value:n.atomRadius,title:"Atom Radius"})),i.push(t.React.createElement(t.Controls.Slider,{label:"Bond Rds",onChange:function(e){return r.controller.updateStyleParams({bondRadius:e})},min:.05,max:1,step:.01,value:n.bondRadius,title:"Bond Radius"})),i.push(t.React.createElement(t.Controls.OptionsGroup,{options:e.Bootstrap.Visualization.Molecule.DetailTypes,caption:function(e){return e},current:n.detail,onChange:function(e){return r.controller.updateStyleParams({detail:e})},label:"Detail"})),i},i.prototype.surface=function(){var e=this,r=this.params.style.params;return[t.React.createElement(t.Controls.Slider,{label:"Probe Radius",onChange:function(t){return e.controller.updateStyleParams({probeRadius:t})},min:0,max:6,step:.1,value:r.probeRadius}),t.React.createElement(t.Controls.Slider,{label:"Smoothing",onChange:function(t){return e.controller.updateStyleParams({smoothing:t})},min:0,max:10,step:1,value:r.smoothing,title:"Number of laplacian smoothing itrations."}),t.React.createElement(t.Controls.Slider,{label:"Detail",onChange:function(t){return e.controller.updateStyleParams({density:t})},min:.3,max:3,step:.1,value:r.density,title:"Determines the size of a grid cell."}),t.React.createElement(t.Controls.Toggle,{onChange:function(t){return e.controller.updateStyleParams({isWireframe:t})},value:r.isWireframe,label:"Wireframe"})]},i.prototype.createColors=function(){var e=this,n=this.params.style.theme,i="BallsAndSticks"===this.params.style.type,o=n.colors.filter(function(e,t){return i?!0:"Bond"!==t}).map(function(r,n){return t.React.createElement(t.Controls.ToggleColorPicker,{key:n,label:n,color:r,onChange:function(t){return e.controller.updateThemeColor(n,t)}})}).toArray();return o.push(t.React.createElement(r.TransparencyControl,{definition:n.transparency,onChange:function(t){return e.controller.updateThemeTransparency(t) }})),o},i.prototype.renderControls=function(){var r,n=this,i=this.params;switch(i.style.type){case"Surface":r=this.surface();break;case"BallsAndSticks":r=this.ballsAndSticks();break;default:r=this.detail()}var o=function(t){return e.Bootstrap.Visualization.Molecule.TypeDescriptions[t]},a=this.getPersistentState("showTypeOptions",!1),s=this.getPersistentState("showThemeOptions",!1);return t.React.createElement("div",null,t.React.createElement(t.Controls.ExpandableGroup,{select:t.React.createElement(t.Controls.OptionsGroup,{options:e.Bootstrap.Visualization.Molecule.Types,caption:function(e){return o(e).label},current:i.style.type,onChange:function(t){return n.controller.updateTemplate(t,e.Bootstrap.Visualization.Molecule.Default.ForType)},label:"Type"}),expander:t.React.createElement(t.Controls.ControlGroupExpander,{isExpanded:a,onChange:function(e){return n.setPersistentState("showTypeOptions",e)}}),options:r,isExpanded:a}),t.React.createElement(t.Controls.ExpandableGroup,{select:t.React.createElement(t.Controls.OptionsGroup,{options:e.Bootstrap.Visualization.Molecule.Default.Themes,caption:function(e){return e.name},current:i.style.theme.template,onChange:function(e){return n.controller.updateThemeDefinition(e)},label:"Coloring"}),expander:t.React.createElement(t.Controls.ControlGroupExpander,{isExpanded:s,onChange:function(e){return n.setPersistentState("showThemeOptions",e)}}),options:this.createColors(),isExpanded:s}))},i}(r.ControllerBase);n.CreateVisual=m}(n=r.Molecule||(r.Molecule={}))}(n=r.Transform||(r.Transform={}))}(r=t.Views||(t.Views={}))}(t=e.Plugin||(e.Plugin={}))}(a||(a={}));var a;!function(e){var t;!function(t){var r;!function(r){var n;!function(r){var n;!function(n){function i(e,t,r,n){var i=(t-e.valuesInfo.mean)/e.valuesInfo.sigma;return i>n?n:r>i?r:i}function o(e,t){var r=e.valuesInfo.mean+t*e.valuesInfo.sigma;return r>e.valuesInfo.max?e.valuesInfo.max:rr.bottom){var o=n.bottom-r.bottom;t.scrollTop=i+o}}catch(a){}},o.prototype.componentWillMount=function(){var t=this,r=this.controller.context.tree.root,n=r.tree.context;this.subscribe(e.Bootstrap.Event.Tree.NodeUpdated.getStream(n),function(e){e.data===r&&r.version!==t.renderedVersion&&t.forceUpdate()})},o.prototype.render=function(){var e=this.controller.context.tree.root;this.renderedVersion=e.version;for(var r=[],n=0,o=e.children;n=l?c(u(e,r,n,i)):c(a(r,l))},function(){c(o(r,"File size issue."))})})}var h=LiteMol.Bootstrap,d=h.Entity,p=h.Entity.Transformer,f=h.Tree,m=h.Visualization;e.DensityDownloader=d.create({name:"PDBe Density Downloader",typeClass:"Behaviour",shortName:"DD",description:"Represents PDBe Density Downloader."});var v=LiteMol.Bootstrap.Tree.Transformer.create({id:"pdbe-density-download-create",name:"PDBe Density Downloader",description:"Create the PDBe Density Downloader.",from:[d.Root],to:[e.DensityDownloader],defaultParams:function(){return{}}},function(t,r,n){return LiteMol.Bootstrap.Task.create("Density Downloader","Background",function(t){t.resolve(e.DensityDownloader.create(n,{ref:"densityDownloader-transformer"}))}).setReportTime(!0)});e.DensityDownloaderAction=LiteMol.Bootstrap.Tree.Transformer.action({id:"pdbe-density-download-create-action",name:"PDBe Density Downloader Action",description:"PDBe Density Downloader Action",from:[e.DensityDownloader],to:[d.Action],defaultParams:function(){return{}}},function(e,t){var r=LiteMol.Bootstrap.Tree.Transform.build().add(t,v,{id:"densityDwnldrAction"},{isBinding:!0,ref:"densityDownloader-model"});return r},"Density Loader Loaded"),e.DensitySources=["electron-density","emdb-pdbid","emdb-id"],e.DensitySourceLabels={"electron-density":"Electron Density","emdb-pdbid":"EMDB (from PDB ID)","emdb-id":"EMDB"},e.DownloadDensity=h.Tree.Transformer.actionWithContext({id:"pdbe-density-download-data",name:"Density Data from PDBe",description:"Download density data from PDBe.",from:[d.Root],to:[d.Action],defaultParams:function(e){var t=c(e);return{sourceId:"undefined"!=typeof t?t:"electron-density",id:{"electron-density":n.pdbId,"emdb-id":"8003","emdb-pdbid":n.pdbId}}},validateParams:function(e){var t=e.sourceId?e.sourceId:"electron-density";if(!e.id)return["Enter Id"];var r="string"==typeof e.id?e.id:e.id[t];return r.trim().length?void 0:["Enter Id"]}},function(e,t,n){var i,o="undefined"!=typeof n.params.sourceId?n.params.sourceId:c(e);switch(i="string"==typeof n.params.id?n.params.id:n.params.id[n.params.sourceId],o){case"electron-density":return r(t,n,i);case"emdb-id":return u(e,t,n,i);case"emdb-pdbid":return s(e,t,n,i);default:return r(t,n,i)}},function(e,t){if(t){var r=t,i=r.id,o=r.refs,a=r.groupRef;if("abortMaps"==i){var s="You can download the Density using Download option in Controls";"undefined"!=typeof r.mapSize&&(s="Density file size is "+parseInt(r.mapSize)+" MB. You can download it using the 'Download Density' option in Controls."),h.Command.Toast.Show.dispatch(e,{key:"density-abort-toast",title:"Density",message:s}),h.Event.Visual.VisualSelectElement.getStream(e).subscribe(function(){h.Command.Toast.Hide.dispatch(e,{key:"density-abort-toast"})})}else{var u=e.select((c=f.Selection).byRef.apply(c,o));u.length===o.length?e.logger.message("Density loaded, click on a residue or an atom to view the data."):u.length>0?e.logger.message("Density partially loaded, click on a residue or an atom to view the data."):(e.logger.error("Density for ID '"+i+"' failed to load."),a&&h.Command.Tree.RemoveNode.dispatch(e,a));var c;if(h.Command.Toast.Hide.dispatch(e,{key:"density-abort-toast"}),0==n.treeMenu||"false"==n.treeMenu){var l=e.select("abortMapDownload")[0];"undefined"!=typeof l&&h.Command.Tree.RemoveNode.dispatch(e,"abortMapDownload")}}}})}(r=e.Data||(e.Data={}))}(r=e.PDBe||(e.PDBe={}))}(a=a||(a={}));var a;!function(e){var t;!function(e){var t;!function(e){var t=LiteMol.Bootstrap.Entity,r=LiteMol.Bootstrap.Entity.Transformer;e.Report=t.create({name:"PDBe Molecule Validation Report",typeClass:"Behaviour",shortName:"VR",description:"Represents PDBe validation report."});var n;!function(e){function t(e,t){var r=e.toString();return 0!==(t||"").length&&(r+=" "+t),r}function r(e,t,r,n,i){var o=e[r];return o?(o=o[n])?(o=o[t],o?o[i]:void 0):void 0:void 0}function n(e){var r={};if(!e.molecules)return r;for(var n=0,i=e.molecules;n1)return void 0;var r=t.residues[0],i=n.getEntry(this.report,t.modelId,r.chain.entity.entityId,r.chain.asymId,n.getResidueId(r.seqNumber,r.insCode));if(!i)return void 0;var o;if(1===i.residues.length){var a=i.residues[0];return o="Validation: ",o+=a.outlier_types.length?""+i.residues[0].outlier_types.join(", ")+"":"no issue"}o="";for(var s=0,u=0,c=i.residues;u0&&(o+=", "),o+="Validation (altLoc "+l.alt_code+"): "+l.outlier_types.join(", ")+"",s++}return o},e}();e.Behaviour=t}(i||(i={}));var o;!function(e){function t(e,t){for(var r=new Uint8Array(e.residues.count),i=e.modelId,o=e.residues,a=o.asymId,s=o.entityId,u=o.seqNumber,c=o.insCode,l=0,h=e.residues.count;h>l;l++){var d=n.getEntry(t,i,s[l],a[l],n.getResidueId(u[l],c[l]));d&&(r[l]=Math.min(d.numIssues,3))}return r}function r(e,t){for(var r=new Uint8Array(e.residues.count),i=e.modelId,o=e.parent,a=e.residues,s=a.entityId,u=a.seqNumber,c=a.insCode,l=a.chainIndex,h=e.chains.sourceChainIndex,d=o.chains.asymId,p=0,f=e.residues.count;f>p;p++){var m=d[h[l[p]]],v=n.getEntry(t,i,s[p],m,n.getResidueId(u[p],c[p]));v&&(r[p]=Math.min(v.numIssues,3))}return r}function i(e,n){var i=e.props.model,c=i.source===LiteMol.Core.Structure.MoleculeModelSource.File?t(i,n):r(i,n),l=new Map;l.set("Uniform",a),l.set("Selection",s),l.set("Highlight",u);var h=i.atoms.residueIndex,d=LiteMol.Visualization.Theme.createColorMapMapping(function(e){return c[h[e]]},o,a);return LiteMol.Visualization.Theme.createMapping(d,{colors:l,interactive:!0,transparency:{alpha:1}})}var o=function(){var e=new Map;return e.set(0,{r:0,g:1,b:0}),e.set(1,{r:1,g:1,b:0}),e.set(2,{r:1,g:.5,b:0}),e.set(3,{r:1,g:0,b:0}),e}(),a={r:.6,g:.6,b:.6},s={r:0,g:0,b:1},u={r:1,g:0,b:1};e.create=i}(o||(o={}));var a=LiteMol.Bootstrap.Tree.Transformer.create({id:"pdbe-validation-create",name:"PDBe Validation",description:"Create the validation report from a string.",from:[t.Data.String],to:[e.Report],defaultParams:function(){return{}}},function(t,r,o){return LiteMol.Bootstrap.Task.create("Validation Report ("+o.params.id+")","Normal",function(a){a.update("Parsing..."),a.schedule(function(){var s=JSON.parse(r.props.data),u=s[o.params.id],c=n.createReport(u||{});a.resolve(e.Report.create(o,{label:"Validation Report",behaviour:new i.Behaviour(t,c),ref:"validation-visual"}))})}).setReportTime(!0)});e.CustomDownloadAndCreate=LiteMol.Bootstrap.Tree.Transformer.action({id:"pdbe-validation-download-and-create",name:"PDBe Validation Report",description:"Download Validation Report from PDBe",from:[t.Root],to:[t.Action],defaultParams:function(){return{}},customController:function(e,t,r){return new LiteMol.Bootstrap.Components.Transform.Controller(e,t,r,!1)}},function(e,t,n){var i=n.params.id.trim().toLocaleLowerCase(),o=LiteMol.Bootstrap.Tree.Transform.build().add(t,r.Data.Download,{url:"//www.ebi.ac.uk/pdbe/api/validation/residuewise_outlier_summary/entry/"+i,type:"String",id:i,description:"Validation Data"}).then(a,{id:i},{isBinding:!0,ref:"validation-model"});return o},"Validation report loaded. Hovering over residue will now contain validation info. To apply validation coloring, select the entity in the tree and apply it the right panel."),e.DownloadAndCreate=LiteMol.Bootstrap.Tree.Transformer.action({id:"pdbe-validation-download-and-create",name:"PDBe Validation Report",description:"Download Validation Report from PDBe",from:[t.Molecule.Molecule],to:[t.Action],defaultParams:function(){return{}},customController:function(e,t,r){return new LiteMol.Bootstrap.Components.Transform.Controller(e,t,r,!1)}},function(e,t){var n=t.props.molecule.id.trim().toLocaleLowerCase(),i=LiteMol.Bootstrap.Tree.Transform.build().add(t,r.Data.Download,{url:"//www.ebi.ac.uk/pdbe/api/validation/residuewise_outlier_summary/entry/"+n,type:"String",id:n,description:"Validation Data"}).then(a,{id:n},{isBinding:!0});return i},"Validation report loaded. Hovering over residue will now contain validation info. To apply validation coloring, select the entity in the tree and apply it the right panel."),e.ApplyTheme=LiteMol.Bootstrap.Tree.Transformer.create({id:"pdbe-validation-apply-theme",name:"Apply Coloring",description:"Colors all visuals using the validation report.",from:[e.Report],to:[t.Action],defaultParams:function(){return{}}},function(e,t){return LiteMol.Bootstrap.Task.create("Validation Coloring","Background",function(r){var n=LiteMol.Bootstrap.Tree.Node.findAncestor(e.select("polymer-visual")[0],LiteMol.Bootstrap.Entity.Molecule.Molecule);if(!n)return r.reject("No suitable parent found."),void 0;for(var i=new Map,a=e.select(LiteMol.Bootstrap.Tree.Selection.byValue(n).subtree().ofType(LiteMol.Bootstrap.Entity.Molecule.Visual)),s=0,u=a;s0&&a.push("Assembly"),o.symmetryInfo&&a.push("Symmetry");var s=i.models.length>1?t.createElement(r.Slider,{label:"Model",onChange:function(t){return e.updateParams({modelIndex:t-1})},min:1,max:i.models.length,step:1,value:n.modelIndex+1,title:"Interaction radius."}):void 0;return t.createElement("div",null,t.createElement(r.OptionsGroup,{options:a,caption:function(e){return e},current:n.source,onChange:function(t){return e.updateSource(t)},label:"Source"}),"Assembly"===n.source?this.asm():"Symmetry"===n.source?this.symm():void 0,s)},n}(LiteMol.Plugin.Views.Transform.ControllerBase);e.RepresentationView=n}(t=e.Custom||(e.Custom={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t=LiteMol.Bootstrap.Entity,r=LiteMol.Bootstrap.Entity.Transformer;e.CreateRepresentation=LiteMol.Bootstrap.Tree.Transformer.action({id:"lm-custom-create-representation",name:"Representation",description:"Create visual representation from the selected source.",from:[t.Molecule.Molecule],to:[t.Action],defaultParams:function(e,t){var r=LiteMol.Bootstrap.Utils.Molecule.findMolecule(t).props.molecule.models[0],n=r.assemblyInfo;return n&&n.assemblies.length?{source:"Asymmetric Unit",assemblyNames:n.assemblies.map(function(e){return e.name}),modelIndex:0}:{source:"Asymmetric Unit",assemblyNames:[]}}},function(e,t,n){var i=LiteMol.Bootstrap.Tree.Selection.byRef("molecule").children();LiteMol.Bootstrap.Command.Tree.RemoveNode.dispatch(e,i);var o=LiteMol.Bootstrap.Tree.Transform.build().add(t,r.Molecule.CreateModel,{modelIndex:n.params.modelIndex||0},{ref:"model"}),a={polymer:!0,polymerRef:"polymer-visual",het:!0,hetRef:"het-visual",water:!0,waterRef:"water-visual"};switch(n.params.source||"Asymmetric Unit"){case"Assembly":o.then(r.Molecule.CreateAssembly,n.params.params).then(r.Molecule.CreateMacromoleculeVisual,a);break;case"Symmetry":o.then(r.Molecule.CreateSymmetryMates,n.params.params).then(r.Molecule.CreateMacromoleculeVisual,a);break;default:o.then(r.Molecule.CreateMacromoleculeVisual,a)}return o})}(t=e.Custom||(e.Custom={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t=LiteMol.Plugin.React,r=LiteMol.Plugin.Controls,n=function(e){function n(){e.apply(this,arguments)}return s(n,e),n.prototype.domainList=function(){for(var e=this,n=this.params.subOptionsList[this.params.type],i=n.length,o=[],a={},s=0;i>s;s++)o.push(n[s].name),a[n[s].name]=n[s].ref;var u=this.params.nodeName;return u||(u=o[0]),[t.createElement(r.OptionsGroup,{options:o,current:u,caption:function(e){return e},onChange:function(t){return e.updateParams({nodeName:t,nodeRef:a[t]})},label:"Name"})]},n.prototype.updateType=function(e){if("Select"===e)this.updateParams({type:e,nodeName:void 0,nodeRef:void 0});else{var t=this.params.subOptionsList[e][0].name,r=this.params.subOptionsList[e][0].ref;this.updateParams({type:e,nodeName:t,nodeRef:r})}},n.prototype.renderControls=function(){var e=this,n=this.params;return t.createElement("div",null,t.createElement(r.OptionsGroup,{options:n.options,caption:function(e){return e},current:n.type,onChange:function(t){return e.updateType(t)},label:"Type"}),"Select"===n.type?void 0:this.domainList())},n}(LiteMol.Plugin.Views.Transform.ControllerBase);e.SeqAnnotationView=n}(t=e.Custom||(e.Custom={}))}(a||(a={}));var a;!function(e){var t;!function(t){{var r=LiteMol.Bootstrap.Entity;LiteMol.Bootstrap.Entity.Transformer}t.CreateSeqAnnotation=LiteMol.Bootstrap.Tree.Transformer.create({id:"lm-custom-create-SeqAnnotation",name:"SeqAnnotation",description:"Colours all visuals as per selected Domain Annotation.",from:[r.Root],to:[r.Action],defaultParams:function(e){for(var t=["Select"],r=["Pfam","InterPro","CATH","SCOP","UniProt"],n={Pfam:[],InterPro:[],CATH:[],SCOP:[],UniProt:[]},i=0;5>i;i++){var o=e.select(r[i])[0];if("undefined"!=typeof o&&o.children.length>0){t.push(r[i]);for(var a=0;a100&&(t=!1),i.resolve(t)},function(){i.resolve(!0)}):i.resolve(!0),i.promise},e.prototype.loadFromNonCif=function(e,t){var r=this.moleculeId.toLowerCase(),i=this.Transform.build().add(this.plugin.context.tree.root,this.Transformer.Data.Download,{url:e,type:t.isBinary?"Binary":"String",id:r});return 1==n.treeMenu||"true"==n.treeMenu?i.then(this.Transformer.Molecule.CreateFromData,{format:t,customId:r},{isBinding:!0}).then(this.Transformer.Molecule.CreateModel,{modelIndex:0},{isBinding:!1,ref:"model"}).then(this.Transformer.Molecule.CreateMacromoleculeVisual,{polymer:!0,polymerRef:"polymer-visual",het:!0,water:!0}):i.then(this.Transformer.Molecule.CreateFromData,{format:t,customId:r},{ref:"molecule"}).then(a.Custom.CreateRepresentation,{}),i},e.prototype.loadFromCif=function(e,t){var r=this.moleculeId.toLowerCase(),i=this.Transform.build().add(this.plugin.context.tree.root,this.Transformer.Data.Download,{url:e,type:t.isBinary?"Binary":"String",id:r}).then(t.isBinary?this.Transformer.Data.ParseBinaryCif:this.Transformer.Data.ParseCif,{id:r},{isBinding:!0,ref:"cifDict"});return 1==n.treeMenu||"true"==n.treeMenu?i.then(this.Transformer.Molecule.CreateFromMmCif,{blockIndex:0},{isBinding:!0}).then(this.Transformer.Molecule.CreateModel,{modelIndex:0},{isBinding:!1,ref:"model"}).then(this.Transformer.Molecule.CreateMacromoleculeVisual,{polymer:!0,polymerRef:"polymer-visual",het:!0,water:!0}):i.then(this.Transformer.Molecule.CreateFromMmCif,{blockIndex:0},{ref:"molecule"}).then(a.Custom.CreateRepresentation,{}),i},e.prototype.loadMolecule=function(){var e=this.moleculeId.toLowerCase(),t="//www.ebi.ac.uk/pdbe/static/entry/"+e+"_updated.cif";if("undefined"!=typeof n.customQuery&&(t="//www.ebi.ac.uk/pdbe/coordinates/"+e+"/"+n.customQuery),"undefined"!=typeof n.sourceUrl&&"undefined"==typeof n.sourceFormat)return this.Bootstrap.Command.Toast.Show.dispatch(this.plugin.context,{key:"format-issue",title:"Source Format",message:"Please specify sourceFormat!"}),!1;"undefined"!=typeof n.sourceUrl&&(t=n.sourceUrl);var r=!1;"undefined"!=typeof n.customQuery&&new RegExp("encoding=bcif","i").test(t)&&(n.sourceFormat="bcif",r=!0);var i=LiteMol.Core.Formats.Molecule.SupportedFormats.mmCIF;if("undefined"!=typeof n.sourceFormat){if(LiteMol.Core.Formats.FormatInfo.is(n.sourceFormat))i=n.sourceFormat;else{var o=LiteMol.Core.Formats.FormatInfo.fromShortcut(LiteMol.Core.Formats.Molecule.SupportedFormats.All,n.sourceFormat);if(!o)throw new Error("'"+n.sourceFormat+"' is not a supported format.");i=o}"undefined"!=typeof n.customQuery&&0==r&&(t=new RegExp("\\?").test(t)?t+"&encoding="+n.sourceFormat:t+"?encoding="+n.sourceFormat)}if("undefined"==typeof n.sourceFormat||"sdf"!=n.sourceFormat.toLowerCase()&&"pdb"!=n.sourceFormat.toLowerCase())var a=this.loadFromCif(t,i);else var a=this.loadFromNonCif(t,i);this.applyTransforms(a).then(function(){"undefined"!=typeof n.sourceFormat&&"sdf"==n.sourceFormat.toLowerCase()||"undefined"!=typeof n.loadEdMaps&&"true"===n.loadEdMaps&&n.LiteMolComponent.loadDensity(!1,!0)})},e.prototype.loadDensity=function(e,t){var r=this,n=this.moleculeId.toLowerCase();e="undefined"!=typeof e&&1==e?!0:!1;var i=r.Transform.build().add(r.plugin.context.tree.root,a.PDBe.Data.DownloadDensity,{id:n,isWireframe:e,checkMapFileSize:t},{ref:"density"});r.applyTransforms(i)},e.prototype.toggleDensity=function(){var e=this.selectNodes("density")[0];e&&this.Command.Entity.SetVisibility.dispatch(this.plugin.context,{entity:e,visible:2===e.state.visibility})},e.prototype.loadValidationReport=function(){var e=this.moleculeId.toLowerCase(),t=this.Transform.build().add(this.plugin.context.tree.root,a.PDBe.Validation.CustomDownloadAndCreate,{id:e});this.applyTransforms(t)},e.prototype.loadSequenceAnnotation=function(){var e=this.moleculeId.toLowerCase(),t=this.Transform.build().add(this.plugin.context.tree.root,a.PDBe.SequenceAnnotation.CustomDownloadAndCreate,{id:e});this.applyTransforms(t)},e.prototype.createSelectionTheme=function(e){var t=new Map;return t.set("Uniform",this.CoreVis.Color.fromRgb(207,178,178)),t.set("Selection",e),t.set("Highlight",this.CoreVis.Theme.Default.HighlightColor),this.Visualization.Molecule.uniformThemeProvider(void 0,{colors:t})},e.prototype.SelectExtractFocus=function(e,t,r){_this=this;var n=this.selectNodes("polymer-visual")[0];if(n){this.resetThemeSelHighlight();var i=this.Query.sequence(e.entity_id.toString(),e.struct_asym_id.toString(),{seqNumber:e.start_residue_number},{seqNumber:e.end_residue_number}),o=this.createSelectionTheme(this.CoreVis.Color.fromRgb(t.r,t.g,t.b)),a=this.Transform.build().add(n,this.Transformer.Molecule.CreateSelectionFromQuery,{query:i,name:"My name"},{ref:"sequence-selection"});"undefined"!=typeof r&&1==r&&a.then(this.Transformer.Molecule.CreateVisual,{style:this.Visualization.Molecule.Default.ForType.get("BallsAndSticks")}),this.applyTransforms(a).then(function(){_this.Command.Visual.UpdateBasicTheme.dispatch(_this.plugin.context,{visual:n,theme:o}),_this.Command.Entity.Focus.dispatch(_this.plugin.context,_this.selectNodes("sequence-selection"))})}},e.prototype.colorResidues=function(e,t,r,n){_this=this;var i=this.selectNodes("polymer-visual")[0];if(i){this.resetThemeSelHighlight();var o=this.Query.residuesById.apply(void 0,e).inside(this.Query.chainsById("A")),a=this.createSelectionTheme(this.CoreVis.Color.fromRgb(t.r,t.g,t.b)),s=this.Transform.build().add(i,this.Transformer.Molecule.CreateSelectionFromQuery,{query:o,name:"My name"},{ref:"sequence-selection"});r&&s.then(this.Transformer.Molecule.CreateVisual,{style:this.Visualization.Molecule.Default.ForType.get("BallsAndSticks")}); +}},t.prototype.focus=function(e){var t=this.molecule;if(t){var r=this.context.select(LiteMol.Bootstrap.Tree.Selection.byValue(t).subtree().ofType(LiteMol.Bootstrap.Entity.Molecule.Model))[0];r&&(LiteMol.Bootstrap.Command.Molecule.FocusQuery.dispatch(this.context,{model:r,query:e.props.query}),LiteMol.Bootstrap.Command.Entity.SetCurrent.dispatch(this.context,e))}},t.prototype.apply=function(e){var t=this.molecule;if(t)for(var r=this.context.select(LiteMol.Bootstrap.Tree.Selection.byValue(t).subtree().ofType(LiteMol.Bootstrap.Entity.Molecule.Visual)),n=0,i=r;n0&&a.push("Assembly"),o.symmetryInfo&&a.push("Symmetry");var s=i.models.length>1?t.createElement(r.Slider,{label:"Model",onChange:function(t){return e.updateParams({modelIndex:t-1})},min:1,max:i.models.length,step:1,value:n.modelIndex+1,title:"Interaction radius."}):void 0;return t.createElement("div",null,t.createElement(r.OptionsGroup,{options:a,caption:function(e){return e},current:n.source,onChange:function(t){return e.updateSource(t)},label:"Source"}),"Assembly"===n.source?this.asm():"Symmetry"===n.source?this.symm():void 0,s)},n}(LiteMol.Plugin.Views.Transform.ControllerBase);e.RepresentationView=n}(t=e.Custom||(e.Custom={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t=LiteMol.Bootstrap.Entity,r=LiteMol.Bootstrap.Entity.Transformer;e.CreateRepresentation=LiteMol.Bootstrap.Tree.Transformer.action({id:"lm-custom-create-representation",name:"Representation",description:"Create visual representation from the selected source.",from:[t.Molecule.Molecule],to:[t.Action],defaultParams:function(e,t){var r=LiteMol.Bootstrap.Utils.Molecule.findMolecule(t).props.molecule.models[0],n=r.assemblyInfo;return n&&n.assemblies.length?{source:"Asymmetric Unit",assemblyNames:n.assemblies.map(function(e){return e.name}),modelIndex:0}:{source:"Asymmetric Unit",assemblyNames:[]}}},function(e,t,n){var i=LiteMol.Bootstrap.Tree.Selection.byRef("molecule").children();LiteMol.Bootstrap.Command.Tree.RemoveNode.dispatch(e,i);var o=LiteMol.Bootstrap.Tree.Transform.build().add(t,r.Molecule.CreateModel,{modelIndex:n.params.modelIndex||0},{ref:"model"}),a={polymer:!0,polymerRef:"polymer-visual",het:!0,hetRef:"het-visual",water:!0,waterRef:"water-visual"};switch(n.params.source||"Asymmetric Unit"){case"Assembly":o.then(r.Molecule.CreateAssembly,n.params.params).then(r.Molecule.CreateMacromoleculeVisual,a);break;case"Symmetry":o.then(r.Molecule.CreateSymmetryMates,n.params.params).then(r.Molecule.CreateMacromoleculeVisual,a);break;default:o.then(r.Molecule.CreateMacromoleculeVisual,a)}return o})}(t=e.Custom||(e.Custom={}))}(a||(a={}));var a;!function(e){var t;!function(e){var t=LiteMol.Plugin.React,r=LiteMol.Plugin.Controls,n=function(e){function n(){e.apply(this,arguments)}return s(n,e),n.prototype.domainList=function(){for(var e=this,n=this.params.subOptionsList[this.params.type],i=n.length,o=[],a={},s=0;i>s;s++)o.push(n[s].name),a[n[s].name]=n[s].ref;var u=this.params.nodeName;return u||(u=o[0]),[t.createElement(r.OptionsGroup,{options:o,current:u,caption:function(e){return e},onChange:function(t){return e.updateParams({nodeName:t,nodeRef:a[t]})},label:"Name"})]},n.prototype.updateType=function(e){if("Select"===e)this.updateParams({type:e,nodeName:void 0,nodeRef:void 0});else{var t=this.params.subOptionsList[e][0].name,r=this.params.subOptionsList[e][0].ref;this.updateParams({type:e,nodeName:t,nodeRef:r})}},n.prototype.renderControls=function(){var e=this,n=this.params;return t.createElement("div",null,t.createElement(r.OptionsGroup,{options:n.options,caption:function(e){return e},current:n.type,onChange:function(t){return e.updateType(t)},label:"Type"}),"Select"===n.type?void 0:this.domainList())},n}(LiteMol.Plugin.Views.Transform.ControllerBase);e.SeqAnnotationView=n}(t=e.Custom||(e.Custom={}))}(a||(a={}));var a;!function(e){var t;!function(t){{var r=LiteMol.Bootstrap.Entity;LiteMol.Bootstrap.Entity.Transformer}t.CreateSeqAnnotation=LiteMol.Bootstrap.Tree.Transformer.create({id:"lm-custom-create-SeqAnnotation",name:"SeqAnnotation",description:"Colours all visuals as per selected Domain Annotation.",from:[r.Root],to:[r.Action],defaultParams:function(e){for(var t=["Select"],r=["Pfam","InterPro","CATH","SCOP","UniProt"],n={Pfam:[],InterPro:[],CATH:[],SCOP:[],UniProt:[]},i=0;5>i;i++){var o=e.select(r[i])[0];if("undefined"!=typeof o&&o.children.length>0){t.push(r[i]);for(var a=0;a100&&(t=!1),i.resolve(t)},function(){i.resolve(!0)}):i.resolve(!0),i.promise},e.prototype.loadFromNonCif=function(e,t){var r=this.moleculeId.toLowerCase(),i=this.Transform.build().add(this.plugin.context.tree.root,this.Transformer.Data.Download,{url:e,type:t.isBinary?"Binary":"String",id:r});return 1==n.treeMenu||"true"==n.treeMenu?i.then(this.Transformer.Molecule.CreateFromData,{format:t,customId:r},{isBinding:!0}).then(this.Transformer.Molecule.CreateModel,{modelIndex:0},{isBinding:!1,ref:"model"}).then(this.Transformer.Molecule.CreateMacromoleculeVisual,{polymer:!0,polymerRef:"polymer-visual",het:!0,water:!0}):i.then(this.Transformer.Molecule.CreateFromData,{format:t,customId:r},{ref:"molecule"}).then(a.Custom.CreateRepresentation,{}),i},e.prototype.loadFromCif=function(e,t){var r=this.moleculeId.toLowerCase(),i=this.Transform.build().add(this.plugin.context.tree.root,this.Transformer.Data.Download,{url:e,type:t.isBinary?"Binary":"String",id:r}).then(t.isBinary?this.Transformer.Data.ParseBinaryCif:this.Transformer.Data.ParseCif,{id:r},{isBinding:!0,ref:"cifDict"});return 1==n.treeMenu||"true"==n.treeMenu?i.then(this.Transformer.Molecule.CreateFromMmCif,{blockIndex:0},{isBinding:!0}).then(this.Transformer.Molecule.CreateModel,{modelIndex:0},{isBinding:!1,ref:"model"}).then(this.Transformer.Molecule.CreateMacromoleculeVisual,{polymer:!0,polymerRef:"polymer-visual",het:!0,water:!0}):i.then(this.Transformer.Molecule.CreateFromMmCif,{blockIndex:0},{ref:"molecule"}).then(a.Custom.CreateRepresentation,{}),i},e.prototype.loadMolecule=function(){var e=this.moleculeId.toLowerCase(),t="//www.ebi.ac.uk/pdbe/static/entry/"+e+"_updated.cif";if("undefined"!=typeof n.customQuery&&(t="//www.ebi.ac.uk/pdbe/coordinates/"+e+"/"+n.customQuery),"undefined"!=typeof n.sourceUrl&&"undefined"==typeof n.sourceFormat)return this.Bootstrap.Command.Toast.Show.dispatch(this.plugin.context,{key:"format-issue",title:"Source Format",message:"Please specify sourceFormat!"}),!1;"undefined"!=typeof n.sourceUrl&&(t=n.sourceUrl);var r=!1;"undefined"!=typeof n.customQuery&&new RegExp("encoding=bcif","i").test(t)&&(n.sourceFormat="bcif",r=!0);var i=LiteMol.Core.Formats.Molecule.SupportedFormats.mmCIF;if("undefined"!=typeof n.sourceFormat){if(LiteMol.Core.Formats.FormatInfo.is(n.sourceFormat))i=n.sourceFormat;else{var o=LiteMol.Core.Formats.FormatInfo.fromShortcut(LiteMol.Core.Formats.Molecule.SupportedFormats.All,n.sourceFormat);if(!o)throw new Error("'"+n.sourceFormat+"' is not a supported format.");i=o}"undefined"!=typeof n.customQuery&&0==r&&(t=new RegExp("\\?").test(t)?t+"&encoding="+n.sourceFormat:t+"?encoding="+n.sourceFormat)}if("undefined"==typeof n.sourceFormat||"sdf"!=n.sourceFormat.toLowerCase()&&"pdb"!=n.sourceFormat.toLowerCase())var a=this.loadFromCif(t,i);else var a=this.loadFromNonCif(t,i);this.applyTransforms(a).then(function(){"undefined"!=typeof n.sourceFormat&&"sdf"==n.sourceFormat.toLowerCase()||"undefined"!=typeof n.loadEdMaps&&"true"===n.loadEdMaps&&n.LiteMolComponent.loadDensity(!1,!0)})},e.prototype.loadDensity=function(e,t){var r=this,n=this.moleculeId.toLowerCase();e="undefined"!=typeof e&&1==e?!0:!1;var i=r.Transform.build().add(r.plugin.context.tree.root,a.PDBe.Data.DownloadDensity,{id:n,isWireframe:e,checkMapFileSize:t},{ref:"density"});r.applyTransforms(i)},e.prototype.toggleDensity=function(){var e=this.selectNodes("density")[0];e&&this.Command.Entity.SetVisibility.dispatch(this.plugin.context,{entity:e,visible:2===e.state.visibility})},e.prototype.loadValidationReport=function(){var e=this.moleculeId.toLowerCase(),t=this.Transform.build().add(this.plugin.context.tree.root,a.PDBe.Validation.CustomDownloadAndCreate,{id:e});this.applyTransforms(t)},e.prototype.loadSequenceAnnotation=function(){var e=this.moleculeId.toLowerCase(),t=this.Transform.build().add(this.plugin.context.tree.root,a.PDBe.SequenceAnnotation.CustomDownloadAndCreate,{id:e});this.applyTransforms(t)},e.prototype.createSelectionTheme=function(e){var t=new Map;return t.set("Uniform",this.CoreVis.Color.fromRgb(207,178,178)),t.set("Selection",e),t.set("Highlight",this.CoreVis.Theme.Default.HighlightColor),this.Visualization.Molecule.uniformThemeProvider(void 0,{colors:t})},e.prototype.SelectExtractFocus=function(e,t,r){_this=this;var n=this.selectNodes("polymer-visual")[0];if(n){this.resetThemeSelHighlight();var i=this.Query.sequence(e.entity_id.toString(),e.struct_asym_id.toString(),{seqNumber:e.start_residue_number},{seqNumber:e.end_residue_number}),o=this.createSelectionTheme(this.CoreVis.Color.fromRgb(t.r,t.g,t.b)),a=this.Transform.build().add(n,this.Transformer.Molecule.CreateSelectionFromQuery,{query:i,name:"My name"},{ref:"sequence-selection"});"undefined"!=typeof r&&1==r&&a.then(this.Transformer.Molecule.CreateVisual,{style:this.Visualization.Molecule.Default.ForType.get("BallsAndSticks")}),this.applyTransforms(a).then(function(){_this.Command.Visual.UpdateBasicTheme.dispatch(_this.plugin.context,{visual:n,theme:o}),_this.Command.Entity.Focus.dispatch(_this.plugin.context,_this.selectNodes("sequence-selection"))})}},e.prototype.colorResidues=function(e,t,r,n){_this=this;var i=this.selectNodes("polymer-visual")[0];if(i){this.resetThemeSelHighlight();var o=this.Query.residuesById.apply(void 0,e),a=this.createSelectionTheme(this.CoreVis.Color.fromRgb(t.r,t.g,t.b)),s=this.Transform.build().add(i,this.Transformer.Molecule.CreateSelectionFromQuery,{query:o,name:"My name"},{ref:"sequence-selection"});r&&s.then(this.Transformer.Molecule.CreateVisual,{style:this.Visualization.Molecule.Default.ForType.get("BallsAndSticks")}); var u=this.selectNodes("water-visual")[0];u&&_this.Command.Entity.SetVisibility.dispatch(_this.plugin.context,{entity:u,visible:!1});var c=this.selectNodes("het-visual")[0];c&&_this.Command.Entity.SetVisibility.dispatch(_this.plugin.context,{entity:c,visible:n}),this.applyTransforms(s).then(function(){_this.Command.Visual.UpdateBasicTheme.dispatch(_this.plugin.context,{visual:i,theme:a})})}},e.prototype.highlightOn=function(e){var t=this.selectNodes("model")[0];if(t){"undefined"!=typeof this.currentHighLightedDetails&&this.Command.Molecule.Highlight.dispatch(this.plugin.context,this.currentHighLightedDetails.prevQuery);var r=this.Query.sequence(e.entity_id.toString(),e.struct_asym_id.toString(),{seqNumber:e.start_residue_number},{seqNumber:e.end_residue_number});this.Command.Molecule.Highlight.dispatch(this.plugin.context,{model:t,query:r,isOn:!0}),this.currentHighLightedDetails={prevQueryData:e,prevQuery:{model:t,query:r,isOn:!1}}}},e.prototype.highlightOff=function(){"undefined"!=typeof this.currentHighLightedDetails&&this.Command.Molecule.Highlight.dispatch(this.plugin.context,this.currentHighLightedDetails.prevQuery)},e.prototype.resetThemeSelHighlight=function(){this.Command.Visual.ResetTheme.dispatch(this.plugin.context,void 0),this.cleanUp()},e.prototype.colorChains=function(e,t){var r=this.selectNodes("polymer-visual")[0],n=this.selectNodes("model")[0];if(n&&r){var i=new Map;i.set(e,this.CoreVis.Color.fromRgb(t[0],t[1],t[2]));var o=this.Visualization.Molecule.createColorMapThemeProvider(function(e){return{index:e.atoms.chainIndex,property:e.chains.asymId}},i,this.CoreVis.Color.fromRgb(207,178,178))(n);this.Command.Visual.UpdateBasicTheme.dispatch(this.plugin.context,{visual:r,theme:o})}},e.prototype.create=function(e){var t=this.CustomMenuSpec;if(1==n.treeMenu||"true"==n.treeMenu)var t=this.spec;if("undefined"!=typeof LiteMolSpecConfig){LiteMolSpecConfig.behaviours.length>0&&(t.behaviours=LiteMolSpecConfig.behaviours);var r=LiteMolSpecConfig.components.length;if(r>0)for(var i=0;r>i;i++)t.components.push(LiteMolSpecConfig.components[i])}"undefined"!=typeof n.showLogs&&"true"==n.showLogs&&t.components.push(this.Plugin.Components.Context.Log(this.LayoutRegion.Bottom,!0));var o=new this.Plugin.Instance(t,e);return o.context.logger.message("LiteMol Viewer "+this.Plugin.VERSION.number),o},e.prototype.getDispatchEventData=function(e){var t={},r=e.data;return r&&r.residues&&(t.residuesName=r.residues[0].authName,t.chainId=r.chains[0].authAsymId,t.residueNumber=r.residues[0].seqNumber,t.entityId=r.chains[0].entity.entityId,t.entryId=r.moleculeId),t},e.prototype.dispatchCustomEvent=function(e,t,r){var o=i[0];"undefined"!=typeof r&&(o=r),"undefined"!=typeof t&&(n.pdbevents[e].eventData=t),o.dispatchEvent(n.pdbevents[e])},e}(),c=function(){n.LiteMolComponent.createPlugin(),n.LiteMolComponent.loadMolecule(),"undefined"==typeof n.validationAnnotation||"true"!==n.validationAnnotation||n.treeMenu||n.LiteMolComponent.loadValidationReport(),"undefined"==typeof n.domainAnnotation||"true"!==n.domainAnnotation||n.treeMenu||n.LiteMolComponent.loadSequenceAnnotation()};if(n.LiteMolComponent=new u,"undefined"!=typeof n.customRender||"undefined"==typeof n.pdbId?n.LiteMolComponent.createPlugin():c(),n.$watch("pdbId",function(e,t){"undefined"!=typeof n.pdbId&&e!==t&&(n.LiteMolComponent.moleculeId=n.pdbId,n.LiteMolComponent.destroyPlugin(),c())}),"true"==n.subscribeEvents){e.on("PDB.topologyViewer.click",function(e){if("undefined"!=typeof e.eventData){if(e.eventData.entryId!=n.pdbId)return;var t={entity_id:e.eventData.entityId,struct_asym_id:e.eventData.structAsymId,start_residue_number:e.eventData.residueNumber,end_residue_number:e.eventData.residueNumber};n.LiteMolComponent.SelectExtractFocus(t,{r:0,g:81,b:51},!1)}});var l=["uniprot","pfam","cath","scop","strand","helice"],h=["chain","quality","quality_outlier","binding site","alternate conformer"];e.on("PDB.seqViewer.click",function(e){if("undefined"!=typeof e.eventData){if(e.eventData.entryId!=n.pdbId)return;if("undefined"!=typeof e.eventData.elementData&&h.indexOf(e.eventData.elementData.elementType)>-1){var t={entity_id:e.eventData.entityId,struct_asym_id:e.eventData.elementData.pathData.struct_asym_id,start_residue_number:e.eventData.residueNumber,end_residue_number:e.eventData.residueNumber};n.LiteMolComponent.SelectExtractFocus(t,{r:0,g:81,b:51},!1)}else if("undefined"!=typeof e.eventData.elementData&&l.indexOf(e.eventData.elementData.elementType)>-1){var r=e.eventData.elementData.color,t={entity_id:e.eventData.entityId,struct_asym_id:e.eventData.elementData.pathData.struct_asym_id,start_residue_number:e.eventData.elementData.pathData.start.residue_number,end_residue_number:e.eventData.elementData.pathData.end.residue_number};n.LiteMolComponent.SelectExtractFocus(t,{r:r[0],g:r[1],b:r[2]},!1)}}}),e.on("PDB.seqViewer.mouseover",function(e){if("undefined"!=typeof e.eventData){if(e.eventData.entryId!=n.pdbId)return;if("undefined"!=typeof e.eventData.elementData&&h.indexOf(e.eventData.elementData.elementType)>-1){var t={entity_id:e.eventData.entityId,struct_asym_id:e.eventData.elementData.pathData.struct_asym_id,start_residue_number:e.eventData.residueNumber,end_residue_number:e.eventData.residueNumber};n.LiteMolComponent.highlightOn(t)}else if("undefined"!=typeof e.eventData.elementData&&l.indexOf(e.eventData.elementData.elementType)>-1){var t=(e.eventData.elementData.pathData.start.residue_number,e.eventData.elementData.pathData.end.residue_number,{entity_id:e.eventData.entityId,struct_asym_id:e.eventData.elementData.pathData.struct_asym_id,start_residue_number:e.eventData.elementData.pathData.start.residue_number,end_residue_number:e.eventData.elementData.pathData.end.residue_number});n.LiteMolComponent.highlightOn(t)}}}),e.on("PDB.seqViewer.mouseout",function(){n.LiteMolComponent.highlightOff()}),e.on("PDB.topologyViewer.mouseover",function(e){if("undefined"!=typeof e.eventData){if(e.eventData.entryId!=n.pdbId)return;var t={entity_id:e.eventData.entityId,struct_asym_id:e.eventData.structAsymId,start_residue_number:e.eventData.residueNumber,end_residue_number:e.eventData.residueNumber};n.LiteMolComponent.highlightOn(t)}}),e.on("PDB.topologyViewer.mouseout",function(){n.LiteMolComponent.highlightOff()})}}}}])}(); \ No newline at end of file