-
Notifications
You must be signed in to change notification settings - Fork 970
/
login.bundled.js
2 lines (2 loc) · 258 KB
/
login.bundled.js
1
2
webpackJsonp([2],{10:function(t,e,i){"use strict";(function(t,a){function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(1),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(o),s=i(9),l=n(s),d=i(7),h=n(d),c=i(11),u=n(c),f=i(12),_=n(f),p=i(20),g=n(p),v=i(6),m=(n(v),{toJSON:function(){var t=this,e={};return r.each(t.constructor.to_json_keys,function(i){var a=t.get(i);i in t.constructor.to_json_mappers&&(a=t.constructor.to_json_mappers[i](a,t)),e[i]=a}),e}}),w=function(e,i){var a=new _.default({url_base:Galaxy.root+"visualization/list_history_datasets",filters:e,dict_format:!0,embedded:!0}),n=new _.default({url_base:Galaxy.root+"visualization/list_library_datasets",dict_format:!0,embedded:!0}),o=new g.default.View;o.add({id:"histories",title:"Histories",$el:t("<div/>").append(a.$el)}),o.add({id:"libraries",title:"Libraries",$el:t("<div/>").append(n.$el)}),Galaxy.modal.show({title:"Select datasets for new tracks",body:o.$el,closing_events:!0,buttons:{Cancel:function(){Galaxy.modal.hide()},Add:function(){var e=[];o.$("input.grid-row-select-checkbox[name=id]:checked").each(function(){window.console.log(t(this).val()),e[e.length]=t.ajax({url:Galaxy.root+"api/datasets/"+t(this).val(),dataType:"json",data:{data_type:"track_config",hda_ldda:"histories"==o.current()?"hda":"ldda"}})}),t.when.apply(t,e).then(function(){var e=arguments[0]instanceof Array?t.map(arguments,function(t){return t[0]}):[arguments[0]];i(e)}),Galaxy.modal.hide()}}})},b=function(t){this.default_font=void 0!==t?t:"9px Monaco, Lucida Console, monospace",this.dummy_canvas=this.new_canvas(),this.dummy_context=this.dummy_canvas.getContext("2d"),this.dummy_context.font=this.default_font,this.char_width_px=this.dummy_context.measureText("A").width,this.patterns={},this.load_pattern("right_strand","/visualization/strand_right.png"),this.load_pattern("left_strand","/visualization/strand_left.png"),this.load_pattern("right_strand_inv","/visualization/strand_right_inv.png"),this.load_pattern("left_strand_inv","/visualization/strand_left_inv.png")};r.extend(b.prototype,{load_pattern:function(t,e){var i=this.patterns,a=this.dummy_context,n=new Image;n.src=Galaxy.root+"static/images"+e,n.onload=function(){i[t]=a.createPattern(n,"repeat")}},get_pattern:function(t){return this.patterns[t]},new_canvas:function(){var e=t("<canvas/>")[0];return e.manager=this,e}});var y=a.Model.extend({defaults:{num_elements:20,obj_cache:null,key_ary:null},initialize:function(t){this.clear()},get_elt:function(t){var e=this.attributes.obj_cache,i=this.attributes.key_ary,a=t.toString(),n=r.indexOf(i,function(t){return t.toString()===a});return-1!==n&&(e[a].stale?(i.splice(n,1),delete e[a]):this.move_key_to_end(t,n)),e[a]},set_elt:function(t,e){var i=this.attributes.obj_cache,a=this.attributes.key_ary,n=t.toString(),o=this.attributes.num_elements;if(!i[n]){if(a.length>=o){delete i[a.shift().toString()]}a.push(t)}return i[n]=e,e},move_key_to_end:function(t,e){this.attributes.key_ary.splice(e,1),this.attributes.key_ary.push(t)},clear:function(){this.attributes.obj_cache={},this.attributes.key_ary=[]},size:function(){return this.attributes.key_ary.length},most_recently_added:function(){return 0===this.size()?null:this.attributes.key_ary[this.attributes.key_ary.length-1]}}),x=y.extend({defaults:r.extend({},y.prototype.defaults,{dataset:null,genome:null,init_data:null,min_region_size:200,filters_manager:null,data_type:"data",data_mode_compatible:function(t,e){return!0},can_subset:function(t){return!1}}),initialize:function(t){y.prototype.initialize.call(this);var e=this.get("init_data");e&&this.add_data(e)},add_data:function(t){this.get("num_elements")<t.length&&this.set("num_elements",t.length);var e=this;r.each(t,function(t){e.set_data(t.region,t)})},data_is_ready:function(){var e=this.get("dataset"),i=t.Deferred(),a="raw_data"===this.get("data_type")?"state":"data"===this.get("data_type")?"converted_datasets_state":"error",n=new h.default.ServerStateDeferred({ajax_settings:{url:this.get("dataset").url(),data:{hda_ldda:e.get("hda_ldda"),data_type:a},dataType:"json"},interval:5e3,success_fn:function(t){return"pending"!==t}});return t.when(n.go()).then(function(t){i.resolve("ok"===t||"data"===t)}),i},search_features:function(e){var i=this.get("dataset"),a={query:e,hda_ldda:i.get("hda_ldda"),data_type:"features"};return t.getJSON(i.url(),a)},load_data:function(e,i,a,n){var o=this.get("dataset"),r={data_type:this.get("data_type"),chrom:e.get("chrom"),low:e.get("start"),high:e.get("end"),mode:i,resolution:a,hda_ldda:o.get("hda_ldda")};t.extend(r,n);var s=this.get("filters_manager");if(s){for(var l=[],d=s.filters,h=0;h<d.length;h++)l.push(d[h].name);r.filter_cols=JSON.stringify(l)}var c=this,u=t.getJSON(o.url(),r,function(t){t.region=e,c.set_data(e,t)});return this.set_data(e,u),u},get_data:function(t,e,i,a){var n=this.get_elt(t);if(n&&(h.default.is_deferred(n)||this.get("data_mode_compatible")(n,e)))return n;for(var o,r,s=this.get("key_ary"),l=this.get("obj_cache"),d=0;d<s.length;d++)if(o=s[d],o.contains(t)&&(r=!0,n=l[o.toString()],h.default.is_deferred(n)||this.get("data_mode_compatible")(n,e)&&this.get("can_subset")(n))){if(this.move_key_to_end(o,d),!h.default.is_deferred(n)){var c=this.subset_entry(n,t);this.set_data(t,c),n=c}return n}if(!r&&t.length()<this.attributes.min_region_size){t=t.copy();var u=this.most_recently_added();!u||t.get("start")>u.get("start")?t.set("end",t.get("start")+this.attributes.min_region_size):t.set("start",t.get("end")-this.attributes.min_region_size),t.set("genome",this.attributes.genome),t.trim()}return this.load_data(t,e,i,a)},set_data:function(t,e){this.set_elt(t,e)},DEEP_DATA_REQ:"deep",BROAD_DATA_REQ:"breadth",get_more_data:function(e,i,a,n,o){var r=this._mark_stale(e);if(!r||!this.get("data_mode_compatible")(r,i))return void console.log("ERROR: problem with getting more data: current data is not compatible");var s=e.get("start");o===this.DEEP_DATA_REQ?t.extend(n,{start_val:r.data.length+1}):o===this.BROAD_DATA_REQ&&(s=(r.max_high?r.max_high:r.data[r.data.length-1][2])+1);var l=e.copy().set("start",s),d=this,h=this.load_data(l,i,a,n),c=t.Deferred();return this.set_data(e,c),t.when(h).then(function(t){t.data&&(t.data=r.data.concat(t.data),t.max_low&&(t.max_low=r.max_low),t.message&&(t.message=t.message.replace(/[0-9]+/,t.data.length))),d.set_data(e,t),c.resolve(t)}),c},can_get_more_detailed_data:function(t){var e=this.get_elt(t);return"bigwig"===e.dataset_type&&e.data.length<8e3},get_more_detailed_data:function(t,e,i,a,n){var o=this._mark_stale(t);return o?(n||(n={}),"bigwig"===o.dataset_type&&(n.num_samples=1e3*a),this.load_data(t,e,i,n)):void console.log("ERROR getting more detailed data: no current data")},_mark_stale:function(t){var e=this.get_elt(t);return e||console.log("ERROR: no data to mark as stale: ",this.get("dataset"),t.toString()),e.stale=!0,e},get_genome_wide_data:function(e){var i=this,a=!0,n=r.map(e.get("chroms_info").chrom_info,function(t){var e=i.get_elt(new S({chrom:t.chrom,start:0,end:t.len}));return e||(a=!1),e});if(a)return n;var o=t.Deferred();return t.getJSON(this.get("dataset").url(),{data_type:"genome_data"},function(t){i.add_data(t.data),o.resolve(t.data)}),o},subset_entry:function(t,e){var i={bigwig:function(t,e){return r.filter(t,function(t){return t[0]>=e.get("start")&&t[0]<=e.get("end")})},refseq:function(e,i){var a=i.get("start")-t.region.get("start");return t.data.slice(a,a+i.length())}},a=t.data;return!t.region.same(e)&&t.dataset_type in i&&(a=i[t.dataset_type](t.data,e)),{region:e,data:a,dataset_type:t.dataset_type}}}),k=x.extend({initialize:function(t){var e=new a.Model;e.urlRoot=t.data_url,this.set("dataset",e)},load_data:function(t,e,i,a){return t.length()<=1e5?x.prototype.load_data.call(this,t,e,i,a):{data:null,region:t}}}),C=a.Model.extend({defaults:{name:null,key:null,chroms_info:null},initialize:function(t){this.id=t.dbkey},get_chroms_info:function(){return this.attributes.chroms_info.chrom_info},get_chrom_region:function(t){var e=r.find(this.get_chroms_info(),function(e){return e.chrom===t});return new S({chrom:e.chrom,end:e.len})},get_chrom_len:function(t){return r.find(this.get_chroms_info(),function(e){return e.chrom===t}).len}}),S=a.Model.extend({defaults:{chrom:null,start:0,end:0,str_val:null,genome:null},same:function(t){return this.attributes.chrom===t.get("chrom")&&this.attributes.start===t.get("start")&&this.attributes.end===t.get("end")},initialize:function(t){if(t.from_str){var e=t.from_str.split(":"),i=e[0],a=e[1].split("-");this.set({chrom:i,start:parseInt(a[0],10),end:parseInt(a[1],10)})}this.attributes.str_val=this.get("chrom")+":"+this.get("start")+"-"+this.get("end"),this.on("change",function(){this.attributes.str_val=this.get("chrom")+":"+this.get("start")+"-"+this.get("end")},this)},copy:function(){return new S({chrom:this.get("chrom"),start:this.get("start"),end:this.get("end")})},length:function(){return this.get("end")-this.get("start")},toString:function(){return this.attributes.str_val},toJSON:function(){return{chrom:this.get("chrom"),start:this.get("start"),end:this.get("end")}},compute_overlap:function(t){var e=this.get("chrom"),i=t.get("chrom"),a=this.get("start"),n=t.get("start"),o=this.get("end"),r=t.get("end");return e&&i&&e!==i?S.overlap_results.DIF_CHROMS:a<n?o<n?S.overlap_results.BEFORE:o<r?S.overlap_results.OVERLAP_START:S.overlap_results.CONTAINS:a>n?a>r?S.overlap_results.AFTER:o<=r?S.overlap_results.CONTAINED_BY:S.overlap_results.OVERLAP_END:o>=r?S.overlap_results.CONTAINS:S.overlap_results.CONTAINED_BY},trim:function(t){if(this.attributes.start<0&&(this.attributes.start=0),this.attributes.genome){var e=this.attributes.genome.get_chrom_len(this.attributes.chrom);this.attributes.end>e&&(this.attributes.end=e-1)}return this},contains:function(t){return this.compute_overlap(t)===S.overlap_results.CONTAINS},overlaps:function(t){return 0===r.intersection([this.compute_overlap(t)],[S.overlap_results.DIF_CHROMS,S.overlap_results.BEFORE,S.overlap_results.AFTER]).length}},{overlap_results:{DIF_CHROMS:1e3,BEFORE:1001,CONTAINS:1002,OVERLAP_START:1003,OVERLAP_END:1004,CONTAINED_BY:1005,AFTER:1006}}),M=a.Collection.extend({model:S}),T=a.Model.extend({defaults:{region:null,note:""},initialize:function(t){this.set("region",new S(t.region))}}),z=a.Collection.extend({model:T}),A=a.Model.extend(m).extend({defaults:{mode:"Auto"},initialize:function(t){this.set("dataset",new l.default.Dataset(t.dataset));var e=[{key:"name",default_value:this.get("dataset").get("name")},{key:"color"},{key:"min_value",label:"Min Value",type:"float",default_value:0},{key:"max_value",label:"Max Value",type:"float",default_value:1}];this.set("config",u.default.ConfigSettingCollection.from_models_and_saved_values(e,t.prefs));var i=this.get("preloaded_data");i=i?i.data:[],this.set("data_manager",new x({dataset:this.get("dataset"),init_data:i}))}},{to_json_keys:["track_type","dataset","prefs","mode","filters","tool_state"],to_json_mappers:{prefs:function(t,e){return 0===r.size(t)&&(t={name:e.get("config").get("name").get("value"),color:e.get("config").get("color").get("value")}),t},dataset:function(t){return{id:t.id,hda_ldda:t.get("hda_ldda")}}}}),O=a.Collection.extend({model:A}),$=a.Model.extend({defaults:{title:"",type:""},urlRoot:Galaxy.root+"api/visualizations",save:function(){return t.ajax({url:this.url(),type:"POST",dataType:"json",data:{vis_json:JSON.stringify(this)}})}}),I=$.extend(m).extend({defaults:r.extend({},$.prototype.defaults,{dbkey:"",drawables:null,bookmarks:null,viewport:null}),initialize:function(t){this.set("drawables",new O(t.tracks));var e=[];this.set("config",u.default.ConfigSettingCollection.from_models_and_saved_values(e,t.prefs)),this.unset("tracks"),this.get("drawables").each(function(t){t.unset("preloaded_data")})},add_tracks:function(t){this.get("drawables").add(t)}},{to_json_keys:["view","viewport","bookmarks"],to_json_mappers:{view:function(t,e){return{obj_type:"View",prefs:{name:e.get("title"),content_visible:!0},drawables:e.get("drawables")}}}}),G=a.Router.extend({initialize:function(t){this.view=t.view,this.route(/([\w]+)$/,"change_location"),this.route(/([\w\+]+\:[\d,]+-[\d,]+)$/,"change_location");var e=this;e.view.on("navigate",function(t){e.navigate(t)})},change_location:function(t){this.view.go_to(t)}});e.default={BackboneTrack:A,BrowserBookmark:T,BrowserBookmarkCollection:z,Cache:y,CanvasManager:b,Genome:C,GenomeDataManager:x,GenomeRegion:S,GenomeRegionCollection:M,GenomeVisualization:I,GenomeReferenceDataManager:k,TrackBrowserRouter:G,Visualization:$,select_datasets:w}}).call(e,i(0),i(2))},11:function(t,e,i){"use strict";(function(t,a){function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(1),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(o),s=i(7),l=n(s),d=i(11),h=(n(d),t.Model.extend({initialize:function(t){var e=this.get("key");this.set("id",e);var i=r.find([{key:"name",label:"Name",type:"text",default_value:""},{key:"color",label:"Color",type:"color",default_value:null},{key:"min_value",label:"Min Value",type:"float",default_value:null},{key:"max_value",label:"Max Value",type:"float",default_value:null},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"height",type:"int",default_value:32,hidden:!0},{key:"pos_color",label:"Positive Color",type:"color",default_value:"#FF8C00"},{key:"neg_color",label:"Negative Color",type:"color",default_value:"#4169E1"},{key:"block_color",label:"Block color",type:"color",default_value:null},{key:"label_color",label:"Label color",type:"color",default_value:"black"},{key:"show_insertions",label:"Show insertions",type:"bool",default_value:!1},{key:"show_counts",label:"Show summary counts",type:"bool",default_value:!0},{key:"reverse_strand_color",label:"Antisense strand color",type:"color",default_value:null},{key:"show_differences",label:"Show differences only",type:"bool",default_value:!0}],function(t){return t.key===e});i&&this.set(r.extend({},i,t)),void 0===this.get("value")&&void 0!==this.get("default_value")&&(this.set_value(this.get("default_value")),this.get("value")||"color"!==this.get("type")||this.set("value",l.default.get_random_color()))},set_value:function(t,e){var i=this.get("type");"float"===i?t=parseFloat(t):"int"===i&&(t=parseInt(t,10)),this.set({value:t},e)}})),c=t.Collection.extend({model:h,to_key_value_dict:function(){var t={};return this.each(function(e){t[e.get("key")]=e.get("value")}),t},get_value:function(t){var e=this.get(t);if(e)return e.get("value")},set_value:function(t,e,i){var a=this.get(t);if(a)return a.set_value(e,i)},set_default_value:function(t,e){var i=this.get(t);if(i)return i.set("default_value",e)}},{from_models_and_saved_values:function(t,e){return e&&(t=r.map(t,function(t){return r.extend({},t,{value:e[t.key]})})),new c(t)}}),u=t.View.extend({className:"config-settings-view",render:function(){var t=this.$el;return this.collection.each(function(e,i){if(!e.get("hidden")){var n="param_"+i,o=e.get("type"),s=e.get("value"),d=a("<div class='form-row' />").appendTo(t);if(d.append(a("<label />").attr("for",n).text(e.get("label")+":")),"bool"===o)d.append(a('<input type="checkbox" />').attr("id",n).attr("name",n).attr("checked",s));else if("text"===o)d.append(a('<input type="text"/>').attr("id",n).val(s).click(function(){a(this).select()}));else if("select"===o){var h=a("<select />").attr("id",n);r.each(e.get("options"),function(t){a("<option/>").text(t.label).attr("value",t.value).appendTo(h)}),h.val(s),d.append(h)}else if("color"===o){var c=a("<div/>").appendTo(d),u=a("<input />").attr("id",n).attr("name",n).val(s).css("float","left").appendTo(c).click(function(t){a(".tooltip").removeClass("in");var e=a(this).siblings(".tooltip").addClass("in");e.css({left:a(this).position().left+a(this).width()+5,top:a(this).position().top-a(e).height()/2+a(this).height()/2}).show(),e.click(function(t){t.stopPropagation()}),a(document).bind("click.color-picker",function(){e.hide(),a(document).unbind("click.color-picker")}),t.stopPropagation()}),f=a("<a href='javascript:void(0)'/>").addClass("icon-button arrow-circle").appendTo(c).attr("title","Set new random color").tooltip(),_=a("<div class='tooltip right' style='position: absolute;' />").appendTo(c).hide(),p=a("<div class='tooltip-inner' style='text-align: inherit'></div>").appendTo(_),g=(a("<div class='tooltip-arrow'></div>").appendTo(_),a.farbtastic(p,{width:100,height:100,callback:u,color:s}));c.append(a("<div/>").css("clear","both")),function(t){f.click(function(){t.setColor(l.default.get_random_color())})}(g)}else d.append(a("<input />").attr("id",n).attr("name",n).val(s));e.help&&d.append(a("<div class='help'/>").text(e.help))}}),this},render_in_modal:function(t){var e=this,i=function(){Galaxy.modal.hide(),a(window).unbind("keypress.check_enter_esc")},n=function(){Galaxy.modal.hide(),a(window).unbind("keypress.check_enter_esc"),e.update_from_form()},o=function(t){27===(t.keyCode||t.which)?i():13===(t.keyCode||t.which)&&n()};a(window).bind("keypress.check_enter_esc",o),0===this.$el.children().length&&this.render(),Galaxy.modal.show({title:t||"Configure",body:this.$el,buttons:{Cancel:i,OK:n}})},update_from_form:function(){var t=this;this.collection.each(function(e,i){if(!e.get("hidden")){var a="param_"+i,n=t.$el.find("#"+a).val();"bool"===e.get("type")&&(n=t.$el.find("#"+a).is(":checked")),e.set_value(n)}})}});e.default={ConfigSetting:h,ConfigSettingCollection:c,ConfigSettingCollectionView:u}}).call(e,i(2),i(0))},12:function(t,e,i){"use strict";(function(t,a,n,o){function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var s=i(3),l=r(s),d=i(24),h=r(d),c=i(25),u=r(c),f=i(19),_=r(f);t.ajaxSettings.traditional=!0,e.default=a.View.extend({grid:null,initialize:function(t){this.grid=new h.default,this.dict_format=t.dict_format,this.title=t.title;var e=this;if(window.add_tag_to_grid_filter=function(t,i){var a=t+(void 0!==i&&""!==i?":"+i:"");n("#advanced-search").is(":visible")||(n("#standard-search").slideToggle("fast"),n("#advanced-search").slideToggle("fast")),e.add_filter_condition("tags",a)},this.dict_format)if(this.setElement("<div/>"),t.url_base&&!t.items){var i=t.url_data||{};o.each(t.filters,function(t,e){i["f-"+e]=t}),n.ajax({url:t.url_base+"?"+n.param(i),success:function(i){i.embedded=t.embedded,i.filters=t.filters||{},e.init_grid(i)}})}else this.init_grid(t);else this.setElement("#grid-container"),this.init_grid(t);t.use_panels&&n("#center").css({padding:"10px",overflow:"auto"})},handle_refresh:function(t){t&&n.inArray("history",t)>-1&&window.top.Galaxy&&window.top.Galaxy.currHistoryPanel&&window.top.Galaxy.currHistoryPanel.loadCurrentHistory()},init_grid:function(t){this.grid.set(t);var e=this.grid.attributes;this.allow_title_display&&e.title&&l.default.setWindowTitle(e.title),this.handle_refresh(e.refresh_frames);var i=this.grid.get("url_base");if(i=i.replace(/^.*\/\/[^\/]+/,""),this.grid.set("url_base",i),this.$el.html(u.default.grid(e)),this.$el.find("#grid-table-header").html(u.default.header(e)),this.$el.find("#grid-table-body").html(u.default.body(e)),this.$el.find("#grid-table-footer").html(u.default.footer(e)),e.message){this.$el.find("#grid-message").html(u.default.message(e));var a=this;e.use_hide_message&&setTimeout(function(){a.$el.find("#grid-message").html("")},5e3)}this.init_grid_elements(),this.init_grid_controls(),init_refresh_on_change()},init_grid_controls:function(){var t=this;this.$el.find(".operation-button").each(function(){n(this).off(),n(this).click(function(){return t.submit_operation(this),!1})}),this.$el.find("input[type=text]").each(function(){n(this).off(),n(this).click(function(){n(this).select()}).keyup(function(){n(this).css("font-style","normal")})}),this.$el.find(".sort-link").each(function(){n(this).off(),n(this).click(function(){return t.set_sort_condition(n(this).attr("sort_key")),!1})}),this.$el.find(".text-filter-form").each(function(){n(this).off(),n(this).submit(function(){var e=n(this).attr("column_key"),i=n("#input-"+e+"-filter"),a=i.val();return i.val(""),t.add_filter_condition(e,a),!1})}),this.$el.find(".text-filter-val > a").each(function(){n(this).off(),n(this).click(function(){return n(this).parent().remove(),t.remove_filter_condition(n(this).attr("filter_key"),n(this).attr("filter_val")),!1})}),this.$el.find(".categorical-filter > a").each(function(){n(this).off(),n(this).click(function(){return t.set_categorical_filter(n(this).attr("filter_key"),n(this).attr("filter_val")),!1})}),this.$el.find(".advanced-search-toggle").each(function(){n(this).off(),n(this).click(function(){return t.$el.find("#standard-search").slideToggle("fast"),t.$el.find("#advanced-search").slideToggle("fast"),!1})}),this.$el.find("#check_all").off(),this.$el.find("#check_all").on("click",function(){t.check_all_items()})},init_grid_elements:function(){this.$el.find(".grid").each(function(){var t=n(this).find("input.grid-row-select-checkbox"),e=n(this).find("span.grid-selected-count"),i=function(){e.text(n(t).filter(":checked").length)};n(t).each(function(){n(this).change(i)}),i()}),0!==this.$el.find(".community_rating_star").length&&this.$el.find(".community_rating_star").rating({});var t=this.grid.attributes,e=this;this.$el.find(".page-link > a").each(function(){n(this).click(function(){return e.set_page(n(this).attr("page_num")),!1})}),this.$el.find(".use-target").each(function(){n(this).click(function(t){return e.execute({href:n(this).attr("href"),target:n(this).attr("target")}),!1})}),0!=t.items.length&&o.each(t.items,function(i,a){var n=e.$("#grid-"+a+"-popup").off(),r=new _.default(n);o.each(t.operations,function(t){e._add_operation(r,t,i)})})},_add_operation:function(t,e,i){var a=this,o=i.operation_config[e.label];o.allowed&&e.allow_popup&&t.addItem({html:e.label,href:o.url_args,target:o.target,confirmation_text:e.confirm,func:function(t){t.preventDefault();var o=n(t.target).html();e.onclick?e.onclick(i.encode_id):a.execute(this.findItemByHtml(o))}})},add_filter_condition:function(t,e){if(""===e)return!1;this.grid.add_filter(t,e,!0);var i=n(u.default.filter_element(t,e)),a=this;i.click(function(){n(this).remove(),a.remove_filter_condition(t,e)}),this.$el.find("#"+t+"-filtering-criteria").append(i),this.go_page_one(),this.execute()},remove_filter_condition:function(t,e){this.grid.remove_filter(t,e),this.go_page_one(),this.execute()},set_sort_condition:function(t){var e=this.grid.get("sort_key"),i=t;-1!==e.indexOf(t)&&"-"!==e.substring(0,1)&&(i="-"+t),this.$el.find(".sort-arrow").remove();var a="-"==i.substring(0,1)?"↑":"↓",o=n("<span>"+a+"</span>").addClass("sort-arrow");this.$el.find("#"+t+"-header").append(o),this.grid.set("sort_key",i),this.go_page_one(),this.execute()},set_categorical_filter:function(t,e){var i=this.grid.get("categorical_filters")[t],a=this.grid.get("filters")[t],o=this;this.$el.find("."+t+"-filter").each(function(){var r=n.trim(n(this).text()),s=i[r],l=s[t];if(l==e)n(this).empty(),n(this).addClass("current-filter"),n(this).append(r);else if(l==a){n(this).empty();var d=n('<a href="#">'+r+"</a>");d.click(function(){o.set_categorical_filter(t,l)}),n(this).removeClass("current-filter"),n(this).append(d)}}),this.grid.add_filter(t,e),this.go_page_one(),this.execute()},set_page:function(t){var e=this;this.$el.find(".page-link").each(function(){var i,a=n(this).attr("id"),o=parseInt(a.split("-")[2],10),r=e.grid.get("cur_page");if(o===t)i=n(this).children().text(),n(this).empty(),n(this).addClass("inactive-link"),n(this).text(i);else if(o===r){i=n(this).text(),n(this).empty(),n(this).removeClass("inactive-link");var s=n('<a href="#">'+i+"</a>");s.click(function(){e.set_page(o)}),n(this).append(s)}}),"all"===t?this.grid.set("cur_page",t):this.grid.set("cur_page",parseInt(t,10)),this.execute()},submit_operation:function(t,e){var i=n(t).val();if(!this.$el.find('input[name="id"]:checked').length>0)return!1;var a=o.findWhere(this.grid.attributes.operations,{label:i});a&&!e&&(e=a.confirm||"");var r=[];this.$el.find("input[name=id]:checked").each(function(){r.push(n(this).val())});var s={operation:i,id:r,confirmation_text:e};return"top"!=a.target&&"center"!=a.target||(s=o.extend(s,{href:a.href,target:a.target})),this.execute(s),!0},check_all_items:function(){var t=this.$(".grid-row-select-checkbox"),e=this.$("#check_all").prop("checked");o.each(t,function(t){n(t).prop("checked",e)}),this.init_grid_elements()},go_page_one:function(){var t=this.grid.get("cur_page");null!==t&&void 0!==t&&"all"!==t&&this.grid.set("cur_page",1)},execute:function(t){var e=null,i=null,a=null,o=null,r=null;if(t&&(i=t.href,a=t.operation,e=t.id,o=t.confirmation_text,r=t.target,void 0!==i&&-1!=i.indexOf("operation="))){var s=i.split("?");if(s.length>1)for(var l=s[1],d=l.split("&"),h=0;h<d.length;h++)-1!=d[h].indexOf("operation")?(a=d[h].split("=")[1],a=a.replace(/\+/g," ")):-1!=d[h].indexOf("id")&&(e=d[h].split("=")[1])}return a&&e?!(o&&""!=o&&"None"!=o&&"null"!=o&&!confirm(o))&&(a=a.toLowerCase(),this.grid.set({operation:a,item_ids:e}),"top"==r?window.top.location=i+"?"+n.param(this.grid.get_url_data()):"center"==r?n("#galaxy_main").attr("src",i+"?"+n.param(this.grid.get_url_data())):this.grid.can_async_op(a)||this.dict_format?this.update_grid():this.go_to(r,i),!1):i?(this.go_to(r,i),!1):(this.grid.get("async")||this.dict_format?this.update_grid():this.go_to(r,i),!1)},go_to:function(t,e){var i=this.grid.get("async");this.grid.set("async",!1);var a=this.$el.find("#advanced-search").is(":visible");switch(this.grid.set("advanced_search",a),e||(e=this.grid.get("url_base")+"?"+n.param(this.grid.get_url_data())),this.grid.set({operation:void 0,item_ids:void 0,async:i}),t){case"center":n("#galaxy_main").attr("src",e);break;case"top":window.top.location=e;break;default:window.location=e}},update_grid:function(){var t=this.grid.get("operation")?"POST":"GET";this.$el.find(".loading-elt-overlay").show();var e=this;n.ajax({type:t,url:e.grid.get("url_base"),data:e.grid.get_url_data(),error:function(t){alert("Grid refresh failed")},success:function(t){var i=e.grid.get("embedded"),a=e.grid.get("insert"),o=e.$el.find("#advanced-search").is(":visible"),r=e.dict_format?t:n.parseJSON(t);r.embedded=i,r.insert=a,r.advanced_search=o,e.init_grid(r),e.$el.find(".loading-elt-overlay").hide()},complete:function(){e.grid.set({operation:void 0,item_ids:void 0})}})}})}).call(e,i(0),i(2),i(0),i(1))},13:function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0});var a=t.Model.extend({defaults:{activate:!1}}),n=t.Collection.extend({model:a}),o=t.View.extend({el:"#webhook-view",initialize:function(t){var e=this,i=t.toolId||"",n=t.toolVersion||"";this.$el.attr("tool_id",i),this.$el.attr("tool_version",n),this.model=new a,this.model.urlRoot=t.urlRoot,this.model.fetch({success:function(){e.render()}})},render:function(){var t=this.model.toJSON();return this.$el.html('<div id="'+t.name+'"></div>'),t.styles&&i("<style/>",{type:"text/css"}).text(t.styles).appendTo("head"),t.script&&i("<script/>",{type:"text/javascript"}).text(t.script).appendTo("head"),this}}),r=function(t){var e=new n;e.url=Galaxy.root+t.url,e.fetch({async:!t.async||t.async,success:t.callback})};e.default={Webhooks:n,WebhookView:o,add:r}}).call(e,i(2),i(0))},14:function(t,e,i){"use strict";(function(t,i,a){Object.defineProperty(e,"__esModule",{value:!0});var n=t.Model.extend({defaults:{title:"",icon_class:"",on_click:null,menu_options:null,is_menu_button:!0,id:null,href:null,target:null,enabled:!0,visible:!0,tooltip_config:{}}}),o=t.View.extend({initialize:function(){this.model.attributes.tooltip_config={placement:"bottom"},this.model.bind("change",this.render,this)},render:function(){this.$el.tooltip("hide");var t=this.template(this.model.toJSON());return t.tooltip(this.model.get("tooltip_config")),this.$el.replaceWith(t),this.setElement(t),this},events:{click:"click"},click:function(t){return!i.isFunction(this.model.get("on_click"))||(this.model.get("on_click")(t),!1)},template:function(t){var e='title="'+t.title+'" class="icon-button';return t.is_menu_button&&(e+=" menu-button"),e+=" "+t.icon_class,t.enabled||(e+="_disabled"),e+='"',t.id&&(e+=' id="'+t.id+'"'),e+=' href="'+t.href+'"',t.target&&(e+=' target="'+t.target+'"'),t.visible||(e+=' style="display: none;"'),e=t.enabled?"<a "+e+"/>":"<span "+e+"/>",a(e)}}),r=t.Collection.extend({model:n}),s=t.View.extend({tagName:"div",initialize:function(){this.render()},render:function(){var t=this;return this.collection.each(function(e){var i=a("<a/>").attr("href","javascript:void(0)").attr("title",e.attributes.title).addClass("icon-button menu-button").addClass(e.attributes.icon_class).appendTo(t.$el).click(e.attributes.on_click);e.attributes.tooltip_config&&i.tooltip(e.attributes.tooltip_config);var n=e.get("options");n&&make_popupmenu(i,n)}),this}}),l=function(t,e){e||(e={});var a=new r(i.map(t,function(t){return new n(i.extend(t,e))}));return new s({collection:a})};e.default={IconButton:n,IconButtonView:o,IconButtonCollection:r,IconButtonMenuView:s,create_icon_buttons_menu:l}}).call(e,i(2),i(1),i(0))},149:function(t,e,i){"use strict";(function(t,e){function a(t){return t&&t.__esModule?t:{default:t}}var n=i(0),o=a(n),r=i(59),s=a(r),l=i(4),d=a(l),h=i(61),c=a(h),u=o.default;window.app=function(i,a){window.Galaxy=new s.default.GalaxyApp(i,a),Galaxy.debug("login app");var n=encodeURI(i.redirect);if(!i.show_welcome_with_login){var r=o.default.param({use_panels:"True",redirect:n});return void(window.location.href=Galaxy.root+"user/login?"+r)}var l=t.View.extend({initialize:function(e){this.page=e,this.model=new t.Model({title:(0,d.default)("Login required")}),this.setElement(this._template())},render:function(){this.page.$("#galaxy_main").prop("src",i.welcome_url)},_template:function(){return'<iframe src="'+i.root+"user/login?"+u.param({redirect:n})+'" frameborder="0" style="width: 100%; height: 100%;"/>'}});u(function(){Galaxy.page=new c.default.View(e.extend(i,{Right:l}))})}}).call(e,i(2),i(1))},16:function(t,e,i){"use strict";(function(t,i,a){Object.defineProperty(e,"__esModule",{value:!0});var n=t.View.extend({initialize:function(e){this.model=e&&e.model||new t.Model(e),this.setElement(i("<div/>").addClass("corner frame")),this.$el.append(i("<div/>").addClass("f-header corner").append(i("<div/>").addClass("f-title")).append(i("<div/>").addClass("f-icon f-close fa fa-close").tooltip({title:"Close",placement:"bottom"}))).append(i("<div/>").addClass("f-content")).append(i("<div/>").addClass("f-resize f-icon corner fa fa-expand").tooltip({title:"Resize"})).append(i("<div/>").addClass("f-cover")),this.$header=this.$(".f-header"),this.$title=this.$(".f-title"),this.$content=this.$(".f-content"),this.render(),this.listenTo(this.model,"change",this.render,this)},render:function(){var t=this,e=this.model.attributes;this.$title.html(e.title||""),this.$header.find(".f-icon-left").remove(),a.each(e.menu,function(e){var n=i("<div/>").addClass("f-icon-left").addClass(e.icon);a.isFunction(e.disabled)&&e.disabled()?n.attr("disabled",!0):n.on("click",function(){e.onclick(t)}).tooltip({title:e.tooltip,placement:"bottom"}),t.$header.append(n)}),e.url?this.$content.html(i("<iframe/>").addClass("f-iframe").attr("scrolling","auto").attr("src",e.url+(-1===e.url.indexOf("?")?"?":"&")+"widget=True")):e.content&&(a.isFunction(e.content)?e.content(t.$content):t.$content.html(e.content))}}),o=t.View.extend({defaultOptions:{frame:{cols:6,rows:3},rows:1e3,cell:130,margin:5,scroll:5,top_min:40,frame_max:9,visible:!0},cols:0,top:0,top_max:0,frame_z:0,frame_counter:0,frame_uid:0,frame_list:{},frame_shadow:null,visible:!1,event:{},initialize:function(e){var n=this;this.options=a.defaults(e||{},this.defaultOptions),this.visible=this.options.visible,this.top=this.top_max=this.options.top_min,this.setElement(i("<div/>").addClass("galaxy-frame").append(i("<div/>").addClass("frame-background")).append(i("<div/>").addClass("frame-menu frame-scroll-up fa fa-chevron-up fa-2x")).append(i("<div/>").addClass("frame-menu frame-scroll-down fa fa-chevron-down fa-2x"))),this.frame_shadow=new t.View({el:i("<div/>").addClass("corner frame-shadow")}),this.$el.append(this.frame_shadow.$el),this._frameInit(this.frame_shadow,"#frame-shadow"),this._frameResize(this.frame_shadow,{width:0,height:0}),this.frame_list["#frame-shadow"]=this.frame_shadow,this.visible?this.show():this.hide(),this._panelRefresh(),i(window).resize(function(){n.visible&&n._panelRefresh()})},render:function(){this.$(".frame-scroll-up")[this.top!=this.options.top_min&&"show"||"hide"](),this.$(".frame-scroll-down")[this.top!=this.top_max&&"show"||"hide"]()},add:function(t){if(this.frame_counter>=this.options.frame_max)Galaxy.modal.show({title:"Warning",body:"You have reached the maximum number of allowed frames ("+this.options.frame_max+").",buttons:{Close:function(){Galaxy.modal.hide()}}});else{var e="#frame-"+this.frame_uid++;if(0!==i(e).length)Galaxy.modal.show({title:"Error",body:"This frame already exists. This page might contain multiple frame managers.",buttons:{Close:function(){Galaxy.modal.hide()}}});else{this.top=this.options.top_min;var a=new n(t);this.$el.append(a.$el),t.width=this._toPixelCoord("width",this.options.frame.cols),t.height=this._toPixelCoord("height",this.options.frame.rows),this.frame_z=parseInt(a.$el.css("z-index")),this.frame_list[e]=a,this.frame_counter++,this._frameInit(a,e),this._frameResize(a,{width:t.width,height:t.height}),this._frameInsert(a,{top:0,left:0},!0),!this.visible&&this.show(),this.trigger("add")}}},del:function(t){var e=this,i=t.$el;i.fadeOut("fast",function(){i.remove(),delete e.frame_list[t.id],e.frame_counter--,e._panelRefresh(!0),e._panelAnimationComplete(),e.trigger("remove")})},show:function(){this.visible=!0,this.$el.fadeIn("fast"),this.trigger("show")},hide:function(){this.event.type||(this.visible=!1,this.$el.fadeOut("fast",function(){i(this).hide()}),this.trigger("hide"))},length:function(){return this.frame_counter},events:{mousemove:"_eventFrameMouseMove",mouseup:"_eventFrameMouseUp",mouseleave:"_eventFrameMouseUp",mousewheel:"_eventPanelScroll",DOMMouseScroll:"_eventPanelScroll","mousedown .frame":"_eventFrameMouseDown","mousedown .frame-background":"_eventHide","mousedown .frame-scroll-up":"_eventPanelScroll_up","mousedown .frame-scroll-down":"_eventPanelScroll_down","mousedown .f-close":"_eventFrameClose"},_eventFrameMouseDown:function(t){i(".tooltip").hide(),this.event.type||((i(t.target).hasClass("f-header")||i(t.target).hasClass("f-title"))&&(this.event.type="drag"),i(t.target).hasClass("f-resize")&&(this.event.type="resize"),this.event.type&&(t.preventDefault(),this.event.target=this._frameIdentify(t.target),this.event.xy={x:t.originalEvent.pageX,y:t.originalEvent.pageY},this._frameDragStart(this.event.target)))},_eventFrameMouseMove:function(t){if(this.event.type){var e={x:t.originalEvent.pageX,y:t.originalEvent.pageY},i={x:e.x-this.event.xy.x,y:e.y-this.event.xy.y};this.event.xy=e;var a=this._frameScreen(this.event.target);if("resize"==this.event.type){a.width+=i.x,a.height+=i.y;var n=this.options.cell-this.options.margin-1;a.width=Math.max(a.width,n),a.height=Math.max(a.height,n),this._frameResize(this.event.target,a),a.width=this._toGridCoord("width",a.width)+1,a.height=this._toGridCoord("height",a.height)+1,a.width=this._toPixelCoord("width",a.width),a.height=this._toPixelCoord("height",a.height),this._frameResize(this.frame_shadow,a),this._frameInsert(this.frame_shadow,{top:this._toGridCoord("top",a.top),left:this._toGridCoord("left",a.left)})}else if("drag"==this.event.type){a.left+=i.x,a.top+=i.y,this._frameOffset(this.event.target,a);var o={top:this._toGridCoord("top",a.top),left:this._toGridCoord("left",a.left)};0!==o.left&&o.left++,this._frameInsert(this.frame_shadow,o)}}},_eventFrameMouseUp:function(t){this.event.type&&(this._frameDragStop(this.event.target),this.event.type=null)},_eventFrameClose:function(t){this.event.type||(t.preventDefault(),this.del(this._frameIdentify(t.target)))},_eventHide:function(t){!this.event.type&&this.hide()},_eventPanelScroll:function(t){if(!this.event.type&&this.visible){0!==i(t.srcElement).parents(".frame").length?t.stopPropagation():(t.preventDefault(),this._panelScroll(t.originalEvent.detail?t.originalEvent.detail:t.originalEvent.wheelDelta/-3))}},_eventPanelScroll_up:function(t){this.event.type||(t.preventDefault(),this._panelScroll(-this.options.scroll))},_eventPanelScroll_down:function(t){this.event.type||(t.preventDefault(),this._panelScroll(this.options.scroll))},_frameIdentify:function(t){return this.frame_list["#"+i(t).closest(".frame").attr("id")]},_frameDragStart:function(t){this._frameFocus(t,!0);var e=this._frameScreen(t);this._frameResize(this.frame_shadow,e),this._frameGrid(this.frame_shadow,t.grid_location),t.grid_location=null,this.frame_shadow.$el.show(),i(".f-cover").show()},_frameDragStop:function(t){this._frameFocus(t,!1);var e=this._frameScreen(this.frame_shadow);this._frameResize(t,e),this._frameGrid(t,this.frame_shadow.grid_location,!0),this.frame_shadow.grid_location=null,this.frame_shadow.$el.hide(),i(".f-cover").hide(),this._panelAnimationComplete()},_toGridCoord:function(t,e){var i="width"==t||"height"==t?1:-1;return"top"==t&&(e-=this.top),parseInt((e+i*this.options.margin)/this.options.cell,10)},_toPixelCoord:function(t,e){var i="width"==t||"height"==t?1:-1,a=e*this.options.cell-i*this.options.margin;return"top"==t&&(a+=this.top),a},_toGrid:function(t){return{top:this._toGridCoord("top",t.top),left:this._toGridCoord("left",t.left),width:this._toGridCoord("width",t.width),height:this._toGridCoord("height",t.height)}},_toPixel:function(t){return{top:this._toPixelCoord("top",t.top),left:this._toPixelCoord("left",t.left),width:this._toPixelCoord("width",t.width),height:this._toPixelCoord("height",t.height)}},_isCollision:function(t){for(var e in this.frame_list){var i=this.frame_list[e];if(null!==i.grid_location&&function(t,e){return!(t.left>e.left+e.width-1||t.left+t.width-1<e.left||t.top>e.top+e.height-1||t.top+t.height-1<e.top)}(t,i.grid_location))return!0}return!1},_locationRank:function(t){return t.top*this.cols+t.left},_panelRefresh:function(t){this.cols=parseInt(i(window).width()/this.options.cell,10)+1,this._frameInsert(null,null,t)},_panelAnimationComplete:function(){var t=this;i(".frame").promise().done(function(){t._panelScroll(0,!0)})},_panelScroll:function(t,e){var i=this.top-this.options.scroll*t;if(i=Math.max(i,this.top_max),i=Math.min(i,this.options.top_min),this.top!=i){for(var a in this.frame_list){var n=this.frame_list[a];if(null!==n.grid_location){var o={top:n.screen_location.top-(this.top-i),left:n.screen_location.left};this._frameOffset(n,o,e)}}this.top=i}this.render()},_frameInit:function(t,e){t.id=e,t.screen_location={},t.grid_location={},t.grid_rank=null,t.$el.attr("id",e.substring(1))},_frameInsert:function(t,e,n){var o=this,r=[];t&&(t.grid_location=null,r.push([t,this._locationRank(e)])),a.each(this.frame_list,function(t){null!==t.grid_location&&(t.grid_location=null,r.push([t,t.grid_rank]))}),r.sort(function(t,e){return t[1]<e[1]?-1:t[1]>e[1]?1:0}),a.each(r,function(t){o._framePlace(t[0],n)}),this.top_max=0,a.each(this.frame_list,function(t){null!==t.grid_location&&(o.top_max=Math.max(o.top_max,t.grid_location.top+t.grid_location.height))}),this.top_max=i(window).height()-this.top_max*this.options.cell-2*this.options.margin,this.top_max=Math.min(this.top_max,this.options.top_min),this.render()},_framePlace:function(t,e){t.grid_location=null;for(var i=this._toGrid(this._frameScreen(t)),a=!1,n=0;n<this.options.rows;n++){for(var o=0;o<Math.max(1,this.cols-i.width);o++)if(i.top=n,i.left=o,!this._isCollision(i)){a=!0;break}if(a)break}a?this._frameGrid(t,i,e):console.log("Grid dimensions exceeded.")},_frameFocus:function(t,e){t.$el.css("z-index",this.frame_z+(e?1:0))},_frameOffset:function(t,e,i){if(t.screen_location.left=e.left,t.screen_location.top=e.top,i){this._frameFocus(t,!0);var a=this;t.$el.animate({top:e.top,left:e.left},"fast",function(){a._frameFocus(t,!1)})}else t.$el.css({top:e.top,left:e.left})},_frameResize:function(t,e){t.$el.css({width:e.width,height:e.height}),t.screen_location.width=e.width,t.screen_location.height=e.height},_frameGrid:function(t,e,i){t.grid_location=e,this._frameOffset(t,this._toPixel(e),i),t.grid_rank=this._locationRank(e)},_frameScreen:function(t){var e=t.screen_location;return{top:e.top,left:e.left,width:e.width,height:e.height}}});e.default={View:o}}).call(e,i(2),i(0),i(1))},19:function(t,e,i){"use strict";(function(t,i,a,n){Object.defineProperty(e,"__esModule",{value:!0});var o=t.View.extend({initialize:function(t,e){this.$button=t,this.$button.length||(this.$button=i("<div/>")),this.options=e||[],this.$button.data("popupmenu",this);var a=this;this.$button.click(function(t){return i(".popmenu-wrapper").remove(),a._renderAndShow(t),!1})},_renderAndShow:function(t){this.render(),this.$el.appendTo("body").css(this._getShownPosition(t)).show(),this._setUpCloseBehavior()},render:function(){if(this.$el.addClass("popmenu-wrapper").hide().css({position:"absolute"}).html(this.template(this.$button.attr("id"),this.options)),this.options.length){var t=this;this.$el.find("li").each(function(e,a){var n=t.options[e];n.func&&i(this).children("a.popupmenu-option").click(function(e){n.func.call(t,e,n),e.preventDefault()})})}return this},template:function(t,e){return['<ul id="',t,'-menu" class="dropdown-menu">',this._templateOptions(e),"</ul>"].join("")},_templateOptions:function(t){return t.length?a.map(t,function(t){return t.divider?'<li class="divider"></li>':t.header?['<li class="head"><a href="javascript:void(0);">',t.html,"</a></li>"].join(""):['<li><a class="popupmenu-option" href="',t.href||"javascript:void(0);",'"',t.target?' target="'+t.target+'"':"",">",t.checked?'<span class="fa fa-check"></span>':"",t.html,"</a></li>"].join("")}).join(""):"<li>(no options)</li>"},_getShownPosition:function(t){var e=this.$el.width(),a=t.pageX-e/2;return a=Math.min(a,i(document).scrollLeft()+i(window).width()-e-5),a=Math.max(a,i(document).scrollLeft()+5),{top:t.pageY,left:a}},_setUpCloseBehavior:function(){function t(t){if(i(document).off("click.close_popup"),window&&window.parent!==window)try{i(window.parent.document).off("click.close_popup")}catch(t){}else try{i("iframe#galaxy_main").contents().off("click.close_popup")}catch(t){}e.remove()}var e=this;if(i("html").one("click.close_popup",t),window&&window.parent!==window)try{i(window.parent.document).find("html").one("click.close_popup",t)}catch(t){}else try{i("iframe#galaxy_main").contents().one("click.close_popup",t)}catch(t){}},addItem:function(t,e){return e=e>=0?e:this.options.length,this.options.splice(e,0,t),this},removeItem:function(t){return t>=0&&this.options.splice(t,1),this},findIndexByHtml:function(t){for(var e=0;e<this.options.length;e++)if(a.has(this.options[e],"html")&&this.options[e].html===t)return e;return null},findItemByHtml:function(t){return this.options[this.findIndexByHtml(t)]},toString:function(){return"PopupMenu"}});o.create=function(t,e){return new o(t,e)},o.make_popupmenu=function(t,e){var r=[];return a.each(e,function(t,e){var i={html:e};null===t?i.header=!0:"function"===n.type(t)&&(i.func=t),r.push(i)}),new o(i(t),r)},o.convertLinksToOptions=function(t,e){t=i(t),e=e||"a";var a=[];return t.find(e).each(function(t,e){var n={},o=i(t);if(n.html=o.text(),o.attr("href")){var r=o.attr("href"),s=o.attr("target"),l=o.attr("confirm");n.func=function(){if(!l||confirm(l))switch(s){case"_parent":window.parent.location=r;break;case"_top":window.top.location=r;break;default:window.location=r}}}a.push(n)}),a},o.fromExistingDom=function(t,e,a){t=i(t),e=i(e);var n=o.convertLinksToOptions(e,a);return e.remove(),new o(t,n)},o.make_popup_menus=function(t,e,a){t=t||document,e=e||"div[popupmenu]",a=a||function(t,e){return"#"+t.attr("popupmenu")};var n=[];return i(t).find(e).each(function(){var e=i(this),r=i(t).find(a(e,t));n.push(o.fromDom(r,e)),r.addClass("popup")}),n},e.default=o}).call(e,i(2),i(0),i(1),i(0))},20:function(t,e,i){"use strict";(function(t,a){Object.defineProperty(e,"__esModule",{value:!0});var n=i(3),o=(function(t){t&&t.__esModule}(n),t.View.extend({initialize:function(e){this.collection=new t.Collection,this.model=e&&e.model||new t.Model({onchange:null,visible:!0}).set(e),this.setElement(a(this._template())),this.$nav=this.$(".tab-navigation"),this.$content=this.$(".tab-content"),this.$el.on("click",function(){a(".tooltip").hide()}),this.render(),this.listenTo(this.model,"change",this.render,this),this.listenTo(this.collection,"add",this._add,this),this.listenTo(this.collection,"remove",this._remove,this),this.listenTo(this.collection,"change",this._change,this),this.listenTo(this.collection,"reset",this._reset,this),this.listenTo(this.collection,"add remove reset",this.render,this)},render:function(){var t=this.model.get("current");t=this.$("#"+t).length>0?t:this.first(),t&&(this.$nav.children().removeClass("active"),this.$content.children().removeClass("active"),this.$("#tab-"+t).addClass("active"),this.$("#"+t).addClass("active")),this.$el[this.model.get("visible")?"fadeIn":"fadeOut"]("fast"),this.$nav[this.size()>1?"show":"hide"]()},current:function(){return this.model.get("current")},show:function(t){t&&(this.model.set({current:t,visible:!0}),this.model.get("onchange")&&this.model.get("onchange")(t))},hide:function(){this.model.set("visible",!1)},first:function(){var t=this.collection.first();return t&&t.id},size:function(){return this.collection.length},add:function(t){this.collection.add(t)},del:function(t){this.collection.remove(t)},delAll:function(){this.collection.reset()},showTab:function(t){this.collection.get(t).set("hidden",!1)},hideTab:function(t){this.collection.get(t).set("hidden",!0)},_add:function(t){var e=this,i=t.attributes;this.$content.append(a("<div/>").attr("id",i.id).addClass("tab-pane").append(i.$el)),this.$nav.append(a(this._template_tab(i)).show().tooltip({title:i.tooltip,placement:"bottom",container:e.$el}).on("click",function(t){t.preventDefault(),e.show(i.id)})),1==this.size()&&this.show(i.id)},_remove:function(t){this.$("#tab-"+t.id).remove(),this.$("#"+t.id).remove()},_reset:function(){this.$nav.empty(),this.$content.empty()},_change:function(t){this.$("#tab-"+t.id)[t.get("hidden")?"hide":"show"]()},_template:function(){return a("<div/>").addClass("ui-tabs tabbable tabs-left").append(a("<ul/>").addClass("tab-navigation nav nav-tabs")).append(a("<div/>").addClass("tab-content"))},_template_tab:function(t){var e=a("<li/>").addClass("tab-element").attr("id","tab-"+t.id).append(a("<a/>").attr("id","tab-title-link-"+t.id)),i=e.find("a");return t.icon&&i.append(a("<i/>").addClass("tab-icon fa").addClass(t.icon)),i.append(a("<span/>").attr("id","tab-title-text-"+t.id).addClass("tab-title-text").append(t.title)),e}}));e.default={View:o}}).call(e,i(2),i(0))},21:function(t,e,i){"use strict";function a(t,e){var i=void 0!==t.prototype?t.prototype:t;return void 0!==e&&(i._logNamespace=e),n.forEach(function(t){i[t]=function(){if(this.logger)return this.logger.emit?this.logger.emit(t,this._logNamespace,arguments):this.logger[t]?this.logger[t].apply(this.logger,arguments):void 0}}),t}Object.defineProperty(e,"__esModule",{value:!0});var n=["log","debug","info","warn","error","metric"];e.default=a},22:function(t,e,i){"use strict";(function(t,a){function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(1),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(o),s=i(7),l=n(s),d=i(9),h=n(d),c=i(23),u=(n(c),{hidden:!1,show:function(){this.set("hidden",!1)},hide:function(){this.set("hidden",!0)},toggle:function(){this.set("hidden",!this.get("hidden"))},is_visible:function(){return!this.attributes.hidden}}),f=t.Model.extend({defaults:{name:null,label:null,type:null,value:null,html:null,num_samples:5},initialize:function(t){this.attributes.html=unescape(this.attributes.html)},copy:function(){return new f(this.toJSON())},set_value:function(t){this.set("value",t||"")}}),_=t.Collection.extend({model:f}),p=f.extend({}),g=f.extend({set_value:function(t){this.set("value",parseInt(t,10))},get_samples:function(){return d3.scale.linear().domain([this.get("min"),this.get("max")]).ticks(this.get("num_samples"))}}),v=g.extend({set_value:function(t){this.set("value",parseFloat(t))}}),m=f.extend({get_samples:function(){return r.map(this.get("options"),function(t){return t[0]})}});f.subModelTypes={integer:g,float:v,data:p,select:m};var w=t.Model.extend({defaults:{id:null,name:null,description:null,target:null,inputs:[],outputs:[]},urlRoot:Galaxy.root+"api/tools",initialize:function(t){this.set("inputs",new _(r.map(t.inputs,function(t){return new(f.subModelTypes[t.type]||f)(t)})))},toJSON:function(){var e=t.Model.prototype.toJSON.call(this);return e.inputs=this.get("inputs").map(function(t){return t.toJSON()}),e},remove_inputs:function(t){var e=this,i=e.get("inputs").filter(function(e){return-1!==t.indexOf(e.get("type"))});e.get("inputs").remove(i)},copy:function(e){var i=new w(this.toJSON());if(e){var a=new t.Collection;i.get("inputs").each(function(t){t.get_samples()&&a.push(t)}),i.set("inputs",a)}return i},apply_search_results:function(t){return-1!==r.indexOf(t,this.attributes.id)?this.show():this.hide(),this.is_visible()},set_input_value:function(t,e){this.get("inputs").find(function(e){return e.get("name")===t}).set("value",e)},set_input_values:function(t){var e=this;r.each(r.keys(t),function(i){e.set_input_value(i,t[i])})},run:function(){return this._run()},rerun:function(t,e){return this._run({action:"rerun",target_dataset_id:t.id,regions:e})},get_inputs_dict:function(){var t={};return this.get("inputs").each(function(e){t[e.get("name")]=e.get("value")}),t},_run:function(t){var e=r.extend({tool_id:this.id,inputs:this.get_inputs_dict()},t),i=a.Deferred(),n=new l.default.ServerStateDeferred({ajax_settings:{url:this.urlRoot,data:JSON.stringify(e),dataType:"json",contentType:"application/json",type:"POST"},interval:2e3,success_fn:function(t){return"pending"!==t}});return a.when(n.go()).then(function(t){i.resolve(new h.default.DatasetCollection(t))}),i}});r.extend(w.prototype,u);var b=(t.View.extend({}),t.Collection.extend({model:w})),y=t.Model.extend(u),x=t.Model.extend({defaults:{elems:[],open:!1},clear_search_results:function(){r.each(this.attributes.elems,function(t){t.show()}),this.show(),this.set("open",!1)},apply_search_results:function(t){var e,i=!0;r.each(this.attributes.elems,function(a){a instanceof y?(e=a,e.hide()):a instanceof w&&a.apply_search_results(t)&&(i=!1,e&&e.show())}),i?this.hide():(this.show(),this.set("open",!0))}});r.extend(x.prototype,u);var k=t.Model.extend({defaults:{search_hint_string:"search tools",min_chars_for_search:3,clear_btn_url:"",visible:!0,query:"",results:null,clear_key:27},urlRoot:Galaxy.root+"api/tools",initialize:function(){this.on("change:query",this.do_search)},do_search:function(){var t=this.attributes.query;if(t.length<this.attributes.min_chars_for_search)return void this.set("results",null);var e=t;this.timer&&clearTimeout(this.timer),a("#search-clear-btn").hide(),a("#search-spinner").show();var i=this;this.timer=setTimeout(function(){"undefined"!=typeof ga&&ga("send","pageview",Galaxy.root+"?q="+e),a.get(i.urlRoot,{q:e},function(t){i.set("results",t),a("#search-spinner").hide(),a("#search-clear-btn").show()},"json")},400)},clear_search:function(){this.set("query",""),this.set("results",null)}});r.extend(k.prototype,u);var C=t.Model.extend({initialize:function(e){this.attributes.tool_search=e.tool_search,this.attributes.tool_search.on("change:results",this.apply_search_results,this),this.attributes.tools=e.tools,this.attributes.layout=new t.Collection(this.parse(e.layout))},parse:function(t){var e=this,i=function t(i){var a=i.model_class;if(a.indexOf("Tool")===a.length-4)return e.attributes.tools.get(i.id);if("ToolSection"===a){var n=r.map(i.elems,t);return i.elems=n,new x(i)}return"ToolSectionLabel"===a?new y(i):void 0};return r.map(t,i)},clear_search_results:function(){this.get("layout").each(function(t){t instanceof x?t.clear_search_results():t.show()})},apply_search_results:function(){var t=this.get("tool_search").get("results");if(null===t)return void this.clear_search_results();var e=null;this.get("layout").each(function(i){i instanceof y?(e=i,e.hide()):i instanceof w?i.apply_search_results(t)&&e&&e.show():(e=null,i.apply_search_results(t))})}}),S=t.View.extend({initialize:function(){this.model.on("change:hidden",this.update_visible,this),this.update_visible()},update_visible:function(){this.model.attributes.hidden?this.$el.hide():this.$el.show()}}),M=S.extend({tagName:"div",render:function(){var t=a("<div/>");t.append(I.tool_link(this.model.toJSON()));var e=this.model.get("form_style",null);if("upload1"===this.model.id)t.find("a").on("click",function(t){t.preventDefault(),Galaxy.upload.show()});else if("regular"===e){var i=this;t.find("a").on("click",function(t){t.preventDefault(),Galaxy.router.push("/",{tool_id:i.model.id,version:i.model.get("version")})})}return this.$el.append(t),this}}),T=S.extend({tagName:"div",className:"toolPanelLabel",render:function(){return this.$el.append(a("<span/>").text(this.model.attributes.text)),this}}),z=S.extend({tagName:"div",className:"toolSectionWrapper",initialize:function(){S.prototype.initialize.call(this),this.model.on("change:open",this.update_open,this)},render:function(){this.$el.append(I.panel_section(this.model.toJSON()));var t=this.$el.find(".toolSectionBody");return r.each(this.model.attributes.elems,function(e){if(e instanceof w){var i=new M({model:e,className:"toolTitle"});i.render(),t.append(i.$el)}else if(e instanceof y){var a=new T({model:e});a.render(),t.append(a.$el)}}),this},events:{"click .toolSectionTitle > a":"toggle"},toggle:function(){this.model.set("open",!this.model.attributes.open)},update_open:function(){this.model.attributes.open?this.$el.children(".toolSectionBody").slideDown("fast"):this.$el.children(".toolSectionBody").slideUp("fast")}}),A=t.View.extend({tagName:"div",id:"tool-search",className:"bar",events:{click:"focus_and_select","keyup :input":"query_changed","change :input":"query_changed","click #search-clear-btn":"clear"},render:function(){return this.$el.append(I.tool_search(this.model.toJSON())),this.model.is_visible()||this.$el.hide(),a("#messagebox").is(":visible")&&this.$el.css("top","95px"),this.$el.find("[title]").tooltip(),this},focus_and_select:function(){this.$el.find(":input").focus().select()},clear:function(){return this.model.clear_search(),this.$el.find(":input").val(""),this.focus_and_select(),!1},query_changed:function(t){if(this.model.attributes.clear_key&&this.model.attributes.clear_key===t.which)return this.clear(),!1;this.model.set("query",this.$el.find(":input").val())}}),O=t.View.extend({tagName:"div",className:"toolMenu",initialize:function(){this.model.get("tool_search").on("change:results",this.handle_search_results,this)},render:function(){var t=this,e=new A({model:this.model.get("tool_search")});return e.render(),t.$el.append(e.$el),this.model.get("layout").each(function(e){if(e instanceof x){var i=new z({model:e});i.render(),t.$el.append(i.$el)}else if(e instanceof w){var a=new M({model:e,className:"toolTitleNoSection"});a.render(),t.$el.append(a.$el)}else if(e instanceof y){var n=new T({model:e});n.render(),t.$el.append(n.$el)}}),t.$el.find("a.tool-link").click(function(e){var i=a(this).attr("class").split(/\s+/)[0],n=t.model.get("tools").get(i);t.trigger("tool_link_click",e,n)}),this},handle_search_results:function(){var t=this.model.get("tool_search").get("results");t&&0===t.length?a("#search-no-results").show():a("#search-no-results").hide()}}),$=t.View.extend({className:"toolForm",render:function(){this.$el.children().remove(),this.$el.append(I.tool_form(this.model.toJSON()))}}),I=(t.View.extend({className:"toolMenuAndView",initialize:function(){this.tool_panel_view=new O({collection:this.collection}),this.tool_form_view=new $},render:function(){this.tool_panel_view.render(),this.tool_panel_view.$el.css("float","left"),this.$el.append(this.tool_panel_view.$el),this.tool_form_view.$el.hide(),this.$el.append(this.tool_form_view.$el);var t=this;this.tool_panel_view.on("tool_link_click",function(e,i){e.preventDefault(),t.show_tool(i)})},show_tool:function(t){var e=this;t.fetch().done(function(){e.tool_form_view.model=t,e.tool_form_view.render(),e.tool_form_view.$el.show(),a("#left").width("650px")})}}),{tool_search:r.template(['<input id="tool-search-query" class="search-query parent-width" name="query" ','placeholder="<%- search_hint_string %>" autocomplete="off" type="text" />','<a id="search-clear-btn" title="clear search (esc)"> </a>','<span id="search-spinner" class="search-spinner fa fa-spinner fa-spin"></span>'].join("")),panel_section:r.template(['<div class="toolSectionTitle" id="title_<%- id %>">','<a href="javascript:void(0)"><span><%- name %></span></a>',"</div>",'<div id="<%- id %>" class="toolSectionBody" style="display: none;">','<div class="toolSectionBg"></div>',"<div>"].join("")),tool_link:r.template(['<a class="<%- id %> tool-link" href="<%= link %>" target="<%- target %>" minsizehint="<%- min_width %>">','<span class="labels">',"<% _.each( labels, function( label ){ %>",'<span class="label label-default label-<%- label %>">',"<%- label %>","</span>","<% }); %>","</span>",'<span class="tool-old-link">',"<%- name %>","</span>"," <%- description %>","</a>"].join("")),tool_form:r.template(['<div class="toolFormTitle"><%- tool.name %> (version <%- tool.version %>)</div>','<div class="toolFormBody">',"<% _.each( tool.inputs, function( input ){ %>",'<div class="form-row">','<label for="<%- input.name %>"><%- input.label %>:</label>','<div class="form-row-input">',"<%= input.html %>","</div>",'<div class="toolParamHelp" style="clear: both;">',"<%- input.help %>","</div>",'<div style="clear: both;"></div>',"</div>","<% }); %>","</div>",'<div class="form-row form-actions">','<input type="submit" class="btn btn-primary" name="runtool_btn" value="Execute" />',"</div>",'<div class="toolHelp">','<div class="toolHelpBody"><% tool.help %></div>',"</div>"].join(""),{variable:"tool"})});e.default={ToolParameter:f,IntegerToolParameter:g,SelectToolParameter:m,Tool:w,ToolCollection:b,ToolSearch:k,ToolPanel:C,ToolPanelView:O,ToolFormView:$}}).call(e,i(2),i(0))},23:function(t,e,i){"use strict";(function(t,a,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=o(r),l=i(6),d=o(l),h=i(8),c=o(h),u=i(44),f=o(u),_=i(13),p=o(_),g=t.View.extend({initialize:function(t){var e=this;this.modal=parent.Galaxy.modal||new c.default.View,this.form=new f.default(s.default.merge({listen_to_history:!0,always_refresh:!1,buildmodel:function(t,i){var n=i.model.attributes,o="",r={},l=n.job_id;l?o=Galaxy.root+"api/jobs/"+l+"/build_for_rerun":(o=Galaxy.root+"api/tools/"+n.id+"/build",r=a.extend({},Galaxy.params),r.tool_id&&delete r.tool_id),n.version&&(r.tool_version=n.version),s.default.get({url:o,data:r,success:function(a){if(!a.display)return void(window.location=Galaxy.root);i.model.set(a),e._customize(i),Galaxy.emit.debug("tool-form-base::_buildModel()","Initial tool model ready.",a),t.resolve()},error:function(e,o){var r=e&&e.err_msg||"Uncaught error.";401==o?window.location=Galaxy.root+"user/login?"+a.param({redirect:Galaxy.root+"?tool_id="+n.id}):i.$el.is(":empty")?i.$el.prepend(new d.default.Message({message:r,status:"danger",persistent:!0,large:!0}).$el):Galaxy.modal&&Galaxy.modal.show({title:"Tool request failed",body:r,buttons:{Close:function(){Galaxy.modal.hide()}}}),Galaxy.emit.debug("tool-form-base::_buildModel()","Initial tool model request failed.",e),t.reject()}})},postchange:function(t,e){var i={tool_id:e.model.get("id"),tool_version:e.model.get("version"),inputs:a.extend(!0,{},e.data.create())};e.wait(!0),Galaxy.emit.debug("tool-form::postchange()","Sending current state.",i),s.default.request({type:"POST",url:Galaxy.root+"api/tools/"+e.model.get("id")+"/build",data:i,success:function(i){e.update(i),e.wait(!1),Galaxy.emit.debug("tool-form::postchange()","Received new model.",i),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form::postchange()","Refresh request failed.",e),t.reject()}})}},t)),this.deferred=this.form.deferred,this.setElement("<div/>"),this.$el.append(this.form.$el)},_customize:function(t){var e=this,i=t.model.attributes,a=new d.default.Button({icon:"fa-check",tooltip:"Execute: "+i.name+" ("+i.version+")",title:"Execute",cls:"btn btn-primary ui-clear-float",wait_cls:"btn btn-info ui-clear-float",onclick:function(){a.wait(),t.portlet.disable(),e.submit(i,function(){a.unwait(),t.portlet.enable()})}});i.buttons={execute:a},i.job_id&&i.job_remap&&i.inputs.push({label:"Resume dependencies from this job",name:"rerun_remap_job_id",type:"select",display:"radio",ignore:"__ignore__",value:"__ignore__",options:[["Yes",i.job_id],["No","__ignore__"]],help:"The previous run of this tool failed and other tools were waiting for it to finish successfully. Use this option to resume those tools using the new output(s) of this tool run."})},submit:function(t,e){var i=this,o={tool_id:t.id,tool_version:t.version,inputs:this.form.data.create()};if(this.form.trigger("reset"),!i.validate(o))return Galaxy.emit.debug("tool-form::submit()","Submission canceled. Validation failed."),void(e&&e());if(t.action!==Galaxy.root+"tool_runner/index"){var r=a("<form/>").attr({action:t.action,method:t.method,enctype:t.enctype});return n.each(o.inputs,function(t,e){r.append(a("<input/>").attr({name:e,value:t}))}),r.hide().appendTo("body").submit().remove(),void(e&&e())}Galaxy.emit.debug("tool-form::submit()","Validation complete.",o),s.default.request({type:"POST",url:Galaxy.root+"api/tools",data:o,success:function(t){if(e&&e(),i.$el.children().hide(),i.$el.append(i._templateSuccess(t)),t.jobs&&t.jobs.length>0){i.$el.append(a("<div/>",{id:"webhook-view"}));new p.default.WebhookView({urlRoot:Galaxy.root+"api/webhooks/tool",toolId:o.tool_id})}parent.Galaxy&&parent.Galaxy.currHistoryPanel&&parent.Galaxy.currHistoryPanel.refreshContents()},error:function(t){e&&e(),Galaxy.emit.debug("tool-form::submit","Submission failed.",t);var a=!1;if(t&&t.err_data){var n=i.form.data.matchResponse(t.err_data);for(var r in n){i.form.highlight(r,n[r]),a=!0;break}}a||i.modal.show({title:"Job submission failed",body:i._templateError(o,t&&t.err_msg),buttons:{Close:function(){i.modal.hide()}}})}})},validate:function(t){var e=t.inputs,i=-1,a=null;for(var n in e){var o=e[n],r=this.form.data.match(n),s=this.form.field_list[r],l=this.form.input_list[r];if(r&&l&&s){if(!l.optional&&null==o)return this.form.highlight(r),!1;if(o&&o.batch){var d=o.values.length,h=d>0&&o.values[0]&&o.values[0].src;if(h)if(null===a)a=h;else if(a!==h)return this.form.highlight(r,"Please select either dataset or dataset list fields for all batch mode fields."),!1;if(-1===i)i=d;else if(i!==d)return this.form.highlight(r,"Please make sure that you select the same number of inputs for all batch mode fields. This field contains <b>"+d+"</b> selection(s) while a previous field contains <b>"+i+"</b>."),!1}}else Galaxy.emit.debug("tool-form::validate()","Retrieving input objects failed.")}return!0},_templateSuccess:function(t){if(t.jobs&&t.jobs.length>0){var e=t.jobs.length,i=1==e?"1 job has":e+" jobs have",o=a("<div/>").addClass("donemessagelarge").append(a("<p/>").text(i+" been successfully added to the queue - resulting in the following datasets:"));return n.each(t.outputs,function(t){o.append(a("<p/>").addClass("messagerow").append(a("<b/>").text(t.hid+": "+t.name)))}),o.append(a("<p/>").append("<b/>").text("You can check the status of queued jobs and view the resulting data by refreshing the History pane. When the job has been run the status will change from 'running' to 'finished' if completed successfully or 'error' if problems were encountered.")),o}return this._templateError(t,"Invalid success response. No jobs found.")},_templateError:function(t,e){return a("<div/>").addClass("errormessagelarge").append(a("<p/>").text("The server could not complete the request. Please contact the Galaxy Team if this error persists. "+(e||""))).append(a("<pre/>").text(JSON.stringify(t,null,4)))}});e.default={View:g}}).call(e,i(2),i(0),i(1))},24:function(t,e,i){"use strict";(function(t,i,a){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t.Model.extend({defaults:{url_base:"",async:!1,async_ops:[],categorical_filters:[],filters:{},sort_key:null,show_item_checkboxes:!1,advanced_search:!1,cur_page:1,num_pages:1,operation:void 0,item_ids:void 0},can_async_op:function(t){return-1!==i.indexOf(this.attributes.async_ops,t)},add_filter:function(t,e,i){if(i){var a,n=this.attributes.filters[t];if(null===n||void 0===n)a=e;else if("string"==typeof n)if("All"==n||n==e)a=e;else{var o=[];o[0]=n,o[1]=e,a=o}else a=n,-1===a.indexOf(e)&&a.push(e);this.attributes.filters[t]=a}else this.attributes.filters[t]=e},remove_filter:function(t,e){var a=this.attributes.filters[t];if(null===a||void 0===a)return!1;if("string"==typeof a)this.attributes.filters[t]="";else{var n=i.indexOf(a,e);-1!==n&&(a[n]="")}},get_url_data:function(){var t={async:this.attributes.async,sort:this.attributes.sort_key,page:this.attributes.cur_page,show_item_checkboxes:this.attributes.show_item_checkboxes,advanced_search:this.attributes.advanced_search};this.attributes.operation&&(t.operation=this.attributes.operation),this.attributes.item_ids&&(t.id=this.attributes.item_ids);var e=this;return i.each(i.pairs(e.attributes.filters),function(e){t["f-"+e[0]]=e[1]}),t},get_url:function(t){return this.get("url_base")+"?"+a.param(this.get_url_data())+"&"+a.param(t)}})}).call(e,i(2),i(1),i(0))},25:function(t,e,i){"use strict";(function(t,a){Object.defineProperty(e,"__esModule",{value:!0});var n=i(3),o=function(t){return t&&t.__esModule?t:{default:t}}(n);e.default={grid:function(t){var e="";return e=t.embedded?this.grid_header(t)+this.grid_table(t):'<div class="loading-elt-overlay"></div><table><tr><td width="75%">'+this.grid_header(t)+'</td><td></td><td></td></tr><tr><td width="100%" id="grid-message" valign="top"></td><td></td><td></td></tr></table>'+this.grid_table(t),t.info_text&&(e+='<br><div class="toolParamHelp" style="clear: both;">'+t.info_text+"</div>"),e},grid_table:function(t){return'<form method="post" onsubmit="return false;"><table id="grid-table" class="grid"><thead id="grid-table-header"></thead><tbody id="grid-table-body"></tbody><tfoot id="grid-table-footer"></tfoot></table></form>'},grid_header:function(t){var e='<div class="grid-header">';if(t.embedded||(e+="<h2>"+t.title+"</h2>"),t.global_actions){e+='<ul class="manage-table-actions">';var i=t.global_actions.length>=3;i&&(e+='<li><a class="action-button" id="popup-global-actions" class="menubutton">Actions</a></li><div popupmenu="popup-global-actions">');for(var a in t.global_actions){var n=t.global_actions[a];e+='<li><a class="action-button use-target" target="'+n.target+'" href="'+n.url_args+'" onclick="return false;" >'+n.label+"</a></li>"}i&&(e+="</div>"),e+="</ul>"}return t.insert&&(e+=t.insert),e+=this.grid_filters(t),e+="</div>"},header:function(t){var e="<tr>";t.show_item_checkboxes&&(e+="<th>",t.items.length>0&&(e+='<input type="checkbox" id="check_all" name=select_all_checkbox value="true"><input type="hidden" name=select_all_checkbox value="true">'),e+="</th>");for(var i in t.columns){var a=t.columns[i];a.visible&&(e+='<th id="'+a.key+'-header">',a.href?e+='<a href="'+a.href+'" class="sort-link" sort_key="'+a.key+'">'+a.label+"</a>":e+=a.label,e+='<span class="sort-arrow">'+a.extra+"</span></th>")}return e+="</tr>"},body:function(e){var i="",a=0;0==e.items.length&&(i+='<tr><td colspan="100"><em>No Items</em></td></tr>',a=1);for(var n in e.items){var o=e.items[n],r=o.encode_id;i+="<tr ",e.current_item_id==o.id&&(i+='class="current"'),i+=">",e.show_item_checkboxes&&(i+='<td style="width: 1.5em;"><input type="checkbox" name="id" value="'+r+'" id="'+r+'" class="grid-row-select-checkbox" /></td>');for(var s in e.columns){var l=e.columns[s];if(l.visible){var d="";l.nowrap&&(d='style="white-space:nowrap;"');var h=o.column_config[l.label],c=h.link,u=h.value,f=h.target;"string"===t.type(u)&&(u=u.replace(/\/\//g,"/"));var _="",p="";l.attach_popup&&(_="grid-"+n+"-popup",p="menubutton",""!=c&&(p+=" split"),p+=" popup"),i+="<td "+d+">",c?(0!=e.operations.length&&(i+='<div id="'+_+'" class="'+p+'" style="float: left;">'),i+='<a class="menubutton-label use-target" target="'+f+'" href="'+c+'" onclick="return false;">'+u+"</a>",0!=e.operations.length&&(i+="</div>")):i+='<div id="'+_+'" class="'+p+'"><label id="'+l.label_id_prefix+r+'" for="'+r+'">'+(u||"")+"</label></div>",i+="</td>"}}i+="</tr>",a++}return i},footer:function(t){var e="";if(t.use_paging&&t.num_pages>1){var i=t.num_page_links,a=t.cur_page_num,n=t.num_pages,o=i/2,r=a-o,s=0;r<=0&&(r=1,s=o-(a-r));var l,d=o+s,h=a+d;h<=n?l=0:(h=n,l=d-(h+1-a)),0!=l&&(r-=l)<1&&(r=1),e+='<tr id="page-links-row">',t.show_item_checkboxes&&(e+="<td></td>"),e+='<td colspan="100"><span id="page-link-container">Page:',r>1&&(e+='<span class="page-link" id="page-link-1"><a href="javascript:void(0);" page_num="1" onclick="return false;">1</a></span> ...');for(var c=r;c<h+1;c++)c==t.cur_page_num?e+='<span class="page-link inactive-link" id="page-link-'+c+'">'+c+"</span>":e+='<span class="page-link" id="page-link-'+c+'"><a href="javascript:void(0);" onclick="return false;" page_num="'+c+'">'+c+"</a></span>";h<n&&(e+='...<span class="page-link" id="page-link-'+n+'"><a href="javascript:void(0);" onclick="return false;" page_num="'+n+'">'+n+"</a></span>"),e+="</span>",e+='<span class="page-link" id="show-all-link-span"> | <a href="javascript:void(0);" onclick="return false;" page_num="all">Show All</a></span></td></tr>'}if(t.show_item_checkboxes){e+='<tr><input type="hidden" id="operation" name="operation" value=""><td></td><td colspan="100">For <span class="grid-selected-count"></span> selected items: ';for(var u in t.operations){var f=t.operations[u];f.allow_multiple&&(e+='<input type="button" value="'+f.label+'" class="operation-button action-button"> ')}e+="</td></tr>"}var _=!1;for(u in t.operations)if(t.operations[u].global_operation){_=!0;break}if(_){e+='<tr><td colspan="100">';for(u in t.operations){var f=t.operations[u];f.global_operation&&(e+='<a class="action-button" href="'+f.global_operation+'">'+f.label+"</a>")}e+="</td></tr>"}return t.legend&&(e+='<tr><td colspan="100">'+t.legend+"</td></tr>"),e},message:function(t){var e=t.status;return-1!=["success","ok"].indexOf(e)&&(e="done"),'<p><div class="'+e+'message transient-message">'+a.escape(t.message)+'</div><div style="clear: both"></div></p>'},grid_filters:function(t){var e=t.default_filter_dict,i=t.filters,a="none";t.advanced_search&&(a="block");var n=!1;for(var o in t.columns){var r=t.columns[o];if("advanced"==r.filterable){var s=r.key,l=i[s],d=e[s];l&&d&&l!=d&&(a="block"),n=!0}}var h="block";"block"==a&&(h="none");var c='<div id="standard-search" style="display: '+h+';"><table><tr><td style="padding: 0;"><table>';for(var o in t.columns){var r=t.columns[o];"standard"==r.filterable&&(c+=this.grid_column_filter(t,r))}c+="</table></td></tr><tr><td>",n&&(c+='<a href="" class="advanced-search-toggle">Advanced Search</a>'),c+="</td></tr></table></div>",c+='<div id="advanced-search" style="display: '+a+'; margin-top: 5px; border: 1px solid #ccc;"><table><tr><td style="text-align: left" colspan="100"><a href="" class="advanced-search-toggle">Close Advanced Search</a></td></tr>';for(var o in t.columns){var r=t.columns[o];"advanced"==r.filterable&&(c+=this.grid_column_filter(t,r))}return c+="</table></div>"},grid_column_filter:function(e,i){var a=(e.default_filter_dict,e.filters),n=i.label,o=i.key;"advanced"==i.filterable&&(n=n.toLowerCase());var r="<tr>";if("advanced"==i.filterable&&(r+='<td align="left" style="padding-left: 10px">'+n+":</td>"),r+='<td style="padding-bottom: 1px;">',i.is_text){r+='<form class="text-filter-form" column_key="'+o+'" action="'+e.url+'" method="get" >';for(c in e.columns){var s=e.columns[c],l=a[s.key];l&&"All"!=l&&(s.is_text&&(l=JSON.stringify(l)),r+='<input type="hidden" id="'+s.key+'" name="f-'+s.key+'" value="'+l+'"/>')}r+='<span id="'+o+'-filtering-criteria">';var d=a[o];if(d){var h=t.type(d);if("string"==h&&"All"!=d&&(r+=this.filter_element(o,d)),"array"==h)for(var c in d){var u=d[c],f=d;f=f.slice(c),r+=this.filter_element(o,u)}}r+="</span>";var _="";if("standard"==i.filterable){_=i.label.toLowerCase();var p=_.length;p<20&&(p=20),p+=4}r+='<span class="search-box"><input class="search-box-input" id="input-'+o+'-filter" name="f-'+o+'" type="text" placeholder="'+_+'" size="'+p+'"/><button type="submit" style="background: transparent; border: none; padding: 4px; margin: 0px;"><i class="fa fa-search"></i></button></span></form>'}else{r+='<span id="'+o+'-filtering-criteria">';var g=!1;for(var v in e.categorical_filters[o]){var m=e.categorical_filters[o][v],w="",b="";for(var y in m)w=y,b=m[y];g&&(r+=" | "),g=!0;var u=a[o];u&&m[o]&&u==b?r+='<span class="categorical-filter '+o+'-filter current-filter">'+v+"</span>":r+='<span class="categorical-filter '+o+'-filter"><a href="javascript:void(0);" filter_key="'+w+'" filter_val="'+b+'">'+v+"</a></span>"}r+="</span>"}return r+="</td></tr>"},filter_element:function(t,e){return'<span class="text-filter-val">'+(e=o.default.sanitize(e))+'<a href="javascript:void(0);" filter_key="'+t+'" filter_val="'+e+'"><i class="fa fa-times" style="padding-left: 5px; padding-bottom: 6px;"/></a></span>'}}}).call(e,i(0),i(1))},26:function(t,e,i){"use strict";(function(t,a){function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(1),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(o),s=i(27),l=n(s),d=i(10),h=n(d),c=i(14),u=n(c),f=i(17),_=n(f),p=i(12),g=n(p),v=i(3),m=n(v);i(49),i(48),i(50),i(54),i(53),i(55),i(51),i(52),i(15);var w=null,b=null,y=function(){this.initialize&&this.initialize.apply(this,arguments)};y.extend=t.Model.extend;var x=y.extend({initialize:function(t){m.default.cssLoadFile("static/style/jquery.rating.css"),m.default.cssLoadFile("static/style/autocomplete_tagging.css"),m.default.cssLoadFile("static/style/jquery-ui/smoothness/jquery-ui.css"),m.default.cssLoadFile("static/style/library.css"),m.default.cssLoadFile("static/style/trackster.css"),this.baseURL=t},save_viz:function(){Galaxy.modal.show({title:"Saving...",body:"progress"});var t=[];a(".bookmark").each(function(){t.push({position:a(this).children(".position").text(),annotation:a(this).children(".annotation").text()})});var e=b.overview_drawable?b.overview_drawable.config.get_value("name"):null,i={view:b.to_dict(),viewport:{chrom:b.chrom,start:b.low,end:b.high,overview:e},bookmarks:t};return a.ajax({url:Galaxy.root+"visualization/save",type:"POST",dataType:"json",data:{id:b.vis_id,title:b.config.get_value("name"),dbkey:b.dbkey,type:"trackster",vis_json:JSON.stringify(i)}}).success(function(t){Galaxy.modal.hide(),b.vis_id=t.vis_id,b.has_changes=!1,window.history.pushState({},"",t.url+window.location.hash)}).error(function(){Galaxy.modal.show({title:"Could Not Save",body:"Could not save visualization. Please try again later.",buttons:{Cancel:function(){Galaxy.modal.hide()}}})})},createButtonMenu:function(){var t=this,e=u.default.create_icon_buttons_menu([{icon_class:"plus-button",title:"Add tracks",on_click:function(){h.default.select_datasets({dbkey:b.dbkey},function(t){r.each(t,function(t){b.add_drawable(l.default.object_from_template(t,b,b))})})}},{icon_class:"block--plus",title:"Add group",on_click:function(){b.add_drawable(new l.default.DrawableGroup(b,b,{name:"New Group"}))}},{icon_class:"bookmarks",title:"Bookmarks",on_click:function(){force_right_panel("0px"==a("div#right").css("right")?"hide":"show")}},{icon_class:"globe",title:"Circster",on_click:function(){window.location=t.baseURL+"visualization/circster?id="+b.vis_id}},{icon_class:"disk--arrow",title:"Save",on_click:function(){t.save_viz()}},{icon_class:"cross-circle",title:"Close",on_click:function(){t.handle_unsaved_changes(b)}}],{tooltip_config:{placement:"bottom"}});return this.buttonMenu=e,e},add_bookmark:function(t,e,i){var n=a("#right .unified-panel-body"),o=a("<div/>").addClass("bookmark").appendTo(n),r=a("<div/>").addClass("position").appendTo(o),s=(a("<a href=''/>").text(t).appendTo(r).click(function(){return b.go_to(t),!1}),a("<div/>").text(e).appendTo(o));if(i){var l=a("<div/>").addClass("delete-icon-container").prependTo(o).click(function(){return o.slideUp("fast"),o.remove(),b.has_changes=!0,!1});a("<a href=''/>").addClass("icon-button delete").appendTo(l);s.make_text_editable({num_rows:3,use_textarea:!0,help_text:"Edit bookmark note"}).addClass("annotation")}return b.has_changes=!0,o},create_visualization:function(t,e,i,n,o){var s=this,d=new l.default.TracksterView(r.extend(t,{header:!1}));return d.editor=!0,a.when(d.load_chroms_deferred).then(function(t){if(e){var a=e.chrom,r=e.start,h=e.end,c=e.overview;a&&void 0!==r&&h?d.change_chrom(a,r,h):d.change_chrom(t[0].chrom)}else d.change_chrom(t[0].chrom);if(i)for(var u=0;u<i.length;u++)d.add_drawable(l.default.object_from_template(i[u],d,d));for(var u=0;u<d.drawables.length;u++)if(d.drawables[u].config.get_value("name")===c){d.set_overview(d.drawables[u]);break}if(n)for(var f,u=0;u<n.length;u++)f=n[u],s.add_bookmark(f.position,f.annotation,o);d.has_changes=!1}),this.set_up_router({view:d}),d},set_up_router:function(e){new h.default.TrackBrowserRouter(e),t.history.start()},init_keyboard_nav:function(t){a(document).keyup(function(e){if(!a(e.srcElement).is(":input"))switch(e.which){case 37:t.move_fraction(.25);break;case 38:Math.round(t.viewport_container.height()/15);t.viewport_container.scrollTop(t.viewport_container.scrollTop()-20);break;case 39:t.move_fraction(-.25);break;case 40:Math.round(t.viewport_container.height()/15);t.viewport_container.scrollTop(t.viewport_container.scrollTop()+20)}})},handle_unsaved_changes:function(t){if(t.has_changes){var e=this;Galaxy.modal.show({title:"Close visualization",body:"There are unsaved changes to your visualization which will be lost if you do not save them.",buttons:{Cancel:function(){Galaxy.modal.hide()},"Leave without Saving":function(){a(window).off("beforeunload"),window.location=Galaxy.root+"visualization"},Save:function(){a.when(e.save_viz()).then(function(){window.location=Galaxy.root+"visualization"})}}})}else window.location=Galaxy.root+"visualization"}}),k=t.View.extend({initialize:function(){w=new x(Galaxy.root),w.createButtonMenu(),w.buttonMenu.$el.attr("style","float: right"),a("#center .unified-panel-header-inner").append(w.buttonMenu.$el),a("#right .unified-panel-title").append("Bookmarks"),a("#right .unified-panel-icons").append("<a id='add-bookmark-button' class='icon-button menu-button plus-button' href='javascript:void(0);' title='Add bookmark'></a>"),a("#right-border").click(function(){b.resize_window()}),force_right_panel("hide"),galaxy_config.app.id?this.view_existing():_.default.get("dataset_id")?this.choose_existing_or_new():this.view_new()},choose_existing_or_new:function(){var t=this,e=_.default.get("dbkey"),i={},a={dbkey:e,dataset_id:_.default.get("dataset_id"),hda_ldda:_.default.get("hda_ldda"),gene_region:_.default.get("gene_region")};e&&(i["f-dbkey"]=e),Galaxy.modal.show({title:"View Data in a New or Saved Visualization?",body:"<p><ul style='list-style: disc inside none'>You can add this dataset as:<li>a new track to one of your existing, saved Trackster sessions if they share the genome build: <b>"+(e||"Not available.")+"</b></li><li>or create a new session with this dataset as the only track</li></ul></p>",buttons:{Cancel:function(){window.location=Galaxy.root+"visualizations/list"},"View in saved visualization":function(){t.view_in_saved(a)},"View in new visualization":function(){t.view_new()}}})},view_in_saved:function(t){var e=new g.default({url_base:Galaxy.root+"visualization/list_tracks",dict_format:!0,embedded:!0});Galaxy.modal.show({title:"Add Data to Saved Visualization",body:e.$el,buttons:{Cancel:function(){window.location=Galaxy.root+"visualizations/list"},"Add to visualization":function(){a(parent.document).find("input[name=id]:checked").each(function(){t.id=a(this).val(),window.location=Galaxy.root+"visualization/trackster?"+a.param(t)})}}})},view_existing:function(){var t=galaxy_config.app.viz_config;b=w.create_visualization({container:a("#center .unified-panel-body"),name:t.title,vis_id:t.vis_id,dbkey:t.dbkey},t.viewport,t.tracks,t.bookmarks,!0),this.init_editor()},view_new:function(){var t=this;a.ajax({url:Galaxy.root+"api/genomes?chrom_info=True",data:{},error:function(){alert("Couldn't create new browser.")},success:function(e){Galaxy.modal.show({title:"New Visualization",body:t.template_view_new(e),buttons:{Cancel:function(){window.location=Galaxy.root+"visualizations/list"},Create:function(){t.create_browser(a("#new-title").val(),a("#new-dbkey").val()),Galaxy.modal.hide()}}});var i=e.map(function(t){return t[1]});galaxy_config.app.default_dbkey&&r.contains(i,galaxy_config.app.default_dbkey)&&a("#new-dbkey").val(galaxy_config.app.default_dbkey),a("#new-title").focus(),a("select[name='dbkey']").select2(),a("#overlay").css("overflow","auto")}})},template_view_new:function(t){for(var e='<form id="new-browser-form" action="javascript:void(0);" method="post" onsubmit="return false;"><div class="form-row"><label for="new-title">Browser name:</label><div class="form-row-input"><input type="text" name="title" id="new-title" value="Unnamed"></input></div><div style="clear: both;"></div></div><div class="form-row"><label for="new-dbkey">Reference genome build (dbkey): </label><div class="form-row-input"><select name="dbkey" id="new-dbkey">',i=0;i<t.length;i++)e+='<option value="'+t[i][1]+'">'+t[i][0]+"</option>";return e+='</select></div><div style="clear: both;"></div></div><div class="form-row">Is the build not listed here? <a href="'+Galaxy.root+'user/dbkeys?use_panels=True">Add a Custom Build</a></div></form>'},create_browser:function(t,e){a(document).trigger("convert_to_values"),b=w.create_visualization({container:a("#center .unified-panel-body"),name:t,dbkey:e},galaxy_config.app.gene_region),this.init_editor(),b.editor=!0},init_editor:function(){a("#center .unified-panel-title").text(b.config.get_value("name")+" ("+b.dbkey+")"),galaxy_config.app.add_dataset&&a.ajax({url:Galaxy.root+"api/datasets/"+galaxy_config.app.add_dataset,data:{hda_ldda:"hda",data_type:"track_config"},dataType:"json",success:function(t){b.add_drawable(l.default.object_from_template(t,b,b))}}),a("#add-bookmark-button").click(function(){var t=b.chrom+":"+b.low+"-"+b.high;return w.add_bookmark(t,"Bookmark description",!0)}),w.init_keyboard_nav(b),a(window).on("beforeunload",function(){if(b.has_changes)return"There are unsaved changes to your visualization that will be lost if you leave this page."})}});e.default={TracksterUI:x,GalaxyApp:k}}).call(e,i(2),i(0))},27:function(t,e,i){"use strict";(function(t,a){function n(t){return t&&t.__esModule?t:{default:t}}function o(t,e){e||(e=0);var i=Math.pow(10,e);return Math.round(t*i)/i}function r(e){var i=t.Deferred();return t.ajax({type:"HEAD",url:e,beforeSend:function(t){t.setRequestHeader("Range","bytes=0-10")},success:function(t,e,a){i.resolve(206===a.status)}}),i}Object.defineProperty(e,"__esModule",{value:!0});var s=i(1),l=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(s),d=i(10),h=n(d),c=i(28),u=n(c),f=i(7),_=n(f),p=i(29),g=n(p),v=i(30),m=n(v),w=i(31),b=n(w),y=i(9),x=n(y),k=i(22),C=n(k),S=i(11),M=n(S),T=i(34),z=n(T);i(15);var A=l.extend,O={},$=function(t,e){O[t.attr("id")]=e},I=function(e,i,a,n){a=".group",O[e.attr("id")]=n,e.bind("drag",{handle:"."+i,relative:!0},function(e,i){var n,o,r,s,l,d=(t(this),t(this).parent()),h=d.children(".track,.group"),c=O[t(this).attr("id")];if(o=t(this).parents(a),0!==o.length){r=o.position().top,s=r+o.outerHeight();var u=O[o.attr("id")];if(i.offsetY<r)return t(this).insertBefore(o),u.remove_drawable(c),void u.container.add_drawable_before(c,u);if(i.offsetY>s)return t(this).insertAfter(o),u.remove_drawable(c),void u.container.add_drawable(c)}for(o=null,l=0;l<h.length;l++)if(n=t(h.get(l)),r=n.position().top,s=r+n.outerHeight(),n.is(a)&&this!==n.get(0)&&i.offsetY>=r&&i.offsetY<=s)return i.offsetY-r<s-i.offsetY?n.find(".content-div").prepend(this):n.find(".content-div").append(this),c.container&&c.container.remove_drawable(c),void O[n.attr("id")].add_drawable(c);for(l=0;l<h.length&&(n=t(h.get(l)),!(i.offsetY<n.position().top)||n.hasClass("reference-track")||n.hasClass("intro"));l++);l===h.length?this!==h.get(l-1)&&(d.append(this),O[d.attr("id")].move_drawable(c,l)):this!==h.get(l)&&(t(this).insertBefore(h.get(l)),O[d.attr("id")].move_drawable(c,i.deltaY>0?l-1:l))}).bind("dragstart",function(){t(this).addClass("dragging")}).bind("dragend",function(){t(this).removeClass("dragging")})},G="A converter for this dataset is not installed. Please check your datatypes_conf.xml file.",P=["Histogram","Line","Filled","Intensity"],R=function t(e,i,a){if(t.id_counter||(t.id_counter=0),this.id=t.id_counter++,this.view=e,this.container=i,this.drag_handle_class=a.drag_handle_class,this.is_overview=!1,this.action_icons={},this.config=M.default.ConfigSettingCollection.from_models_and_saved_values(this.config_params,a.prefs),this.config.get_value("name")||this.config.set_value("name",a.name),this.config_onchange&&this.config.on("change",this.config_onchange,this),this.container_div=this.build_container_div(),this.header_div=null,!1!==a.header){var n=new u.default.TrackHeaderView({model:this,id:this.id});this.header_div=n.$el,this.container_div.append(this.header_div);var o=n.icons_div;this.action_icons=n.action_icons,this.container_div.hover(function(){o.show()},function(){o.hide()})}};R.prototype.action_icons_def=[{name:"toggle_icon",title:"Hide/show content",css_class:"toggle",on_click_fn:function(t){t.config.get_value("content_visible")?(t.action_icons.toggle_icon.addClass("toggle-expand").removeClass("toggle"),t.hide_contents(),t.config.set_value("content_visible",!1)):(t.action_icons.toggle_icon.addClass("toggle").removeClass("toggle-expand"),t.config.set_value("content_visible",!0),t.show_contents())}},{name:"settings_icon",title:"Edit settings",css_class:"gear",on_click_fn:function(t){new M.default.ConfigSettingCollectionView({collection:t.config}).render_in_modal("Configure Track")}},{name:"remove_icon",title:"Remove",css_class:"remove-icon",on_click_fn:function(e){t(".tooltip").remove(),e.remove()}}],A(R.prototype,{config_params:[{key:"name",label:"Name",type:"text",default_value:""},{key:"content_visible",type:"bool",default_value:!0,hidden:!0}],config_onchange:function(){},init:function(){},changed:function(){this.view.changed()},can_draw:function(){return!(!this.enabled||!this.config.get_value("content_visible"))},request_draw:function(){},_draw:function(t){},to_dict:function(){},set_name:function(t){this.old_name=this.config.get_value("name"),this.config.set_value("name",t)},revert_name:function(){this.old_name&&this.config.set_value("name",this.old_name)},remove:function(){this.changed(),this.container.remove_drawable(this);var e=this.view;this.container_div.hide(0,function(){t(this).remove(),e.update_intro_div()})},build_container_div:function(){},update_icons:function(){},hide_contents:function(){},show_contents:function(){},get_drawables:function(){}});var N=function(t,e,i){R.call(this,t,e,i),this.obj_type=i.obj_type,this.drawables=[]};A(N.prototype,R.prototype,{unpack_drawables:function(t){this.drawables=[];for(var e,i=0;i<t.length;i++)e=at(t[i],this.view,this),this.add_drawable(e)},init:function(){for(var t=0;t<this.drawables.length;t++)this.drawables[t].init()},_draw:function(t){for(var e=0;e<this.drawables.length;e++)this.drawables[e]._draw(t)},to_dict:function(){for(var t=[],e=0;e<this.drawables.length;e++)t.push(this.drawables[e].to_dict());return{prefs:this.config.to_key_value_dict(),obj_type:this.obj_type,drawables:t}},add_drawable:function(t){this.drawables.push(t),t.container=this,this.changed()},add_drawable_before:function(t,e){this.changed();var i=this.drawables.indexOf(e);return-1!==i&&(this.drawables.splice(i,0,t),!0)},replace_drawable:function(t,e,i){var a=this.drawables.indexOf(t);return-1!==a&&(this.drawables[a]=e,i&&t.container_div.replaceWith(e.container_div),this.changed()),a},remove_drawable:function(t){var e=this.drawables.indexOf(t);return-1!==e&&(this.drawables.splice(e,1),t.container=null,this.changed(),!0)},move_drawable:function(t,e){var i=this.drawables.indexOf(t);return-1!==i&&(this.drawables.splice(i,1),this.drawables.splice(e,0,t),this.changed(),!0)},get_drawables:function(){return this.drawables},get_tracks:function(t){for(var e,i=this.drawables.slice(0),a=[];0!==i.length;)e=i.shift(),e instanceof t?a.push(e):e.drawables&&(i=i.concat(e.drawables));return a}});var j=function(e,i,a){if(A(a,{obj_type:"DrawableGroup",drag_handle_class:"group-handle"}),N.call(this,e,i,a),this.content_div=t("<div/>").addClass("content-div").attr("id","group_"+this.id+"_content_div").appendTo(this.container_div),$(this.container_div,this),$(this.content_div,this),I(this.container_div,this.drag_handle_class,".group",this),this.filters_manager=new b.default.FiltersManager(this),this.header_div.after(this.filters_manager.parent_div),this.filters_manager.parent_div.after(t("<div style='clear: both'/>")),this.saved_filters_managers=[],"drawables"in a&&this.unpack_drawables(a.drawables),"filters"in a){var n=this.filters_manager;this.filters_manager=new b.default.FiltersManager(this,a.filters),n.parent_div.replaceWith(this.filters_manager.parent_div),a.filters.visible&&this.setup_multitrack_filtering()}};A(j.prototype,R.prototype,N.prototype,{action_icons_def:[R.prototype.action_icons_def[0],R.prototype.action_icons_def[1],{name:"composite_icon",title:"Show composite track",css_class:"layers-stack",on_click_fn:function(e){t(".tooltip").remove(),e.show_composite_track()}},{name:"filters_icon",title:"Filters",css_class:"ui-slider-050",on_click_fn:function(t){t.filters_manager.visible()?(t.filters_manager.clear_filters(),t._restore_filter_managers()):(t.setup_multitrack_filtering(),t.request_draw({clear_tile_cache:!0})),t.filters_manager.toggle()}},R.prototype.action_icons_def[2]],build_container_div:function(){var e=t("<div/>").addClass("group").attr("id","group_"+this.id);return this.container&&this.container.content_div.append(e),e},hide_contents:function(){this.tiles_div.hide()},show_contents:function(){this.tiles_div.show(),this.request_draw()},update_icons:function(){var e=this.drawables.length;if(0===e)this.action_icons.composite_icon.hide(),this.action_icons.filters_icon.hide();else if(1===e)this.action_icons.composite_icon.toggle(this.drawables[0]instanceof W),this.action_icons.filters_icon.hide();else{var i,a,n,o=this.drawables[0].get_type(),r=0;for(i=0;i<e;i++){if(n=this.drawables[i],n.get_type()!==o){can_composite=!1;break}n instanceof K&&r++}if(this.drawables[0]instanceof Q?this.action_icons.composite_icon.show():(this.action_icons.composite_icon.hide(),t(".tooltip").remove()),r>1&&r===this.drawables.length){var s,l={};for(n=this.drawables[0],a=0;a<n.filters_manager.filters.length;a++)s=n.filters_manager.filters[a],l[s.name]=[s];for(i=1;i<this.drawables.length;i++)for(n=this.drawables[i],a=0;a<n.filters_manager.filters.length;a++)s=n.filters_manager.filters[a],s.name in l&&l[s.name].push(s);this.filters_manager.remove_all();var d,h;for(var c in l)d=l[c],d.length===r&&(h=new b.default.NumberFilter({name:d[0].name,index:d[0].index}),this.filters_manager.add_filter(h));this.action_icons.filters_icon.toggle(this.filters_manager.filters.length>0)}else this.action_icons.filters_icon.hide()}},_restore_filter_managers:function(){for(var t=0;t<this.drawables.length;t++)this.drawables[t].filters_manager=this.saved_filters_managers[t];this.saved_filters_managers=[]},setup_multitrack_filtering:function(){if(this.filters_manager.filters.length>0){this.saved_filters_managers=[];for(var t=0;t<this.drawables.length;t++){var e=this.drawables[t];this.saved_filters_managers.push(e.filters_manager),e.filters_manager=this.filters_manager}}this.filters_manager.init_filters()},show_composite_track:function(){var t=new W(this.view,this.view,{name:this.config.get_value("name"),drawables:this.drawables});this.container.replace_drawable(this,t,!0);t.request_draw()},add_drawable:function(t){N.prototype.add_drawable.call(this,t),this.update_icons()},remove_drawable:function(t){N.prototype.remove_drawable.call(this,t),this.update_icons()},to_dict:function(){this.filters_manager.visible()&&this._restore_filter_managers();var t=A(N.prototype.to_dict.call(this),{filters:this.filters_manager.to_dict()});return this.filters_manager.visible()&&this.setup_multitrack_filtering(),t},request_draw:function(t){l.each(this.drawables,function(e){e.request_draw(t)})}});var D=a.View.extend({initialize:function(t){A(t,{obj_type:"View"}),N.call(this,"View",t.container,t),this.chrom=null,this.vis_id=t.vis_id,this.dbkey=t.dbkey,this.stand_alone=void 0===t.stand_alone||t.stand_alone,this.label_tracks=[],this.tracks_to_be_redrawn=[],this.max_low=0,this.max_high=0,this.zoom_factor=3,this.min_separation=30,this.has_changes=!1,this.load_chroms_deferred=null,this.render(),this.canvas_manager=new h.default.CanvasManager(this.container.get(0).ownerDocument),this.reset(),this.config=M.default.ConfigSettingCollection.from_models_and_saved_values([{key:"name",label:"Name",type:"text",default_value:""},{key:"a_color",label:"A Color",type:"color",default_value:"#FF0000"},{key:"c_color",label:"C Color",type:"color",default_value:"#00FF00"},{key:"g_color",label:"G Color",type:"color",default_value:"#0000FF"},{key:"t_color",label:"T Color",type:"color",default_value:"#FF00FF"},{key:"n_color",label:"N Color",type:"color",default_value:"#AAAAAA"}],{name:t.name})},render:function(){this.requested_redraw=!1;var e=this.container,i=this;this.top_container=t("<div/>").addClass("top-container").appendTo(e),this.browser_content_div=t("<div/>").addClass("content").appendTo(e),this.bottom_container=t("<div/>").addClass("bottom-container").appendTo(e),this.top_labeltrack=t("<div/>").addClass("top-labeltrack").appendTo(this.top_container),this.viewport_container=t("<div/>").addClass("viewport-container").attr("id","viewport-container").appendTo(this.browser_content_div),this.content_div=this.viewport_container,$(this.viewport_container,i),this.intro_div=t("<div/>").addClass("intro").appendTo(this.viewport_container);t("<div/>").text("Add Datasets to Visualization").addClass("action-button").appendTo(this.intro_div).click(function(){h.default.select_datasets({dbkey:i.dbkey},function(t){l.each(t,function(t){i.add_drawable(at(t,i,i))})})});this.nav_container=t("<div/>").addClass("trackster-nav-container").prependTo(this.top_container),this.nav=t("<div/>").addClass("trackster-nav").appendTo(this.nav_container),this.stand_alone&&(this.nav_container.addClass("stand-alone"),this.nav.addClass("stand-alone")),this.overview=t("<div/>").addClass("overview").appendTo(this.bottom_container),this.overview_viewport=t("<div/>").addClass("overview-viewport").appendTo(this.overview),this.overview_close=t("<a/>").attr("title","Close overview").addClass("icon-button overview-close tooltip").hide().appendTo(this.overview_viewport),this.overview_highlight=t("<div/>").addClass("overview-highlight").hide().appendTo(this.overview_viewport),this.overview_box_background=t("<div/>").addClass("overview-boxback").appendTo(this.overview_viewport),this.overview_box=t("<div/>").addClass("overview-box").appendTo(this.overview_viewport),this.default_overview_height=this.overview_box.height(),this.nav_controls=t("<div/>").addClass("nav-controls").appendTo(this.nav),this.chrom_select=t("<select/>").attr({name:"chrom"}).addClass("chrom-nav").append("<option value=''>Loading</option>").appendTo(this.nav_controls);var a=function(e){"focusout"!==e.type&&13!==(e.keyCode||e.which)&&27!==(e.keyCode||e.which)||(27!==(e.keyCode||e.which)&&i.go_to(t(this).val()),t(this).hide(),t(this).val(""),i.location_span.show(),i.chrom_select.show()),e.stopPropagation()};this.nav_input=t("<input/>").addClass("nav-input").hide().bind("keyup focusout",a).appendTo(this.nav_controls),this.location_span=t("<span/>").addClass("location").attr("title","Click to change location").tooltip({placement:"bottom"}).appendTo(this.nav_controls),this.location_span.click(function(){i.location_span.hide(),i.chrom_select.hide(),i.nav_input.val(i.chrom+":"+i.low+"-"+i.high),i.nav_input.css("display","inline-block"),i.nav_input.select(),i.nav_input.focus(),i.nav_input.autocomplete({source:function(e,a){var n=[],o=t.map(i.get_tracks(K),function(t){return t.data_manager.search_features(e.term).success(function(t){n=n.concat(t)})});t.when.apply(t,o).done(function(){a(t.map(n,function(t){return{label:t[0],value:t[1]}}))})},minLength:2})}),void 0!==this.vis_id&&(this.hidden_input=t("<input/>").attr("type","hidden").val(this.vis_id).appendTo(this.nav_controls)),this.zo_link=t("<a/>").attr("id","zoom-out").attr("title","Zoom out").tooltip({placement:"bottom"}).click(function(){i.zoom_out()}).appendTo(this.nav_controls),this.zi_link=t("<a/>").attr("id","zoom-in").attr("title","Zoom in").tooltip({placement:"bottom"}).click(function(){i.zoom_in()}).appendTo(this.nav_controls),this.load_chroms_deferred=this.load_chroms({low:0}),this.chrom_select.bind("change",function(){i.change_chrom(i.chrom_select.val())}),this.browser_content_div.click(function(e){t(this).find("input").trigger("blur")}),this.browser_content_div.bind("dblclick",function(t){i.zoom_in(t.pageX,this.viewport_container)}),this.overview_box.bind("dragstart",function(t,e){this.current_x=e.offsetX}).bind("drag",function(t,e){var a=e.offsetX-this.current_x;this.current_x=e.offsetX;var n=Math.round(a/i.viewport_container.width()*(i.max_high-i.max_low));i.move_delta(-n)}),this.overview_close.click(function(){i.reset_overview()}),this.viewport_container.bind("draginit",function(t,e){if(t.clientX>i.viewport_container.width()-16)return!1}).bind("dragstart",function(t,e){e.original_low=i.low,e.current_height=t.clientY,e.current_x=e.offsetX}).bind("drag",function(e,a){var n=t(this),o=a.offsetX-a.current_x,r=n.scrollTop()-(e.clientY-a.current_height);n.scrollTop(r),a.current_height=e.clientY,a.current_x=a.offsetX;var s=Math.round(o/i.viewport_container.width()*(i.high-i.low));i.move_delta(s)}),this.top_labeltrack.bind("dragstart",function(e,a){return t("<div/>").addClass("zoom-area").css("height",i.browser_content_div.height()+i.top_labeltrack.height()+1).appendTo(t(this))}).bind("drag",function(e,a){t(a.proxy).css({left:Math.min(e.pageX,a.startX)-i.container.offset().left,width:Math.abs(e.pageX-a.startX)});var n=Math.min(e.pageX,a.startX)-i.container.offset().left,o=Math.max(e.pageX,a.startX)-i.container.offset().left,r=i.high-i.low,s=i.viewport_container.width();i.update_location(Math.round(n/s*r)+i.low,Math.round(o/s*r)+i.low)}).bind("dragend",function(e,a){var n=Math.min(e.pageX,a.startX),o=Math.max(e.pageX,a.startX),r=i.high-i.low,s=i.viewport_container.width(),l=i.low;i.low=Math.round(n/s*r)+l,i.high=Math.round(o/s*r)+l,t(a.proxy).remove(),i.request_redraw()}),this.add_label_track(new X(this,{content_div:this.top_labeltrack})),t(window).bind("resize",function(){this.resize_timer&&clearTimeout(this.resize_timer),this.resize_timer=setTimeout(function(){i.resize_window()},500)}),t(document).bind("redraw",function(){i.redraw()}),this.reset(),t(window).trigger("resize")},get_base_color:function(t){return this.config.get_value(t.toLowerCase()+"_color")||this.config.get_value("n_color")}});A(D.prototype,N.prototype,{changed:function(){this.has_changes=!0},update_intro_div:function(){this.intro_div.toggle(0===this.drawables.length)},trigger_navigate:function(t,e,i,a){if(this.timer&&clearTimeout(this.timer),a){var n=this;this.timer=setTimeout(function(){n.trigger("navigate",t+":"+e+"-"+i)},500)}else view.trigger("navigate",t+":"+e+"-"+i)},update_location:function(t,e){this.location_span.text(_.default.commatize(t)+" - "+_.default.commatize(e)),this.nav_input.val(this.chrom+":"+_.default.commatize(t)+"-"+_.default.commatize(e));var i=this.chrom_select.val();""!==i&&this.trigger_navigate(i,this.low,this.high,!0)},load_chroms:function(e){e.num=100;var i=this,a=t.Deferred();return t.ajax({url:Galaxy.root+"api/genomes/"+this.dbkey,data:e,dataType:"json",success:function(e){if(0!==e.chrom_info.length){if(e.reference){var n=new Y(i);i.add_label_track(n),i.reference_track=n}i.chrom_data=e.chrom_info,i.chrom_select.html(""),i.chrom_select.append(t('<option value="">Select Chrom/Contig</option>'));for(var o=0,r=i.chrom_data.length;o<r;o++){var s=i.chrom_data[o].chrom,l=t("<option>");l.text(s),l.val(s),i.chrom_select.append(l)}e.prev_chroms&&i.chrom_select.append(t('<option value="previous">Previous 100</option>')),e.next_chroms&&i.chrom_select.append(t('<option value="next">Next 100</option>')),i.chrom_start_index=e.start_index,a.resolve(e.chrom_info)}},error:function(){alert("Could not load chroms for this dbkey: "+i.dbkey)}}),a},change_chrom:function(e,i,a){var n=this;if(!n.chrom_data)return void n.load_chroms_deferred.then(function(){n.change_chrom(e,i,a)});if(e&&"None"!==e){if("previous"===e)return void n.load_chroms({low:this.chrom_start_index-100});if("next"===e)return void n.load_chroms({low:this.chrom_start_index+100});var o=t.grep(n.chrom_data,function(t,i){return t.chrom===e})[0];if(void 0===o)return void n.load_chroms({chrom:e},function(){n.change_chrom(e,i,a)});if(e!==n.chrom){n.chrom=e,n.chrom_select.val(n.chrom),n.max_high=o.len-1,n.reset();for(var r=0,s=n.drawables.length;r<s;r++){var l=n.drawables[r];l.init&&l.init()}n.reference_track&&n.reference_track.init()}void 0===i&&void 0===a?(n.low=0,n.high=n.max_high):(n.low=void 0!==i?Math.max(i,0):0,void 0===a?(n.low=Math.max(n.low-15,0),n.high=n.low+30):n.high=Math.min(a,n.max_high)),n.request_redraw()}},go_to:function(t){t=t.replace(/,/g,""),t=t.replace(/:|\-/g," ");var e=t.split(/\s+/),i=e[0],a=e[1]?parseInt(e[1],10):void 0,n=e[2]?parseInt(e[2],10):void 0;this.change_chrom(i,a,n)},move_fraction:function(t){var e=this,i=e.high-e.low;this.move_delta(t*i)},move_delta:function(t){var e=this,i=e.high-e.low;e.low-t<e.max_low?(e.low=e.max_low,e.high=e.max_low+i):e.high-t>e.max_high?(e.high=e.max_high,e.low=e.max_high-i):(e.high-=t,e.low-=t),e.request_redraw({data_fetch:!1}),this.redraw_on_move_fn&&clearTimeout(this.redraw_on_move_fn),this.redraw_on_move_fn=setTimeout(function(){e.request_redraw()},200);var a=e.chrom_select.val();this.trigger_navigate(a,e.low,e.high,!0)},add_drawable:function(t){N.prototype.add_drawable.call(this,t),t.init(),this.changed(),this.update_intro_div();var e=this;t.config.on("change",function(){e.changed()})},add_label_track:function(t){t.view=this,t.init(),this.label_tracks.push(t)},remove_drawable:function(e,i){if(N.prototype.remove_drawable.call(this,e),i){var a=this;e.container_div.hide(0,function(){t(this).remove(),a.update_intro_div()})}},reset:function(){this.low=this.max_low,this.high=this.max_high,this.viewport_container.find(".yaxislabel").remove()},request_redraw:function(t,e){var i=this,a=e?[e]:i.drawables;l.each(a,function(e){var a=l.find(i.tracks_to_be_redrawn,function(t){return t[0]===e});a?a[1]=t:i.tracks_to_be_redrawn.push([e,t])}),this.requested_redraw||(requestAnimationFrame(function(){i._redraw()}),this.requested_redraw=!0)},_redraw:function(){this.requested_redraw=!1;var t=this.low,e=this.high;t<this.max_low&&(t=this.max_low),e>this.max_high&&(e=this.max_high);var i=this.high-this.low;0!==this.high&&i<this.min_separation&&(e=t+this.min_separation),this.low=Math.floor(t),this.high=Math.ceil(e),this.update_location(this.low,this.high),this.resolution_px_b=this.viewport_container.width()/(this.high-this.low);var a=this.low/(this.max_high-this.max_low)*this.overview_viewport.width()||0,n=(this.high-this.low)/(this.max_high-this.max_low)*this.overview_viewport.width()||0;this.overview_box.css({left:a,width:Math.max(13,n)}).show(),n<13&&this.overview_box.css("left",a-(13-n)/2),this.overview_highlight&&this.overview_highlight.css({left:a,width:n}),l.each(this.tracks_to_be_redrawn,function(t){var e=t[0],i=t[1];e&&e._draw(i)}),this.tracks_to_be_redrawn=[],l.each(this.label_tracks,function(t){t._draw()})},zoom_in:function(t,e){if(!(0===this.max_high||this.high-this.low<=this.min_separation)){var i=this.high-this.low,a=i/2+this.low,n=i/this.zoom_factor/2;t&&(a=t/this.viewport_container.width()*(this.high-this.low)+this.low),this.low=Math.round(a-n),this.high=Math.round(a+n),this.changed(),this.request_redraw()}},zoom_out:function(){if(0!==this.max_high){var t=this.high-this.low,e=t/2+this.low,i=t*this.zoom_factor/2;this.low=Math.round(e-i),this.high=Math.round(e+i),this.changed(),this.request_redraw()}},resize_viewport:function(){this.viewport_container.height(this.container.height()-this.top_container.height()-this.bottom_container.height())},resize_window:function(){this.resize_viewport(),this.request_redraw()},set_overview:function(t){if(this.overview_drawable){if(this.overview_drawable.dataset.id===t.dataset.id)return;this.overview_viewport.find(".track").remove()}var e=t.copy({content_div:this.overview_viewport}),i=this;e.header_div.hide(),e.is_overview=!0,i.overview_drawable=e,this.overview_drawable.postdraw_actions=function(){i.overview_highlight.show().height(i.overview_drawable.content_div.height()),i.overview_viewport.height(i.overview_drawable.content_div.height()+i.overview_box.outerHeight()),i.overview_close.show(),i.resize_window()},i.overview_drawable.request_draw(),this.changed()},reset_overview:function(){t(".tooltip").remove(),this.overview_viewport.find(".track-tile").remove(),this.overview_viewport.height(this.default_overview_height),this.overview_box.height(this.default_overview_height),this.overview_close.hide(),this.overview_highlight.hide(),view.resize_window(),view.overview_drawable=null}});var L=C.default.Tool.extend({defaults:{track:null},initialize:function(t){C.default.Tool.prototype.initialize.call(this,t);var e=!0;void 0!==t.tool_state&&void 0!==t.tool_state.hidden&&(e=t.tool_state.hidden),this.set("hidden",e),this.remove_inputs(["data","hidden_data","conditional"])},state_dict:function(t){return l.extend(this.get_inputs_dict(),{hidden:!this.is_visible()})}}),F=a.View.extend({events:{"change :input":"update_value"},render:function(){var e=this.$el.addClass("param-row"),i=this.model;t("<div>").addClass("param-label").text(i.get("label")).appendTo(e);t("<div/>").addClass("param-input").html(i.get("html")).appendTo(e).find(":input").val(i.get("value")),t("<div style='clear: both;'/>").appendTo(e)},update_value:function(e){this.model.set_value(t(e.target).val())}}),q=a.View.extend({initialize:function(t){this.model.on("change:hidden",this.set_visible,this)},render:function(){var e=this,i=this.model,a=this.$el.addClass("dynamic-tool").hide();a.bind("drag",function(t){t.stopPropagation()}).click(function(t){t.stopPropagation()}).bind("dblclick",function(t){t.stopPropagation()}).keydown(function(t){t.stopPropagation()});t("<div class='tool-name'>").appendTo(a).text(i.get("name"));i.get("inputs").each(function(t){var e=new F({model:t});e.render(),a.append(e.$el)}),a.find("input").click(function(){t(this).select()});var n=t("<div>").addClass("param-row").appendTo(a),o=t("<input type='submit'>").attr("value","Run on complete dataset").appendTo(n);t("<input type='submit'>").attr("value","Run on visible region").appendTo(n).click(function(){e.run_on_region()}),o.click(function(){e.run_on_dataset()}),i.is_visible()&&this.$el.show()},set_visible:function(){this.$el.toggle(this.model.is_visible())},update_params:function(){for(var t=0;t<this.params.length;t++)this.params[t].update_value()},run_on_dataset:function(){var t=this.model;this.run({target_dataset_id:this.model.get("track").dataset.id,action:"rerun",tool_id:t.id},null,function(e){Galaxy.modal.show({title:t.get("name")+" is Running",body:t.get("name")+" is running on the complete dataset. Tool outputs are in dataset's history.",buttons:{Close:function(){Galaxy.modal.hide()}}})})},run_on_region:function(){var t,e=this.model.get("track"),i=this.model,a=new h.default.GenomeRegion({chrom:e.view.chrom,start:e.view.low,end:e.view.high}),n={target_dataset_id:e.dataset.id,action:"rerun",tool_id:i.id,regions:[a.toJSON()]},o=e,r=i.get("name")+o.tool_region_and_parameters_str(a);if(o.container===view){var s=new j(view,view,{name:e.config.get_value("name")}),l=o.container.replace_drawable(o,s,!1);s.container_div.insertBefore(o.view.content_div.children()[l]),s.add_drawable(o),o.container_div.appendTo(s.content_div),t=s}else t=o.container;var d=new o.constructor(view,t,{name:r,hda_ldda:"hda"});d.init_for_tool_data(),d.change_mode(o.mode),d.set_filters_manager(o.filters_manager.copy(d)),d.update_icons(),t.add_drawable(d),d.tiles_div.text("Starting job."),this.run(n,d,function(t){d.set_dataset(new x.default.Dataset(t)),d.tiles_div.text("Running job."),d.init()})},run:function(e,i,a){e.inputs=this.model.get_inputs_dict();var n=new _.default.ServerStateDeferred({ajax_settings:{url:Galaxy.root+"api/tools",data:JSON.stringify(e),dataType:"json",contentType:"application/json",type:"POST"},interval:2e3,success_fn:function(t){return"pending"!==t}});t.when(n.go()).then(function(t){"no converter"===t?(i.container_div.addClass("error"),i.content_div.text(G)):t.error?(i.container_div.addClass("error"),i.content_div.text("Tool cannot be rerun: "+t.message)):a(t)})}}),V=function(t,e){m.default.Scaler.call(this,e),this.filter=t};V.prototype.gen_val=function(t){return this.filter.high===Number.MAX_VALUE||this.filter.low===-Number.MAX_VALUE||this.filter.low===this.filter.high?this.default_val:(parseFloat(t[this.filter.index])-this.filter.low)/(this.filter.high-this.filter.low)};var E=function(e,i,a,n,o){this.track=e,this.region=i,this.low=i.get("start"),this.high=i.get("end"),this.w_scale=a,this.canvas=n,this.html_elt=t("<div class='track-tile'/>").append(n),this.data=o,this.stale=!1};E.prototype.predisplay_actions=function(){};var H=function(t,e,i,a,n){E.call(this,t,e,i,a,n)};H.prototype.predisplay_actions=function(){};var U=function(t,e,i,a,n,o,r,s,l,d,h){E.call(this,t,e,i,a,n),this.mode=o,this.all_slotted=s,this.feature_mapper=l,this.has_icons=!1,this.incomplete_features=d,this.other_tiles_features_drawn={},this.seq_data=h};A(U.prototype,E.prototype),U.prototype.predisplay_actions=function(){};var B=function(e,i,n){A(n,{drag_handle_class:"draghandle"}),R.call(this,e,i,n),this.dataset=null,n.dataset&&(this.dataset=n.dataset instanceof a.Model?n.dataset:new x.default.Dataset(n.dataset)),this.dataset_check_type="converted_datasets_state",this.data_url_extra_params={},this.data_query_wait="data_query_wait"in n?n.data_query_wait:5e3,this.data_manager="data_manager"in n?n.data_manager:new h.default.GenomeDataManager({dataset:this.dataset,genome:new h.default.Genome({key:e.dbkey,chroms_info:{chrom_info:e.chrom_data}}),data_mode_compatible:this.data_and_mode_compatible,can_subset:this.can_subset}),this.min_height_px=16,this.max_height_px=800,this.visible_height_px=this.config.get_value("height"),this.content_div=t("<div class='track-content'>").appendTo(this.container_div),this.container&&(this.container.content_div.append(this.container_div),"resize"in n&&!n.resize||this.add_resize_handle())};A(B.prototype,R.prototype,{action_icons_def:[{name:"mode_icon",title:"Set display mode",css_class:"chevron-expand",on_click_fn:function(){}},R.prototype.action_icons_def[0],{name:"overview_icon",title:"Set as overview",css_class:"application-dock-270",on_click_fn:function(t){t.view.set_overview(t)}},R.prototype.action_icons_def[1],{name:"filters_icon",title:"Filters",css_class:"ui-slider-050",on_click_fn:function(t){t.filters_manager.visible()?t.filters_manager.clear_filters():t.filters_manager.init_filters(),t.filters_manager.toggle()}},{name:"tools_icon",title:"Tool",css_class:"hammer",on_click_fn:function(e){e.tool.toggle(),e.tool.is_visible()?e.set_name(e.config.get_value("name")+e.tool_region_and_parameters_str()):e.revert_name(),t(".tooltip").remove()}},{name:"param_space_viz_icon",title:"Tool parameter space visualization",css_class:"arrow-split",on_click_fn:function(e){var i="<strong>Tool</strong>:"+e.tool.get("name")+"<br/><strong>Dataset</strong>:"+e.config.get_value("name")+'<br/><strong>Region(s)</strong>: <select name="regions"><option value="cur">current viewing area</option><option value="bookmarks">bookmarks</option><option value="both">current viewing area and bookmarks</option></select>',n=function(){Galaxy.modal.hide(),t(window).unbind("keypress.check_enter_esc")},o=function(){var i,n=t('select[name="regions"] option:selected').val(),o=new h.default.GenomeRegion({chrom:view.chrom,start:view.low,end:view.high}),r=l.map(t(".bookmark"),function(e){return new h.default.GenomeRegion({from_str:t(e).children(".position").text()})});i="cur"===n?[o]:"bookmarks"===n?r:[o].concat(r),Galaxy.modal.hide(),window.location.href=Galaxy.root+"visualization/sweepster?"+t.param({dataset_id:e.dataset.id,hda_ldda:e.dataset.get("hda_ldda"),regions:JSON.stringify(new a.Collection(i).toJSON())})};Galaxy.modal.show({title:"Visualize tool parameter space and output from different parameter settings?",body:i,buttons:{No:n,Yes:o}})}},R.prototype.action_icons_def[2]],can_draw:function(){return this.dataset&&R.prototype.can_draw.call(this)},build_container_div:function(){return t("<div/>").addClass("track").attr("id","track_"+this.id)},set_dataset:function(t){this.dataset=t,this.data_manager.set("dataset",t)},on_resize:function(){this.request_draw({clear_tile_cache:!0})},add_resize_handle:function(){var e=this,i=!1,a=!1,n=t("<div class='track-resize'>");t(e.container_div).hover(function(){e.config.get_value("content_visible")&&(i=!0,n.show())},function(){i=!1,a||n.hide()}),n.hide().bind("dragstart",function(i,n){a=!0,n.original_height=t(e.content_div).height()}).bind("drag",function(i,a){var n=Math.min(Math.max(a.original_height+a.deltaY,e.min_height_px),e.max_height_px);t(e.tiles_div).css("height",n),e.visible_height_px=e.max_height_px===n?0:n,e.on_resize()}).bind("dragend",function(t,o){e.tile_cache.clear(),a=!1,i||n.hide(),e.config.set_value("height",e.visible_height_px),e.changed()}).appendTo(e.container_div)},hide_contents:function(){this.tiles_div.hide(),this.container_div.find(".yaxislabel, .track-resize").hide()},show_contents:function(){this.tiles_div.show(),this.container_div.find(".yaxislabel, .track-resize").show(),this.request_draw()},get_type:function(){return this instanceof X?"LabelTrack":this instanceof Y?"ReferenceTrack":this instanceof Q?"LineTrack":this instanceof et?"ReadTrack":this instanceof tt?"VariantTrack":this instanceof W?"CompositeTrack":this instanceof K?"FeatureTrack":""},show_message:function(e){return this.tiles_div.remove(),t("<span/>").addClass("message").html(e).appendTo(this.content_div)},init:function(e){var i=this;if(i.enabled=!1,i.tile_cache.clear(),i.data_manager.clear(),i.content_div.children().remove(),i.container_div.removeClass("nodata error pending"),i.tiles_div=t("<div/>").addClass("tiles").appendTo(i.content_div),i.dataset.id){var a=t.Deferred(),n={hda_ldda:i.dataset.get("hda_ldda"),data_type:this.dataset_check_type,chrom:i.view.chrom,retry:e};return t.getJSON(this.dataset.url(),n,function(e){if(e&&"error"!==e&&"error"!==e.kind)"no converter"===e?(i.container_div.addClass("error"),i.show_message(G)):"no data"===e||void 0!==e.data&&(null===e.data||0===e.data.length)?(i.container_div.addClass("nodata"),i.show_message("No data for this chrom/contig.")):"pending"===e?(i.container_div.addClass("pending"),i.show_message("Preparing data. This can take a while for a large dataset. If the visualization is saved and closed, preparation will continue in the background."),setTimeout(function(){i.init()},i.data_query_wait)):"data"!==e&&"data"!==e.status||(e.valid_chroms&&(i.valid_chroms=e.valid_chroms,i.update_icons()),i.tiles_div.text("Ready for display"),i.view.chrom?(i.tiles_div.text(""),i.tiles_div.css("height",i.visible_height_px+"px"),i.enabled=!0,t.when.apply(t,i.predraw_init()).done(function(){a.resolve(),i.container_div.removeClass("nodata error pending"),i.request_draw()})):a.resolve());else{i.container_div.addClass("error");var n=i.show_message("Cannot display dataset due to an error. ");e.message&&(n.append(t("<a href='javascript:void(0);'></a>").text("View error").click(function(){Galaxy.modal.show({title:"Trackster Error",body:"<pre>"+e.message+"</pre>",buttons:{Close:function(){Galaxy.modal.hide()}}})})),n.append(t("<span/>").text(" ")),n.append(t("<a href='javascript:void(0);'></a>").text("Try again").click(function(){i.init(!0)})))}}),this.update_icons(),a}},predraw_init:function(){var e=this;return t.getJSON(e.dataset.url(),{data_type:"data",stats:!0,chrom:e.view.chrom,low:0,high:e.view.max_high,hda_ldda:e.dataset.get("hda_ldda")},function(t){var i=t.data;if(i&&void 0!==i.min&&void 0!==i.max){var a=i.min,n=i.max;a=Math.floor(Math.min(0,Math.max(a,i.mean-2*i.sd))),n=Math.ceil(Math.max(0,Math.min(n,i.mean+2*i.sd))),e.config.set_default_value("min_value",a),e.config.set_default_value("max_value",n),e.config.set_value("min_value",a),e.config.set_value("max_value",n)}})},get_drawables:function(){return this}});var J=function(e,i,a){B.call(this,e,i,a);var n=this;if(I(n.container_div,n.drag_handle_class,".group",n),this.filters_manager=new b.default.FiltersManager(this,"filters"in a?a.filters:null),this.data_manager.set("filters_manager",this.filters_manager),this.filters_available=!1,this.tool=a.tool?new L(l.extend(a.tool,{track:this,tool_state:a.tool_state})):null,this.tile_cache=new h.default.Cache(10),this.left_offset=0,this.header_div&&(this.set_filters_manager(this.filters_manager),this.tool)){var o=new q({model:this.tool});o.render(),this.dynamic_tool_div=o.$el,this.header_div.after(this.dynamic_tool_div)}this.tiles_div=t("<div/>").addClass("tiles").appendTo(this.content_div),this.config.get_value("content_visible")||this.tiles_div.hide(),this.overlay_div=t("<div/>").addClass("overlay").appendTo(this.content_div),a.mode&&this.change_mode(a.mode)};A(J.prototype,R.prototype,B.prototype,{action_icons_def:B.prototype.action_icons_def.concat([{name:"show_more_rows_icon",title:"To minimize track height, not all feature rows are displayed. Click to display more rows.",css_class:"exclamation",on_click_fn:function(e){t(".tooltip").remove(),e.slotters[e.view.resolution_px_b].max_rows*=2,e.request_draw({clear_tile_cache:!0})},hide:!0}]),copy:function(t){var e=this.to_dict();A(e,{data_manager:this.data_manager});var i=new this.constructor(this.view,t,e);return i.change_mode(this.mode),i.enabled=this.enabled,i},set_filters_manager:function(t){this.filters_manager=t,this.header_div.after(this.filters_manager.parent_div)},to_dict:function(){return{track_type:this.get_type(),dataset:{id:this.dataset.id,hda_ldda:this.dataset.get("hda_ldda")},prefs:this.config.to_key_value_dict(),mode:this.mode,filters:this.filters_manager.to_dict(),tool_state:this.tool?this.tool.state_dict():{}}},set_min_max:function(){var e=this;return t.getJSON(e.dataset.url(),{data_type:"data",stats:!0,chrom:e.view.chrom,low:0,high:e.view.max_high,hda_ldda:e.dataset.get("hda_ldda")},function(t){var i=t.data;if(isNaN(parseFloat(e.config.get_value("min_value")))||isNaN(parseFloat(e.config.get_value("max_value")))){var a=i.min,n=i.max;a=Math.floor(Math.min(0,Math.max(a,i.mean-2*i.sd))),n=Math.ceil(Math.max(0,Math.min(n,i.mean+2*i.sd))),e.config.set_value("min_value",a),e.config.set_value("max_value",n)}})},change_mode:function(t){var e=this;return e.mode=t,e.config.set_value("mode",t),"Auto"===t&&this.data_manager.clear(),e.request_draw({clear_tile_cache:!0}),this.action_icons.mode_icon.attr("title","Set display mode (now: "+e.mode+")"),e},update_icons:function(){var t=this;t.action_icons.filters_icon.toggle(t.filters_available),t.action_icons.tools_icon.toggle(null!==t.tool),t.action_icons.param_space_viz_icon.toggle(null!==t.tool)},_gen_tile_cache_key:function(t,e){return t+"_"+e},request_draw:function(t){t&&t.clear_tile_cache&&this.tile_cache.clear(),this.view.request_redraw(t,this)},before_draw:function(){this.max_height_px=0},_draw:function(e){if(this.can_draw()){var i=e&&e.clear_after,a=this.view.low,n=this.view.high,o=this.view.container.width(),r=this.view.resolution_px_b,s=1/r;this.is_overview&&(a=this.view.max_low,n=this.view.max_high,r=o/(view.max_high-view.max_low),s=1/r),this.before_draw(),this.tiles_div.children().addClass("remove");for(var d,c,u=Math.floor(400*s),f=Math.floor(a/u),_=[],p=[];f*u<n;)d=new h.default.GenomeRegion({chrom:this.view.chrom,start:f*u,end:Math.min((f+1)*u,this.view.max_high)}),c=this.draw_helper(d,r,e),_.push(c),t.when(c).then(function(t){p.push(t)}),f+=1;i||this.tiles_div.children(".remove").removeClass("remove").remove();var g=this;t.when.apply(t,_).then(function(){g.tiles_div.children(".remove").remove(),p=l.filter(p,function(t){return null!==t}),0!==p.length&&g.postdraw_actions(p,o,r,i)})}},_add_yaxis_label:function(e,i){var a=this,n="max"===e?"top":"bottom",r="max"===e?"max":"min",s="max"===e?"max_value":"min_value",l=this.container_div.find(".yaxislabel."+n),d=o(a.config.get_value(s),1);i=i||function(){a.request_draw({clear_tile_cache:!0})},0!==l.length?l.text(d):(l=t("<div/>").text(d).make_text_editable({num_cols:12,on_finish:function(e){t(".tooltip").remove(),a.config.set_value(s,o(e,1)),i()},help_text:"Set "+r+" value"}).addClass("yaxislabel "+n).css("color",this.config.get_value("label_color")),this.container_div.prepend(l))},postdraw_actions:function(t,e,i,a){if(l.filter(t,function(t){return t instanceof H}).length>0){this.max_height_px=0;var n=this;l.each(t,function(t){t instanceof H||(t.html_elt.remove(),n.draw_helper(t.region,i,{force:!0,mode:"Coverage"}))}),n._add_yaxis_label("max")}else this.container_div.find(".yaxislabel").remove(),l.find(t,function(t){return t.has_icons})&&l.each(t,function(t){t.has_icons||t.html_elt.css("padding-top",20)})},get_mode:function(t){return this.mode},update_auto_mode:function(t){},_get_drawables:function(){return[this]},draw_helper:function(e,i,a){a||(a={});var n=a.force,o=a.mode||this.mode,r=1/i,s=this,d=this._get_drawables(),h=this._gen_tile_cache_key(i,e),c=n?void 0:s.tile_cache.get_elt(h);if(c)return function(t){return t&&"track"in t}(c)&&s.show_tile(c,i),c;if(!1===a.data_fetch)return null;var u=function(){var t=l.find(P,function(t){return t===o})?"Coverage":o,i=l.map(d,function(i){return i.data_manager.get_data(e,t,r,s.data_url_extra_params)});return view.reference_track&&i.push(view.reference_track.data_manager.get_data(e,o,r,view.reference_track.data_url_extra_params)),i},f=t.Deferred();return s.tile_cache.set_elt(h,f),t.when.apply(t,u()).then(function(){var n,o=u(),r=o;if(l.find(o,function(t){return _.default.is_deferred(t)}))return s.tile_cache.set_elt(h,void 0),void t.when(s.draw_helper(e,i,a)).then(function(t){f.resolve(t)});view.reference_track&&(n=view.reference_track.data_manager.subset_entry(o.pop(),e));var c=[],p=[];l.each(d,function(t,e){var a=t.mode,n=r[e];"Auto"===a&&(a=t.get_mode(n),t.update_auto_mode(a)),c.push(a),p.push(t.get_canvas_height(n,a,i,b))});var g,v=s.view.canvas_manager.new_canvas(),m=e.get("start"),w=e.get("end"),b=Math.ceil((w-m)*i)+s.left_offset,y=l.max(p);v.width=b,v.height=a.height||y;var x=v.getContext("2d");x.translate(s.left_offset,0),d.length>1&&(x.globalAlpha=.5,x.globalCompositeOperation="source-over"),l.each(d,function(t,a){g=t.draw_tile(r[a],x,c[a],e,i,n)}),void 0!==g&&(s.tile_cache.set_elt(h,g),s.show_tile(g,i)),f.resolve(g)}),f},get_canvas_height:function(t,e,i,a){return this.visible_height_px},_draw_line_track_tile:function(t,e,i,a,n){-1!==[void 0,null].indexOf(this.config.get_value("min_value"))&&this.config.set_value("min_value",0),-1!==[void 0,null,0].indexOf(this.config.get_value("max_value"))&&this.config.set_value("max_value",l.max(l.map(t.data,function(t){return t[1]}))||0);var o=e.canvas;return new m.default.LinePainter(t.data,a.get("start"),a.get("end"),this.config.to_key_value_dict(),i).draw(e,o.width,o.height,n),new H(this,a,n,o,t.data)},draw_tile:function(t,e,i,a,n,o){},show_tile:function(t,e){var i=t.html_elt;t.predisplay_actions();var a=Math.round((t.low-(this.is_overview?this.view.max_low:this.view.low))*e);this.left_offset&&(a-=this.left_offset),i.css("left",a),i.hasClass("remove")?i.removeClass("remove"):this.tiles_div.append(i),i.css("height","auto"),this.max_height_px=Math.max(this.max_height_px,i.height()-2),i.parent().children().css("height",this.max_height_px+"px");var n=this.max_height_px;0!==this.visible_height_px&&(n=Math.min(this.max_height_px,this.visible_height_px)),this.tiles_div.css("height",n+"px")},tool_region_and_parameters_str:function(t){var e=this;return" - region=["+(void 0!==t?t.toString():"all")+"], parameters=["+l.values(e.tool.get_inputs_dict()).join(", ")+"]"},data_and_mode_compatible:function(t,e){return"Auto"===e||("Coverage"===e?"bigwig"===t.dataset_type:"bigwig"!==t.dataset_type&&"no_detail"!==t.extra_info)},can_subset:function(t){return!t.message&&"no_detail"!==t.extra_info&&("bigwig"!==t.dataset_type||t.data[1][0]-t.data[0][0]==1)},init_for_tool_data:function(){this.data_manager.set("data_type","raw_data"),this.data_query_wait=1e3,this.dataset_check_type="state"}});var X=function(t,e){B.call(this,t,e,{resize:!1,header:!1}),this.container_div.addClass("label-track")};A(X.prototype,B.prototype,{init:function(){this.enabled=!0},predraw_init:function(){},_draw:function(e){for(var i=this.view,a=i.high-i.low,n=Math.floor(Math.pow(10,Math.floor(Math.log(a)/Math.log(10)))),o=Math.floor(i.low/n)*n,r=this.view.container.width(),s=t("<div/>").addClass("label-container");o<i.high;){var l=Math.floor((o-i.low)/a*r);s.append(t("<div/>").addClass("pos-label").text(_.default.commatize(o)).css({left:l})),o+=n}this.content_div.children(":first").remove(),this.content_div.append(s)}});var W=function(t,e,i){if(J.call(this,t,e,i),this.drawables=[],"drawables"in i){for(var a,n=0;n<i.drawables.length;n++)a=i.drawables[n],this.drawables[n]=at(a,t,null),a.left_offset>this.left_offset&&(this.left_offset=a.left_offset);this.enabled=!0}l.each(this.drawables,function(t){(t instanceof K||t instanceof et)&&t.change_mode("Coverage")}),this.update_icons(),this.obj_type="CompositeTrack"};A(W.prototype,J.prototype,{display_modes:P,build_config_params:function(){return l.union(R.prototype.config_params,[{key:"min_value",label:"Min Value",type:"float",default_value:void 0},{key:"max_value",label:"Max Value",type:"float",default_value:void 0},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"height",type:"int",default_value:30,hidden:!0}])},action_icons_def:[{name:"composite_icon",title:"Show individual tracks",css_class:"layers-stack",on_click_fn:function(e){t(".tooltip").remove(),e.show_group()}}].concat(J.prototype.action_icons_def),to_dict:N.prototype.to_dict,add_drawable:N.prototype.add_drawable,unpack_drawables:N.prototype.unpack_drawables,config_onchange:function(){this.set_name(this.config.get_value("name")),this.request_draw({clear_tile_cache:!0})},on_resize:function(){var t=this.visible_height_px;l.each(this.drawables,function(e){e.visible_height_px=t}),B.prototype.on_resize.call(this)},change_mode:function(t){J.prototype.change_mode.call(this,t);for(var e=0;e<this.drawables.length;e++)this.drawables[e].change_mode(t)},init:function(){for(var e=[],i=0;i<this.drawables.length;i++)e.push(this.drawables[i].init());var a=this;t.when.apply(t,e).then(function(){a.enabled=!0,a.request_draw()})},update_icons:function(){this.action_icons.filters_icon.hide(),this.action_icons.tools_icon.hide(),this.action_icons.param_space_viz_icon.hide()},can_draw:R.prototype.can_draw,_get_drawables:function(){return this.drawables},show_group:function(){for(var t,e=new j(this.view,this.container,{name:this.config.get_value("name")}),i=0;i<this.drawables.length;i++)t=this.drawables[i],t.update_icons(),e.add_drawable(t),t.container=e,e.content_div.append(t.container_div);this.container.replace_drawable(this,e,!0);e.request_draw({clear_tile_cache:!0})},before_draw:function(){var t=l.min(l.map(this.drawables,function(t){return t.config.get_value("min_value")})),e=l.max(l.map(this.drawables,function(t){return t.config.get_value("max_value")}));this.config.set_value("min_value",t),this.config.set_value("max_value",e),l.each(this.drawables,function(i){i.config.set_value("min_value",t),i.config.set_value("max_value",e)})},update_all_min_max:function(){var t=this.config.get_value("min_value"),e=this.config.get_value("max_value");l.each(this.drawables,function(i){i.config.set_value("min_value",t),i.config.set_value("max_value",e)}),this.request_draw({clear_tile_cache:!0})},postdraw_actions:function(t,e,i,a){var n,o=-1;for(n=0;n<t.length;n++){var r=t[n].html_elt.find("canvas").height();r>o&&(o=r)}for(n=0;n<t.length;n++){var s=t[n];s.html_elt.find("canvas").height()!==o&&(this.draw_helper(s.region,i,{force:!0,height:o}),s.html_elt.remove())}var l=this,d=function(){l.update_all_min_max()};this._add_yaxis_label("min",d),this._add_yaxis_label("max",d)}});var Y=function(t){J.call(this,t,{content_div:t.top_labeltrack},{resize:!1,header:!1}),this.left_offset=t.canvas_manager.char_width_px,this.container_div.addClass("reference-track"),this.data_url=Galaxy.root+"api/genomes/"+this.view.dbkey,this.data_url_extra_params={reference:!0},this.data_manager=new h.default.GenomeReferenceDataManager({data_url:this.data_url,can_subset:this.can_subset}),this.hide_contents()};A(Y.prototype,R.prototype,J.prototype,{build_config_params:function(){return l.union(R.prototype.config_params,[{key:"height",type:"int",default_value:13,hidden:!0}])},init:function(){this.data_manager.clear(),this.enabled=!0},predraw_init:function(){},can_draw:R.prototype.can_draw,draw_helper:function(t,e,i){var a,n=this.tiles_div.is(":visible"),o=null;return e>this.view.canvas_manager.char_width_px?(this.tiles_div.show(),a=!0,o=J.prototype.draw_helper.call(this,t,e,i)):(a=!1,this.tiles_div.hide()),n!==a&&this.view.resize_viewport(),o},can_subset:function(t){return!0},draw_tile:function(t,e,i,a,n){var o=this.data_manager.subset_entry(t,a),r=o.data,s=e.canvas;e.font=e.canvas.manager.default_font,e.textAlign="center";for(var l=0,d=r.length;l<d;l++)e.fillStyle=this.view.get_base_color(r[l]),e.fillText(r[l],Math.floor(l*n),10);return new E(this,a,n,s,o)}});var Q=function(e,i,a){this.mode="Histogram",J.call(this,e,i,a),this.left_offset=30;var n=this;t.when(r(Galaxy.root+"datasets/"+this.dataset.id+"/display")).then(function(t){t&&(n.data_manager=new z.default.BBIDataManager({dataset:n.dataset}))})};A(Q.prototype,R.prototype,J.prototype,{display_modes:P,build_config_params:function(){return l.union(R.prototype.config_params,[{key:"color",label:"Color",type:"color"},{key:"min_value",label:"Min Value",type:"float",default_value:void 0},{key:"max_value",label:"Max Value",type:"float",default_value:void 0},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"height",type:"int",default_value:30,hidden:!0}])},config_onchange:function(){this.set_name(this.config.get_value("name")),this.request_draw({clear_tile_cache:!0})},before_draw:function(){},draw_tile:function(t,e,i,a,n){return this._draw_line_track_tile(t,e,i,a,n)},can_subset:function(t){return t.data[1][0]-t.data[0][0]==1},postdraw_actions:function(t,e,i,a){this._add_yaxis_label("max"),this._add_yaxis_label("min")}});var Z=function(t,e,i){this.mode="Heatmap",J.call(this,t,e,i)};A(Z.prototype,R.prototype,J.prototype,{display_modes:["Heatmap"],build_config_params:function(){return l.union(R.prototype.config_params,[{key:"pos_color",label:"Positive Color",type:"color",default_value:"#FF8C00"},{key:"neg_color",label:"Negative Color",type:"color",default_value:"#4169E1"},{key:"min_value",label:"Min Value",type:"int",default_value:void 0},{key:"max_value",label:"Max Value",type:"int",default_value:void 0},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"height",type:"int",default_value:500,hidden:!0}])},config_onchange:function(){this.set_name(this.config.get_value("name")),this.request_draw({clear_tile_cache:!0})},predraw_init:function(){var e=this;return t.getJSON(e.dataset.url(),{data_type:"data",stats:!0,chrom:e.view.chrom,low:0,high:e.view.max_high,hda_ldda:e.dataset.get("hda_ldda")},function(t){t.data})},draw_tile:function(t,e,i,a,n){var o=e.canvas;return new m.default.DiagonalHeatmapPainter(t.data,a.get("start"),a.get("end"),this.config.to_key_value_dict(),i).draw(e,o.width,o.height,n),new E(this,a,n,o,t.data)}});var K=function(t,e,i){J.call(this,t,e,i),this.container_div.addClass("feature-track"),this.summary_draw_height=30,this.slotters={},this.start_end_dct={},this.left_offset=200,this.set_painter_from_config()};A(K.prototype,R.prototype,J.prototype,{display_modes:["Auto","Coverage","Dense","Squish","Pack"],build_config_params:function(){return l.union(R.prototype.config_params,[{key:"block_color",label:"Block color",type:"color"},{key:"reverse_strand_color",label:"Antisense strand color",type:"color"},{key:"label_color",label:"Label color",type:"color",default_value:"black"},{key:"show_counts",label:"Show summary counts",type:"bool",default_value:!0,help:"Show the number of items in each bin when drawing summary histogram"},{key:"min_value",label:"Histogram minimum",type:"float",default_value:void 0,help:"clear value to set automatically"},{key:"max_value",label:"Histogram maximum",type:"float",default_value:void 0,help:"clear value to set automatically"},{key:"connector_style",label:"Connector style",type:"select",default_value:"fishbones",options:[{label:"Line with arrows",value:"fishbone"},{label:"Arcs",value:"arcs"}]},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"height",type:"int",default_value:0,hidden:!0}])},config_onchange:function(){this.set_name(this.config.get_value("name")),this.set_painter_from_config(),this.request_draw({clear_tile_cache:!0})},set_painter_from_config:function(){"arcs"===this.config.get_value("connector_style")?this.painter=m.default.ArcLinkedFeaturePainter:this.painter=m.default.LinkedFeaturePainter},postdraw_actions:function(e,i,a,n){J.prototype.postdraw_actions.call(this,e,i,a,n);var o,r=this;if(0===l.filter(e,function(t){return t instanceof H}).length){var s={};l.each(l.pluck(e,"incomplete_features"),function(t){l.each(t,function(t){s[t[0]]=t})});var d=this;l.each(e,function(e){var i=l.omit(s,l.map(e.incomplete_features,function(t){return t[0]}));if(i=l.omit(i,l.keys(e.other_tiles_features_drawn)),0!==l.size(i)){var a={data:l.values(i)},n=d.view.canvas_manager.new_canvas(),o=n.getContext("2d");n.height=Math.max(e.canvas.height,d.get_canvas_height(a,e.mode,e.w_scale,100)),n.width=e.canvas.width,o.drawImage(e.canvas,0,0),o.translate(r.left_offset,0);var h=d.draw_tile(a,o,e.mode,e.region,e.w_scale,e.seq_data);t(e.canvas).replaceWith(t(h.canvas)),e.canvas=n,l.extend(e.other_tiles_features_drawn,s)}})}if(r.filters_manager){var h,c=r.filters_manager.filters;for(h=0;h<c.length;h++)c[h].update_ui_elt();var u,f,_=!1;for(o=0;o<e.length;o++)if(e[o].data.length)for(u=e[o].data[0],h=0;h<c.length;h++)if(f=c[h],f.applies_to(u)&&f.min!==f.max){_=!0;break}r.filters_available!==_&&(r.filters_available=_,r.filters_available||r.filters_manager.hide(),r.update_icons())}if(e[0]instanceof U){var p=!0;for(o=0;o<e.length;o++)if(!e[o].all_slotted){p=!1;break}this.action_icons.show_more_rows_icon.toggle(!p)}else this.action_icons.show_more_rows_icon.hide()},update_auto_mode:function(t){"Auto"===this.mode&&("no_detail"===t&&(t="feature spans"),this.action_icons.mode_icon.attr("title","Set display mode (now: Auto/"+t+")"))},incremental_slots:function(t,e,i){var a=this.view.canvas_manager.dummy_context,n=this.slotters[t];return n&&n.mode===i||(n=new g.default.FeatureSlotter(t,i,100,function(t){return a.measureText(t)}),this.slotters[t]=n),n.slot_features(e)},get_mode:function(t){return"no_detail"===t.extra_info||this.is_overview?"no_detail":this.view.high-this.view.low>12e3?"Squish":"Pack"},get_canvas_height:function(t,e,i,a){if("Coverage"===e||"bigwig"===t.dataset_type)return this.summary_draw_height;var n=this.incremental_slots(i,t.data,e),o=new this.painter(null,null,null,this.config.to_key_value_dict(),e);return Math.max(this.min_height_px,o.get_required_height(n,a))},draw_tile:function(t,e,i,a,n,o,r){var s=this,l=e.canvas,d=a.get("start"),h=a.get("end"),c=this.left_offset;if("bigwig"===t.dataset_type)return this._draw_line_track_tile(t,e,i,a,n);var u=[],f=this.slotters[n].slots,_=!0;if(t.data)for(var p=this.filters_manager.filters,g=0,v=t.data.length;g<v;g++){for(var m,w=t.data[g],b=!1,y=0,x=p.length;y<x;y++)if(m=p[y],m.update_attrs(w),!m.keep(w)){b=!0;break}b||(u.push(w),w[0]in f||(_=!1))}var k=this.filters_manager.alpha_filter?new V(this.filters_manager.alpha_filter):null,C=this.filters_manager.height_filter?new V(this.filters_manager.height_filter):null,S=new this.painter(u,d,h,this.config.to_key_value_dict(),i,k,C,o,function(t){return s.view.get_base_color(t)}),M=null;if(e.fillStyle=this.config.get_value("block_color"),e.font=e.canvas.manager.default_font,e.textAlign="right",t.data){var T=S.draw(e,l.width,l.height,n,f);M=T.feature_mapper,incomplete_features=T.incomplete_features,M.translation=-c}return r?void 0:new U(s,a,n,l,t.data,i,t.message,_,M,incomplete_features,o)}});var tt=function(t,e,i){J.call(this,t,e,i),this.painter=m.default.VariantPainter,this.summary_draw_height=30,this.left_offset=30};A(tt.prototype,R.prototype,J.prototype,{display_modes:["Auto","Coverage","Dense","Squish","Pack"],build_config_params:function(){return l.union(R.prototype.config_params,[{key:"color",label:"Histogram color",type:"color"},{key:"show_sample_data",label:"Show sample data",type:"bool",default_value:!0},{key:"show_labels",label:"Show summary and sample labels",type:"bool",default_value:!0},{key:"summary_height",label:"Locus summary height",type:"float",default_value:20},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"height",type:"int",default_value:0,hidden:!0}])},config_onchange:function(){this.set_name(this.config.get_value("name")),this.request_draw({clear_tile_cache:!0})},draw_tile:function(t,e,i,a,n){if("bigwig"===t.dataset_type)return this._draw_line_track_tile(t,e,"Histogram",a,n);var o=this.view;return new this.painter(t.data,a.get("start"),a.get("end"),this.config.to_key_value_dict(),i,function(t){return o.get_base_color(t)}).draw(e,e.canvas.width,e.canvas.height,n),new E(this,a,n,e.canvas,t.data)},get_canvas_height:function(t,e,i,a){if("bigwig"===t.dataset_type)return this.summary_draw_height;var n=this.dataset.get_metadata("sample_names")?this.dataset.get_metadata("sample_names").length:0;return 0===n&&0!==t.data.length&&(n=t.data[0][7].match(/,/g),n=null===n?1:n.length+1),new this.painter(null,null,null,this.config.to_key_value_dict(),e).get_required_height(n)},predraw_init:function(){var t=[B.prototype.predraw_init.call(this)];return this.dataset.get_metadata("sample_names")||t.push(this.dataset.fetch()),t},postdraw_actions:function(e,i,a,n){J.prototype.postdraw_actions.call(this,e,i,a,n);var o=l.filter(e,function(t){return t instanceof H}),r=this.dataset.get_metadata("sample_names");if(0===o.length&&this.config.get_value("show_labels")&&r&&r.length>1){var s;if(0===this.container_div.find(".yaxislabel.variant").length&&(s=this.config.get_value("summary_height")/2,this.tiles_div.prepend(t("<div/>").text("Summary").addClass("yaxislabel variant top").css({"font-size":s+"px",top:(this.config.get_value("summary_height")-s)/2+"px"})),this.config.get_value("show_sample_data"))){var d=r.join("<br/>");this.tiles_div.prepend(t("<div/>").html(d).addClass("yaxislabel variant top sample").css({top:this.config.get_value("summary_height")}))}s=("Squish"===this.mode?5:10)+"px",t(this.tiles_div).find(".sample").css({"font-size":s,"line-height":s}),t(this.tiles_div).find(".yaxislabel").css("color",this.config.get_value("label_color"))}else this.container_div.find(".yaxislabel.variant").remove()}});var et=function(t,e,i){K.call(this,t,e,i),this.painter=m.default.ReadPainter,this.update_icons()};A(et.prototype,R.prototype,J.prototype,K.prototype,{build_config_params:function(){return l.union(R.prototype.config_params,[{key:"block_color",label:"Histogram color",type:"color"},{key:"detail_block_color",label:"Sense strand block color",type:"color",default_value:"#AAAAAA"},{key:"reverse_strand_color",label:"Antisense strand block color",type:"color",default_value:"#DDDDDD"},{key:"label_color",label:"Label color",type:"color",default_value:"black"},{key:"show_insertions",label:"Show insertions",type:"bool",default_value:!1},{key:"show_differences",label:"Show differences only",type:"bool",default_value:!0},{key:"show_counts",label:"Show summary counts",type:"bool",default_value:!0},{key:"mode",type:"string",default_value:this.mode,hidden:!0},{key:"min_value",label:"Histogram minimum",type:"float",default_value:void 0,help:"clear value to set automatically"},{key:"max_value",label:"Histogram maximum",type:"float",default_value:void 0,help:"clear value to set automatically"},{key:"height",type:"int",default_value:0,hidden:!0}])},config_onchange:function(){this.set_name(this.config.get_value("name")),this.request_draw({clear_tile_cache:!0})}});var it={CompositeTrack:W,DrawableGroup:j,DiagonalHeatmapTrack:Z,FeatureTrack:K,LineTrack:Q,ReadTrack:et,VariantTrack:tt,VcfTrack:tt},at=function(t,e,i){if("copy"in t)return t.copy(i);var a=t.obj_type;return a||(a=t.track_type),new it[a](e,i,t)};e.default={TracksterView:D,DrawableGroup:j,LineTrack:Q,FeatureTrack:K,DiagonalHeatmapTrack:Z,ReadTrack:et,VariantTrack:tt,CompositeTrack:W,object_from_template:at}}).call(e,i(0),i(2))},28:function(t,e,i){"use strict";(function(t,a){Object.defineProperty(e,"__esModule",{value:!0});var n=i(1),o=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(n),r=t.View.extend({className:"track-header",initialize:function(){this.model.config.get("name").on("change:value",this.update_name,this),this.render()},render:function(){this.$el.append(a("<div/>").addClass(this.model.drag_handle_class)),this.$el.append(a("<div/>").addClass("track-name").text(this.model.config.get_value("name"))),this.action_icons={},this.render_action_icons(),this.$el.dblclick(function(t){t.stopPropagation()}),this.$el.append(a("<div style='clear: both'/>"))},update_name:function(){this.$el.find(".track-name").text(this.model.config.get_value("name"))},render_action_icons:function(){var t=this;this.icons_div=a("<div/>").addClass("track-icons").hide().appendTo(this.$el),o.each(this.model.action_icons_def,function(e){t.add_action_icon(e.name,e.title,e.css_class,e.on_click_fn,e.prepend,e.hide)}),this.set_display_modes(this.model.display_modes)},add_action_icon:function(t,e,i,n,o,r){var s=this;this.action_icons[t]=a("<a/>").attr("title",e).addClass("icon-button").addClass(i).tooltip().click(function(){n(s.model)}).appendTo(this.icons_div),r&&this.action_icons[t].hide()},set_display_modes:function(t,e){if(t){this.model.display_modes=t,this.model.mode=e||this.model.config.get_value("mode")||this.model.display_modes[0],this.action_icons.mode_icon.attr("title","Set display mode (now: "+this.mode+")");for(var i=this.model,a={},n=0,o=i.display_modes.length;n<o;n++){var r=i.display_modes[n];a[r]=function(t){return function(){i.change_mode(t)}}(r)}make_popupmenu(this.action_icons.mode_icon,a)}}});e.default={TrackHeaderView:r}}).call(e,i(2),i(0))},29:function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=i(1),n=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(a),o=n.extend,r=function(t,e){this.slot=t,this.feature=e},s=function(t,e,i,a){this.slots={},this.start_end_dct={},this.w_scale=t,this.mode=e,this.include_label="Pack"===e,this.max_rows=i,this.measureText=a};o(s.prototype,{_get_draw_coords:function(t){var e=Math.floor(t[1]*this.w_scale),i=Math.ceil(t[2]*this.w_scale),a=t[3];if(void 0!==a&&this.include_label){var n=this.measureText(a).width+7;e-n>=0?(e-=n,"left"):(i+=n,"right")}return[e,i]},_find_slot:function(t){for(var e=t[0],i=t[1],a=0;a<=this.max_rows;a++){var n=!1,o=this.start_end_dct[a];if(void 0!==o)for(var r=0,s=o.length;r<s;r++){var l=o[r];if(i>l[0]&&e<l[1]){n=!0;break}}if(!n)return a}return-1},slot_features:function(t){for(var e,i,a=this.start_end_dct,n=[],o=0,s=0,l=t.length;s<l;s++){e=t[s],i=e[0];var d=this.slots[i];if(d){if(e[1]<d.feature[1]||d.feature[2]<e[2])for(var h=this._get_draw_coords(d.feature),c=this._get_draw_coords(e),u=this.start_end_dct[d.slot],f=0;f<u.length;f++){var _=u[f];_[0]===h[0]&&_[1]===h[1]&&(u[f]=c)}o=Math.max(o,this.slots[i].slot)}else n.push(s)}for(var s=0,l=n.length;s<l;s++){e=t[n[s]],i=e[0];var p=this._get_draw_coords(e),g=this._find_slot(p);g>=0&&(void 0===a[g]&&(a[g]=[]),a[g].push(p),this.slots[i]=new r(g,e),o=Math.max(o,g))}return o+1}}),e.default={FeatureSlotter:s}},30:function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=i(1),n=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(a),o=function(t,e){var i=t[0],a=t[1],n=e[0],o=e[1];return i<n?a<=n?1001:a<=o?1003:1002:i>o?1006:a<=o?1005:1004},r=function(t,e){var i=o(t,e);return 1001!==i&&1006!==i},s=function(t,e,i,a,n,o){void 0===o&&(o=4);var r,s=a-e,l=n-i,d=Math.floor(Math.sqrt(s*s+l*l)/o),h=s/d,c=l/d;for(r=0;r<d;r++,e+=h,i+=c)r%2==0&&t.fillRect(e,i,o,1)},l=function(t,e,i,a){var n=e-a/2,o=e+a/2,r=i-Math.sqrt(3*a/2);t.beginPath(),t.moveTo(n,r),t.lineTo(o,r),t.lineTo(e,i),t.lineTo(n,r),t.strokeStyle=this.fillStyle,t.fill(),t.stroke(),t.closePath()},d=function(t){this.default_val=t||1};d.prototype.gen_val=function(t){return this.default_val};var h=function(t){this.incomplete_features=t.incomplete_features,this.feature_mapper=t.feature_mapper},c=function(t,e,i,a,o){this.data=t,this.view_start=e,this.view_end=i,this.prefs=n.extend({},this.default_prefs,a),this.mode=o};c.prototype.default_prefs={},c.prototype.draw=function(t,e,i,a){},c.prototype.get_start_draw_pos=function(t,e){return this._chrom_pos_to_draw_pos(t,e,-.5)},c.prototype.get_end_draw_pos=function(t,e){return this._chrom_pos_to_draw_pos(t,e,.5)},c.prototype.get_draw_pos=function(t,e){return this._chrom_pos_to_draw_pos(t,e,0)},c.prototype._chrom_pos_to_draw_pos=function(t,e,i){return Math.floor(e*(Math.max(0,t-this.view_start)+i))};var u=function(t,e,i,a,n){c.call(this,t,e,i,a,n)};u.prototype.default_prefs={min_value:void 0,max_value:void 0,mode:"Histogram",color:"#000",overflow_color:"#F66"},u.prototype.draw=function(t,e,i,a){var o=!1,r=this.prefs.min_value,s=this.prefs.max_value,l=s-r,d=i,h=this.view_start,c=this.mode,u=this.data;t.save();var f=Math.round(i+r/l*i);"Intensity"!==c&&(t.fillStyle="#aaa",t.fillRect(0,f,e,1)),t.beginPath();var _,p,g;g=u.length>1?n.map(u.slice(0,-1),function(t,e){return Math.ceil((u[e+1][0]-u[e][0])*a)}):[10];for(var v,m=this.prefs.block_color||this.prefs.color,w=parseInt(m.slice(1),16),b=(16711680&w)>>16,y=(65280&w)>>8,x=255&w,k=!1,C=!1,S=0,M=u.length;S<M;S++)if(t.fillStyle=t.strokeStyle=m,k=C=!1,v=g[S],_=Math.floor((u[S][0]-h-.5)*a),null!==(p=u[S][1])){if(p<r?(C=!0,p=r):p>s&&(k=!0,p=s),"Histogram"===c)p=Math.round(p/l*d),t.fillRect(_,f,v,-p);else if("Intensity"===c){var T=(p-r)/l,z=Math.round(b+(255-b)*(1-T)),A=Math.round(y+(255-y)*(1-T)),O=Math.round(x+(255-x)*(1-T));t.fillStyle="rgb("+z+","+A+","+O+")",t.fillRect(_,0,v,d)}else p=Math.round(d-(p-r)/l*d),o?t.lineTo(_,p):(o=!0,"Filled"===c?(t.moveTo(_,d),t.lineTo(_,p)):t.moveTo(_,p));if(t.fillStyle=this.prefs.overflow_color,k||C){var $;"Histogram"===c||"Intensity"===c?$=v:(_-=2,$=4),k&&t.fillRect(_,0,$,3),C&&t.fillRect(_,d-3,$,3)}t.fillStyle=m}else o&&"Filled"===c&&t.lineTo(_,d),o=!1;"Filled"===c?(o&&(t.lineTo(_,f),t.lineTo(0,f)),t.fill()):t.stroke(),t.restore()};var f=function(t){this.feature_positions={},this.slot_height=t,this.translation=0,this.y_translation=0};f.prototype.map_feature_data=function(t,e,i,a){this.feature_positions[e]||(this.feature_positions[e]=[]),this.feature_positions[e].push({data:t,x_start:i,x_end:a})},f.prototype.get_feature_data=function(t,e){var i,a=Math.floor((e-this.y_translation)/this.slot_height);if(!this.feature_positions[a])return null;t+=this.translation;for(var n=0;n<this.feature_positions[a].length;n++)if(i=this.feature_positions[a][n],t>=i.x_start&&t<=i.x_end)return i.data};var _=function(t,e,i,a,n,o,r){c.call(this,t,e,i,a,n),this.alpha_scaler=o||new d,this.height_scaler=r||new d,this.max_label_length=200};_.prototype.default_prefs={block_color:"#FFF",connector_color:"#FFF"},n.extend(_.prototype,{get_required_height:function(t,e){var i=this.get_row_height(),a=i,n=this.mode;return"no_detail"!==n&&"Squish"!==n&&"Pack"!==n||(i=t*a),i+this.get_top_padding(e)},get_top_padding:function(t){return 0},draw:function(t,e,i,a,n){var o=this.data,r=this.view_start,s=this.view_end;t.save(),t.fillStyle=this.prefs.block_color,t.textAlign="right";for(var l,d=this.get_row_height(),c=new f(d),u=[],_=0,p=o.length;_<p;_++){var g=o[_],v=g[0],m=g[1],w=g[2],b=n&&void 0!==n[v]?n[v].slot:null;("Dense"===this.mode||null!==b)&&m<s&&w>r&&(l=this.draw_element(t,this.mode,g,b,r,s,a,d,e),c.map_feature_data(g,b,l[0],l[1]),(m<r||w>s)&&u.push(g))}return t.restore(),c.y_translation=this.get_top_padding(e),new h({incomplete_features:u,feature_mapper:c})},draw_element:function(t,e,i,a,n,o,r,s,l){return[0,0]}});var p=function(t,e,i,a,n,o,r){_.call(this,t,e,i,a,n,o,r),this.draw_background_connector=!0,this.draw_individual_connectors=!1};n.extend(p.prototype,_.prototype,{get_row_height:function(){var t=this.mode;return"Dense"===t?10:"no_detail"===t?3:"Squish"===t?5:10},draw_element:function(t,e,i,a,n,o,r,s,l){var d,h=(i[0],i[1]),c=i[2],u=i[3],f=i[4],_=Math.floor(Math.max(0,(h-n-.5)*r)),p=Math.ceil(Math.min(l,Math.max(0,(c-n-.5)*r))),g=_,v=p,d=("Dense"===e?0:0+a)*s+this.get_top_padding(l),m=null,w=null,b=f&&"+"!==f&&"."!==f?this.prefs.reverse_strand_color:this.prefs.block_color,y=this.prefs.label_color;if(t.globalAlpha=this.alpha_scaler.gen_val(i),"Dense"===e&&(a=1),"no_detail"===e)t.fillStyle=b,t.fillRect(_,d+5,p-_,1);else{var x=i[5],k=i[6],C=i[7],S=!0;x&&k&&(m=Math.floor(Math.max(0,(x-n)*r)),w=Math.ceil(Math.min(l,Math.max(0,(k-n)*r))));var M,T;if("Squish"===e?(M=1,T=3,S=!1):(M=5,T=9),C){var z,A;"Squish"===e||"Dense"===e?(z=d+Math.floor(1.5)+1,A=1):f?(z=d,A=T):(z+=2.5,A=1),this.draw_background_connector&&("Squish"===e||"Dense"===e?t.fillStyle="#ccc":f?"+"===f?t.fillStyle=t.canvas.manager.get_pattern("right_strand"):"-"===f&&(t.fillStyle=t.canvas.manager.get_pattern("left_strand")):t.fillStyle="#ccc",t.fillRect(_,z,p-_,A));for(var O=0,$=C.length;O<$;O++){var I,G,P=C[O],R=Math.floor(Math.max(0,(P[0]-n-.5)*r)),N=Math.ceil(Math.min(l,Math.max((P[1]-n-.5)*r)));if(!(R>N)){if(t.fillStyle=b,t.fillRect(R,d+(T-M)/2+1,N-R,M),void 0!==m&&k>x&&!(R>w||N<m)){var j=Math.max(R,m),D=Math.min(N,w);t.fillRect(j,d+1,D-j,T),1===C.length&&"Pack"===e&&("+"===f?t.fillStyle=t.canvas.manager.get_pattern("right_strand_inv"):"-"===f&&(t.fillStyle=t.canvas.manager.get_pattern("left_strand_inv")),j+14<D&&(j+=2,D-=2),t.fillRect(j,d+1,D-j,T))}this.draw_individual_connectors&&I&&this.draw_connector(t,I,G,R,N,d),I=R,G=N}}if("Pack"===e){t.globalAlpha=1,t.fillStyle="white";var L=this.height_scaler.gen_val(i),F=Math.ceil(T*L),q=Math.round((T-F)/2);1!==L&&(t.fillRect(_,z+1,p-_,q),t.fillRect(_,z+T-q+1,p-_,q))}}else t.fillStyle=b,t.fillRect(_,d+1,p-_,T),f&&S&&("+"===f?t.fillStyle=t.canvas.manager.get_pattern("right_strand_inv"):"-"===f&&(t.fillStyle=t.canvas.manager.get_pattern("left_strand_inv")),t.fillRect(_,d+1,p-_,T));t.globalAlpha=1,u&&"Pack"===e&&h>n&&(t.fillStyle=y,0===n&&_-t.measureText(u).width<0?(t.textAlign="left",t.fillText(u,p+2,d+8,this.max_label_length),v+=t.measureText(u).width+2):(t.textAlign="right",t.fillText(u,_-2,d+8,this.max_label_length),g-=t.measureText(u).width+2))}return t.globalAlpha=1,[g,v]}});var g=function(t,e,i,a,n,o,r,s,l){_.call(this,t,e,i,a,n,o,r),this.ref_seq=s?s.data:null,this.base_color_fn=l};n.extend(g.prototype,_.prototype,{get_row_height:function(){var t,e=this.mode;return"Dense"===e?t=10:"Squish"===e?t=5:(t=10,this.prefs.show_insertions&&(t*=2)),t},_parse_cigar:function(t){var e="MIDNSHP=X",i=[[0,0]],a=i[0],o=0,r=n.map(t.match(/[0-9]+[MIDNSHP=X]/g),function(t){var n=parseInt(t.slice(0,-1),10),r=t.slice(-1);return"N"===r?0!==a[1]&&(a=[o+n,o+n],i.push(a)):-1==="ISHP".indexOf(r)&&(a[1]+=n,o+=n),[e.indexOf(r),n]});return{blocks:i,cigar:r}},draw_read:function(t,e,i,a,n,s,d,h,c,u){var f=function(t){return Math.floor(Math.max(0,(t-n-.5)*i))};t.textAlign="center";var _,p,g=[n,s],v=0,m=0,w=Math.round(i/2),b=t.canvas.manager.char_width_px,y="+"===c?this.prefs.detail_block_color:this.prefs.reverse_strand_color,k="Pack"===e,C=k?9:3,S=a+1,M=new x(t,C,i,e),T=[],z=[],A=this._parse_cigar(h);h=A.cigar,T=A.blocks;for(var O=0;O<T.length;O++){var $=T[O];r([d+$[0],d+$[1]],g)&&(_=f(d+$[0]),p=f(d+$[1]),_===p&&(p+=1),t.fillStyle=y,t.fillRect(_,S,p-_,C))}for(var I=0,G=h.length;I<G;I++){var P=h[I],R="MIDNSHP=X"[P[0]],N=P[1],j=d+v;if(_=f(j),p=f(j+N),r([j,j+N],g))switch(_===p&&(p+=1),R){case"H":case"S":case"P":break;case"M":v+=N;break;case"=":case"X":var D="";"X"===R?D=u.slice(m,m+N):this.ref_seq&&(D=this.ref_seq.slice(Math.max(0,j-n),Math.min(j-n+N,s-n)));for(var L=Math.max(j,n),F=0;F<D.length;F++)if(D&&!this.prefs.show_differences||"X"===R){var q=Math.floor(Math.max(0,(L+F-n)*i));t.fillStyle=this.base_color_fn(D[F]),k&&i>b?t.fillText(D[F],q,a+9):i>.05&&t.fillRect(q-w,S,Math.max(1,Math.round(i)),C)}"X"===R&&(m+=N),v+=N;break;case"N":t.fillStyle="#ccc",t.fillRect(_,S+(C-1)/2,p-_,1),v+=N;break;case"D":M.draw_deletion(_,S,N),v+=N;break;case"I":var V=_-w;if(r([j,j+N],g)){var E=u.slice(m,m+N);if(this.prefs.show_insertions){var H=_-(p-_)/2;if(("Pack"===e||"Auto"===this.mode)&&void 0!==u&&i>b){switch(t.fillStyle="yellow",t.fillRect(H-w,a-9,p-_,9),z[z.length]={type:"triangle",data:[V,a+4,5]},t.fillStyle="#ccc",o([j,j+N],g)){case 1003:E=E.slice(n-j);break;case 1004:E=E.slice(0,j-s);break;case 1005:break;case 1002:E=E.slice(n-j,j-s)}for(var F=0,U=E.length;F<U;F++){var q=Math.floor(Math.max(0,(j+F-n)*i));t.fillText(E[F],q-(p-_)/2,a)}}else t.fillStyle="yellow",t.fillRect(H,a+("Dense"!==this.mode?2:5),p-_,"Dense"!==e?3:9)}else("Pack"===e||"Auto"===this.mode)&&void 0!==u&&i>b&&z.push({type:"text",data:[E.length,V,a+9]})}m+=N}else v=function(t,e,i){return-1!=="M=NXD".indexOf(e)&&(t+=i),t}(v,R,N),m=function(t,e,i){return-1!=="IX".indexOf(e)&&(t+=i),t}(m,R,N)}t.fillStyle="yellow";for(var B,J,X,O=0;O<z.length;O++)B=z[O],J=B.type,X=B.data,"text"===J?(t.save(),t.font="bold "+t.font,t.fillText(X[0],X[1],X[2]),t.restore()):"triangle"===J&&l(t,X[0],X[1],X[2])},draw_element:function(t,e,i,a,n,o,r,l,d){var h=(i[0],i[1]),c=i[2],u=i[3],f=Math.floor(Math.max(-.5*r,(h-n-.5)*r)),_=Math.ceil(Math.min(d,Math.max(0,(c-n-.5)*r))),p=("Dense"===e?0:0+a)*l,g="Pack"===e?9:3;this.prefs.label_color;if(i[5]instanceof Array){var v=!0;i[4][1]>=n&&i[4][0]<=o&&i[4][2]?this.draw_read(t,e,r,p,n,o,i[4][0],i[4][2],i[4][3],i[4][4]):v=!1,i[5][1]>=n&&i[5][0]<=o&&i[5][2]?this.draw_read(t,e,r,p,n,o,i[5][0],i[5][2],i[5][3],i[5][4]):v=!1;var m=Math.ceil(Math.min(d,Math.max(-.5*r,(i[4][1]-n-.5)*r))),w=Math.floor(Math.max(-.5*r,(i[5][0]-n-.5)*r));if(v&&w>m){t.fillStyle="#ccc";var b=p+1+(g-1)/2;s(t,m,b,w,b)}}else this.draw_read(t,e,r,p,n,o,h,i[4],i[5],i[6]);return"Pack"===e&&h>=n&&"."!==u&&(t.fillStyle=this.prefs.label_color,0===n&&f-t.measureText(u).width<0?(t.textAlign="left",t.fillText(u,_+2,p+9,this.max_label_length)):(t.textAlign="right",t.fillText(u,f-2,p+9,this.max_label_length))),[0,0]}});var v=function(t,e,i,a,n,o,r){p.call(this,t,e,i,a,n,o,r),this.longest_feature_length=this.calculate_longest_feature_length(),this.draw_background_connector=!1,this.draw_individual_connectors=!0};n.extend(v.prototype,_.prototype,p.prototype,{calculate_longest_feature_length:function(){for(var t=0,e=0,i=this.data.length;e<i;e++){var a=this.data[e],n=a[1],o=a[2];t=Math.max(t,o-n)}return t},get_top_padding:function(t){var e=this.view_end-this.view_start,i=t/e;return Math.min(128,Math.ceil(this.longest_feature_length/2*i))},draw_connector:function(t,e,i,a,n,o){var r=(i+a)/2,s=a-r;Math.PI;s>0&&(t.beginPath(),t.arc(r,o,a-r,Math.PI,0),t.stroke())}});var m=function(t,e){Array.isArray(t)?this.rgb=t:6==t.length?this.rgb=t.match(/.{2}/g).map(function(t){return parseInt(t,16)}):7==t.length?this.rgb=t.substring(1,7).match(/.{2}/g).map(function(t){return parseInt(t,16)}):this.rgb=t.split("").map(function(t){return parseInt(t+t,16)}),this.alpha="number"==typeof e?e:1};m.prototype={eval:function(){return this},toCSS:function(){return this.alpha<1?"rgba("+this.rgb.map(function(t){return Math.round(t)}).concat(this.alpha).join(", ")+")":"#"+this.rgb.map(function(t){return t=Math.round(t),t=(t>255?255:t<0?0:t).toString(16),1===t.length?"0"+t:t}).join("")},toHSL:function(){var t,e,i=this.rgb[0]/255,a=this.rgb[1]/255,n=this.rgb[2]/255,o=this.alpha,r=Math.max(i,a,n),s=Math.min(i,a,n),l=(r+s)/2,d=r-s;if(r===s)t=e=0;else{switch(e=l>.5?d/(2-r-s):d/(r+s),r){case i:t=(a-n)/d+(a<n?6:0);break;case a:t=(n-i)/d+2;break;case n:t=(i-a)/d+4}t/=6}return{h:360*t,s:e,l:l,a:o}},toARGB:function(){return"#"+[Math.round(255*this.alpha)].concat(this.rgb).map(function(t){return t=Math.round(t),t=(t>255?255:t<0?0:t).toString(16),1===t.length?"0"+t:t}).join("")},mix:function(t,e){var i=this,a=e,n=2*a-1,o=i.toHSL().a-t.toHSL().a,r=((n*o==-1?n:(n+o)/(1+n*o))+1)/2,s=1-r,l=[i.rgb[0]*r+t.rgb[0]*s,i.rgb[1]*r+t.rgb[1]*s,i.rgb[2]*r+t.rgb[2]*s],d=i.alpha*a+t.alpha*(1-a);return new m(l,d)}};var w=function(t,e,i,a){this.start_color=new m(t),this.end_color=new m(e),this.start_value=i,this.end_value=a,this.value_range=a-i};w.prototype.map_value=function(t){return t=Math.max(t,this.start_value),t=Math.min(t,this.end_value),t=(t-this.start_value)/this.value_range,this.start_color.mix(this.end_color,1-t).toCSS()};var b=function(t,e,i,a,n){this.positive_ramp=new w(e,i,0,n),this.negative_ramp=new w(e,t,0,-a),this.start_value=a,this.end_value=n};b.prototype.map_value=function(t){return t=Math.max(t,this.start_value),t=Math.min(t,this.end_value),t>=0?this.positive_ramp.map_value(t):this.negative_ramp.map_value(-t)};var y=function(t,e,i,a,n){c.call(this,t,e,i,a,n);var o,r;if(void 0===this.prefs.min_value){var s=1/0;for(o=0,r=this.data.length;o<r;o++)s=Math.min(s,this.data[o][6]);this.prefs.min_value=s}if(void 0===this.prefs.max_value){var l=-1/0;for(o=0,r=this.data.length;o<r;o++)l=Math.max(l,this.data[o][6]);this.prefs.max_value=l}};y.prototype.default_prefs={min_value:void 0,max_value:void 0,mode:"Heatmap",pos_color:"#FF8C00",neg_color:"#4169E1"},y.prototype.draw=function(t,e,i,a){var n,o,r,s,l,d,h=this.prefs.min_value,c=this.prefs.max_value,u=this.view_start,f=(this.mode,this.data),_=1/Math.sqrt(2),p=new b(this.prefs.neg_color,"#FFFFFF",this.prefs.pos_color,h,c),g=function(t){return(t-u)*a};t.save(),t.rotate(-45*Math.PI/180),t.scale(_,_);for(var v=0,m=f.length;v<m;v++)n=f[v],o=g(n[1]),r=g(n[2]),s=g(n[4]),l=g(n[5]),d=n[6],t.fillStyle=p.map_value(d),t.fillRect(o,s,r-o,l-s);t.restore()};var x=function(t,e,i,a){this.ctx=t,this.row_height=e,this.px_per_base=i,this.draw_details=("Pack"===a||"Auto"===a)&&i>=t.canvas.manager.char_width_px,this.delete_details_thickness=.2};n.extend(x.prototype,{draw_deletion:function(t,e,i){this.ctx.fillStyle="black";var a=(this.draw_details?this.delete_details_thickness:1)*this.row_height;e+=.5*(this.row_height-a),this.ctx.fillRect(t,e,i*this.px_per_base,a)}});var k=function(t,e,i,a,n,o){c.call(this,t,e,i,a,n),this.base_color_fn=o,this.divider_height=1};n.extend(k.prototype,c.prototype,{get_row_height:function(){var t=this.mode;return"Dense"===t?10:"Squish"===t?5:10},get_required_height:function(t){var e=this.prefs.summary_height;return t>1&&this.prefs.show_sample_data&&(e+=this.divider_height+t*this.get_row_height()),e},draw:function(t,e,i,a){t.save();var o,r,s,l,d,h,c,u,f,_,p,g=function(t,e){var i=t.length,a=e.length,n=0,o=1,r=null;return"-"===e?(r="deletion",o=t.length):0===t.indexOf(e)&&i>a?(r="deletion",o=i-a,n=a):0===e.indexOf(t)&&i<a&&(r="insertion",o=a-i,n=a),null!==r?{type:r,start:n,len:o}:{}},v=Math.max(1,Math.floor(a)),m=this.data.length?this.data[0][7].split(",").length:0,w="Squish"===this.mode?5:10,b=a<.1?w:"Squish"===this.mode?3:9,y=!0,k=new x(t,w,a,this.mode);1===m&&(w=b=a<t.canvas.manager.char_width_px?this.prefs.summary_height:w,k.row_height=w,y=!1),this.prefs.show_sample_data&&y&&(t.fillStyle="#F3F3F3",t.globalAlpha=1,t.fillRect(0,this.prefs.summary_height-this.divider_height,e,this.divider_height)),t.textAlign="center";for(var C=0;C<this.data.length;C++)if(o=this.data[C],r=o[1],s=o[3],l=[o[4].split(",")],d=o[7].split(","),h=o.slice(8),l=n.map(n.flatten(l),function(t){var e={type:"snp",value:t,start:0},i=g(s,t);return n.extend(e,i)}),!(r<this.view_start||r>this.view_end)){if(y)for(t.fillStyle="#999999",t.globalAlpha=1,p=0;p<l.length;p++)for(u=this.get_start_draw_pos(r+l[p].start,a),t.fillRect(u,0,v,this.prefs.summary_height),f=this.prefs.summary_height,p=0;p<l.length;p++){t.fillStyle="deletion"===l[p].type?"black":this.base_color_fn(l[p].value);var S=h/d.length,M=Math.ceil(this.prefs.summary_height*S);t.fillRect(u,f-M,v,M),f-=M}if(this.prefs.show_sample_data)for(f=y?this.prefs.summary_height+this.divider_height:0,p=0;p<d.length;p++,f+=w)if(_=d[p]?d[p].split(/\/|\|/):["0","0"],c=null,_[0]===_[1]?"."===_[0]||"0"!==_[0]&&(c=l[parseInt(_[0],10)-1],t.globalAlpha=1):(c="0"!==_[0]?_[0]:_[1],c=l[parseInt(c,10)-1],t.globalAlpha=.5),c)if(u=this.get_start_draw_pos(r+c.start,a),"snp"===c.type){var T=c.value;t.fillStyle=this.base_color_fn(T),k.draw_details?t.fillText(T,this.get_draw_pos(r,a),f+w):t.fillRect(u,f+1,v,b)}else"deletion"===c.type&&k.draw_deletion(u,f+1,c.len)}t.restore()}}),e.default={Scaler:d,LinePainter:u,LinkedFeaturePainter:p,ReadPainter:g,ArcLinkedFeaturePainter:v,DiagonalHeatmapPainter:y,VariantPainter:k}},31:function(t,e,i){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var a=i(1),n=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(a),o=n.extend,r=function(t){this.manager=null,this.name=t.name,this.index=t.index,this.tool_id=t.tool_id,this.tool_exp_name=t.tool_exp_name};o(r.prototype,{to_dict:function(){return{name:this.name,index:this.index,tool_id:this.tool_id,tool_exp_name:this.tool_exp_name}}});var s=function(e,i,a){return t("<a/>").attr("href","javascript:void(0);").attr("title",e).addClass("icon-button").addClass(i).tooltip().click(a)},l=function(e){r.call(this,e),this.low="low"in e?e.low:-Number.MAX_VALUE,this.high="high"in e?e.high:Number.MAX_VALUE,this.min="min"in e?e.min:Number.MAX_VALUE,this.max="max"in e?e.max:-Number.MAX_VALUE,this.container=null,this.slider=null,this.slider_label=null;var i=this;i.parent_div=t("<div/>").addClass("filter-row slider-row");var a=t("<div/>").addClass("elt-label").appendTo(i.parent_div),n=(t("<span/>").addClass("slider-name").text(i.name+" ").appendTo(a),t("<span/>").text(this.low+"-"+this.high)),o=t("<span/>").addClass("slider-value").appendTo(a).append("[").append(n).append("]");i.values_span=n;var l=t("<div/>").addClass("slider").appendTo(i.parent_div);i.control_element=t("<div/>").attr("id",i.name+"-filter-control").appendTo(l),i.control_element.slider({range:!0,min:this.min,max:this.max,step:this.get_slider_step(this.min,this.max),values:[this.low,this.high],slide:function(t,e){i.slide(t,e)},change:function(t,e){i.control_element.slider("option","slide").call(i.control_element,t,e)}}),i.slider=i.control_element,i.slider_label=n,function(e,i,a){e.click(function(){var e=i.text(),n=parseFloat(a.slider("option","max")),o=n<=1?4:n<=1e6?n.toString().length:6,r=!1,s=t(this).parents(".slider-row");s.addClass("input"),a.slider("option","values")&&(o=2*o+1,r=!0),i.text(""),t("<input type='text'/>").attr("size",o).attr("maxlength",o).attr("value",e).appendTo(i).focus().select().click(function(t){t.stopPropagation()}).blur(function(){t(this).remove(),i.text(e),s.removeClass("input")}).keyup(function(e){if(27===e.keyCode)t(this).trigger("blur");else if(13===e.keyCode){var i=a.slider("option","min"),n=a.slider("option","max"),o=function(t){return isNaN(t)||t>n||t<i},l=t(this).val();if(r){if(l=l.split("-"),l=[parseFloat(l[0]),parseFloat(l[1])],o(l[0])||o(l[1]))return alert("Parameter value must be in the range ["+i+"-"+n+"]"),t(this)}else if(l=parseFloat(l),o(l))return alert("Parameter value must be in the range ["+i+"-"+n+"]"),t(this);a.slider(r?"values":"value",l),s.removeClass("input")}})})}(o,n,i.control_element);var d=t("<div/>").addClass("display-controls").appendTo(i.parent_div);this.transparency_icon=s("Use filter for data transparency","layer-transparent",function(){i.manager.alpha_filter!==i?(i.manager.alpha_filter=i,i.manager.parent_div.find(".layer-transparent").removeClass("active").hide(),i.transparency_icon.addClass("active").show()):(i.manager.alpha_filter=null,i.transparency_icon.removeClass("active")),i.manager.track.request_draw({force:!0,clear_after:!0})}).appendTo(d).hide(),this.height_icon=s("Use filter for data height","arrow-resize-090",function(){i.manager.height_filter!==i?(i.manager.height_filter=i,i.manager.parent_div.find(".arrow-resize-090").removeClass("active").hide(),i.height_icon.addClass("active").show()):(i.manager.height_filter=null,i.height_icon.removeClass("active")),i.manager.track.request_draw({force:!0,clear_after:!0})}).appendTo(d).hide(),i.parent_div.hover(function(){i.transparency_icon.show(),i.height_icon.show()},function(){i.manager.alpha_filter!==i&&i.transparency_icon.hide(),i.manager.height_filter!==i&&i.height_icon.hide()}),t("<div style='clear: both;'/>").appendTo(i.parent_div)};o(l.prototype,{to_dict:function(){var t=r.prototype.to_dict.call(this);return o(t,{type:"number",min:this.min,max:this.max,low:this.low,high:this.high})},copy:function(){return new l({name:this.name,index:this.index,tool_id:this.tool_id,tool_exp_name:this.tool_exp_name})},get_slider_step:function(t,e){return e-t<=2?.01:1},slide:function(t,e){var i=e.values;this.values_span.text(i[0]+"-"+i[1]),this.low=i[0],this.high=i[1];var a=this;setTimeout(function(){i[0]===a.low&&i[1]===a.high&&a.manager.track.request_draw({force:!0,clear_after:!0})},25)},applies_to:function(t){return t.length>this.index},_keep_val:function(t){return isNaN(t)||t>=this.low&&t<=this.high},keep:function(t){if(!this.applies_to(t))return!0;var e=t[this.index];if(e instanceof Array){for(var i=!0,a=0;a<e.length;a++)if(!this._keep_val(e[a])){i=!1;break}return i}return this._keep_val(t[this.index])},update_attrs:function(t){var e=!1;if(!this.applies_to(t))return e;var i=t[this.index];i instanceof Array||(i=[i]);for(var a=0;a<i.length;a++){var n=i[a];n<this.min&&(this.min=Math.floor(n),e=!0),n>this.max&&(this.max=Math.ceil(n),e=!0)}return e},update_ui_elt:function(){this.min<this.max?this.parent_div.show():this.parent_div.hide();var t=this.slider.slider("option","min"),e=this.slider.slider("option","max");(this.min<t||this.max>e)&&(this.slider.slider("option","min",this.min),this.slider.slider("option","max",this.max),this.slider.slider("option","step",this.get_slider_step(this.min,this.max)),this.slider.slider("option","values",[this.min,this.max]))}});var d=function(e,i){if(this.track=e,this.alpha_filter=null,this.height_filter=null,this.filters=[],this.parent_div=t("<div/>").addClass("filters").hide(),this.parent_div.bind("drag",function(t){t.stopPropagation()}).click(function(t){t.stopPropagation()}).bind("dblclick",function(t){t.stopPropagation()}).bind("keydown",function(t){t.stopPropagation()}),i&&"filters"in i){for(var a,n=("alpha_filter"in i?i.alpha_filter:null),o=("height_filter"in i?i.height_filter:null),r=i.filters,s=0;s<r.length;s++)"number"===r[s].type?(a=new l(r[s]),this.add_filter(a),a.name===n&&(this.alpha_filter=a,a.transparency_icon.addClass("active").show()),a.name===o&&(this.height_filter=a,a.height_icon.addClass("active").show())):console.log("ERROR: unsupported filter: ",name,type);"visible"in i&&i.visible&&this.parent_div.show()}if(0!==this.filters.length){var d=t("<div/>").addClass("param-row").appendTo(this.parent_div),h=this;t("<input type='submit'/>").attr("value","Run on complete dataset").appendTo(d).click(function(){h.run_on_dataset()})}};o(d.prototype,{show:function(){this.parent_div.show()},hide:function(){this.parent_div.hide()},toggle:function(){this.parent_div.toggle()},visible:function(){return this.parent_div.is(":visible")},to_dict:function(){for(var t,e={},i=[],a=0;a<this.filters.length;a++)t=this.filters[a],i.push(t.to_dict());return e.filters=i,e.alpha_filter=this.alpha_filter?this.alpha_filter.name:null,e.height_filter=this.height_filter?this.height_filter.name:null,e.visible=this.parent_div.is(":visible"),e},copy:function(t){for(var e=new d(t),i=0;i<this.filters.length;i++)e.add_filter(this.filters[i].copy());return e},add_filter:function(t){t.manager=this,this.parent_div.append(t.parent_div),this.filters.push(t)},remove_all:function(){this.filters=[],this.parent_div.children().remove()},init_filters:function(){for(var t=0;t<this.filters.length;t++){this.filters[t].update_ui_elt()}},clear_filters:function(){for(var t=0;t<this.filters.length;t++){var e=this.filters[t];e.slider.slider("option","values",[e.min,e.max])}this.alpha_filter=null,this.height_filter=null,this.parent_div.find(".icon-button").hide()},run_on_dataset:function(){for(var e,i,a=(function(t,e,i){return e in t||(t[e]=i),t[e]}),n={},o=0;o<this.filters.length;o++)e=this.filters[o],e.tool_id&&(e.min!==e.low&&(i=a(n,e.tool_id,[]),i[i.length]=e.tool_exp_name+" >= "+e.low),e.max!==e.high&&(i=a(n,e.tool_id,[]),i[i.length]=e.tool_exp_name+" <= "+e.high));var r=[];for(var s in n)r[r.length]=[s,n[s]];!function e(i,a){var n=a[0],o=n[0],r=n[1],s="("+r.join(") and (")+")",l={cond:s,input:i,target_dataset_id:i,tool_id:o};a=a.slice(1),t.getJSON(run_tool_url,l,function(t){t.error?Galaxy.modal.show({title:"Filter Dataset",body:"Error running tool "+o,buttons:{Close:Galaxy.modal.hide()}}):0===a.length?Galaxy.modal.show({title:"Filtering Dataset",body:"Filter(s) are running on the complete dataset. Outputs are in dataset's history.",buttons:{Close:Galaxy.modal.hide()}}):e(t.dataset_id,a)})}(this.track.dataset_id,r)}}),e.default={FiltersManager:d,NumberFilter:l}}).call(e,i(0))},34:function(t,e,i){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var a=i(10),n=function(t){return t&&t.__esModule?t:{default:t}}(a),o=i(35),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}(o),s=n.default.GenomeDataManager.extend({load_data:function(e,i,a,n){var o=t.Deferred();this.set_data(e,o);var s=Galaxy.root+"datasets/"+this.get("dataset").id+"/display",l=this;new t.Deferred;return t.when(r.makeBwg(s)).then(function(i,a){t.when(i.readWigData(e.get("chrom"),e.get("start"),e.get("end"))).then(function(t){var i=[],a={max:Number.MIN_VALUE};t.forEach(function(t){a.max!==t.min-1&&(i.push([a.max+1,0]),i.push([t.min-2,0])),i.push([t.min-1,t.score]),i.push([t.max,t.score]),a=t});var n={data:i,region:e,dataset_type:"bigwig"};l.set_data(e,n),o.resolve(n)})}),o}});e.default={BBIDataManager:s}}).call(e,i(0))},35:function(t,e,i){(function(a){var n,o;n=[i(36),i(37),i(38)],void 0!==(o=function(t,e){"use strict";function i(){}function n(t){t&&(this.id=t)}function o(t,e){return t[e+3]<<24|t[e+2]<<16|t[e+1]<<8|t[e]}function r(t,e,i){Math.pow(10,6);return a.ajax({type:"GET",dataType:"native",url:t,timeout:5e3,beforeSend:function(t){t.setRequestHeader("Range","bytes="+e+"-"+(e+(i-1)))},xhrFields:{responseType:"arraybuffer"}})}function s(t,e){return t[e]+t[e+1]*y+t[e+2]*x+t[e+3]*k+t[e+4]*C}function l(){}function d(t,e,i,a){this.bwg=t,this.cirTreeOffset=e,this.cirTreeLength=i,this.isSummary=a}function h(t){var e=a.Deferred(),i=new l;return i.url=t,a.when(r(i.url,0,512)).then(function(t){if(!t)return e.resolve(null,"Couldn't fetch file");var n=t,o=new Uint8Array(n),r=new Int16Array(n),l=new Int32Array(n),d=o[0]+y*o[1]+x*o[2]+k*o[3];if(d==v)i.type="bigwig";else{if(d!=w)return d==m||d==b?e.resolve(null,"Currently don't support big-endian BBI files"):e.resolve(null,"Not a supported format, magic=0x"+d.toString(16));i.type="bigbed"}i.version=r[2],i.numZoomLevels=r[3],i.chromTreeOffset=s(o,8),i.unzoomedDataOffset=s(o,16),i.unzoomedIndexOffset=s(o,24),i.fieldCount=r[16],i.definedFieldCount=r[17],i.asOffset=s(o,36),i.totalSummaryOffset=s(o,44),i.uncompressBufSize=l[13],i.extHeaderOffset=s(o,56),i.zoomLevels=[];for(var h=0;h<i.numZoomLevels;++h){var c=l[6*h+16],u=s(o,24*h+72),f=s(o,24*h+80);i.zoomLevels.push({reduction:c,dataOffset:u,indexOffset:f})}a.when(i.readChromTree()).then(function(){i.getAutoSQL(function(t){return i.schema=t,e.resolve(i)})})}),e}function c(t,e,i,a,n){this.bbi=t,this.type=e,this.fieldCount=i,this.offset=a,this.field=n}var u=t.Range,f=t.union,_=t.intersection,p=e.inflateBuffer,g=e.arrayCopy,v=2291137574,m=654086024,w=2273964779,b=3958540679,y=256,x=65536,k=16777216,C=4294967296,S=new RegExp("^[0-9]+,[0-9]+,[0-9]+");return l.prototype.readChromTree=function(){var t=this;this.chromsToIDs={},this.idsToChroms={},this.maxID=0;var e=this.unzoomedDataOffset;return e=e+4-(e-this.chromTreeOffset&3),a.when(r(this.url,this.chromTreeOffset,e-this.chromTreeOffset)).then(function(e){var i=new Uint8Array(e),a=new Int16Array(e),n=new Int32Array(e),o=(n[0],n[1],n[2]),r=(n[3],s(i,16),function(e){var n=i[e],l=a[e/2+1];e+=4;for(var d=0;d<l;++d)if(0===n){e+=o;var h=s(i,e);e+=8,h-=t.chromTreeOffset,r(h)}else{for(var c="",u=0;u<o;++u){var f=i[e++];0!==f&&(c+=String.fromCharCode(f))}var _=i[e+3]<<24|i[e+2]<<16|i[e+1]<<8|i[e+0];i[e+7],i[e+6],i[e+5],i[e+4],e+=8,t.chromsToIDs[c]=_,0===c.indexOf("chr")&&(t.chromsToIDs[c.substr(3)]=_),t.idsToChroms[_]=c,t.maxID=Math.max(t.maxID,_)}});r(32)})},d.prototype.readWigData=function(t,e,i){var a=this.bwg.chromsToIDs[t];return void 0===a?[]:this.readWigDataById(a,e,i)},d.prototype.readWigDataById=function(t,e,i){var n=this,o=a.Deferred();if(!this.cirHeader)return a.when(r(n.bwg.url,this.cirTreeOffset,48)).then(function(r){n.cirHeader=r;var s=new Int32Array(n.cirHeader);n.cirBlockSize=s[1],a.when(n.readWigDataById(t,e,i)).then(function(t){o.resolve(t)})}),o;var l=[],d=0,h=(Date.now(),function(a,n,o,r){return(t<0||a==t)&&n<=i&&o>=e}),c=function(t,e){if(n.bwg.instrument&&console.log("level="+e+"; offset="+t+"; time="+(0|Date.now())),d+=t.length,1==t.length&&t[0]-n.cirTreeOffset==48&&n.cachedCirRoot)return p(n.cachedCirRoot,0,e),void(0===--d&&a.when(n.fetchFeatures(h,l)).then(function(t){o.resolve(t)}));for(var i,r=4+32*n.cirBlockSize,s=0;s<t.length;++s){var c=new u(t[s],t[s]+r);i=i?f(i,c):c}for(var g=i.ranges(),v=0;v<g.length;++v){var m=g[v];_(t,m,e)}},_=function(t,e,i,s){e.max(),e.min();a.when(r(n.bwg.url,e.min(),e.max()-e.min())).then(function(r){for(var s=0;s<t.length;++s)e.contains(t[s])&&(p(r,t[s]-e.min(),i),t[s]-n.cirTreeOffset==48&&t[s]-e.min()==0&&(n.cachedCirRoot=r),0===--d&&a.when(n.fetchFeatures(h,l)).then(function(t){o.resolve(t)}))})},p=function(a,n,o){var r=new Uint8Array(a),d=new Int16Array(a),h=new Int32Array(a),u=r[n],f=d[n/2+1];if(n+=4,0!==u)for(var _=0;_<f;++_){var p=n/4,g=h[p],v=h[p+1],m=h[p+2],w=h[p+3],b=s(r,n+16),y=s(r,n+24);(t<0||g<t||g==t&&v<=i)&&(t<0||m>t||m==t&&w>=e)&&l.push({offset:b,size:y}),n+=32}else{for(var x=[],_=0;_<f;++_){var p=n/4,g=h[p],v=h[p+1],m=h[p+2],w=h[p+3],b=s(r,n+16);(t<0||g<t||g==t&&v<=i)&&(t<0||m>t||m==t&&w>=e)&&x.push(b),n+=24}x.length>0&&c(x,o+1)}};return c([n.cirTreeOffset+48],1),o},d.prototype.fetchFeatures=function(t,e){var n=this,o=a.Deferred();if(e.sort(function(t,e){return(0|t.offset)-(0|e.offset)}),0===e.length)return[];var s=[],l=function(t,e,a,o){o||(o={});var r=new i;r._chromId=t,r.segment=n.bwg.idsToChroms[t],r.min=e,r.max=a,r.type=n.bwg.type;for(var l in o)r[l]=o[l];s.push(r)},d=function(){if(0===e.length){Date.now();return o.resolve(s)}var i=e[0];if(i.data)n.parseFeatures(i.data,l,t),e.splice(0,1),d();else{for(var h=i.offset,c=i.size,u=1;u<e.length&&e[u].offset==h+c;)c+=e[u].size,++u;a.when(r(n.bwg.url,h,c)).then(function(t){for(var i=0,a=0;i<c;){var o,r=e[a];if(n.bwg.uncompressBufSize>0)o=p(t,i+2,r.size-2);else{var s=new Uint8Array(r.size);g(new Uint8Array(t,i,r.size),0,s,0,r.size),o=s.buffer}r.data=o,i+=r.size,++a}d()})}};return d(),o},d.prototype.parseFeatures=function(t,e,i){var o=new Uint8Array(t);if(this.isSummary)for(var r=new Int16Array(t),s=new Int32Array(t),l=new Float32Array(t),d=t.byteLength/32,h=0;h<d;++h){var c=s[8*h],p=s[8*h+1],g=s[8*h+2],v=s[8*h+3],m=(l[8*h+4],l[8*h+5]),w=l[8*h+6];l[8*h+7];if(i(c,p+1,g)){var b={type:"bigwig",score:w/v,maxScore:m};"bigbed"==this.bwg.type&&(b.type="density"),e(c,p+1,g,b)}}else if("bigwig"==this.bwg.type){var r=new Int16Array(t),s=new Int32Array(t),l=new Float32Array(t),c=s[0],y=s[1],x=(s[2],s[3]),k=s[4],C=o[20],d=r[11];if(3==C)for(var h=0;h<d;++h){var M=l[h+6],T=y+h*x+1,z=y+h*x+k;i(c,T,z)&&e(c,T,z,{score:M})}else if(2==C)for(var h=0;h<d;++h){var p=s[2*h+6]+1,g=p+k-1,M=l[2*h+7];i(c,p,g)&&e(c,p,g,{score:M})}else if(1==C)for(var h=0;h<d;++h){var p=s[3*h+6]+1,g=s[3*h+7],M=l[3*h+8];p>g&&(p=g),i(c,p,g)&&e(c,p,g,{score:M})}else console.log("Currently not handling bwgType="+C)}else{if("bigbed"!=this.bwg.type)throw Error("Don't know what to do with "+this.bwg.type);for(var A=0,O=this.bwg.definedFieldCount,$=this.bwg.schema;A<o.length;){var c=o[A+3]<<24|o[A+2]<<16|o[A+1]<<8|o[A+0],p=o[A+7]<<24|o[A+6]<<16|o[A+5]<<8|o[A+4],g=o[A+11]<<24|o[A+10]<<16|o[A+9]<<8|o[A+8];A+=12;for(var I="";;){var G=o[A++];if(0==G)break;I+=String.fromCharCode(G)}var P,R={};if(P=I.length>0?I.split("\t"):[],P.length>0&&O>3&&(R.label=P[0]),P.length>1&&O>4){var M=parseInt(P[1]);isNaN(M)||(R.score=M)}if(P.length>2&&O>5&&(R.orientation=P[2]),P.length>5&&O>8){var N=P[5];S.test(N)&&(R.itemRgb="rgb("+N+")")}if(P.length>O-3&&$)for(var j=O-3;j<P.length;++j)R[$.fields[j+3].name]=P[j];if(i(c,p+1,g,P))if(O<12)e(c,p+1,g,R);else{var D=0|P[3],L=0|P[4],F=0|P[6],q=P[7].split(","),V=P[8].split(",");if(R.exonFrames){var E=R.exonFrames.split(",");R.exonFrames=void 0}R.type="transcript";var H=new n;for(var U in R)H[U]=R[U];if(H.id=P[0],H.segment=this.bwg.idsToChroms[c],H.min=p+1,H.max=g,H.notes=[],R.groups=[H],P.length>9){var B=R.geneName||P[9],J=B;P.length>10&&(J=P[10]),R.geneName2&&(J=R.geneName2);var X=a.extend({},H);X.id=B,X.label=J,X.type="gene",R.groups.push(X)}for(var W=[],Y=0;Y<F;++Y){var Q=(0|V[Y])+p,Z=Q+(0|q[Y]),K=new u(Q,Z);W.push(K)}for(var tt=f(W),et=tt.ranges(),it=0;it<et.length;++it){var at=et[it];e(c,at.min()+1,at.max(),R)}if(L>D){var nt="+"==R.orientation?new u(D,L+3):new u(D-3,L),ot=_(tt,nt);if(ot){R.type="translation";for(var rt=ot.ranges(),st=0,lt=0;rt[0].min()>et[lt].max();)lt++;for(var it=0;it<rt.length;++it){var dt=it;"-"==R.orientation&&(dt=rt.length-it-1);var at=rt[dt];if(R.readframe=st,E){var ht=parseInt(E[dt+lt]);"number"==typeof ht&&ht>=0&&ht<=2&&(R.readframe=ht,R.readframeExplicit=!0)}var ct=at.max()-at.min();st=(st+ct)%3,e(c,at.min()+1,at.max(),R)}}}}}}},d.prototype.getFirstAdjacent=function(t,e,i,a){var n=this.bwg.chromsToIDs[t];if(void 0===n)return a([]);this.getFirstAdjacentById(n,e,i,a)},d.prototype.getFirstAdjacentById=function(t,e,i,a){var n=this;if(!this.cirHeader)return void this.bwg.data.slice(this.cirTreeOffset,48).fetch(function(o){n.cirHeader=o;var r=new Int32Array(n.cirHeader);n.cirBlockSize=r[1],n.getFirstAdjacentById(t,e,i,a)});var o=null,r=-1,l=-1,d=0,h=(Date.now(),function(t,e){d+=t.length;for(var i,a=4+32*n.cirBlockSize,o=0;o<t.length;++o){var r=new u(t[o],t[o]+a);i=i?f(i,r):r}for(var s=i.ranges(),l=0;l<s.length;++l){var h=s[l];c(t,h,e)}}),c=function(r,s,l,h){s.max(),s.min();n.bwg.data.slice(s.min(),s.max()-s.min()).fetch(function(h){for(var c=0;c<r.length;++c)if(s.contains(r[c])&&(_(h,r[c]-s.min(),l),0==--d)){if(!o)return i>0&&(0!=t||e>0)?n.getFirstAdjacentById(0,0,i,a):i<0&&(t!=n.bwg.maxID||e<1e9)?n.getFirstAdjacentById(n.bwg.maxID,1e9,i,a):a([]);n.fetchFeatures(function(a,n,o,r){return i<0&&(a<t||o<e)||i>0&&(a>t||n>e)},[o],function(t){for(var e=null,n=-1,o=-1,r=0;r<t.length;++r){var s=t[r],l=s._chromId,d=s.min,h=s.max;(null==e||i<0&&(l>n||h>o)||i>0&&(l<n||d<o))&&(e=s,o=i<0?h:d,n=l)}return a(null!=e?[e]:[])})}})},_=function(a,d,c){var u=new Uint8Array(a),f=new Int16Array(a),_=new Int32Array(a),p=u[d],g=f[d/2+1];if(d+=4,0!=p)for(var v=0;v<g;++v){var m=d/4,w=_[m],b=_[m+1],y=_[m+2],x=_[m+3],k=s(u,d+16),C=s(u,d+24);(i<0&&(w<t||w==t&&b<=e)||i>0&&(y>t||y==t&&x>=e))&&(/_random/.exec(n.bwg.idsToChroms[w])||(null==o||i<0&&(y>r||y==r&&x>l)||i>0&&(w<r||w==r&&b<l))&&(o={offset:k,size:C},l=i<0?x:b,r=i<0?y:w)),d+=32}else{for(var S=-1,M=-1,v=0;v<g;++v){var m=d/4,w=_[m],b=_[m+1],y=_[m+2],x=_[m+3],k=_[m+4]<<32|_[m+5];(i<0&&(w<t||w==t&&b<=e)&&y>=t||i>0&&(y>t||y==t&&x>=e)&&w<=t)&&(S<0||x>M)&&(S=k,M=i<0?x:b,i<0?y:w),d+=24}S>=0&&h([S],c+1)}};h([n.cirTreeOffset+48],1)},l.prototype.readWigData=function(t,e,i){var a,n=i-e;if(n<=25e3||0===this.zoomLevels.length)a=this.getUnzoomedView();else for(var o=0;o<this.zoomLevels.length;o++)if(n/this.zoomLevels[o].reduction<25e3){a=this.getZoomedView(o);break}return a.readWigData(t,e,i)},l.prototype.getUnzoomedView=function(){if(!this.unzoomedView){var t=4e3;this.zoomLevels[0]&&(t=this.zoomLevels[0].dataOffset-this.unzoomedIndexOffset),this.unzoomedView=new d(this,this.unzoomedIndexOffset,t,!1)}return this.unzoomedView},l.prototype.getZoomedView=function(t){var e=this.zoomLevels[t];return e.view||(e.view=new d(this,e.indexOffset,4e3,!0)),e.view},l.prototype._tsFetch=function(t,e,i,a,n){var o=this;if(!(t>=this.zoomLevels.length-1)){var r;return r=t<0?this.getUnzoomedView():this.getZoomedView(t),r.readWigDataById(e,i,a,n)}if(this.topLevelReductionCache){for(var s=[],l=this.topLevelReductionCache,d=0;d<l.length;++d)l[d]._chromId==e&&s.push(l[d]);return n(s)}this.getZoomedView(this.zoomLevels.length-1).readWigDataById(-1,0,3e8,function(r){return o.topLevelReductionCache=r,o._tsFetch(t,e,i,a,n)})},l.prototype.thresholdSearch=function(t,e,i,a,n){function o(){if(0==l.length)return n(null);l.sort(function(t,e){var a=t.zoom-e.zoom;return 0!=a?a:(a=t.chrOrd-e.chrOrd,0!=a?a:t.min-e.min*i)});var t=l.splice(0,1)[0];r._tsFetch(t.zoom,t.chr,t.min,t.max,function(r){var s=i>0?0:3e8;t.fromRef&&(s=e);for(var d=0;d<r.length;++d){var h,c=r[d];if(h=void 0!=c.maxScore?c.maxScore:c.score,i>0){if(h>a)if(t.zoom<0){if(c.min>s)return n(c)}else c.max>s&&l.push({chr:t.chr,chrOrd:t.chrOrd,zoom:t.zoom-2,min:c.min,max:c.max,fromRef:t.fromRef})}else if(h>a)if(t.zoom<0){if(c.max<s)return n(c)}else c.min<s&&l.push({chr:t.chr,chrOrd:t.chrOrd,zoom:t.zoom-2,min:c.min,max:c.max,fromRef:t.fromRef})}o()})}i=i<0?-1:1;for(var r=this,s=this.chromsToIDs[t],l=[{chrOrd:0,chr:s,zoom:r.zoomLevels.length-4,min:0,max:3e8,fromRef:!0}],d=1;d<=this.maxID+1;++d){var h=(s+i*d)%(this.maxID+1);h<0&&(h+=this.maxID+1),l.push({chrOrd:d,chr:h,zoom:r.zoomLevels.length-1,min:0,max:3e8})}o()},l.prototype.getAutoSQL=function(t){if(!this.asOffset)return t(null);a.when(r(this.url,this.asOffset,2048)).then(function(e){for(var i=new Uint8Array(e),a="",n=0;n<i.length&&0!=i[n];++n)a+=String.fromCharCode(i[n]);var o=/(\w+)\s+(\w+)\s+("([^"]+)")?\s+\(\s*/,r=/([\w\[\]]+)\s+(\w+)\s*;\s*("([^"]+)")?\s*/g,s=o.exec(a);if(s){var l={declType:s[1],name:s[2],comment:s[4],fields:[]};a=a.substring(s[0]);for(var d=r.exec(a);null!=d;d=r.exec(a))l.fields.push({type:d[1],name:d[2],comment:d[4]});return t(l)}})},l.prototype.getExtraIndices=function(t){var e=this;if(this.version<4||0==this.extHeaderOffset||"bigbed"!=this.type)return t(null);this.data.slice(this.extHeaderOffset,64).fetch(function(i){if(!i)return t(null,"Couldn't fetch extension header");var a=new Uint8Array(i),n=new Int16Array(i),o=(new Int32Array(i),n[0],n[1]),r=s(a,4);if(0==o)return t(null);e.data.slice(r,20*o).fetch(function(i){if(!i)return t(null,"Couldn't fetch index info");for(var a=new Uint8Array(i),n=new Int16Array(i),r=(new Int32Array(i),[]),l=0;l<o;++l){var d=n[10*l],h=n[10*l+1],u=s(a,20*l+4),f=n[10*l+8],_=new c(e,d,h,u,f);r.push(_)}t(r)})})},c.prototype.lookup=function(t,e){var i=this;this.bbi.data.slice(this.offset,32).fetch(function(a){function n(a){i.bbi.data.slice(a,4+d*(h+c)).fetch(function(a){var r=new Uint8Array(a),l=new Uint16Array(a),d=(new Uint32Array(a),r[0]),u=l[1],f=4;if(0!=d){for(var _=0;_<u;++_){for(var p="",g=0;g<h;++g){var v=r[f++];0!=v&&(p+=String.fromCharCode(v))}if(p==t){var m=s(r,f),w=o(r,f+8);return i.bbi.getUnzoomedView().fetchFeatures(function(e,a,n,o){if(o&&o.length>i.field-3)return o[i.field-3]==t},[{offset:m,size:w}],e)}f+=c}return e([])}for(var b=null,_=0;_<u;++_){for(var p="",g=0;g<h;++g){var v=r[f++];0!=v&&(p+=String.fromCharCode(v))}var y=s(r,f);if(f+=8,t.localeCompare(p)<0&&b)return void n(b);b=y}n(b)})}var r=new Uint8Array(a),l=(new Int16Array(a),new Int32Array(a)),d=(l[0],l[1]),h=l[2],c=l[3];s(r,16);n(i.offset+32)})},{makeBwg:h}}.apply(e,n))&&(t.exports=o)}).call(e,i(0))},36:function(t,e,i){var a,n;a=[],void 0!==(n=function(){"use strict";function t(t,e){if("number"!=typeof t||"number"!=typeof e)throw"Bad range "+t+","+e;this._min=t,this._max=e}function e(t){var e=t.sort(r),i=[],a=e.shift();e.forEach(function(t){t._min<=a._max?t._max>a._max&&(a._max=t._max):(i.push(a),a=t)}),i.push(a),this._ranges=i}function i(t,i){return t instanceof e||(t instanceof Array||(t=[t]),t=new e(t)),i&&t.insertRange(i),t}function a(i,a){for(var n=i.ranges(),o=a.ranges(),r=n.length,s=o.length,l=0,d=0,h=[];l<r&&d<s;){var i=n[l],a=o[d],c=Math.max(i.min(),a.min()),u=Math.min(i.max(),a.max());u>=c&&h.push(new t(c,u)),i.max()>a.max()?++d:++l}return 0==h.length?null:1==h.length?h[0]:new e(h)}function n(t){for(var e=0,i=t.ranges(),a=0;a<i.length;++a){var n=i[a];e+=n.max()-n.min()+1}return e}function o(t,e){return t.min()<e.min()?-1:t.min()>e.min()?1:t.max()<e.max()?-1:e.max()>t.max()?1:0}function r(t,e){return t._min<e._min?-1:t._min>e._min?1:t._max<e._max?-1:e._max>t._max?1:0}return t.prototype.min=function(){return this._min},t.prototype.max=function(){return this._max},t.prototype.contains=function(t){return t>=this._min&&t<=this._max},t.prototype.isContiguous=function(){return!0},t.prototype.ranges=function(){return[this]},t.prototype._pushRanges=function(t){t.push(this)},t.prototype.toString=function(){return"["+this._min+"-"+this._max+"]"},e.prototype.min=function(){return this._ranges[0].min()},e.prototype.max=function(){return this._ranges[this._ranges.length-1].max()},e.prototype.lower_bound=function(t){var e=this.ranges();if(t>this.max())return e.length;if(t<this.min())return 0;for(var i=0,a=e.length-1;i<=a;){var n=Math.floor((i+a)/2);if(t>e[n]._max)i=n+1;else{if(!(t<e[n]._min))return n;a=n-1}}return i},e.prototype.contains=function(t){var e=this.lower_bound(t);return!!(e<this._ranges.length&&this._ranges[e].contains(t))},e.prototype.insertRange=function(t){var e=this.lower_bound(t._min);if(e===this._ranges.length)return void this._ranges.push(t);var i=this.ranges();if(t._max<i[e]._min)return void this._ranges.splice(e,0,t);i[e]._min<t._min&&(t._min=i[e]._min);for(var a=e+1;a<i.length&&i[a]._min<=t._max;)a++;a--,i[a]._max>t._max&&(t._max=i[a]._max),this._ranges.splice(e,a-e+1,t)},e.prototype.isContiguous=function(){return this._ranges.length>1},e.prototype.ranges=function(){return this._ranges},e.prototype._pushRanges=function(t){for(var e=0;e<this._ranges.length;++e)t.push(this._ranges[e])},e.prototype.toString=function(){for(var t="",e=0;e<this._ranges.length;++e)e>0&&(t+=","),t+=this._ranges[e].toString();return t},{Range:t,union:i,intersection:a,coverage:n,rangeOver:o,_rangeOrder:r}}.apply(e,a))&&(t.exports=n)},37:function(t,e,i){var a,n;a=[],void 0!==(n=function(){function t(){}function e(){this.was=[0]}function i(t,e,i){this.hufts=new Int32Array(3*c),this.window=new Uint8Array(i),this.end=i,this.checkfn=e,this.mode=v,this.reset(t,null),this.left=0,this.table=0,this.index=0,this.blens=null,this.bb=new Int32Array(1),this.tb=new Int32Array(1),this.codes=new a,this.last=0,this.bitk=0,this.bitb=0,this.read=0,this.write=0,this.check=0,this.inftree=new n}function a(){}function n(){}function o(t,e,i,a,n){return t[0]=m,e[0]=w,i[0]=b,a[0]=y,f}function r(t,e,i,a,n){if(0!=n){if(!t)throw"Undef src";if(!i)throw"Undef dest";0==e&&n==t.length?l(t,i,a):A?l(t.subarray(e,e+n),i,a):1==t.BYTES_PER_ELEMENT&&n>100?l(new Uint8Array(t.buffer,t.byteOffset+e,n),i,a):s(t,e,i,a,n)}}function s(t,e,i,a,n){for(var o=0;o<n;++o)i[a+o]=t[e+o]}function l(t,e,i){e.set(t,i)}function d(e,i,a,n){e=i?a?new Uint8Array(e,i,a):new Uint8Array(e,i,e.byteLength-i):new Uint8Array(e);var o=new t;o.inflateInit(h,!0),o.next_in=e,o.next_in_index=0,o.avail_in=e.length;for(var s=[],l=0;;){var d=new Uint8Array(32e3);o.next_out=d,o.next_out_index=0,o.avail_out=d.length;var c=o.inflate(u);if(c!=f&&c!=_&&c!=p)throw o.msg;if(0!=o.avail_out){var g=new Uint8Array(d.length-o.avail_out);r(d,0,g,0,d.length-o.avail_out),d=g}if(s.push(d),l+=d.length,c==_||c==p)break}if(n&&(n[0]=(i||0)+o.next_in_index),1==s.length)return s[0].buffer;for(var v=new Uint8Array(l),m=0,w=0;w<s.length;++w){var b=s[w];r(b,0,v,m,b.length),m+=b.length}return v.buffer}var h=15,c=1440,u=0,f=0,_=1,p=-5,g=[0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535],v=0,m=9,w=5,b=[96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,192,80,7,10,0,8,96,0,8,32,0,9,160,0,8,0,0,8,128,0,8,64,0,9,224,80,7,6,0,8,88,0,8,24,0,9,144,83,7,59,0,8,120,0,8,56,0,9,208,81,7,17,0,8,104,0,8,40,0,9,176,0,8,8,0,8,136,0,8,72,0,9,240,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,200,81,7,13,0,8,100,0,8,36,0,9,168,0,8,4,0,8,132,0,8,68,0,9,232,80,7,8,0,8,92,0,8,28,0,9,152,84,7,83,0,8,124,0,8,60,0,9,216,82,7,23,0,8,108,0,8,44,0,9,184,0,8,12,0,8,140,0,8,76,0,9,248,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,196,81,7,11,0,8,98,0,8,34,0,9,164,0,8,2,0,8,130,0,8,66,0,9,228,80,7,7,0,8,90,0,8,26,0,9,148,84,7,67,0,8,122,0,8,58,0,9,212,82,7,19,0,8,106,0,8,42,0,9,180,0,8,10,0,8,138,0,8,74,0,9,244,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,204,81,7,15,0,8,102,0,8,38,0,9,172,0,8,6,0,8,134,0,8,70,0,9,236,80,7,9,0,8,94,0,8,30,0,9,156,84,7,99,0,8,126,0,8,62,0,9,220,82,7,27,0,8,110,0,8,46,0,9,188,0,8,14,0,8,142,0,8,78,0,9,252,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,194,80,7,10,0,8,97,0,8,33,0,9,162,0,8,1,0,8,129,0,8,65,0,9,226,80,7,6,0,8,89,0,8,25,0,9,146,83,7,59,0,8,121,0,8,57,0,9,210,81,7,17,0,8,105,0,8,41,0,9,178,0,8,9,0,8,137,0,8,73,0,9,242,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,202,81,7,13,0,8,101,0,8,37,0,9,170,0,8,5,0,8,133,0,8,69,0,9,234,80,7,8,0,8,93,0,8,29,0,9,154,84,7,83,0,8,125,0,8,61,0,9,218,82,7,23,0,8,109,0,8,45,0,9,186,0,8,13,0,8,141,0,8,77,0,9,250,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,198,81,7,11,0,8,99,0,8,35,0,9,166,0,8,3,0,8,131,0,8,67,0,9,230,80,7,7,0,8,91,0,8,27,0,9,150,84,7,67,0,8,123,0,8,59,0,9,214,82,7,19,0,8,107,0,8,43,0,9,182,0,8,11,0,8,139,0,8,75,0,9,246,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,206,81,7,15,0,8,103,0,8,39,0,9,174,0,8,7,0,8,135,0,8,71,0,9,238,80,7,9,0,8,95,0,8,31,0,9,158,84,7,99,0,8,127,0,8,63,0,9,222,82,7,27,0,8,111,0,8,47,0,9,190,0,8,15,0,8,143,0,8,79,0,9,254,96,7,256,0,8,80,0,8,16,84,8,115,82,7,31,0,8,112,0,8,48,0,9,193,80,7,10,0,8,96,0,8,32,0,9,161,0,8,0,0,8,128,0,8,64,0,9,225,80,7,6,0,8,88,0,8,24,0,9,145,83,7,59,0,8,120,0,8,56,0,9,209,81,7,17,0,8,104,0,8,40,0,9,177,0,8,8,0,8,136,0,8,72,0,9,241,80,7,4,0,8,84,0,8,20,85,8,227,83,7,43,0,8,116,0,8,52,0,9,201,81,7,13,0,8,100,0,8,36,0,9,169,0,8,4,0,8,132,0,8,68,0,9,233,80,7,8,0,8,92,0,8,28,0,9,153,84,7,83,0,8,124,0,8,60,0,9,217,82,7,23,0,8,108,0,8,44,0,9,185,0,8,12,0,8,140,0,8,76,0,9,249,80,7,3,0,8,82,0,8,18,85,8,163,83,7,35,0,8,114,0,8,50,0,9,197,81,7,11,0,8,98,0,8,34,0,9,165,0,8,2,0,8,130,0,8,66,0,9,229,80,7,7,0,8,90,0,8,26,0,9,149,84,7,67,0,8,122,0,8,58,0,9,213,82,7,19,0,8,106,0,8,42,0,9,181,0,8,10,0,8,138,0,8,74,0,9,245,80,7,5,0,8,86,0,8,22,192,8,0,83,7,51,0,8,118,0,8,54,0,9,205,81,7,15,0,8,102,0,8,38,0,9,173,0,8,6,0,8,134,0,8,70,0,9,237,80,7,9,0,8,94,0,8,30,0,9,157,84,7,99,0,8,126,0,8,62,0,9,221,82,7,27,0,8,110,0,8,46,0,9,189,0,8,14,0,8,142,0,8,78,0,9,253,96,7,256,0,8,81,0,8,17,85,8,131,82,7,31,0,8,113,0,8,49,0,9,195,80,7,10,0,8,97,0,8,33,0,9,163,0,8,1,0,8,129,0,8,65,0,9,227,80,7,6,0,8,89,0,8,25,0,9,147,83,7,59,0,8,121,0,8,57,0,9,211,81,7,17,0,8,105,0,8,41,0,9,179,0,8,9,0,8,137,0,8,73,0,9,243,80,7,4,0,8,85,0,8,21,80,8,258,83,7,43,0,8,117,0,8,53,0,9,203,81,7,13,0,8,101,0,8,37,0,9,171,0,8,5,0,8,133,0,8,69,0,9,235,80,7,8,0,8,93,0,8,29,0,9,155,84,7,83,0,8,125,0,8,61,0,9,219,82,7,23,0,8,109,0,8,45,0,9,187,0,8,13,0,8,141,0,8,77,0,9,251,80,7,3,0,8,83,0,8,19,85,8,195,83,7,35,0,8,115,0,8,51,0,9,199,81,7,11,0,8,99,0,8,35,0,9,167,0,8,3,0,8,131,0,8,67,0,9,231,80,7,7,0,8,91,0,8,27,0,9,151,84,7,67,0,8,123,0,8,59,0,9,215,82,7,19,0,8,107,0,8,43,0,9,183,0,8,11,0,8,139,0,8,75,0,9,247,80,7,5,0,8,87,0,8,23,192,8,0,83,7,51,0,8,119,0,8,55,0,9,207,81,7,15,0,8,103,0,8,39,0,9,175,0,8,7,0,8,135,0,8,71,0,9,239,80,7,9,0,8,95,0,8,31,0,9,159,84,7,99,0,8,127,0,8,63,0,9,223,82,7,27,0,8,111,0,8,47,0,9,191,0,8,15,0,8,143,0,8,79,0,9,255],y=[80,5,1,87,5,257,83,5,17,91,5,4097,81,5,5,89,5,1025,85,5,65,93,5,16385,80,5,3,88,5,513,84,5,33,92,5,8193,82,5,9,90,5,2049,86,5,129,192,5,24577,80,5,2,87,5,385,83,5,25,91,5,6145,81,5,7,89,5,1537,85,5,97,93,5,24577,80,5,4,88,5,769,84,5,49,92,5,12289,82,5,13,90,5,3073,86,5,193,192,5,24577],x=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],k=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,112,112],C=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],S=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13];t.prototype.inflateInit=function(t,i){return t||(t=h),i&&(i=!1),this.istate=new e,this.istate.inflateInit(this,i?-t:t)},t.prototype.inflate=function(t){return null==this.istate?-2:this.istate.inflate(this,t)},t.prototype.inflateEnd=function(){if(null==this.istate)return-2;var t=istate.inflateEnd(this);return this.istate=null,t},t.prototype.inflateSync=function(){return istate.inflateSync(this)},t.prototype.inflateSetDictionary=function(t,e){return istate.inflateSetDictionary(this,t,e)},e.prototype.inflateReset=function(t){return null==t||null==t.istate?-2:(t.total_in=t.total_out=0,t.msg=null,t.istate.mode=0!=t.istate.nowrap?7:0,t.istate.blocks.reset(t,null),f)},e.prototype.inflateEnd=function(t){return null!=this.blocks&&this.blocks.free(t),this.blocks=null,f},e.prototype.inflateInit=function(t,e){return t.msg=null,this.blocks=null,nowrap=0,e<0&&(e=-e,nowrap=1),e<8||e>15?(this.inflateEnd(t),-2):(this.wbits=e,t.istate.blocks=new i(t,0!=t.istate.nowrap?null:this,1<<e),this.inflateReset(t),f)},e.prototype.inflate=function(t,e){var i,a;if(null==t||null==t.istate||null==t.next_in)return-2;for(e=4==e?p:f,i=p;;)switch(t.istate.mode){case 0:if(0==t.avail_in)return i;if(i=e,t.avail_in--,t.total_in++,8!=(15&(t.istate.method=t.next_in[t.next_in_index++]))){t.istate.mode=13,t.msg="unknown compression method",t.istate.marker=5;break}if(8+(t.istate.method>>4)>t.istate.wbits){t.istate.mode=13,t.msg="invalid window size",t.istate.marker=5;break}t.istate.mode=1;case 1:if(0==t.avail_in)return i;if(i=e,t.avail_in--,t.total_in++,a=255&t.next_in[t.next_in_index++],((t.istate.method<<8)+a)%31!=0){t.istate.mode=13,t.msg="incorrect header check",t.istate.marker=5;break}if(0==(32&a)){t.istate.mode=7;break}t.istate.mode=2;case 2:if(0==t.avail_in)return i;i=e,t.avail_in--,t.total_in++,t.istate.need=(255&t.next_in[t.next_in_index++])<<24&4278190080,t.istate.mode=3;case 3:if(0==t.avail_in)return i;i=e,t.avail_in--,t.total_in++,t.istate.need+=(255&t.next_in[t.next_in_index++])<<16&16711680,t.istate.mode=4;case 4:if(0==t.avail_in)return i;i=e,t.avail_in--,t.total_in++,t.istate.need+=(255&t.next_in[t.next_in_index++])<<8&65280,t.istate.mode=5;case 5:return 0==t.avail_in?i:(i=e,t.avail_in--,t.total_in++,t.istate.need+=255&t.next_in[t.next_in_index++],t.adler=t.istate.need,t.istate.mode=6,2);case 6:return t.istate.mode=13,t.msg="need dictionary",t.istate.marker=0,-2;case 7:if(-3==(i=t.istate.blocks.proc(t,i))){t.istate.mode=13,t.istate.marker=0;break}if(i==f&&(i=e),i!=_)return i;if(i=e,t.istate.blocks.reset(t,t.istate.was),0!=t.istate.nowrap){t.istate.mode=12;break}t.istate.mode=8;case 8:if(0==t.avail_in)return i;i=e,t.avail_in--,t.total_in++,t.istate.need=(255&t.next_in[t.next_in_index++])<<24&4278190080,t.istate.mode=9;case 9:if(0==t.avail_in)return i;i=e,t.avail_in--,t.total_in++,t.istate.need+=(255&t.next_in[t.next_in_index++])<<16&16711680,t.istate.mode=10;case 10:if(0==t.avail_in)return i;i=e,t.avail_in--,t.total_in++,t.istate.need+=(255&t.next_in[t.next_in_index++])<<8&65280,t.istate.mode=11;case 11:if(0==t.avail_in)return i;if(i=e,t.avail_in--,t.total_in++,t.istate.need+=255&t.next_in[t.next_in_index++],t.istate.was[0]!=t.istate.need){t.istate.mode=13,t.msg="incorrect data check",t.istate.marker=5;break}t.istate.mode=12;case 12:return _;case 13:return-3;default:return-2}},e.prototype.inflateSetDictionary=function(t,e,i){var a=0,n=i;return null==t||null==t.istate||6!=t.istate.mode?-2:t._adler.adler32(1,e,0,i)!=t.adler?-3:(t.adler=t._adler.adler32(0,null,0,0),n>=1<<t.istate.wbits&&(n=(1<<t.istate.wbits)-1,a=i-n),t.istate.blocks.set_dictionary(e,a,n),t.istate.mode=7,f)};var M=[0,0,255,255];e.prototype.inflateSync=function(t){var e,i,a,n,o;if(null==t||null==t.istate)return-2;if(13!=t.istate.mode&&(t.istate.mode=13,t.istate.marker=0),0==(e=t.avail_in))return p;for(i=t.next_in_index,a=t.istate.marker;0!=e&&a<4;)t.next_in[i]==M[a]?a++:a=0!=t.next_in[i]?0:4-a,i++,e--;return t.total_in+=i-t.next_in_index,t.next_in_index=i,t.avail_in=e,t.istate.marker=a,4!=a?-3:(n=t.total_in,o=t.total_out,this.inflateReset(t),t.total_in=n,t.total_out=o,t.istate.mode=7,f)},e.prototype.inflateSyncPoint=function(t){return null==t||null==t.istate||null==t.istate.blocks?-2:t.istate.blocks.sync_point()};var T=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];i.prototype.reset=function(t,e){e&&(e[0]=this.check),6==this.mode&&this.codes.free(t),this.mode=v,this.bitk=0,this.bitb=0,this.read=this.write=0,this.checkfn&&(t.adler=this.check=t._adler.adler32(0,null,0,0))},i.prototype.proc=function(t,e){var i,a,n,s,l,d,h;for(s=t.next_in_index,l=t.avail_in,a=this.bitb,n=this.bitk,d=this.write,h=d<this.read?this.read-d-1:this.end-d;;)switch(this.mode){case v:for(;n<3;){if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);e=f,l--,a|=(255&t.next_in[s++])<<n,n+=8}switch(i=7&a,this.last=1&i,i>>>1){case 0:a>>>=3,n-=3,i=7&n,a>>>=i,n-=i,this.mode=1;break;case 1:var c=new Int32Array(1),u=new Int32Array(1),p=[],m=[];o(c,u,p,m,t),this.codes.init(c[0],u[0],p[0],0,m[0],0,t),a>>>=3,n-=3,this.mode=6;break;case 2:a>>>=3,n-=3,this.mode=3;break;case 3:return a>>>=3,n-=3,this.mode=13,t.msg="invalid block type",e=-3,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e)}break;case 1:for(;n<32;){if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);e=f,l--,a|=(255&t.next_in[s++])<<n,n+=8}if((~a>>>16&65535)!=(65535&a))return this.mode=13,t.msg="invalid stored block lengths",e=-3,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);this.left=65535&a,a=n=0,this.mode=0!=this.left?2:0!=this.last?7:v;break;case 2:if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,write=d,this.inflate_flush(t,e);if(0==h&&(d==end&&0!=read&&(d=0,h=d<this.read?this.read-d-1:this.end-d),0==h&&(this.write=d,e=this.inflate_flush(t,e),d=this.write,h=d<this.read?this.read-d-1:this.end-d,d==this.end&&0!=this.read&&(d=0,h=d<this.read?this.read-d-1:this.end-d),0==h)))return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);if(e=f,i=this.left,i>l&&(i=l),i>h&&(i=h),r(t.next_in,s,this.window,d,i),s+=i,l-=i,d+=i,h-=i,0!=(this.left-=i))break;this.mode=0!=this.last?7:v;break;case 3:for(;n<14;){if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);e=f,l--,a|=(255&t.next_in[s++])<<n,n+=8}if(this.table=i=16383&a,(31&i)>29||(i>>5&31)>29)return this.mode=9,t.msg="too many length or distance symbols",e=-3,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);if(i=258+(31&i)+(i>>5&31),null==this.blens||this.blens.length<i)this.blens=new Int32Array(i);else for(var w=0;w<i;w++)this.blens[w]=0;a>>>=14,n-=14,this.index=0,mode=4;case 4:for(;this.index<4+(this.table>>>10);){for(;n<3;){if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);e=f,l--,a|=(255&t.next_in[s++])<<n,n+=8}this.blens[T[this.index++]]=7&a,a>>>=3,n-=3}for(;this.index<19;)this.blens[T[this.index++]]=0;if(this.bb[0]=7,(i=this.inftree.inflate_trees_bits(this.blens,this.bb,this.tb,this.hufts,t))!=f)return e=i,-3==e&&(this.blens=null,this.mode=9),this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,write=d,this.inflate_flush(t,e);this.index=0,this.mode=5;case 5:for(;;){if(i=this.table,!(this.index<258+(31&i)+(i>>5&31)))break;var w,b,y;for(i=this.bb[0];n<i;){if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);e=f,l--,a|=(255&t.next_in[s++])<<n,n+=8}if(i=this.hufts[3*(this.tb[0]+(a&g[i]))+1],(y=this.hufts[3*(this.tb[0]+(a&g[i]))+2])<16)a>>>=i,n-=i,this.blens[this.index++]=y;else{for(w=18==y?7:y-14,b=18==y?11:3;n<i+w;){if(0==l)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);e=f,l--,a|=(255&t.next_in[s++])<<n,n+=8}if(a>>>=i,n-=i,b+=a&g[w],a>>>=w,n-=w,w=this.index,i=this.table,w+b>258+(31&i)+(i>>5&31)||16==y&&w<1)return this.blens=null,this.mode=9,t.msg="invalid bit length repeat",e=-3,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);y=16==y?this.blens[w-1]:0;do{this.blens[w++]=y}while(0!=--b);this.index=w}}this.tb[0]=-1;var c=new Int32Array(1),u=new Int32Array(1),p=new Int32Array(1),m=new Int32Array(1);if(c[0]=9,u[0]=6,i=this.table,(i=this.inftree.inflate_trees_dynamic(257+(31&i),1+(i>>5&31),this.blens,c,u,p,m,this.hufts,t))!=f)return-3==i&&(this.blens=null,this.mode=13),e=i,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);this.codes.init(c[0],u[0],this.hufts,p[0],this.hufts,m[0],t),this.mode=6;case 6:if(this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,(e=this.codes.proc(this,t,e))!=_)return this.inflate_flush(t,e);if(e=f,this.codes.free(t),s=t.next_in_index,l=t.avail_in,a=this.bitb,n=this.bitk,d=this.write,h=d<this.read?this.read-d-1:this.end-d,0==this.last){this.mode=v;break}this.mode=7;case 7:if(this.write=d,e=this.inflate_flush(t,e),d=this.write,h=d<this.read?this.read-d-1:this.end-d,this.read!=this.write)return this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);mode=12;case 8:return e=_,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);case 9:return e=-3,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e);default:return e=-2,this.bitb=a,this.bitk=n,t.avail_in=l,t.total_in+=s-t.next_in_index,t.next_in_index=s,this.write=d,this.inflate_flush(t,e)}},i.prototype.free=function(t){this.reset(t,null),this.window=null,this.hufts=null},i.prototype.set_dictionary=function(t,e,i){r(t,e,window,0,i),this.read=this.write=i},i.prototype.sync_point=function(){return 1==this.mode},i.prototype.inflate_flush=function(t,e){var i,a,n;return a=t.next_out_index,n=this.read,i=(n<=this.write?this.write:this.end)-n,i>t.avail_out&&(i=t.avail_out),0!=i&&e==p&&(e=f),t.avail_out-=i,t.total_out+=i,null!=this.checkfn&&(t.adler=this.check=t._adler.adler32(this.check,this.window,n,i)),r(this.window,n,t.next_out,a,i),a+=i,n+=i,n==this.end&&(n=0,this.write==this.end&&(this.write=0),i=this.write-n,i>t.avail_out&&(i=t.avail_out),0!=i&&e==p&&(e=f),t.avail_out-=i,t.total_out+=i,null!=this.checkfn&&(t.adler=this.check=t._adler.adler32(this.check,this.window,n,i)),r(this.window,n,t.next_out,a,i),a+=i,n+=i),t.next_out_index=a,this.read=n,e};a.prototype.init=function(t,e,i,a,n,o,r){this.mode=0,this.lbits=t,this.dbits=e,this.ltree=i,this.ltree_index=a,this.dtree=n,this.dtree_index=o,this.tree=null},a.prototype.proc=function(t,e,i){var a,n,o,r,s,l,d,h=0,c=0,u=0;for(u=e.next_in_index,r=e.avail_in,h=t.bitb,c=t.bitk,s=t.write,l=s<t.read?t.read-s-1:t.end-s;;)switch(this.mode){case 0:if(l>=258&&r>=10&&(t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,i=this.inflate_fast(this.lbits,this.dbits,this.ltree,this.ltree_index,this.dtree,this.dtree_index,t,e),u=e.next_in_index,r=e.avail_in,h=t.bitb,c=t.bitk,s=t.write,l=s<t.read?t.read-s-1:t.end-s,i!=f)){this.mode=i==_?7:9;break}this.need=this.lbits,this.tree=this.ltree,this.tree_index=this.ltree_index,this.mode=1;case 1:for(a=this.need;c<a;){if(0==r)return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);i=f,r--,h|=(255&e.next_in[u++])<<c,c+=8}if(n=3*(this.tree_index+(h&g[a])),h>>>=this.tree[n+1],c-=this.tree[n+1],0==(o=this.tree[n])){this.lit=this.tree[n+2],this.mode=6;break}if(0!=(16&o)){this.get=15&o,this.len=this.tree[n+2],this.mode=2;break}if(0==(64&o)){this.need=o,this.tree_index=n/3+this.tree[n+2];break}if(0!=(32&o)){this.mode=7;break}return this.mode=9,e.msg="invalid literal/length code",i=-3,t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);case 2:for(a=this.get;c<a;){if(0==r)return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);i=f,r--,h|=(255&e.next_in[u++])<<c,c+=8}this.len+=h&g[a],h>>=a,c-=a,this.need=this.dbits,this.tree=this.dtree,this.tree_index=this.dtree_index,this.mode=3;case 3:for(a=this.need;c<a;){if(0==r)return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);i=f,r--,h|=(255&e.next_in[u++])<<c,c+=8}if(n=3*(this.tree_index+(h&g[a])),h>>=this.tree[n+1],c-=this.tree[n+1],0!=(16&(o=this.tree[n]))){this.get=15&o,this.dist=this.tree[n+2],this.mode=4;break}if(0==(64&o)){this.need=o,this.tree_index=n/3+this.tree[n+2];break}return this.mode=9,e.msg="invalid distance code",i=-3,t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);case 4:for(a=this.get;c<a;){if(0==r)return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);i=f,r--,h|=(255&e.next_in[u++])<<c,c+=8}this.dist+=h&g[a],h>>=a,c-=a,this.mode=5;case 5:for(d=s-this.dist;d<0;)d+=t.end;for(;0!=this.len;){if(0==l&&(s==t.end&&0!=t.read&&(s=0,l=s<t.read?t.read-s-1:t.end-s),0==l&&(t.write=s,i=t.inflate_flush(e,i),s=t.write,l=s<t.read?t.read-s-1:t.end-s,s==t.end&&0!=t.read&&(s=0,l=s<t.read?t.read-s-1:t.end-s),0==l)))return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);t.window[s++]=t.window[d++],l--,d==t.end&&(d=0),this.len--}this.mode=0;break;case 6:if(0==l&&(s==t.end&&0!=t.read&&(s=0,l=s<t.read?t.read-s-1:t.end-s),0==l&&(t.write=s,i=t.inflate_flush(e,i),s=t.write,l=s<t.read?t.read-s-1:t.end-s,s==t.end&&0!=t.read&&(s=0,l=s<t.read?t.read-s-1:t.end-s),0==l)))return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);i=f,t.window[s++]=this.lit,l--,this.mode=0;break;case 7:if(c>7&&(c-=8,r++,u--),t.write=s,i=t.inflate_flush(e,i),s=t.write,l=s<t.read?t.read-s-1:t.end-s,t.read!=t.write)return t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);this.mode=8;case 8:return i=_,t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);case 9:return i=-3,t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i);default:return i=-2,t.bitb=h,t.bitk=c,e.avail_in=r,e.total_in+=u-e.next_in_index,e.next_in_index=u,t.write=s,t.inflate_flush(e,i)}},a.prototype.free=function(t){},a.prototype.inflate_fast=function(t,e,i,a,n,o,s,l){var d,h,c,u,p,v,m,w,b,y,x,k,C,S,M,T;m=l.next_in_index,w=l.avail_in,p=s.bitb,v=s.bitk,b=s.write,y=b<s.read?s.read-b-1:s.end-b,x=g[t],k=g[e];do{for(;v<20;)w--,p|=(255&l.next_in[m++])<<v,v+=8;if(d=p&x,h=i,c=a,T=3*(c+d),0!=(u=h[T]))for(;;){if(p>>=h[T+1],v-=h[T+1],0!=(16&u)){for(u&=15,C=h[T+2]+(p&g[u]),p>>=u,v-=u;v<15;)w--,p|=(255&l.next_in[m++])<<v,v+=8;for(d=p&k,h=n,c=o,T=3*(c+d),u=h[T];;){if(p>>=h[T+1],v-=h[T+1],0!=(16&u)){for(u&=15;v<u;)w--,p|=(255&l.next_in[m++])<<v,v+=8;if(S=h[T+2]+(p&g[u]),p>>=u,v-=u,y-=C,b>=S)M=b-S,s.window[b++]=s.window[M++],s.window[b++]=s.window[M++],C-=2;else{M=b-S;do{M+=s.end}while(M<0);if(u=s.end-M,C>u){if(C-=u,b-M>0&&u>b-M)do{s.window[b++]=s.window[M++]}while(0!=--u);else r(s.window,M,s.window,b,u),b+=u,M+=u,u=0;M=0}}do{s.window[b++]=s.window[M++]}while(0!=--C);break}if(0!=(64&u))return l.msg="invalid distance code",C=l.avail_in-w,C=v>>3<C?v>>3:C,w+=C,m-=C,v-=C<<3,s.bitb=p,s.bitk=v,l.avail_in=w,l.total_in+=m-l.next_in_index,l.next_in_index=m,s.write=b,-3;d+=h[T+2],d+=p&g[u],T=3*(c+d),u=h[T]}break}if(0!=(64&u))return 0!=(32&u)?(C=l.avail_in-w,C=v>>3<C?v>>3:C,w+=C,m-=C,v-=C<<3,s.bitb=p,s.bitk=v,l.avail_in=w,l.total_in+=m-l.next_in_index,l.next_in_index=m,s.write=b,_):(l.msg="invalid literal/length code",C=l.avail_in-w,C=v>>3<C?v>>3:C,w+=C,m-=C,v-=C<<3,s.bitb=p,s.bitk=v,l.avail_in=w,l.total_in+=m-l.next_in_index,l.next_in_index=m,s.write=b,-3);if(d+=h[T+2],d+=p&g[u],T=3*(c+d),0==(u=h[T])){p>>=h[T+1],v-=h[T+1],s.window[b++]=h[T+2],y--;break}}else p>>=h[T+1],v-=h[T+1],s.window[b++]=h[T+2],y--}while(y>=258&&w>=10);return C=l.avail_in-w,C=v>>3<C?v>>3:C,w+=C,m-=C,v-=C<<3,s.bitb=p,s.bitk=v,l.avail_in=w,l.total_in+=m-l.next_in_index,l.next_in_index=m,s.write=b,f},n.prototype.huft_build=function(t,e,i,a,n,o,s,l,d,h,u){var _,g,v,m,w,b,y,x,k,C,S,M,T,z,A;C=0,w=i;do{this.c[t[e+C]]++,C++,w--}while(0!=w);if(this.c[0]==i)return s[0]=-1,l[0]=0,f;for(x=l[0],b=1;b<=15&&0==this.c[b];b++);for(y=b,x<b&&(x=b),w=15;0!=w&&0==this.c[w];w--);for(v=w,x>w&&(x=w),l[0]=x,z=1<<b;b<w;b++,z<<=1)if((z-=this.c[b])<0)return-3;if((z-=this.c[w])<0)return-3;for(this.c[w]+=z,this.x[1]=b=0,C=1,T=2;0!=--w;)this.x[T]=b+=this.c[C],T++,C++;w=0,C=0;do{0!=(b=t[e+C])&&(this.v[this.x[b]++]=w),C++}while(++w<i);for(i=this.x[v],this.x[0]=w=0,C=0,m=-1,M=-x,this.u[0]=0,S=0,A=0;y<=v;y++)for(_=this.c[y];0!=_--;){for(;y>M+x;){if(m++,M+=x,A=v-M,A=A>x?x:A,(g=1<<(b=y-M))>_+1&&(g-=_+1,T=y,b<A))for(;++b<A&&!((g<<=1)<=this.c[++T]);)g-=this.c[T];if(A=1<<b,this.hn[0]+A>c)return-3;this.u[m]=S=this.hn[0],this.hn[0]+=A,0!=m?(this.x[m]=w,this.r[0]=b,this.r[1]=x,b=w>>>M-x,this.r[2]=S-this.u[m-1]-b,r(this.r,0,d,3*(this.u[m-1]+b),3)):s[0]=S}for(this.r[1]=y-M,C>=i?this.r[0]=192:u[C]<a?(this.r[0]=this.v[C]<256?0:96,this.r[2]=this.v[C++]):(this.r[0]=o[this.v[C]-a]+16+64,this.r[2]=n[this.v[C++]-a]),g=1<<y-M,b=w>>>M;b<A;b+=g)r(this.r,0,d,3*(S+b),3);for(b=1<<y-1;0!=(w&b);b>>>=1)w^=b;for(w^=b,k=(1<<M)-1;(w&k)!=this.x[m];)m--,M-=x,k=(1<<M)-1}return 0!=z&&1!=v?p:f},n.prototype.inflate_trees_bits=function(t,e,i,a,n){var o;return this.initWorkArea(19),this.hn[0]=0,o=this.huft_build(t,0,19,19,null,null,i,e,a,this.hn,this.v),-3==o?n.msg="oversubscribed dynamic bit lengths tree":o!=p&&0!=e[0]||(n.msg="incomplete dynamic bit lengths tree",o=-3),o},n.prototype.inflate_trees_dynamic=function(t,e,i,a,n,o,r,s,l){var d;return this.initWorkArea(288),this.hn[0]=0,(d=this.huft_build(i,0,t,257,x,k,o,a,s,this.hn,this.v))!=f||0==a[0]?(-3==d?l.msg="oversubscribed literal/length tree":-4!=d&&(l.msg="incomplete literal/length tree",d=-3),d):(this.initWorkArea(288),d=this.huft_build(i,t,e,0,C,S,r,n,s,this.hn,this.v),d!=f||0==n[0]&&t>257?(-3==d?l.msg="oversubscribed distance tree":d==p?(l.msg="incomplete distance tree",d=-3):-4!=d&&(l.msg="empty distance tree with lengths",d=-3),d):f)},n.prototype.initWorkArea=function(t){null==this.hn&&(this.hn=new Int32Array(1),this.v=new Int32Array(t),this.c=new Int32Array(16),this.r=new Int32Array(3),this.u=new Int32Array(15),this.x=new Int32Array(16)),this.v.length<t&&(this.v=new Int32Array(t));for(var e=0;e<t;e++)this.v[e]=0;for(var e=0;e<16;e++)this.c[e]=0;for(var e=0;e<3;e++)this.r[e]=0;r(this.c,0,this.u,0,15),r(this.c,0,this.x,0,16)};var z=new Uint8Array(1),A="function"==typeof z.subarray;return{inflateBuffer:d,arrayCopy:r}}.apply(e,a))&&(t.exports=n)},38:function(t,e,i){(function(a){var n,o,r;!function(a,s){o=[i(0)],n=s,void 0!==(r="function"==typeof n?n.apply(e,o):n)&&(t.exports=r)}(0,function(t){var e=t.ajaxSettings;e.responseFields.native="responseNative",e.converters["* native"]=!0;var i={},n=0,o={0:200,1223:204},r={},s=a.ajaxSettings.xhr();window.ActiveXObject&&t(window).on("unload",function(){for(var t in r)r[t]()}),i.cors=!!s&&"withCredentials"in s,i.ajax=s=!!s,t.ajaxTransport("native",function(t){var e;if(i.cors||s&&!t.crossDomain)return{send:function(i,a){var s,l=t.xhr(),d=++n,h={};if(l.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(s in t.xhrFields)l[s]=t.xhrFields[s];t.mimeType&&l.overrideMimeType&&l.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(s in i)l.setRequestHeader(s,i[s]);e=function(t){return function(){e&&(delete r[d],e=l.onload=l.onerror=null,"abort"===t?l.abort():"error"===t?a(l.status,l.statusText):(l.response&&(h.native=l.response),a(o[l.status]||l.status,l.statusText,h,l.getAllResponseHeaders())))}},l.onload=e(),l.onerror=e("error"),e=r[d]=e("abort");try{l.send(t.hasContent&&t.data||null)}catch(t){if(e)throw t}},abort:function(){e&&e()}}}),t.getNative=function(e,i){return t.ajax({dataType:"native",url:e,xhrFields:{responseType:"arraybuffer"},success:i})}})}).call(e,i(0))},39:function(t,e,i){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}function n(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}Object.defineProperty(e,"__esModule",{value:!0});var o=i(1),r=(n(o),i(2)),s=n(r),l=i(5),d=a(l),h=i(4),c=a(h),u=s.Model.extend(d.default.LoggableMixin).extend({_logNamespace:"user",urlRoot:function(){return Galaxy.root+"api/users"},defaults:{id:null,username:"("+(0,c.default)("anonymous user")+")",email:"",total_disk_usage:0,nice_total_disk_usage:"",quota_percent:null,is_admin:!1},initialize:function(t){this.log("User.initialize:",t),this.on("loaded",function(t,e){this.log(this+" has loaded:",t,e)}),this.on("change",function(t,e){this.log(this+" has changed:",t,e.changes)})},isAnonymous:function(){return!this.get("email")},isAdmin:function(){return this.get("is_admin")},loadFromApi:function(t,e){t=t||u.CURRENT_ID_STR,e=e||{};var i=this,a=e.success;return e.success=function(t,e){i.trigger("loaded",t,e),a&&a(t,e)},t===u.CURRENT_ID_STR&&(e.url=this.urlRoot+"/"+u.CURRENT_ID_STR),s.Model.prototype.fetch.call(this,e)},clearSessionStorage:function(){for(var t in sessionStorage)0===t.indexOf("history:")?sessionStorage.removeItem(t):"history-panel"===t&&sessionStorage.removeItem(t)},toString:function(){var t=[this.get("username")];return this.get("id")&&(t.unshift(this.get("id")),t.push(this.get("email"))),"User("+t.join(":")+")"}});u.CURRENT_ID_STR="current",u.getCurrentUserFromApi=function(t){var e=new u;return e.loadFromApi(u.CURRENT_ID_STR,t),e};s.Collection.extend(d.default.LoggableMixin).extend({model:u,urlRoot:function(){return Galaxy.root+"api/users"}});e.default={User:u}},40:function(t,e,i){"use strict";(function(t,a){function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(3),r=(n(o),i(41)),s=n(r),l=i(43),d=n(l),h=i(45),c=n(h),u=t.View.extend({initialize:function(t){var e=this;this.options=t,this.setElement(this._template()),this.$navbarBrandLink=this.$(".navbar-brand-link"),this.$navbarBrandImage=this.$(".navbar-brand-image"),this.$navbarBrandTitle=this.$(".navbar-brand-title"),this.$navbarTabs=this.$(".navbar-tabs"),this.$quoteMeter=this.$(".quota-meter-container"),this.collection=new s.default.Collection,this.collection.on("add",function(t){e.$navbarTabs.append(new s.default.Tab({model:t}).render().$el)}).on("reset",function(){e.$navbarTabs.empty()}).on("dispatch",function(t){e.collection.each(function(e){t(e)})}).fetch(this.options),Galaxy.frame=this.frame=new d.default({collection:this.collection}),Galaxy.quotaMeter=this.quotaMeter=new c.default.UserQuotaMeter({model:Galaxy.user,el:this.$quoteMeter}),a(window).on("click",function(t){var e=a(t.target).closest("a[download]");1==e.length&&(0===a("iframe[id=download]").length&&a("body").append(a("<iframe/>").attr("id","download").hide()),a("iframe[id=download]").attr("src",e.attr("href")),t.preventDefault())}).on("beforeunload",function(){var t="";if(e.collection.each(function(e){var i=e.get("onbeforeunload")&&e.get("onbeforeunload")();i&&(t+=i+" ")}),""!==t)return t})},render:function(){return this.$navbarBrandTitle.html("Galaxy "+(this.options.brand&&"/ "+this.options.brand||"")),this.$navbarBrandLink.attr("href",this.options.logo_url),this.$navbarBrandImage.attr("src",this.options.logo_src),this.quotaMeter.render(),this},_template:function(){return'<div id="masthead" class="navbar navbar-fixed-top navbar-inverse"><div class="navbar-header"><div class="navbar-tabs"/></div><div class="navbar-brand"><a class="navbar-brand-link"><img class="navbar-brand-image"/><span class="navbar-brand-title"/></a></div><div class="quota-meter-container"/><div class="navbar-icons"/></div>'}});e.default={View:u}}).call(e,i(2),i(0))},41:function(t,e,i){"use strict";(function(t,a,n,o){function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var s=i(42),l=r(s),d=i(13),h=r(d),c=i(4),u=r(c),f=i(3),_=r(f),p=t.Collection.extend({model:t.Model.extend({defaults:{visible:!0,target:"_parent"}}),fetch:function(t){t=t||{},this.reset();var e=new l.default.GenericNavView;this.add(e.render()),this.add({id:"analysis",title:(0,u.default)("Analyze Data"),url:"",tooltip:(0,u.default)("Analysis home view")}),this.add({id:"workflow",title:(0,u.default)("Workflow"),tooltip:(0,u.default)("Chain tools into workflows"),disabled:!Galaxy.user.id,url:"workflow"}),this.add({id:"shared",title:(0,u.default)("Shared Data"),url:"library/index",tooltip:(0,u.default)("Access published resources"),menu:[{title:(0,u.default)("Data Libraries"),url:"library/list"},{title:(0,u.default)("Histories"),url:"histories/list_published"},{title:(0,u.default)("Workflows"),url:"workflows/list_published"},{title:(0,u.default)("Visualizations"),url:"visualizations/list_published"},{title:(0,u.default)("Pages"),url:"pages/list_published"}]}),this.add({id:"visualization",title:(0,u.default)("Visualization"),url:"visualizations/list",tooltip:(0,u.default)("Visualize datasets"),disabled:!Galaxy.user.id,menu:[{title:(0,u.default)("New Track Browser"),url:"visualization/trackster",target:"_frame"},{title:(0,u.default)("Saved Visualizations"),url:"visualizations/list",target:"_frame"},{title:(0,u.default)("Interactive Environments"),url:"visualization/gie_list",target:"galaxy_main"}]}),h.default.add({url:"api/webhooks/masthead/all",callback:function(t){a(document).ready(function(){a.each(t.models,function(t,e){var i=e.toJSON();if(i.activate){var a={id:i.name,icon:i.config.icon,url:i.config.url,tooltip:i.config.tooltip,onclick:i.config.function&&new Function(i.config.function)};Galaxy.page?Galaxy.page.masthead.collection.add(a):Galaxy.masthead&&Galaxy.masthead.collection.add(a),_.default.appendScriptStyle(i)}})})}}),Galaxy.user.get("is_admin")&&this.add({id:"admin",title:(0,u.default)("Admin"),url:"admin",tooltip:(0,u.default)("Administer this Galaxy"),cls:"admin-only"});var i={id:"help",title:(0,u.default)("Help"),tooltip:(0,u.default)("Support, contact, and community"),menu:[{title:(0,u.default)("Support"),url:t.support_url,target:"_blank"},{title:(0,u.default)("Search"),url:t.search_url,target:"_blank"},{title:(0,u.default)("Mailing Lists"),url:t.mailing_lists,target:"_blank"},{title:(0,u.default)("Videos"),url:t.screencasts_url,target:"_blank"},{title:(0,u.default)("Wiki"),url:t.wiki_url,target:"_blank"},{title:(0,u.default)("How to Cite Galaxy"),url:t.citation_url,target:"_blank"},{title:(0,u.default)("Interactive Tours"),url:"tours"}]};t.terms_url&&i.menu.push({title:(0,u.default)("Terms and Conditions"),url:t.terms_url,target:"_blank"}),t.biostar_url&&i.menu.unshift({title:(0,u.default)("Ask a question"),url:"biostar/biostar_question_redirect",target:"_blank"}),t.biostar_url&&i.menu.unshift({title:(0,u.default)("Galaxy Biostar"),url:t.biostar_url_redirect,target:"_blank"}),this.add(i);var o={};o=Galaxy.user.id?{id:"user",title:(0,u.default)("User"),cls:"loggedin-only",tooltip:(0,u.default)("Account and saved data"),menu:[{title:(0,u.default)("Logged in as")+" "+Galaxy.user.get("email")},{title:(0,u.default)("Preferences"),url:"user"},{title:(0,u.default)("Custom Builds"),url:"custom_builds"},{title:(0,u.default)("Logout"),url:"user/logout?session_csrf_token="+Galaxy.session_csrf_token,target:"_top",divider:!0},{title:(0,u.default)("Saved Histories"),url:"histories/list",target:"_top"},{title:(0,u.default)("Saved Datasets"),url:"datasets/list",target:"_top"},{title:(0,u.default)("Saved Pages"),url:"pages/list",target:"_top"}]}:t.allow_user_creation?{id:"user",title:(0,u.default)("Login or Register"),cls:"loggedout-only",tooltip:(0,u.default)("Account registration or login"),menu:[{title:(0,u.default)("Login"),url:"user/login",target:"galaxy_main",noscratchbook:!0},{title:(0,u.default)("Register"),url:"user/create",target:"galaxy_main",noscratchbook:!0}]}:{id:"user",title:(0,u.default)("Login"),cls:"loggedout-only",tooltip:(0,u.default)("Login"),url:"user/login",target:"galaxy_main",noscratchbook:!0},this.add(o);var r=this.get(t.active_view);return r&&r.set("active",!0),(new n.Deferred).resolve().promise()}}),g=t.View.extend({initialize:function(t){this.model=t.model,this.setElement(this._template()),this.$dropdown=this.$(".dropdown"),this.$toggle=this.$(".dropdown-toggle"),this.$menu=this.$(".dropdown-menu"),this.$note=this.$(".dropdown-note"),this.listenTo(this.model,"change",this.render,this)},events:{"click .dropdown-toggle":"_toggleClick"},render:function(){var t=this;return a(".tooltip").remove(),this.$el.attr("id",this.model.id).css({visibility:this.model.get("visible")&&"visible"||"hidden"}),this.model.set("url",this._formatUrl(this.model.get("url"))),this.$note.html(this.model.get("note")||"").removeClass().addClass("dropdown-note").addClass(this.model.get("note_cls")).css({display:this.model.get("show_note")&&"block"||"none"}),this.$toggle.html(this.model.get("title")||"").removeClass().addClass("dropdown-toggle").addClass(this.model.get("cls")).addClass(this.model.get("icon")&&"dropdown-icon fa "+this.model.get("icon")).addClass(this.model.get("toggle")&&"toggle").attr("target",this.model.get("target")).attr("href",this.model.get("url")).attr("title",this.model.get("tooltip")).tooltip("destroy"),this.model.get("tooltip")&&this.$toggle.tooltip({placement:"bottom"}),this.$dropdown.removeClass().addClass("dropdown").addClass(this.model.get("disabled")&&"disabled").addClass(this.model.get("active")&&"active"),this.model.get("menu")&&this.model.get("show_menu")?(this.$menu.show(),a("#dd-helper").show().off().on("click",function(){a("#dd-helper").hide(),t.model.set("show_menu",!1)})):(t.$menu.hide(),a("#dd-helper").hide()),this.$menu.empty().removeClass("dropdown-menu"),this.model.get("menu")&&(o.each(this.model.get("menu"),function(e){t.$menu.append(t._buildMenuItem(e)),e.divider&&t.$menu.append(a("<li/>").addClass("divider"))}),t.$menu.addClass("dropdown-menu"),t.$toggle.append(a("<b/>").addClass("caret"))),this},_buildMenuItem:function(t){var e=this;return t=o.defaults(t||{},{title:"",url:"",target:"_parent",noscratchbook:!1}),t.url=e._formatUrl(t.url),a("<li/>").append(a("<a/>").attr("href",t.url).attr("target",t.target).html(t.title).on("click",function(i){i.preventDefault(),e.model.set("show_menu",!1),t.onclick?t.onclick():Galaxy.frame.add(t)}))},_toggleClick:function(t){var e=this,i=this.model;if(t.preventDefault(),a(".tooltip").hide(),i.trigger("dispatch",function(t){i.id!==t.id&&t.get("menu")&&t.set("show_menu",!1)}),i.get("disabled")){var n=function(t,e){return a("<div/>").append(a("<a/>").attr("href",Galaxy.root+e).html(t)).html()};this.$toggle.popover&&this.$toggle.popover("destroy"),this.$toggle.popover({html:!0,placement:"bottom",content:"Please "+n("login","user/login?use_panels=True")+" or "+n("register","user/create?use_panels=True")+" to use this feature."}).popover("show"),setTimeout(function(){e.$toggle.popover("destroy")},5e3)}else i.get("menu")?i.set("show_menu",!0):i.get("onclick")?i.get("onclick")():Galaxy.frame.add(i.attributes)},_formatUrl:function(t){return"string"==typeof t&&-1===t.indexOf("//")&&"/"!=t.charAt(0)?Galaxy.root+t:t},_template:function(){return'<ul class="nav navbar-nav"><li class="dropdown"><a class="dropdown-toggle"/><ul class="dropdown-menu"/><div class="dropdown-note"/></li></ul>'}});e.default={Collection:p,Tab:g}}).call(e,i(2),i(0),i(0),i(1))},42:function(t,e,i){"use strict";(function(t,a){Object.defineProperty(e,"__esModule",{value:!0});var n=i(8),o=function(t){return t&&t.__esModule?t:{default:t}}(n),r=t.View.extend({initialize:function(){this.modal=null},makeModalIframe:function(t){var e=window.Galaxy.config.communication_server_host,i=window.Galaxy.config.communication_server_port,n=escape(window.Galaxy.user.attributes.username),s=escape(window.Galaxy.config.persistent_communication_rooms),l="?username="+n+"&persistent_communication_rooms="+s,d=e+":"+i+l,h=null,c=null,u='<iframe class="f-iframe fade in communication-iframe" src="'+d+'"> </iframe>';return a(".chat-modal").length>0&&a(".chat-modal").remove(),r.modal=new o.default.View({body:u,height:350,width:600,closing_events:!0,title_separator:!1,cls:"ui-modal chat-modal"}),r.modal.show(),h=a(".chat-modal .modal-header"),c=a(".chat-modal .modal-body"),h.addClass("modal-header-body"),c.addClass("modal-header-body"),h.find("h4").remove(),h.removeAttr("min-height padding border"),h.append('<i class="fa fa-comment" aria-hidden="true" title="Communicate with other users"></i><i class="fa fa-expand expand-compress-modal" aria-hidden="true" title="Maximize"></i><i class="fa fa-times close-modal" aria-hidden="true" title="Close"></i>'),a(".close-modal").click(function(t){a(".chat-modal").css("display","none")}),a(".expand-compress-modal").click(function(t){a(".expand-compress-modal").hasClass("fa-expand")?(a(".chat-modal .modal-dialog").width("1000px"),a(".chat-modal .modal-body").height("575px"),a(".expand-compress-modal").removeClass("fa-expand").addClass("fa-compress"),a(".expand-compress-modal").attr("title","Minimize"),a(".expand-compress-modal").css("margin-left","96.2%")):(a(".chat-modal .modal-dialog").width("600px"),a(".chat-modal .modal-body").height("350px"),a(".expand-compress-modal").removeClass("fa-compress").addClass("fa-expand"),a(".expand-compress-modal").attr("title","Maximize"),a(".expand-compress-modal").css("margin-left","93.2%"))}),this},render:function(){var t=this;return{id:"show-chat-online",icon:"fa-comment-o",tooltip:"Chat online",visible:!1,onclick:t.makeModalIframe}}});e.default={GenericNavView:r}}).call(e,i(2),i(0))},43:function(t,e,i){"use strict";(function(t,a,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(16),s=o(r),l=i(9),d=o(l),h=i(10),c=o(h),u=i(26),f=o(u),_=i(4),p=o(_);e.default=t.View.extend({initialize:function(t){var e=this;t=t||{},this.frames=new s.default.View({visible:!1}),this.setElement(this.frames.$el),this.buttonActive=t.collection.add({id:"enable-scratchbook",icon:"fa-th",tooltip:(0,p.default)("Enable/Disable Scratchbook"),onclick:function(){e.active=!e.active,e.buttonActive.set({toggle:e.active,show_note:e.active,note_cls:e.active&&"fa fa-check"}),!e.active&&e.frames.hide()},onbeforeunload:function(){if(e.frames.length()>0)return"You opened "+e.frames.length()+" frame(s) which will be lost."}}),this.buttonLoad=t.collection.add({id:"show-scratchbook",icon:"fa-eye",tooltip:(0,p.default)("Show/Hide Scratchbook"),show_note:!0,visible:!1,onclick:function(t){e.frames.visible?e.frames.hide():e.frames.show()}}),this.frames.on("add remove",function(){this.visible&&0==this.length()&&this.hide(),e.buttonLoad.set({note:this.length(),visible:this.length()>0})}).on("show hide ",function(){e.buttonLoad.set({toggle:this.visible,icon:this.visible&&"fa-eye"||"fa-eye-slash"})}),this.history_cache={}},addDataset:function(t){var e=this,i=null;if(Galaxy&&Galaxy.currHistoryPanel){var n=Galaxy.currHistoryPanel.collection.historyId;this.history_cache[n]={name:Galaxy.currHistoryPanel.model.get("name"),dataset_ids:[]},Galaxy.currHistoryPanel.collection.each(function(t){!t.get("deleted")&&t.get("visible")&&e.history_cache[n].dataset_ids.push(t.get("id"))})}var o=function(t,i){if(t){var a=e.history_cache[t.get("history_id")];if(a&&a.dataset_ids){var n=a.dataset_ids,o=n.indexOf(t.get("id"));if(-1!==o&&o+i>=0&&o+i<n.length)return n[o+i]}}},r=function(t,a,n){var r=o(t,a);r?e._loadDataset(r,function(t,e){i=t,n.model.set(e)}):n.model.trigger("change")};this._loadDataset(t,function(t,n){i=t,e.add(a.extend({menu:[{icon:"fa fa-chevron-circle-left",tooltip:"Previous in History",onclick:function(t){r(i,-1,t)},disabled:function(){return!o(i,-1)}},{icon:"fa fa-chevron-circle-right",tooltip:"Next in History",onclick:function(t){r(i,1,t)},disabled:function(){return!o(i,1)}}]},n))})},_loadDataset:function(t,e){var i=this,o=new d.default.Dataset({id:t});n.when(o.fetch()).then(function(){var n=a.find(["tabular","interval"],function(t){return-1!==o.get("data_type").indexOf(t)}),r=o.get("name"),s=i.history_cache[o.get("history_id")];s&&(r=s.name+": "+r),e(o,n?{title:r,url:null,content:d.default.createTabularDatasetChunkedView({model:new d.default.TabularDataset(o.toJSON()),embedded:!0,height:"100%"}).$el}:{title:r,url:Galaxy.root+"datasets/"+t+"/display/?preview=True",content:null})})},addTrackster:function(t){var e=this,i=new c.default.Visualization({id:t});n.when(i.fetch()).then(function(){var t=new f.default.TracksterUI(Galaxy.root),n={title:i.get("name"),type:"other",content:function(e){var n={container:e,name:i.get("title"),id:i.id,dbkey:i.get("dbkey"),stand_alone:!1},o=i.get("latest_revision"),r=o.config.view.drawables;a.each(r,function(t){t.dataset={hda_ldda:t.hda_ldda,id:t.dataset_id}}),view=t.create_visualization(n,o.config.viewport,o.config.view.drawables,o.config.bookmarks,!1)}};e.add(n)})},add:function(t){if("_blank"==t.target)window.open(t.url);else if("_top"==t.target||"_parent"==t.target||"_self"==t.target)window.location=t.url;else if(!this.active||t.noscratchbook){var e=n(window.parent.document).find("#galaxy_main");"galaxy_main"==t.target||"center"==t.target?0===e.length?window.location=t.url+(-1==t.url.indexOf("?")?"?":"&")+"use_panels=True":e.attr("src",t.url):window.location=t.url}else this.frames.add(t)}})}).call(e,i(2),i(1),i(0))},45:function(t,e,i){"use strict";(function(t,a,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(5),s=o(r),l=i(4),d=o(l),h=t.View.extend(s.default.LoggableMixin).extend({_logNamespace:"user",options:{warnAtPercent:85,errorAtPercent:100},initialize:function(t){this.log(this+".initialize:",t),a.extend(this.options,t),this.listenTo(this.model,"change:quota_percent change:total_disk_usage",this.render)},update:function(t){return this.log(this+" updating user data...",t),this.model.loadFromApi(this.model.get("id"),t),this},isOverQuota:function(){return null!==this.model.get("quota_percent")&&this.model.get("quota_percent")>=this.options.errorAtPercent},_render_quota:function(){var t=this.model.toJSON(),e=t.quota_percent,i=n(this._templateQuotaMeter(t)),a=i.find(".progress-bar");return this.isOverQuota()?(a.attr("class","progress-bar progress-bar-danger"),i.find(".quota-meter-text").css("color","white"),this.trigger("quota:over",t)):e>=this.options.warnAtPercent?(a.attr("class","progress-bar progress-bar-warning"),this.trigger("quota:under quota:under:approaching",t)):(a.attr("class","progress-bar progress-bar-success"),this.trigger("quota:under quota:under:ok",t)),i},_render_usage:function(){var t=n(this._templateUsage(this.model.toJSON()));return this.log(this+".rendering usage:",t),t},render:function(){var t=null;return this.log(this+".model.quota_percent:",this.model.get("quota_percent")),t=null===this.model.get("quota_percent")||void 0===this.model.get("quota_percent")?this._render_usage():this._render_quota(),this.$el.html(t),this.$el.find(".quota-meter-text").tooltip(),this},_templateQuotaMeter:function(t){return['<div id="quota-meter" class="quota-meter progress">','<div class="progress-bar" style="width: ',t.quota_percent,'%"></div>','<div class="quota-meter-text" data-placement="left" style="top: 6px"',t.nice_total_disk_usage?' title="Using '+t.nice_total_disk_usage+'. This value is recalculated when you log out.">':">",(0,d.default)("Using")," ",t.quota_percent,"%","</div>","</div>"].join("")},_templateUsage:function(t){return['<div id="quota-meter" class="quota-meter" style="background-color: transparent">','<div class="quota-meter-text" data-placement="left" data-original-title="This value is recalculated when you log out." style="top: 6px; color: white">',t.nice_total_disk_usage?(0,d.default)("Using ")+t.nice_total_disk_usage:"","</div>","</div>"].join("")},toString:function(){return"UserQuotaMeter("+this.model+")"}});e.default={UserQuotaMeter:h}}).call(e,i(2),i(1),i(0))},5:function(t,e,i){"use strict";(function(t){function a(t){return t&&t.__esModule?t:{default:t}}function n(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}function o(t,e){var i=Array.prototype.slice.call(arguments,0),a=i.pop();return i.unshift(a),d.defaults.apply(d,i)}function r(t,e){e=e||"model";var i=d.template(t.join(""));return function(t,a){var n={view:a||{},_l:p.default};return n[e]=t||{},i(n)}}function s(t,e){e=e||{};var i=e.ascending?1:-1;return function(e,a){return e=e.get(t),a=a.get(t),(e<a?-1:e>a?1:0)*i}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(1),d=n(l),h=i(2),c=n(h),u=i(21),f=a(u),_=i(4),p=a(_),g={logger:null,_logNamespace:"."};(0,f.default)(g);var v=c.Model.extend({initialize:function(t){if(this._checkEnabledSessionStorage(),!t.id)throw new Error("SessionStorageModel requires an id in the initial attributes");this.id=t.id;var e=this.isNew()?{}:this._read(this);this.clear({silent:!0}),this.save(d.extend({},this.defaults,e,t),{silent:!0}),this.on("change",function(){this.save()})},_checkEnabledSessionStorage:function(){try{return window.sessionStorage.length>=0}catch(t){return alert("Please enable cookies in your browser for this Galaxy site"),!1}},sync:function(t,e,i){i.silent||e.trigger("request",e,{},i);var a={};switch(t){case"create":a=this._create(e);break;case"read":a=this._read(e);break;case"update":a=this._update(e);break;case"delete":a=this._delete(e)}return void 0!==a||null!==a?i.success&&i.success():i.error&&i.error(),a},_create:function(t){try{var e=t.toJSON(),i=sessionStorage.setItem(t.id,JSON.stringify(e));return null===i?i:e}catch(t){if(!(t instanceof DOMException&&navigator.userAgent.indexOf("Safari")>-1))throw t}return null},_read:function(t){return JSON.parse(sessionStorage.getItem(t.id))},_update:function(t){return t._create(t)},_delete:function(t){return sessionStorage.removeItem(t.id)},isNew:function(){return!sessionStorage.hasOwnProperty(this.id)},_log:function(){return JSON.stringify(this.toJSON(),null," ")},toString:function(){return"SessionStorageModel("+this.id+")"}});!function(){v.prototype=d.omit(v.prototype,"url","urlRoot")}();var m={searchAttributes:[],searchAliases:{},searchAttribute:function(t,e){var i=this.get(t);return!(!e||void 0===i||null===i)&&(d.isArray(i)?this._searchArrayAttribute(i,e):-1!==i.toString().toLowerCase().indexOf(e.toLowerCase()))},_searchArrayAttribute:function(t,e){return e=e.toLowerCase(),d.any(t,function(t){return-1!==t.toString().toLowerCase().indexOf(e.toLowerCase())})},search:function(t){var e=this;return d.filter(this.searchAttributes,function(i){return e.searchAttribute(i,t)})},matches:function(t){var e=t.split("=");if(e.length>=2){var i=e[0];return i=this.searchAliases[i]||i,this.searchAttribute(i,e[1])}return!!this.search(t).length},matchesAll:function(t){var e=this;return t=t.match(/(".*"|\w*=".*"|\S*)/g).filter(function(t){return!!t}),d.all(t,function(t){return t=t.replace(/"/g,""),e.matches(t)})}},w={hiddenUntilActivated:function(e,i){if(i=i||{},this.HUAVOptions={$elementShown:this.$el,showFn:t.prototype.toggle,showSpeed:"fast"},d.extend(this.HUAVOptions,i||{}),this.HUAVOptions.hasBeenShown=this.HUAVOptions.$elementShown.is(":visible"),this.hidden=this.isHidden(),e){var a=this;e.on("click",function(t){a.toggle(a.HUAVOptions.showSpeed)})}},isHidden:function(){return this.HUAVOptions.$elementShown.is(":hidden")},toggle:function(){return this.hidden?(this.HUAVOptions.hasBeenShown||d.isFunction(this.HUAVOptions.onshowFirstTime)&&(this.HUAVOptions.hasBeenShown=!0,this.HUAVOptions.onshowFirstTime.call(this)),d.isFunction(this.HUAVOptions.onshow)&&(this.HUAVOptions.onshow.call(this),this.trigger("hiddenUntilActivated:shown",this)),this.hidden=!1):(d.isFunction(this.HUAVOptions.onhide)&&(this.HUAVOptions.onhide.call(this),this.trigger("hiddenUntilActivated:hidden",this)),this.hidden=!0),this.HUAVOptions.showFn.apply(this.HUAVOptions.$elementShown,arguments)}},b={initialize:function(t){this.draggable=t.draggable||!1},$dragHandle:function(){return this.$(".title-bar")},toggleDraggable:function(){this.draggable?this.draggableOff():this.draggableOn()},draggableOn:function(){this.draggable=!0,this.dragStartHandler=d.bind(this._dragStartHandler,this),this.dragEndHandler=d.bind(this._dragEndHandler,this);var t=this.$dragHandle().attr("draggable",!0).get(0);t.addEventListener("dragstart",this.dragStartHandler,!1),t.addEventListener("dragend",this.dragEndHandler,!1)},draggableOff:function(){this.draggable=!1;var t=this.$dragHandle().attr("draggable",!1).get(0);t.removeEventListener("dragstart",this.dragStartHandler,!1),t.removeEventListener("dragend",this.dragEndHandler,!1)},_dragStartHandler:function(t){return t.dataTransfer.effectAllowed="move",t.dataTransfer.setData("text",JSON.stringify(this.model.toJSON())),this.trigger("draggable:dragstart",t,this),!1},_dragEndHandler:function(t){return this.trigger("draggable:dragend",t,this),!1}},y={initialize:function(t){this.selectable=t.selectable||!1,this.selected=t.selected||!1},$selector:function(){return this.$(".selector")},_renderSelected:function(){this.$selector().find("span").toggleClass("fa-check-square-o",this.selected).toggleClass("fa-square-o",!this.selected)},toggleSelector:function(){this.$selector().is(":visible")?this.hideSelector():this.showSelector()},showSelector:function(t){t=void 0!==t?t:this.fxSpeed,this.selectable=!0,this.trigger("selectable",!0,this),this._renderSelected(),t?this.$selector().show(t):this.$selector().show()},hideSelector:function(t){t=void 0!==t?t:this.fxSpeed,this.selectable=!1,this.trigger("selectable",!1,this),t?this.$selector().hide(t):this.$selector().hide()},toggleSelect:function(t){this.selected?this.deselect(t):this.select(t)},select:function(t){return this.selected||(this.trigger("selected",this,t),this.selected=!0,this._renderSelected()),!1},deselect:function(t){return this.selected&&(this.trigger("de-selected",this,t),this.selected=!1,this._renderSelected()),!1}};e.default={LoggableMixin:g,SessionStorageModel:v,mixin:o,SearchableModelMixin:m,HiddenUntilActivatedViewMixin:w,DraggableViewMixin:b,SelectableViewMixin:y,wrapTemplate:r,buildComparator:s}}).call(e,i(0))},59:function(t,e,i){"use strict";(function(t){function a(t){return t&&t.__esModule?t:{default:t}}function n(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e}function o(t,e){return this._init(t||{},e||{})}Object.defineProperty(e,"__esModule",{value:!0});var r=i(1),s=n(r),l=i(2),d=n(l),h=i(5),c=a(h),u=i(39),f=a(u),_=i(60),p=a(_),g=i(21),v=a(g),m=i(4),w=a(m);(0,v.default)(o,"GalaxyApp");var b="galaxy:debug:namespaces",y=!1;try{y="true"==localStorage.getItem("galaxy:debug")}catch(t){console.log((0,w.default)("localStorage not available for debug flag retrieval"))}o.prototype._init=function(t,e){var i=this;return s.extend(i,d.Events),y&&(i.logger=console,console.debug("debugging galaxy:","options:",t,"bootstrapped:",e)),i._processOptions(t),i.root=t.root||"/",i.params=t.params||{},i.session_csrf_token=t.session_csrf_token||null,i._initConfig(t.config||{}),i._patchGalaxy(window.Galaxy),i._initLogger(i.options.loggerOptions||{}),i.debug("GalaxyApp.options: ",i.options),i.debug("GalaxyApp.config: ",i.config),i.debug("GalaxyApp.logger: ",i.logger),i._initLocale(),i.debug("GalaxyApp.localize: ",i.localize),i.config=t.config||{},i.debug("GalaxyApp.config: ",i.config),i._initUser(t.user||{}),i.debug("GalaxyApp.user: ",i.user),i._setUpListeners(),i.trigger("ready",i),i},o.prototype.defaultOptions={patchExisting:!0,root:"/",session_csrf_token:null},o.prototype._processOptions=function(t){var e=this,i=e.defaultOptions;e.options={};for(var a in i)i.hasOwnProperty(a)&&(e.options[a]=t.hasOwnProperty(a)?t[a]:i[a]);return e},o.prototype._initConfig=function(t){var e=this;return e.config=t,e.config.debug=y||e.config.debug,e},o.prototype._patchGalaxy=function(t){var e=this;if(e.options.patchExisting&&t)for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])},o.prototype._initLogger=function(t){var e=this;if(e.config.debug){t.consoleLogger=t.consoleLogger||console,t.consoleLevel=t.consoleLevel||p.default.MetricsLogger.ALL;try{t.consoleNamespaceWhitelist=localStorage.getItem(b).split(",")}catch(t){}try{t.consoleFlattenMessages="true"==localStorage.getItem("galaxy:debug:flatten")}catch(t){}console.log(t.consoleFlattenMessages)}return e.logger=new p.default.MetricsLogger(t),e.emit={},["log","debug","info","warn","error","metric"].map(function(t){e.emit[t]=function(i){e.logger.emit(t,arguments[0],Array.prototype.slice.call(arguments,1))}}),e.config.debug&&(c.default.LoggableMixin.logger=e.logger),e},o.prototype._initLocale=function(t){var e=this;return e.debug("_initLocale:",t),e.localize=w.default,window._l=e.localize,e},o.prototype._initUser=function(t){var e=this;return e.debug("_initUser:",t),e.user=new f.default.User(t),e.user.logger=e.logger,e},o.prototype._setUpListeners=function(){var e=this;return e.lastAjax={},t(document).bind("ajaxSend",function(t,i,a){var n=a.data;try{n=JSON.parse(n)}catch(t){}e.lastAjax={url:location.href.slice(0,-1)+a.url,data:n}}),e},o.prototype.debugging=function(t){var e=this;try{if(void 0===t)return"true"===localStorage.getItem("galaxy:debug");if(t)return localStorage.setItem("galaxy:debug",!0),!0;localStorage.removeItem("galaxy:debug"),e.debuggingNamespaces(null)}catch(t){console.log((0,w.default)("localStorage not available for debug flag retrieval"))}return!1},o.prototype.debuggingNamespaces=function(t){var e=this;try{if(void 0===t){var i=localStorage.getItem(b);return"string"==typeof i?i.split(","):[]}null===t?localStorage.removeItem(b):localStorage.setItem(b,t);var a=e.debuggingNamespaces();return e.logger&&(e.logger.options.consoleNamespaceWhitelist=a),a}catch(t){console.log((0,w.default)("localStorage not available for debug namespace retrieval"))}},o.prototype.toString=function(){return"GalaxyApp("+(this.user?this.user.get("email")||"(anonymous)":"uninitialized")+")"},e.default={GalaxyApp:o}}).call(e,i(0))},60:function(t,e,i){"use strict";(function(t){function i(t){t=t||{};var e=this;return e.userId=window.bootstrapped&&window.bootstrapped.user?window.bootstrapped.user.id:null,e.userId=e.userId||t.userId||null,e.consoleLogger=t.consoleLogger||null,e._init(t),e}function a(t){var e=String(t);return"[object Object]"==e&&(e=JSON.stringify(t)),e}function n(t){return this._init(t||{})}Object.defineProperty(e,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};i.ALL=0,i.LOG=0,i.DEBUG=10,i.INFO=20,i.WARN=30,i.ERROR=40,i.METRIC=50,i.NONE=100,i.defaultOptions={logLevel:i.NONE,consoleLevel:i.NONE,defaultNamespace:"Galaxy",consoleNamespaceWhitelist:null,consoleFlattenMessages:!1,clientPrefix:"client.",maxCacheSize:3e3,postSize:1e3,addTime:!0,cacheKeyPrefix:"logs-",postUrl:"/api/metrics",delayPostInMs:6e5,getPingData:void 0,onServerResponse:void 0},i.prototype._init=function(t){var e=this;e.options={};for(var a in i.defaultOptions)i.defaultOptions.hasOwnProperty(a)&&(e.options[a]=t.hasOwnProperty(a)?t[a]:i.defaultOptions[a]);return e.options.logLevel=e._parseLevel(e.options.logLevel),e.options.consoleLevel=e._parseLevel(e.options.consoleLevel),e._sending=!1,e._waiting=null,e._postSize=e.options.postSize,e._initCache(),e},i.prototype._initCache=function(){try{this.cache=new n({maxSize:this.options.maxCacheSize,key:this.options.cacheKeyPrefix+this.userId})}catch(t){this._emitToConsole("warn","MetricsLogger",["Could not intitialize logging cache:",t]),this.options.logLevel=i.NONE}},i.prototype._parseLevel=function(t){var e=void 0===t?"undefined":o(t);if("number"===e)return t;if("string"===e){var a=t.toUpperCase();if(i.hasOwnProperty(a))return i[a]}throw new Error("Unknown log level: "+t)},i.prototype.emit=function(t,e,i){var a=this;return e=e||a.options.defaultNamespace,t&&i?(t=a._parseLevel(t),t>=a.options.logLevel&&a._addToCache(t,e,i),a.consoleLogger&&t>=a.options.consoleLevel&&a._emitToConsole(t,e,i),a):a},i.prototype._addToCache=function(t,e,i){this._emitToConsole("debug","MetricsLogger",["_addToCache:",arguments,this.options.addTime,this.cache.length()]);var a=this;try{a.cache.add(a._buildEntry(t,e,i))>=a._postSize&&a._postCache()}catch(t){a._emitToConsole("warn","MetricsLogger",["Metrics logger could not stringify logArguments:",e,i]),a._emitToConsole("error","MetricsLogger",[t])}return a},i.prototype._buildEntry=function(t,e,i){this._emitToConsole("debug","MetricsLogger",["_buildEntry:",arguments]);var a={level:t,namespace:this.options.clientPrefix+e,args:i};return this.options.addTime&&(a.time=(new Date).toISOString()),a},i.prototype._postCache=function(e){if(e=e||{},this._emitToConsole("info","MetricsLogger",["_postCache",e,this._postSize]),!this.options.postUrl||this._sending)return t.when({});var i=this,a=e.count||i._postSize,n=i.cache.get(a),o=n.length,r="function"==typeof i.options.getPingData?i.options.getPingData():{};return r.metrics=JSON.stringify(n),i._sending=!0,t.post(i.options.postUrl,r).always(function(){i._sending=!1}).fail(function(t,e,a){i._postSize=i.options.maxCacheSize,i.emit("error","MetricsLogger",["_postCache error:",t.readyState,t.status,t.responseJSON||t.responseText])}).done(function(t){"function"==typeof i.options.onServerResponse&&i.options.onServerResponse(t),i.cache.remove(o),i._postSize=i.options.postSize})},i.prototype._delayPost=function(){var t=this;t._waiting=setTimeout(function(){t._waiting=null},t.options.delayPostInMs)},i.prototype._emitToConsole=function(t,e,n){var o=this,r=o.options.consoleNamespaceWhitelist;if(!o.consoleLogger)return o;if(r&&-1===r.indexOf(e))return o;var s=Array.prototype.slice.call(n,0);return s.unshift(e),o.options.consoleFlattenMessages&&(s=[s.map(a).join(" ")]),t>=i.METRIC&&"function"==typeof o.consoleLogger.info?o.consoleLogger.info.apply(o.consoleLogger,s):t>=i.ERROR&&"function"==typeof o.consoleLogger.error?o.consoleLogger.error.apply(o.consoleLogger,s):(t>=i.WARN&&"function"==typeof o.consoleLogger.warn?o.consoleLogger.warn.apply(o.consoleLogger,s):t>=i.INFO&&"function"==typeof o.consoleLogger.info?o.consoleLogger.info.apply(o.consoleLogger,s):t>=i.DEBUG&&"function"==typeof o.consoleLogger.debug?o.consoleLogger.debug.apply(o.consoleLogger,s):"function"==typeof o.consoleLogger.log&&o.consoleLogger.log.apply(o.consoleLogger,s),o)},i.prototype.log=function(){this.emit(1,this.options.defaultNamespace,Array.prototype.slice.call(arguments,0))},i.prototype.debug=function(){this.emit(i.DEBUG,this.options.defaultNamespace,Array.prototype.slice.call(arguments,0))},i.prototype.info=function(){this.emit(i.INFO,this.options.defaultNamespace,Array.prototype.slice.call(arguments,0))},i.prototype.warn=function(){this.emit(i.WARN,this.options.defaultNamespace,Array.prototype.slice.call(arguments,0))},i.prototype.error=function(){this.emit(i.ERROR,this.options.defaultNamespace,Array.prototype.slice.call(arguments,0))},i.prototype.metric=function(){this.emit(i.METRIC,this.options.defaultNamespace,Array.prototype.slice.call(arguments,0))},n.defaultOptions={maxSize:5e3},n.prototype._init=function(t){if(!this._hasStorage())throw new Error("LoggingCache needs localStorage");if(!t.key)throw new Error("LoggingCache needs key for localStorage");return this.key=t.key,this._initStorage(),this.maxSize=t.maxSize||n.defaultOptions.maxSize,this},n.prototype._hasStorage=function(){try{return localStorage.setItem("test","test"),localStorage.removeItem("test"),!0}catch(t){return!1}},n.prototype._initStorage=function(){return null===localStorage.getItem(this.key)?this.empty():this},n.prototype.add=function(t){var e=this,i=e._fetchAndParse(),a=i.length+1-e.maxSize;return a>0&&i.splice(0,a),i.push(t),e._unparseAndStore(i),i.length},n.prototype._fetchAndParse=function(){var t=this;return JSON.parse(localStorage.getItem(t.key))},n.prototype._unparseAndStore=function(t){var e=this;return localStorage.setItem(e.key,JSON.stringify(t))},n.prototype.length=function(){return this._fetchAndParse().length},n.prototype.get=function(t){return this._fetchAndParse().slice(0,t)},n.prototype.remove=function(t){var e=this._fetchAndParse(),i=e.splice(0,t);return this._unparseAndStore(e),i},n.prototype.empty=function(){return localStorage.setItem(this.key,"[]"),this},n.prototype.stringify=function(t){return JSON.stringify(this.get(t))},n.prototype.print=function(){console.log(JSON.stringify(this._fetchAndParse(),null," "))},e.default={MetricsLogger:i,LoggingCache:n}}).call(e,i(0))},61:function(t,e,i){"use strict";(function(t,a,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(40),s=o(r),l=i(58),d=o(l),h=i(8),c=o(h),u=i(3),f=o(u),_=t.View.extend({el:"body",className:"full-content",_panelids:["left","right"],initialize:function(e){var i=this;this.config=a.defaults(e.config||{},{message_box_visible:!1,message_box_content:"",message_box_class:"info",show_inactivity_warning:!1,inactivity_box_content:""}),Galaxy.modal=this.modal=new c.default.View,Galaxy.display=this.display=function(t){t.title?(f.default.setWindowTitle(t.title),t.allow_title_display=!1):(f.default.setWindowTitle(),t.allow_title_display=!0),i.center.display(t)},Galaxy.router=this.router=e.Router&&new e.Router(i,e),this.masthead=new s.default.View(this.config),this.center=new d.default.CenterPanel,this.$el.attr("scroll","no"),this.$el.html(this._template()),this.$("#masthead").replaceWith(this.masthead.$el),this.$("#center").append(this.center.$el),this.$el.append(this.masthead.frame.$el),this.$el.append(this.modal.$el),this.$messagebox=this.$("#messagebox"),this.$inactivebox=this.$("#inactivebox"),this.panels={},a.each(this._panelids,function(t){var a=t.charAt(0).toUpperCase()+t.slice(1),n=e[a];if(n){var o=new n(i,e);i[o.toString()]=o,i.panels[t]=new d.default.SidePanel({id:t,el:i.$("#"+t),view:o})}}),this.render(),this.router&&t.history.start({root:Galaxy.root,pushState:!0})},render:function(){return n(".select2-hidden-accessible").remove(),this.masthead.render(),this.renderMessageBox(),this.renderInactivityBox(),this.renderPanels(),this._checkCommunicationServerOnline(),this},renderMessageBox:function(){if(this.config.message_box_visible){var t=this.config.message_box_content||"",e=this.config.message_box_class||"info";this.$el.addClass("has-message-box"),this.$messagebox.attr("class","panel-"+e+"-message").html(t).toggle(!!t).show()}else this.$el.removeClass("has-message-box"),this.$messagebox.hide();return this},renderInactivityBox:function(){if(this.config.show_inactivity_warning){var t=this.config.inactivity_box_content||"",e=n("<a/>").attr("href",Galaxy.root+"user/resend_verification").text("Resend verification");this.$el.addClass("has-inactivity-box"),this.$inactivebox.html(t+" ").append(e).toggle(!!t).show()}else this.$el.removeClass("has-inactivity-box"),this.$inactivebox.hide();return this},renderPanels:function(){var t=this;return a.each(this._panelids,function(e){var i=t.panels[e];i?i.render():(t.$("#center").css(e,0),t.$("#"+e).hide())}),this},_template:function(){return['<div id="everything">','<div id="background"/>','<div id="masthead"/>','<div id="messagebox"/>','<div id="inactivebox" class="panel-warning-message" />','<div id="left" />','<div id="center" />','<div id="right" />',"</div>",'<div id="dd-helper" />'].join("")},toString:function(){return"PageLayoutView"},_checkCommunicationServerOnline:function(){var t=window.Galaxy.config.communication_server_host,e=window.Galaxy.config.communication_server_port,i=window.Galaxy.user.attributes.preferences,a=n("#show-chat-online");i&&-1!=["1","true"].indexOf(i.communication_server)?n.ajax({url:t+":"+e}).success(function(t){null!==window.Galaxy.user.id&&"hidden"===a.css("visibility")&&a.css("visibility","visible")}).error(function(t){a.css("visibility","hidden")}):a.css("visibility","hidden")}});e.default={View:_}}).call(e,i(2),i(1),i(0))},7:function(t,e,i){"use strict";(function(t,i){function a(t){t+="";for(var e=/(\d+)(\d{3})/;e.test(t);)t=t.replace(e,"$1,$2");return t}Object.defineProperty(e,"__esModule",{value:!0});var n=function(t){return"promise"in t},o=t.Model.extend({defaults:{ajax_settings:{},interval:1e3,success_fn:function(t){return!0}},go:function(){var t=i.Deferred(),e=this,a=e.get("ajax_settings"),n=e.get("success_fn"),o=e.get("interval");return function e(){i.ajax(a).success(function(i){n(i)?t.resolve(i):setTimeout(e,o)})}(),t}}),r=function(t){t||(t="#ffffff"),"string"==typeof t&&(t=[t]);for(var e=0;e<t.length;e++)t[e]=parseInt(t[e].slice(1),16);var i,a,n,o,r,s,l,d,h,c,u,f=function(t,e,i){return(299*t+587*e+114*i)/1e3},_=!1,p=0;do{for(i=Math.round(16777215*Math.random()),a=(16711680&i)>>16,n=(65280&i)>>8,o=255&i,h=f(a,n,o),_=!0,e=0;e<t.length;e++)if(r=t[e],s=(16711680&r)>>16,l=(65280&r)>>8,d=255&r,c=f(s,l,d),u=function(t,e,i,a,n,o){return Math.max(t,a)-Math.min(t,a)+(Math.max(e,n)-Math.min(e,n))+(Math.max(i,o)-Math.min(i,o))}(a,n,o,s,l,d),Math.abs(h-c)<40||u<200){_=!1;break}p++}while(!_&&p<=10);return"#"+(16777216+i).toString(16).substr(1,6)};e.default={commatize:a,is_deferred:n,ServerStateDeferred:o,get_random_color:r}}).call(e,i(2),i(0))},9:function(t,e,i){"use strict";(function(t,a,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(8),s=(o(r),i(16)),l=(o(s),i(14)),d=o(l),h=t.Model.extend({}),c=t.Model.extend({defaults:{id:"",type:"",name:"",hda_ldda:"hda",metadata:null},initialize:function(){this.get("metadata")||this._set_metadata(),this.on("change",this._set_metadata,this)},_set_metadata:function(){var t=new h;a.each(a.keys(this.attributes),function(e){if(0===e.indexOf("metadata_")){var i=e.split("metadata_")[1];t.set(i,this.attributes[e]),delete this.attributes[e]}},this),this.set("metadata",t,{silent:!0})},get_metadata:function(t){return this.attributes.metadata.get(t)},urlRoot:Galaxy.root+"api/datasets"}),u=c.extend({defaults:a.extend({},c.prototype.defaults,{chunk_url:null,first_data_chunk:null,offset:0,at_eof:!1}),initialize:function(t){c.prototype.initialize.call(this),this.attributes.first_data_chunk&&(this.attributes.offset=this.attributes.first_data_chunk.offset),this.attributes.chunk_url=Galaxy.root+"dataset/display?dataset_id="+this.id,this.attributes.url_viz=Galaxy.root+"visualization"},get_next_chunk:function(){if(this.attributes.at_eof)return null;var t=this,e=n.Deferred();return n.getJSON(this.attributes.chunk_url,{offset:t.attributes.offset}).success(function(i){var a;""!==i.ck_data?(a=i,t.attributes.offset=i.offset):(t.attributes.at_eof=!0,a=null),e.resolve(a)}),e}}),f=t.Collection.extend({model:c}),_=t.View.extend({initialize:function(t){this.row_count=0,this.loading_chunk=!1,new v({model:t.model,$el:this.$el})},expand_to_container:function(){this.$el.height()<this.scroll_elt.height()&&this.attempt_to_fetch()},attempt_to_fetch:function(t){var e=this;!this.loading_chunk&&this.scrolled_to_bottom()&&(this.loading_chunk=!0,this.loading_indicator.show(),n.when(e.model.get_next_chunk()).then(function(t){t&&(e._renderChunk(t),e.loading_chunk=!1),e.loading_indicator.hide(),e.expand_to_container()}))},render:function(){this.loading_indicator=n("<div/>").attr("id","loading_indicator"),this.$el.append(this.loading_indicator);var t=n("<table/>").attr({id:"content_table",cellpadding:0});this.$el.append(t);var e=this.model.get_metadata("column_names"),i=n("<thead/>").appendTo(t),a=n("<tr/>").appendTo(i);if(e)a.append("<th>"+e.join("</th><th>")+"</th>");else for(var o=1;o<=this.model.get_metadata("columns");o++)a.append("<th>"+o+"</th>");var r=this,s=this.model.get("first_data_chunk");s?this._renderChunk(s):n.when(r.model.get_next_chunk()).then(function(t){r._renderChunk(t)}),this.scroll_elt.scroll(function(){r.attempt_to_fetch()})},scrolled_to_bottom:function(){return!1},_renderCell:function(t,e,i){var a=n("<td>").text(t),o=this.model.get_metadata("column_types");return void 0!==i?a.attr("colspan",i).addClass("stringalign"):o&&e<o.length&&("str"!==o[e]&&"list"!==o[e]||a.addClass("stringalign")),a},_renderRow:function(t){var e=t.split("\t"),i=n("<tr>"),o=this.model.get_metadata("columns");return this.row_count%2!=0&&i.addClass("dark_row"),e.length===o?a.each(e,function(t,e){i.append(this._renderCell(t,e))},this):e.length>o?(a.each(e.slice(0,o-1),function(t,e){i.append(this._renderCell(t,e))},this),i.append(this._renderCell(e.slice(o-1).join("\t"),o-1))):1===e.length?i.append(this._renderCell(t,0,o)):(a.each(e,function(t,e){i.append(this._renderCell(t,e))},this),a.each(a.range(o-e.length),function(){i.append(n("<td>"))})),this.row_count++,i},_renderChunk:function(t){var e=this.$el.find("table");a.each(t.ck_data.split("\n"),function(t,i){""!==t&&e.append(this._renderRow(t))},this)}}),p=_.extend({initialize:function(t){_.prototype.initialize.call(this,t);var e=a.find(this.$el.parents(),function(t){return"auto"===n(t).css("overflow")});e||(e=window),this.scroll_elt=n(e)},scrolled_to_bottom:function(){return this.$el.height()-this.scroll_elt.scrollTop()-this.scroll_elt.height()<=0}}),g=_.extend({initialize:function(t){_.prototype.initialize.call(this,t),this.scroll_elt=this.$el.css({position:"relative",overflow:"scroll",height:t.height||"500px"})},scrolled_to_bottom:function(){return this.$el.scrollTop()+this.$el.innerHeight()>=this.el.scrollHeight}}),v=t.View.extend({col:{chrom:null,start:null,end:null},url_viz:null,dataset_id:null,genome_build:null,file_ext:null,initialize:function(t){var e=parent.Galaxy;if(e&&e.modal&&(this.modal=e.modal),e&&e.frame&&(this.frame=e.frame),this.modal&&this.frame){var i=t.model,a=i.get("metadata");if(i.get("file_ext")){if(this.file_ext=i.get("file_ext"),"bed"==this.file_ext){if(!(a.get("chromCol")&&a.get("startCol")&&a.get("endCol")))return void console.log("TabularButtonTrackster : Bed-file metadata incomplete.");this.col.chrom=a.get("chromCol")-1,this.col.start=a.get("startCol")-1,this.col.end=a.get("endCol")-1}if("vcf"==this.file_ext){var n=function(t,e){for(var i=0;i<e.length;i++)if(e[i].match(t))return i;return-1};if(this.col.chrom=n("Chrom",a.get("column_names")),this.col.start=n("Pos",a.get("column_names")),this.col.end=null,-1==this.col.chrom||-1==this.col.start)return void console.log("TabularButtonTrackster : VCF-file metadata incomplete.")}if(void 0!==this.col.chrom){if(!i.id)return void console.log("TabularButtonTrackster : Dataset identification is missing.");if(this.dataset_id=i.id,!i.get("url_viz"))return void console.log("TabularButtonTrackster : Url for visualization controller is missing.");this.url_viz=i.get("url_viz"),i.get("genome_build")&&(this.genome_build=i.get("genome_build"));var o=new d.default.IconButtonView({model:new d.default.IconButton({title:"Visualize",icon_class:"chart_curve",id:"btn_viz"})});this.setElement(t.$el),this.$el.append(o.render().$el),this.hide()}}}},events:{"mouseover tr":"show",mouseleave:"hide"},show:function(t){var e=this;if(null!==this.col.chrom){var i=n(t.target).parent(),a=i.children().eq(this.col.chrom).html(),o=i.children().eq(this.col.start).html(),r=this.col.end?i.children().eq(this.col.end).html():o;if(!a.match("^#")&&""!==a&&function(t){return!isNaN(parseFloat(t))&&isFinite(t)}(o)){var s={dataset_id:this.dataset_id,gene_region:a+":"+o+"-"+r},l=i.offset(),d=l.left-10,h=l.top-n(window).scrollTop()+3;n("#btn_viz").css({position:"fixed",top:h+"px",left:d+"px"}),n("#btn_viz").off("click"),n("#btn_viz").click(function(){e.frame.add({title:"Trackster",url:e.url_viz+"/trackster?"+n.param(s)})}),n("#btn_viz").show()}else n("#btn_viz").hide()}},hide:function(){this.$("#btn_viz").hide()}}),m=function(t){t.model||(t.model=new u(t.dataset_config));var e=t.parent_elt,i=t.embedded;delete t.embedded,delete t.parent_elt,delete t.dataset_config;var a=i?new g(t):new p(t);return a.render(),e&&(e.append(a.$el),a.expand_to_container()),a};e.default={Dataset:c,TabularDataset:u,DatasetCollection:f,TabularDatasetChunkedView:_,createTabularDatasetChunkedView:m}}).call(e,i(2),i(1),i(0))}},[149]);
//# sourceMappingURL=login.bundled.js.map