From 4d94fb58d4b13562a58c2353b0778d94f1ea4f3e Mon Sep 17 00:00:00 2001
From: Evgeny Anatskiy
Date: Tue, 28 Nov 2017 20:17:06 +0100
Subject: [PATCH 1/4] start work on workflow tool cloning
---
.../scripts/mvc/workflow/workflow-node.js | 38 ++++++++
.../scripts/mvc/workflow/workflow-view.js | 7 ++
client/yarn.lock | 86 ++++---------------
static/scripts/bundled/workflow.bundled.js | 2 +-
static/scripts/mvc/workflow/workflow-node.js | 2 +-
static/scripts/mvc/workflow/workflow-view.js | 2 +-
6 files changed, 65 insertions(+), 72 deletions(-)
diff --git a/client/galaxy/scripts/mvc/workflow/workflow-node.js b/client/galaxy/scripts/mvc/workflow/workflow-node.js
index a14919d35e3..05bba287924 100644
--- a/client/galaxy/scripts/mvc/workflow/workflow-node.js
+++ b/client/galaxy/scripts/mvc/workflow/workflow-node.js
@@ -1,3 +1,4 @@
+import Utils from "utils/utils";
import NodeView from "mvc/workflow/workflow-view-node";
var Node = Backbone.Model.extend({
initialize: function(app, attr) {
@@ -129,6 +130,43 @@ var Node = Backbone.Model.extend({
t.redraw();
});
},
+ clone: function() {
+ var self = this;
+ var copiedData = {
+ name: this.name,
+ label: this.label,
+ annotation: this.annotation,
+ post_job_actions: this.post_job_actions,
+ tool_state: this.tool_state
+ };
+ var node = this.workflow.create_node(
+ this.type, this.name, this.content_id
+ );
+
+ // console.log('node', this);
+
+ Utils.request({
+ type: "POST",
+ url: `${Galaxy.root}api/workflows/build_module`,
+ data: {
+ type: this.type,
+ tool_id: this.content_id,
+ _: "true"
+ },
+ success: function(data) {
+ var newData = Object.assign({}, data, copiedData);
+ newData.config_form.state_inputs = copiedData.tool_state;
+
+ // console.log('data', data);
+ // console.log('copiedData', copiedData);
+ // console.log('newData', newData);
+
+ node.init_field_data(newData);
+ node.update_field_data(newData);
+ self.workflow.activate_node(node);
+ }
+ });
+ },
destroy: function() {
$.each(this.input_terminals, (k, t) => {
t.destroy();
diff --git a/client/galaxy/scripts/mvc/workflow/workflow-view.js b/client/galaxy/scripts/mvc/workflow/workflow-view.js
index 938cccdbe95..2c79f499fef 100644
--- a/client/galaxy/scripts/mvc/workflow/workflow-view.js
+++ b/client/galaxy/scripts/mvc/workflow/workflow-view.js
@@ -763,6 +763,13 @@ export default Backbone.View.extend({
// Fix width to computed width
// Now add floats
var buttons = $("");
+ buttons.append(
+ $("")
+ .addClass("fa-icon-button fa fa-files-o")
+ .click(e => {
+ node.clone();
+ })
+ );
buttons.append(
$("")
.addClass("fa-icon-button fa fa-times")
diff --git a/client/yarn.lock b/client/yarn.lock
index 536d7e65b64..d71601cc9ee 100644
--- a/client/yarn.lock
+++ b/client/yarn.lock
@@ -2245,11 +2245,7 @@ ee-first@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
-electron-to-chromium@^1.2.7:
- version "1.3.27"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz#78ecb8a399066187bb374eede35d9c70565a803d"
-
-electron-to-chromium@^1.3.24:
+electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.24:
version "1.3.25"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.25.tgz#453b21009836d0997d86035601ff6cae4791c460"
@@ -2478,9 +2474,9 @@ espower-location-detector@^1.0.0:
source-map "^0.5.0"
xtend "^4.0.0"
-esprima@^1.0.3:
- version "1.2.5"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.5.tgz#0993502feaf668138325756f30f9a51feeec11e9"
+esprima@^1.0.3, "esprima@~ 1.0.2", esprima@~1.0.2:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad"
esprima@^2.6.0:
version "2.7.3"
@@ -2490,10 +2486,6 @@ esprima@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804"
-"esprima@~ 1.0.2", esprima@~1.0.2:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad"
-
esprima@~1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.1.1.tgz#5b6f1547f4d102e670e140c509be6771d6aeb549"
@@ -4787,7 +4779,7 @@ minimatch@~0.2.11, minimatch@~0.2.12:
lru-cache "2"
sigmund "~1.0.0"
-minimist@0.0.8:
+minimist@0.0.8, minimist@~0.0.1:
version "0.0.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
@@ -4795,10 +4787,6 @@ minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-minimist@~0.0.1:
- version "0.0.10"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
-
mkdirp@0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.0.tgz#1d73076a6df986cd9344e15e71fcc05a4c9abf12"
@@ -5214,7 +5202,7 @@ os-locale@^2.0.0:
lcid "^1.0.0"
mem "^1.1.0"
-os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2:
+os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
@@ -5898,11 +5886,7 @@ preserve@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
-prettier@^1.7.0:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.8.1.tgz#91064d778c08c85ac1cbe6b23195c34310d039f9"
-
-prettier@^1.7.4:
+prettier@^1.7.0, prettier@^1.7.4:
version "1.8.2"
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.8.2.tgz#bff83e7fd573933c607875e5ba3abbdffb96aeb8"
@@ -6067,16 +6051,7 @@ raw-body@2.3.2:
iconv-lite "0.4.19"
unpipe "1.0.0"
-rc@^1.0.1, rc@^1.1.6:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077"
- dependencies:
- deep-extend "~0.4.0"
- ini "~1.3.0"
- minimist "^1.2.0"
- strip-json-comments "~2.0.1"
-
-rc@^1.1.7:
+rc@^1.0.1, rc@^1.1.6, rc@^1.1.7:
version "1.2.1"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95"
dependencies:
@@ -6137,7 +6112,7 @@ read-pkg@^2.0.0:
normalize-package-data "^2.3.2"
path-type "^2.0.0"
-readable-stream@1.1:
+readable-stream@1.1, readable-stream@~1.1.9:
version "1.1.13"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e"
dependencies:
@@ -6167,15 +6142,6 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable
string_decoder "~1.0.3"
util-deprecate "~1.0.1"
-readable-stream@~1.1.9:
- version "1.1.14"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9"
- dependencies:
- core-util-is "~1.0.0"
- inherits "~2.0.1"
- isarray "0.0.1"
- string_decoder "~0.10.x"
-
readdirp@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
@@ -6410,13 +6376,7 @@ resolve@1.3.2:
dependencies:
path-parse "^1.0.5"
-resolve@^1.1.6, resolve@^1.1.7:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.4.0.tgz#a75be01c53da25d934a98ebd0e4c4a7312f92a86"
- dependencies:
- path-parse "^1.0.5"
-
-resolve@^1.4.0:
+resolve@^1.1.6, resolve@^1.1.7, resolve@^1.4.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36"
dependencies:
@@ -6714,7 +6674,11 @@ source-map@0.1.34:
dependencies:
amdefine ">=0.0.4"
-source-map@0.X, "source-map@>= 0.1.2", source-map@^0.6.1:
+source-map@0.X, source-map@^0.5.0, source-map@^0.5.1, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3:
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
+
+"source-map@>= 0.1.2", source-map@^0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
@@ -6724,10 +6688,6 @@ source-map@^0.1.38, source-map@^0.1.40, source-map@~0.1.33, source-map@~0.1.7:
dependencies:
amdefine ">=0.0.4"
-source-map@^0.5.0, source-map@^0.5.1, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.3:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-
source-map@~0.4.1:
version "0.4.4"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
@@ -6980,18 +6940,12 @@ supports-color@^3.1.0, supports-color@^3.2.3:
dependencies:
has-flag "^1.0.0"
-supports-color@^4.0.0, supports-color@^4.4.0:
+supports-color@^4.0.0, supports-color@^4.2.1, supports-color@^4.4.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b"
dependencies:
has-flag "^2.0.0"
-supports-color@^4.2.1:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e"
- dependencies:
- has-flag "^2.0.0"
-
svgo@^0.7.0:
version "0.7.2"
resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5"
@@ -7140,18 +7094,12 @@ tiny-lr-fork@0.0.5:
noptify "~0.0.3"
qs "~0.5.2"
-tmp@0.0.31:
+tmp@0.0.31, tmp@0.0.x:
version "0.0.31"
resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7"
dependencies:
os-tmpdir "~1.0.1"
-tmp@0.0.x:
- version "0.0.33"
- resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
- dependencies:
- os-tmpdir "~1.0.2"
-
to-array@0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890"
diff --git a/static/scripts/bundled/workflow.bundled.js b/static/scripts/bundled/workflow.bundled.js
index fe081fdc715..ef0f940d266 100644
--- a/static/scripts/bundled/workflow.bundled.js
+++ b/static/scripts/bundled/workflow.bundled.js
@@ -4,4 +4,4 @@ webpackJsonp([5],[,,,,function(t,e,i){"use strict";(function(t,n,o){function a(t
* @author Feross Aboukhadijeh
* @license MIT
*/
-t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.
",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){Object.defineProperty(e,"__esModule",{value:!0});var a=i(283),r=function(t){return t&&t.__esModule?t:{default:t}}(a),s=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new r.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=s}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
+t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions,tool_state:this.tool_state},i=this.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,_:"true"},success:function(n){var o=Object.assign({},n,e);o.config_form.state_inputs=e.tool_state,i.init_field_data(o),i.update_field_data(o),t.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
diff --git a/static/scripts/mvc/workflow/workflow-node.js b/static/scripts/mvc/workflow/workflow-node.js
index edae4c3efcc..8fa510649ff 100644
--- a/static/scripts/mvc/workflow/workflow-node.js
+++ b/static/scripts/mvc/workflow/workflow-node.js
@@ -1 +1 @@
-define("mvc/workflow/workflow-node",["exports","mvc/workflow/workflow-view-node"],function(t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=function(t){return t&&t.__esModule?t:{default:t}}(e),n=Backbone.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return _.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var o={output_name:t};return e&&(o.label=e),this.workflow_outputs.push(o),!0}return!1},labelWorkflowOutput:function(t,e){var o=!1,n=null;if(this.isWorkflowOutput(t)){var i=this.getWorkflowOutput(t);n=i.label,i.label=e,o=n!=e}else o=this.addWorkflowOutput(t,e);return o&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),o},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.connectors.length>0&&e.push(o)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var o=t[e];if(o.connectors.length>0&&o.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&o.connectors.length>0&&e.push(o)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&e.push(o)}),e},hasMappedOverInputTerminals:function(){var t=!1;return _.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){$.each(this.input_terminals,function(t,e){e.redraw()}),$.each(this.output_terminals,function(t,e){e.redraw()})},destroy:function(){$.each(this.input_terminals,function(t,e){e.destroy()}),$.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),$(this.element).remove()},make_active:function(){$(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),$(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,n=new o.default({el:this.element[0],node:e});e.nodeView=n,$.each(t.data_inputs,function(t,e){n.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&n.addRule(),$.each(t.data_outputs,function(t,e){n.addDataOutput(e)}),n.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,o=e.nodeView,n=[];if($.each(o.outputViews,function(e,o){var i=o.output.name,r=t.data_outputs,u=!1;_.each(r,function(t){t.name==i&&(u=!0)}),!1===u&&n.push(i)}),_.each(n,function(t){_.each(o.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),o.outputViews[t].remove(),delete o.outputViews[t],delete e.output_terminals[t]}),$.each(e.workflow_outputs,function(t,o){o&&!e.output_terminals[o.output_name]&&e.workflow_outputs.splice(t,1)}),$.each(t.data_outputs,function(t,n){o.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):o.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var i=t.post_job_actions;this.post_job_actions=i||{}}e.nodeView.renderToolErrors();var r=o.$("div.inputs"),u=o.newInputsDiv(),a={};_.each(t.data_inputs,function(t){var o=e.nodeView.addDataInput(t,u);a[t.name]=o}),_.each(_.difference(_.values(o.terminalViews),_.values(a)),function(t){t.el.terminal.destroy()}),o.terminalViews=a,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&o.updateDataOutput(t.data_outputs[0]),r.replaceWith(u),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=$(this.element).find(".toolFormBody");e.find("div").remove();var o=""+t+"
";this.config_form=o,e.html(o),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});t.default=n});
\ No newline at end of file
+define("mvc/workflow/workflow-node",["exports","utils/utils","mvc/workflow/workflow-view-node"],function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(e),a=n(o),s=Backbone.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return _.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var o={output_name:t};return e&&(o.label=e),this.workflow_outputs.push(o),!0}return!1},labelWorkflowOutput:function(t,e){var o=!1,n=null;if(this.isWorkflowOutput(t)){var i=this.getWorkflowOutput(t);n=i.label,i.label=e,o=n!=e}else o=this.addWorkflowOutput(t,e);return o&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),o},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.connectors.length>0&&e.push(o)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var o=t[e];if(o.connectors.length>0&&o.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&o.connectors.length>0&&e.push(o)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&e.push(o)}),e},hasMappedOverInputTerminals:function(){var t=!1;return _.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){$.each(this.input_terminals,function(t,e){e.redraw()}),$.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions,tool_state:this.tool_state},o=this.workflow.create_node(this.type,this.name,this.content_id);i.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,_:"true"},success:function(n){var i=Object.assign({},n,e);i.config_form.state_inputs=e.tool_state,o.init_field_data(i),o.update_field_data(i),t.workflow.activate_node(o)}})},destroy:function(){$.each(this.input_terminals,function(t,e){e.destroy()}),$.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),$(this.element).remove()},make_active:function(){$(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),$(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,o=new a.default({el:this.element[0],node:e});e.nodeView=o,$.each(t.data_inputs,function(t,e){o.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&o.addRule(),$.each(t.data_outputs,function(t,e){o.addDataOutput(e)}),o.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,o=e.nodeView,n=[];if($.each(o.outputViews,function(e,o){var i=o.output.name,a=t.data_outputs,s=!1;_.each(a,function(t){t.name==i&&(s=!0)}),!1===s&&n.push(i)}),_.each(n,function(t){_.each(o.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),o.outputViews[t].remove(),delete o.outputViews[t],delete e.output_terminals[t]}),$.each(e.workflow_outputs,function(t,o){o&&!e.output_terminals[o.output_name]&&e.workflow_outputs.splice(t,1)}),$.each(t.data_outputs,function(t,n){o.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):o.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var i=t.post_job_actions;this.post_job_actions=i||{}}e.nodeView.renderToolErrors();var a=o.$("div.inputs"),s=o.newInputsDiv(),u={};_.each(t.data_inputs,function(t){var o=e.nodeView.addDataInput(t,s);u[t.name]=o}),_.each(_.difference(_.values(o.terminalViews),_.values(u)),function(t){t.el.terminal.destroy()}),o.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&o.updateDataOutput(t.data_outputs[0]),a.replaceWith(s),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=$(this.element).find(".toolFormBody");e.find("div").remove();var o=""+t+"
";this.config_form=o,e.html(o),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});t.default=s});
\ No newline at end of file
diff --git a/static/scripts/mvc/workflow/workflow-view.js b/static/scripts/mvc/workflow/workflow-view.js
index 61b124b78d7..ddcf51b40b1 100644
--- a/static/scripts/mvc/workflow/workflow-view.js
+++ b/static/scripts/mvc/workflow/workflow-view.js
@@ -1 +1 @@
-define("mvc/workflow/workflow-view",["exports","utils/utils","mvc/workflow/workflow-manager","mvc/workflow/workflow-canvas","mvc/workflow/workflow-node","mvc/workflow/workflow-icons","mvc/workflow/workflow-forms","mvc/ui/ui-misc","utils/async-save-text","libs/toastr","ui/editable-text"],function(o,e,t,i,a,n,s,l,r,d){"use strict";function w(o){return o&&o.__esModule?o:{default:o}}function f(o){var e=$("#galaxy_tools").contents();0===e.length&&(e=$(document),$(this).removeClass("search_active"),e.find(".toolTitle").removeClass("search_match"),e.find(".toolSectionBody").hide(),e.find(".toolTitle").show(),e.find(".toolPanelLabel").show(),e.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==$(this).attr("id")?$(this).show():$(this).hasClass("user_pref_visible")&&$(this).show()}),e.find("#search-no-results").hide(),e.find("#search-spinner").hide(),o&&e.find("#tool-search-query").val("search tools"))}function c(o,e){var t=m.default[e];if(t){var i=$(' ').addClass(t);o.before(i)}}Object.defineProperty(o,"__esModule",{value:!0});var u=w(e),h=w(t),p=w(i),v=w(a),m=w(n),k=w(s),g=w(l),y=w(r);!function(o){if(o&&o.__esModule)return o;var e={};if(null!=o)for(var t in o)Object.prototype.hasOwnProperty.call(o,t)&&(e[t]=o[t]);e.default=o}(d);window.workflow_globals=window.workflow_globals||{},o.default=Backbone.View.extend({initialize:function(o){function e(){$.jStorage.set("overview-off",!1),$("#overview-border").css("right","0px"),$("#close-viewport").css("background-position","0px 0px")}function t(){$.jStorage.set("overview-off",!0),$("#overview-border").css("right","20000px"),$("#close-viewport").css("background-position","12px 0px")}var i=window.workflow_globals.app=this;this.options=o,this.urls=o&&o.urls||{};var a=function(o,e){if(show_message("Saving workflow","progress"),i.workflow.check_changes_in_active_form(),!i.workflow.has_changes)return hide_modal(),void(e&&e());i.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+i.options.id,type:"PUT",data:{workflow:i.workflow.to_simple()},success:function(o){var t=$("").text(o.message);if(o.errors){t.addClass("warningmark");var a=$("");$.each(o.errors,function(o,e){$("").text(e).appendTo(a)}),t.append(a)}else t.addClass("donemark");i.workflow.name=o.name,i.workflow.has_changes=!1,i.workflow.stored=!0,i.showWorkflowParameters(),o.errors?window.show_modal("Saving workflow",t,{Ok:hide_modal}):(e&&e(),hide_modal())},error:function(o){window.show_modal("Saving workflow failed.",o.err_msg,{Ok:hide_modal})}})};$("#tool-search-query").click(function(){$(this).focus(),$(this).select()}).keyup(function(){if($(this).css("font-style","normal"),this.value.length<3)f(!1);else if(this.value!=this.lastValue){$(this).addClass("search_active");var o=this.value;this.timer&&clearTimeout(this.timer),$("#search-spinner").show(),this.timer=setTimeout(function(){$.get(i.urls.tool_search,{q:o},function(o){if($("#search-no-results").hide(),$(".toolSectionWrapper").hide(),$(".toolSectionWrapper").find(".toolTitle").hide(),0!=o.length){var e=$.map(o,function(o,e){return"link-"+o});$(e).each(function(o,e){$("[id='"+e+"']").parent().addClass("search_match"),$("[id='"+e+"']").parent().show().parent().parent().show().parent().show()}),$(".toolPanelLabel").each(function(){for(var o=$(this),e=o.next(),t=!0;0!==e.length&&e.hasClass("toolTitle");){if(e.is(":visible")){t=!1;break}e=e.next()}t&&o.hide()})}else $("#search-no-results").show();$("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new p.default(this,$("#canvas-viewport"),$("#overview")),this.reset(),this.datatypes=JSON.parse($.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse($.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(i.options.id,{success:function(o){i.reset(),i.workflow.from_simple(o,!0),i.workflow.has_changes=!1,i.workflow.fit_canvas_to_nodes(),i.scroll_to_nodes(),i.canvas_manager.draw_overview();var e="";_.each(o.steps,function(t,a){var n="";t.errors&&(n+=""+t.errors+""),_.each(o.upgrade_messages[a],function(o){n+=""+o+""}),n&&(e+="Step "+(parseInt(a,10)+1)+": "+i.workflow.nodes[a].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),i.showWorkflowParameters()},beforeSubmit:function(o){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu($("#workflow-options-button"),{Save:a,"Save As":function(){var o=$('');window.show_modal("Save As a New Workflow",o,{OK:function(){var o=$("#workflow_rename").val().length>0?$("#workflow_rename").val():"SavedAs_"+i.workflow.name,e=$("#wf_annotation").val().length>0?$("#wf_annotation").val():"";$.ajax({url:i.urls.workflow_save_as,type:"POST",data:{workflow_name:o,workflow_annotation:e,workflow_data:function(){return JSON.stringify(i.workflow.to_simple())}}}).done(function(o){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+o,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})},Run:function(){window.location=Galaxy.root+"workflows/run?id="+i.options.id},"Edit Attributes":function(){i.workflow.clear_active_node()},"Auto Re-layout":function(){i.workflow.layout(),i.workflow.fit_canvas_to_nodes(),i.scroll_to_nodes(),i.canvas_manager.draw_overview()},Close:function(){if(i.workflow.check_changes_in_active_form(),workflow&&i.workflow.has_changes){var o=function(){window.onbeforeunload=void 0,window.document.location=i.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){a(null,o)}},{"Don't Save":o})}else window.document.location=i.urls.workflow_index}});var n=$.jStorage.get("overview-size");void 0!==n&&$("#overview-border").css({width:n,height:n}),$.jStorage.get("overview-off")?t():e(),$("#overview-border").bind("dragend",function(o,e){var t=$(this).offsetParent(),i=t.offset(),a=Math.max(t.width()-(e.offsetX-i.left),t.height()-(e.offsetY-i.top));$.jStorage.set("overview-size",a+"px")}),$("#close-viewport").click(function(){"0px"===$("#overview-border").css("right")?t():e()}),window.onbeforeunload=function(){if(workflow&&i.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&$("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),$("div.toolSectionBody").hide(),$("div.toolSectionTitle > span").wrap("");var s=null;$("div.toolSectionTitle").each(function(){var o=$(this).next("div.toolSectionBody");$(this).click(function(){o.is(":hidden")?(s&&s.slideUp("fast"),s=o,o.slideDown("fast")):(o.slideUp("fast"),s=null)})}),(0,y.default)("workflow-name","workflow-name",i.urls.rename_async,"new_name"),$("#workflow-tag").click(function(){return $(".tag-area").click(),!1}),(0,y.default)("workflow-annotation","workflow-annotation",i.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var o=this,e=$('');return _.each(this.options.workflows,function(t){if(t.id!==o.options.id){var i=new g.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){t.step_count<2?o.copy_into_workflow(t.id,t.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+t.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),o.copy_into_workflow(t.id,t.name)}}})}}),a=$("").attr("href","#").html(t.name).on("click",function(){o.add_node_for_subworkflow(t.latest_id,t.name)});e.find(".toolSectionBg").append($("").addClass("toolTitle").append(a).append(i.$el))}}),e},copy_into_workflow:function(o){var e=this;this._workflowLoadAjax(o,{success:function(o){e.workflow.from_simple(o,!1);var t="";$.each(o.upgrade_messages,function(o,i){t+="Step "+(parseInt(o,10)+1)+": "+e.workflow.nodes[o].name+"",$.each(i,function(o,e){t+="- "+e+"
"}),t+="
"}),t?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(o){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new h.default(this,$("#canvas-container"))},scroll_to_nodes:function(){var o,e,t=$("#canvas-viewport"),i=$("#canvas-container");e=i.width()"+t+"";return e+=""},showWorkflowParameters:function(){var o=/\$\{.+?\}/g,e=[],t=$("#workflow-parameters-container"),i=$("#workflow-parameters-box"),a="",n=[];$.each(this.workflow.nodes,function(t,i){i.config_form&&i.config_form.inputs&&u.default.deepeach(i.config_form.inputs,function(e){if("string"==typeof e.value){var t=e.value.match(o);t&&(n=n.concat(t))}}),i.post_job_actions&&$.each(i.post_job_actions,function(e,t){t.action_arguments&&$.each(t.action_arguments,function(e,t){var i=t.match(o);i&&(n=n.concat(i))})}),n&&$.each(n,function(o,t){-1===$.inArray(t,e)&&e.push(t)})}),e&&0!==e.length?($.each(e,function(o,e){a+=""+e.substring(2,e.length-1)+"
"}),t.html(a),i.show()):(t.html(a),i.hide())},showAttributes:function(){$(".right-content").hide(),$("#edit-attributes").show()},showForm:function(o,e){var t="right-content",i=t+"-"+e.id,a=$("#"+t);if(o&&0==a.find("#"+i).length){var n=$('');if(o.node=e,o.workflow=this.workflow,o.datatypes=this.datatypes,o.icon=m.default[e.type],o.cls="ui-portlet-narrow",e){var s="tool"==e.type?"Tool":"Default";n.append(new k.default[s](o).form.$el),a.append(n)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}$("."+t).hide(),a.find("#"+i).show(),a.show(),a.scrollTop()},isSubType:function(o,e){return o=this.ext_to_type[o],e=this.ext_to_type[e],this.type_to_type[o]&&e in this.type_to_type[o]},prebuildNode:function(o,e,t){var i=this,a=$(""),n=$(""+e+"
");c(n.find(".nodeTitle"),o),a.append(n),a.css("left",$(window).scrollLeft()+20),a.css("top",$(window).scrollTop()+20),a.append($(""));var s=new v.default(this,{element:a});s.type=o,s.content_id=t;var l="
loading tool info...
";a.find(".toolFormBody").append(l);var r=$("");r.append($("").addClass("fa-icon-button fa fa-times").click(function(o){s.destroy()})),a.appendTo("#canvas-container");var d=$("#canvas-container").position(),w=$("#canvas-container").parent(),f=a.width(),u=a.height();return a.css({left:-d.left+w.width()/2-f/2,top:-d.top+w.height()/2-u/2}),r.prependTo(a.find(".toolFormTitle")),f+=r.width()+10,a.css("width",f),a.bind("dragstart",function(){i.workflow.activate_node(s)}).bind("dragend",function(){i.workflow.node_changed(this),i.workflow.fit_canvas_to_nodes(),i.canvas_manager.draw_overview()}).bind("dragclickonly",function(){i.workflow.activate_node(s)}).bind("drag",function(o,e){var t=$(this).offsetParent().offset(),i=e.offsetX-t.left,a=e.offsetY-t.top;$(this).css({left:i,top:a}),$(this).find(".terminal").each(function(){this.terminal.redraw()})}),s}})});
\ No newline at end of file
+define("mvc/workflow/workflow-view",["exports","utils/utils","mvc/workflow/workflow-manager","mvc/workflow/workflow-canvas","mvc/workflow/workflow-node","mvc/workflow/workflow-icons","mvc/workflow/workflow-forms","mvc/ui/ui-misc","utils/async-save-text","libs/toastr","ui/editable-text"],function(o,e,t,i,a,n,s,l,r,d){"use strict";function w(o){return o&&o.__esModule?o:{default:o}}function f(o){var e=$("#galaxy_tools").contents();0===e.length&&(e=$(document),$(this).removeClass("search_active"),e.find(".toolTitle").removeClass("search_match"),e.find(".toolSectionBody").hide(),e.find(".toolTitle").show(),e.find(".toolPanelLabel").show(),e.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==$(this).attr("id")?$(this).show():$(this).hasClass("user_pref_visible")&&$(this).show()}),e.find("#search-no-results").hide(),e.find("#search-spinner").hide(),o&&e.find("#tool-search-query").val("search tools"))}function c(o,e){var t=m.default[e];if(t){var i=$(' ').addClass(t);o.before(i)}}Object.defineProperty(o,"__esModule",{value:!0});var u=w(e),h=w(t),p=w(i),v=w(a),m=w(n),k=w(s),g=w(l),y=w(r);!function(o){if(o&&o.__esModule)return o;var e={};if(null!=o)for(var t in o)Object.prototype.hasOwnProperty.call(o,t)&&(e[t]=o[t]);e.default=o}(d);window.workflow_globals=window.workflow_globals||{},o.default=Backbone.View.extend({initialize:function(o){function e(){$.jStorage.set("overview-off",!1),$("#overview-border").css("right","0px"),$("#close-viewport").css("background-position","0px 0px")}function t(){$.jStorage.set("overview-off",!0),$("#overview-border").css("right","20000px"),$("#close-viewport").css("background-position","12px 0px")}var i=window.workflow_globals.app=this;this.options=o,this.urls=o&&o.urls||{};var a=function(o,e){if(show_message("Saving workflow","progress"),i.workflow.check_changes_in_active_form(),!i.workflow.has_changes)return hide_modal(),void(e&&e());i.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+i.options.id,type:"PUT",data:{workflow:i.workflow.to_simple()},success:function(o){var t=$("").text(o.message);if(o.errors){t.addClass("warningmark");var a=$("");$.each(o.errors,function(o,e){$("").text(e).appendTo(a)}),t.append(a)}else t.addClass("donemark");i.workflow.name=o.name,i.workflow.has_changes=!1,i.workflow.stored=!0,i.showWorkflowParameters(),o.errors?window.show_modal("Saving workflow",t,{Ok:hide_modal}):(e&&e(),hide_modal())},error:function(o){window.show_modal("Saving workflow failed.",o.err_msg,{Ok:hide_modal})}})};$("#tool-search-query").click(function(){$(this).focus(),$(this).select()}).keyup(function(){if($(this).css("font-style","normal"),this.value.length<3)f(!1);else if(this.value!=this.lastValue){$(this).addClass("search_active");var o=this.value;this.timer&&clearTimeout(this.timer),$("#search-spinner").show(),this.timer=setTimeout(function(){$.get(i.urls.tool_search,{q:o},function(o){if($("#search-no-results").hide(),$(".toolSectionWrapper").hide(),$(".toolSectionWrapper").find(".toolTitle").hide(),0!=o.length){var e=$.map(o,function(o,e){return"link-"+o});$(e).each(function(o,e){$("[id='"+e+"']").parent().addClass("search_match"),$("[id='"+e+"']").parent().show().parent().parent().show().parent().show()}),$(".toolPanelLabel").each(function(){for(var o=$(this),e=o.next(),t=!0;0!==e.length&&e.hasClass("toolTitle");){if(e.is(":visible")){t=!1;break}e=e.next()}t&&o.hide()})}else $("#search-no-results").show();$("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new p.default(this,$("#canvas-viewport"),$("#overview")),this.reset(),this.datatypes=JSON.parse($.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse($.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(i.options.id,{success:function(o){i.reset(),i.workflow.from_simple(o,!0),i.workflow.has_changes=!1,i.workflow.fit_canvas_to_nodes(),i.scroll_to_nodes(),i.canvas_manager.draw_overview();var e="";_.each(o.steps,function(t,a){var n="";t.errors&&(n+=""+t.errors+""),_.each(o.upgrade_messages[a],function(o){n+=""+o+""}),n&&(e+="Step "+(parseInt(a,10)+1)+": "+i.workflow.nodes[a].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),i.showWorkflowParameters()},beforeSubmit:function(o){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu($("#workflow-options-button"),{Save:a,"Save As":function(){var o=$('');window.show_modal("Save As a New Workflow",o,{OK:function(){var o=$("#workflow_rename").val().length>0?$("#workflow_rename").val():"SavedAs_"+i.workflow.name,e=$("#wf_annotation").val().length>0?$("#wf_annotation").val():"";$.ajax({url:i.urls.workflow_save_as,type:"POST",data:{workflow_name:o,workflow_annotation:e,workflow_data:function(){return JSON.stringify(i.workflow.to_simple())}}}).done(function(o){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+o,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})},Run:function(){window.location=Galaxy.root+"workflows/run?id="+i.options.id},"Edit Attributes":function(){i.workflow.clear_active_node()},"Auto Re-layout":function(){i.workflow.layout(),i.workflow.fit_canvas_to_nodes(),i.scroll_to_nodes(),i.canvas_manager.draw_overview()},Close:function(){if(i.workflow.check_changes_in_active_form(),workflow&&i.workflow.has_changes){var o=function(){window.onbeforeunload=void 0,window.document.location=i.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){a(null,o)}},{"Don't Save":o})}else window.document.location=i.urls.workflow_index}});var n=$.jStorage.get("overview-size");void 0!==n&&$("#overview-border").css({width:n,height:n}),$.jStorage.get("overview-off")?t():e(),$("#overview-border").bind("dragend",function(o,e){var t=$(this).offsetParent(),i=t.offset(),a=Math.max(t.width()-(e.offsetX-i.left),t.height()-(e.offsetY-i.top));$.jStorage.set("overview-size",a+"px")}),$("#close-viewport").click(function(){"0px"===$("#overview-border").css("right")?t():e()}),window.onbeforeunload=function(){if(workflow&&i.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&$("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),$("div.toolSectionBody").hide(),$("div.toolSectionTitle > span").wrap("");var s=null;$("div.toolSectionTitle").each(function(){var o=$(this).next("div.toolSectionBody");$(this).click(function(){o.is(":hidden")?(s&&s.slideUp("fast"),s=o,o.slideDown("fast")):(o.slideUp("fast"),s=null)})}),(0,y.default)("workflow-name","workflow-name",i.urls.rename_async,"new_name"),$("#workflow-tag").click(function(){return $(".tag-area").click(),!1}),(0,y.default)("workflow-annotation","workflow-annotation",i.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var o=this,e=$('');return _.each(this.options.workflows,function(t){if(t.id!==o.options.id){var i=new g.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){t.step_count<2?o.copy_into_workflow(t.id,t.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+t.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),o.copy_into_workflow(t.id,t.name)}}})}}),a=$("").attr("href","#").html(t.name).on("click",function(){o.add_node_for_subworkflow(t.latest_id,t.name)});e.find(".toolSectionBg").append($("").addClass("toolTitle").append(a).append(i.$el))}}),e},copy_into_workflow:function(o){var e=this;this._workflowLoadAjax(o,{success:function(o){e.workflow.from_simple(o,!1);var t="";$.each(o.upgrade_messages,function(o,i){t+="Step "+(parseInt(o,10)+1)+": "+e.workflow.nodes[o].name+"",$.each(i,function(o,e){t+="- "+e+"
"}),t+="
"}),t?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(o){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new h.default(this,$("#canvas-container"))},scroll_to_nodes:function(){var o,e,t=$("#canvas-viewport"),i=$("#canvas-container");e=i.width()"+t+"";return e+=""},showWorkflowParameters:function(){var o=/\$\{.+?\}/g,e=[],t=$("#workflow-parameters-container"),i=$("#workflow-parameters-box"),a="",n=[];$.each(this.workflow.nodes,function(t,i){i.config_form&&i.config_form.inputs&&u.default.deepeach(i.config_form.inputs,function(e){if("string"==typeof e.value){var t=e.value.match(o);t&&(n=n.concat(t))}}),i.post_job_actions&&$.each(i.post_job_actions,function(e,t){t.action_arguments&&$.each(t.action_arguments,function(e,t){var i=t.match(o);i&&(n=n.concat(i))})}),n&&$.each(n,function(o,t){-1===$.inArray(t,e)&&e.push(t)})}),e&&0!==e.length?($.each(e,function(o,e){a+=""+e.substring(2,e.length-1)+"
"}),t.html(a),i.show()):(t.html(a),i.hide())},showAttributes:function(){$(".right-content").hide(),$("#edit-attributes").show()},showForm:function(o,e){var t="right-content",i=t+"-"+e.id,a=$("#"+t);if(o&&0==a.find("#"+i).length){var n=$('');if(o.node=e,o.workflow=this.workflow,o.datatypes=this.datatypes,o.icon=m.default[e.type],o.cls="ui-portlet-narrow",e){var s="tool"==e.type?"Tool":"Default";n.append(new k.default[s](o).form.$el),a.append(n)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}$("."+t).hide(),a.find("#"+i).show(),a.show(),a.scrollTop()},isSubType:function(o,e){return o=this.ext_to_type[o],e=this.ext_to_type[e],this.type_to_type[o]&&e in this.type_to_type[o]},prebuildNode:function(o,e,t){var i=this,a=$(""),n=$(""+e+"
");c(n.find(".nodeTitle"),o),a.append(n),a.css("left",$(window).scrollLeft()+20),a.css("top",$(window).scrollTop()+20),a.append($(""));var s=new v.default(this,{element:a});s.type=o,s.content_id=t;var l="
loading tool info...
";a.find(".toolFormBody").append(l);var r=$("");r.append($("").addClass("fa-icon-button fa fa-files-o").click(function(o){s.clone()})),r.append($("").addClass("fa-icon-button fa fa-times").click(function(o){s.destroy()})),a.appendTo("#canvas-container");var d=$("#canvas-container").position(),w=$("#canvas-container").parent(),f=a.width(),u=a.height();return a.css({left:-d.left+w.width()/2-f/2,top:-d.top+w.height()/2-u/2}),r.prependTo(a.find(".toolFormTitle")),f+=r.width()+10,a.css("width",f),a.bind("dragstart",function(){i.workflow.activate_node(s)}).bind("dragend",function(){i.workflow.node_changed(this),i.workflow.fit_canvas_to_nodes(),i.canvas_manager.draw_overview()}).bind("dragclickonly",function(){i.workflow.activate_node(s)}).bind("drag",function(o,e){var t=$(this).offsetParent().offset(),i=e.offsetX-t.left,a=e.offsetY-t.top;$(this).css({left:i,top:a}),$(this).find(".terminal").each(function(){this.terminal.redraw()})}),s}})});
\ No newline at end of file
From 021a5eb2e3b02c07b01887a66f1f1e4522a8a645 Mon Sep 17 00:00:00 2001
From: Evgeny Anatskiy
Date: Wed, 29 Nov 2017 00:46:41 +0100
Subject: [PATCH 2/4] preserve params on copy
---
client/galaxy/scripts/mvc/workflow/workflow-node.js | 8 ++++----
static/scripts/bundled/workflow.bundled.js | 2 +-
static/scripts/mvc/workflow/workflow-node.js | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/client/galaxy/scripts/mvc/workflow/workflow-node.js b/client/galaxy/scripts/mvc/workflow/workflow-node.js
index 05bba287924..1dfc0874479 100644
--- a/client/galaxy/scripts/mvc/workflow/workflow-node.js
+++ b/client/galaxy/scripts/mvc/workflow/workflow-node.js
@@ -136,8 +136,8 @@ var Node = Backbone.Model.extend({
name: this.name,
label: this.label,
annotation: this.annotation,
- post_job_actions: this.post_job_actions,
- tool_state: this.tool_state
+ // tool_state: this.tool_state,
+ post_job_actions: this.post_job_actions
};
var node = this.workflow.create_node(
this.type, this.name, this.content_id
@@ -151,11 +151,11 @@ var Node = Backbone.Model.extend({
data: {
type: this.type,
tool_id: this.content_id,
- _: "true"
+ inputs: this.tool_state
},
success: function(data) {
var newData = Object.assign({}, data, copiedData);
- newData.config_form.state_inputs = copiedData.tool_state;
+ // newData.config_form.state_inputs = copiedData.tool_state;
// console.log('data', data);
// console.log('copiedData', copiedData);
diff --git a/static/scripts/bundled/workflow.bundled.js b/static/scripts/bundled/workflow.bundled.js
index ef0f940d266..428e4792d58 100644
--- a/static/scripts/bundled/workflow.bundled.js
+++ b/static/scripts/bundled/workflow.bundled.js
@@ -4,4 +4,4 @@ webpackJsonp([5],[,,,,function(t,e,i){"use strict";(function(t,n,o){function a(t
* @author Feross Aboukhadijeh
* @license MIT
*/
-t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions,tool_state:this.tool_state},i=this.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,_:"true"},success:function(n){var o=Object.assign({},n,e);o.config_form.state_inputs=e.tool_state,i.init_field_data(o),i.update_field_data(o),t.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
+t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},i=this.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var o=Object.assign({},n,e);i.init_field_data(o),i.update_field_data(o),t.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
diff --git a/static/scripts/mvc/workflow/workflow-node.js b/static/scripts/mvc/workflow/workflow-node.js
index 8fa510649ff..dd4312ccb99 100644
--- a/static/scripts/mvc/workflow/workflow-node.js
+++ b/static/scripts/mvc/workflow/workflow-node.js
@@ -1 +1 @@
-define("mvc/workflow/workflow-node",["exports","utils/utils","mvc/workflow/workflow-view-node"],function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(e),a=n(o),s=Backbone.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return _.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var o={output_name:t};return e&&(o.label=e),this.workflow_outputs.push(o),!0}return!1},labelWorkflowOutput:function(t,e){var o=!1,n=null;if(this.isWorkflowOutput(t)){var i=this.getWorkflowOutput(t);n=i.label,i.label=e,o=n!=e}else o=this.addWorkflowOutput(t,e);return o&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),o},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.connectors.length>0&&e.push(o)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var o=t[e];if(o.connectors.length>0&&o.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&o.connectors.length>0&&e.push(o)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&e.push(o)}),e},hasMappedOverInputTerminals:function(){var t=!1;return _.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){$.each(this.input_terminals,function(t,e){e.redraw()}),$.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions,tool_state:this.tool_state},o=this.workflow.create_node(this.type,this.name,this.content_id);i.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,_:"true"},success:function(n){var i=Object.assign({},n,e);i.config_form.state_inputs=e.tool_state,o.init_field_data(i),o.update_field_data(i),t.workflow.activate_node(o)}})},destroy:function(){$.each(this.input_terminals,function(t,e){e.destroy()}),$.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),$(this.element).remove()},make_active:function(){$(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),$(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,o=new a.default({el:this.element[0],node:e});e.nodeView=o,$.each(t.data_inputs,function(t,e){o.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&o.addRule(),$.each(t.data_outputs,function(t,e){o.addDataOutput(e)}),o.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,o=e.nodeView,n=[];if($.each(o.outputViews,function(e,o){var i=o.output.name,a=t.data_outputs,s=!1;_.each(a,function(t){t.name==i&&(s=!0)}),!1===s&&n.push(i)}),_.each(n,function(t){_.each(o.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),o.outputViews[t].remove(),delete o.outputViews[t],delete e.output_terminals[t]}),$.each(e.workflow_outputs,function(t,o){o&&!e.output_terminals[o.output_name]&&e.workflow_outputs.splice(t,1)}),$.each(t.data_outputs,function(t,n){o.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):o.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var i=t.post_job_actions;this.post_job_actions=i||{}}e.nodeView.renderToolErrors();var a=o.$("div.inputs"),s=o.newInputsDiv(),u={};_.each(t.data_inputs,function(t){var o=e.nodeView.addDataInput(t,s);u[t.name]=o}),_.each(_.difference(_.values(o.terminalViews),_.values(u)),function(t){t.el.terminal.destroy()}),o.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&o.updateDataOutput(t.data_outputs[0]),a.replaceWith(s),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=$(this.element).find(".toolFormBody");e.find("div").remove();var o=""+t+"
";this.config_form=o,e.html(o),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});t.default=s});
\ No newline at end of file
+define("mvc/workflow/workflow-node",["exports","utils/utils","mvc/workflow/workflow-view-node"],function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(e),a=n(o),s=Backbone.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return _.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var o={output_name:t};return e&&(o.label=e),this.workflow_outputs.push(o),!0}return!1},labelWorkflowOutput:function(t,e){var o=!1,n=null;if(this.isWorkflowOutput(t)){var i=this.getWorkflowOutput(t);n=i.label,i.label=e,o=n!=e}else o=this.addWorkflowOutput(t,e);return o&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),o},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.connectors.length>0&&e.push(o)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var o=t[e];if(o.connectors.length>0&&o.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&o.connectors.length>0&&e.push(o)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&e.push(o)}),e},hasMappedOverInputTerminals:function(){var t=!1;return _.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){$.each(this.input_terminals,function(t,e){e.redraw()}),$.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},o=this.workflow.create_node(this.type,this.name,this.content_id);i.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var i=Object.assign({},n,e);o.init_field_data(i),o.update_field_data(i),t.workflow.activate_node(o)}})},destroy:function(){$.each(this.input_terminals,function(t,e){e.destroy()}),$.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),$(this.element).remove()},make_active:function(){$(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),$(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,o=new a.default({el:this.element[0],node:e});e.nodeView=o,$.each(t.data_inputs,function(t,e){o.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&o.addRule(),$.each(t.data_outputs,function(t,e){o.addDataOutput(e)}),o.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,o=e.nodeView,n=[];if($.each(o.outputViews,function(e,o){var i=o.output.name,a=t.data_outputs,s=!1;_.each(a,function(t){t.name==i&&(s=!0)}),!1===s&&n.push(i)}),_.each(n,function(t){_.each(o.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),o.outputViews[t].remove(),delete o.outputViews[t],delete e.output_terminals[t]}),$.each(e.workflow_outputs,function(t,o){o&&!e.output_terminals[o.output_name]&&e.workflow_outputs.splice(t,1)}),$.each(t.data_outputs,function(t,n){o.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):o.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var i=t.post_job_actions;this.post_job_actions=i||{}}e.nodeView.renderToolErrors();var a=o.$("div.inputs"),s=o.newInputsDiv(),u={};_.each(t.data_inputs,function(t){var o=e.nodeView.addDataInput(t,s);u[t.name]=o}),_.each(_.difference(_.values(o.terminalViews),_.values(u)),function(t){t.el.terminal.destroy()}),o.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&o.updateDataOutput(t.data_outputs[0]),a.replaceWith(s),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=$(this.element).find(".toolFormBody");e.find("div").remove();var o=""+t+"
";this.config_form=o,e.html(o),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});t.default=s});
\ No newline at end of file
From 8fcb7578ab9dcf963ad50d8190832be9fe055d3b Mon Sep 17 00:00:00 2001
From: Evgeny Anatskiy
Date: Wed, 29 Nov 2017 11:26:41 +0100
Subject: [PATCH 3/4] fix a bug when a tool couldn't be copied
---
.../galaxy/scripts/mvc/workflow/workflow-node.js | 16 +++-------------
static/scripts/bundled/workflow.bundled.js | 2 +-
static/scripts/mvc/workflow/workflow-node.js | 2 +-
3 files changed, 5 insertions(+), 15 deletions(-)
diff --git a/client/galaxy/scripts/mvc/workflow/workflow-node.js b/client/galaxy/scripts/mvc/workflow/workflow-node.js
index 1dfc0874479..cb4771f8f28 100644
--- a/client/galaxy/scripts/mvc/workflow/workflow-node.js
+++ b/client/galaxy/scripts/mvc/workflow/workflow-node.js
@@ -131,20 +131,16 @@ var Node = Backbone.Model.extend({
});
},
clone: function() {
- var self = this;
var copiedData = {
name: this.name,
label: this.label,
annotation: this.annotation,
- // tool_state: this.tool_state,
post_job_actions: this.post_job_actions
};
- var node = this.workflow.create_node(
+ var node = this.app.workflow.create_node(
this.type, this.name, this.content_id
);
- // console.log('node', this);
-
Utils.request({
type: "POST",
url: `${Galaxy.root}api/workflows/build_module`,
@@ -153,17 +149,11 @@ var Node = Backbone.Model.extend({
tool_id: this.content_id,
inputs: this.tool_state
},
- success: function(data) {
+ success: (data) => {
var newData = Object.assign({}, data, copiedData);
- // newData.config_form.state_inputs = copiedData.tool_state;
-
- // console.log('data', data);
- // console.log('copiedData', copiedData);
- // console.log('newData', newData);
-
node.init_field_data(newData);
node.update_field_data(newData);
- self.workflow.activate_node(node);
+ this.app.workflow.activate_node(node);
}
});
},
diff --git a/static/scripts/bundled/workflow.bundled.js b/static/scripts/bundled/workflow.bundled.js
index 428e4792d58..9dc38e7ec03 100644
--- a/static/scripts/bundled/workflow.bundled.js
+++ b/static/scripts/bundled/workflow.bundled.js
@@ -4,4 +4,4 @@ webpackJsonp([5],[,,,,function(t,e,i){"use strict";(function(t,n,o){function a(t
* @author Feross Aboukhadijeh
* @license MIT
*/
-t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},i=this.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var o=Object.assign({},n,e);i.init_field_data(o),i.update_field_data(o),t.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
+t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},i=this.app.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var o=Object.assign({},n,e);i.init_field_data(o),i.update_field_data(o),t.app.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
diff --git a/static/scripts/mvc/workflow/workflow-node.js b/static/scripts/mvc/workflow/workflow-node.js
index dd4312ccb99..31b17903853 100644
--- a/static/scripts/mvc/workflow/workflow-node.js
+++ b/static/scripts/mvc/workflow/workflow-node.js
@@ -1 +1 @@
-define("mvc/workflow/workflow-node",["exports","utils/utils","mvc/workflow/workflow-view-node"],function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(e),a=n(o),s=Backbone.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return _.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var o={output_name:t};return e&&(o.label=e),this.workflow_outputs.push(o),!0}return!1},labelWorkflowOutput:function(t,e){var o=!1,n=null;if(this.isWorkflowOutput(t)){var i=this.getWorkflowOutput(t);n=i.label,i.label=e,o=n!=e}else o=this.addWorkflowOutput(t,e);return o&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),o},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.connectors.length>0&&e.push(o)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var o=t[e];if(o.connectors.length>0&&o.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&o.connectors.length>0&&e.push(o)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&e.push(o)}),e},hasMappedOverInputTerminals:function(){var t=!1;return _.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){$.each(this.input_terminals,function(t,e){e.redraw()}),$.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},o=this.workflow.create_node(this.type,this.name,this.content_id);i.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var i=Object.assign({},n,e);o.init_field_data(i),o.update_field_data(i),t.workflow.activate_node(o)}})},destroy:function(){$.each(this.input_terminals,function(t,e){e.destroy()}),$.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),$(this.element).remove()},make_active:function(){$(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),$(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,o=new a.default({el:this.element[0],node:e});e.nodeView=o,$.each(t.data_inputs,function(t,e){o.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&o.addRule(),$.each(t.data_outputs,function(t,e){o.addDataOutput(e)}),o.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,o=e.nodeView,n=[];if($.each(o.outputViews,function(e,o){var i=o.output.name,a=t.data_outputs,s=!1;_.each(a,function(t){t.name==i&&(s=!0)}),!1===s&&n.push(i)}),_.each(n,function(t){_.each(o.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),o.outputViews[t].remove(),delete o.outputViews[t],delete e.output_terminals[t]}),$.each(e.workflow_outputs,function(t,o){o&&!e.output_terminals[o.output_name]&&e.workflow_outputs.splice(t,1)}),$.each(t.data_outputs,function(t,n){o.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):o.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var i=t.post_job_actions;this.post_job_actions=i||{}}e.nodeView.renderToolErrors();var a=o.$("div.inputs"),s=o.newInputsDiv(),u={};_.each(t.data_inputs,function(t){var o=e.nodeView.addDataInput(t,s);u[t.name]=o}),_.each(_.difference(_.values(o.terminalViews),_.values(u)),function(t){t.el.terminal.destroy()}),o.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&o.updateDataOutput(t.data_outputs[0]),a.replaceWith(s),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=$(this.element).find(".toolFormBody");e.find("div").remove();var o=""+t+"
";this.config_form=o,e.html(o),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});t.default=s});
\ No newline at end of file
+define("mvc/workflow/workflow-node",["exports","utils/utils","mvc/workflow/workflow-view-node"],function(t,e,o){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(e),a=n(o),s=Backbone.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return _.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var o={output_name:t};return e&&(o.label=e),this.workflow_outputs.push(o),!0}return!1},labelWorkflowOutput:function(t,e){var o=!1,n=null;if(this.isWorkflowOutput(t)){var i=this.getWorkflowOutput(t);n=i.label,i.label=e,o=n!=e}else o=this.addWorkflowOutput(t,e);return o&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),o},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.connectors.length>0&&e.push(o)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var o=t[e];if(o.connectors.length>0&&o.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&o.connectors.length>0&&e.push(o)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return $.each(t,function(t,o){o.mapOver().isCollection&&e.push(o)}),e},hasMappedOverInputTerminals:function(){var t=!1;return _.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){$.each(this.input_terminals,function(t,e){e.redraw()}),$.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},o=this.app.workflow.create_node(this.type,this.name,this.content_id);i.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var i=Object.assign({},n,e);o.init_field_data(i),o.update_field_data(i),t.app.workflow.activate_node(o)}})},destroy:function(){$.each(this.input_terminals,function(t,e){e.destroy()}),$.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),$(this.element).remove()},make_active:function(){$(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),$(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,o=new a.default({el:this.element[0],node:e});e.nodeView=o,$.each(t.data_inputs,function(t,e){o.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&o.addRule(),$.each(t.data_outputs,function(t,e){o.addDataOutput(e)}),o.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,o=e.nodeView,n=[];if($.each(o.outputViews,function(e,o){var i=o.output.name,a=t.data_outputs,s=!1;_.each(a,function(t){t.name==i&&(s=!0)}),!1===s&&n.push(i)}),_.each(n,function(t){_.each(o.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),o.outputViews[t].remove(),delete o.outputViews[t],delete e.output_terminals[t]}),$.each(e.workflow_outputs,function(t,o){o&&!e.output_terminals[o.output_name]&&e.workflow_outputs.splice(t,1)}),$.each(t.data_outputs,function(t,n){o.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):o.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var i=t.post_job_actions;this.post_job_actions=i||{}}e.nodeView.renderToolErrors();var a=o.$("div.inputs"),s=o.newInputsDiv(),u={};_.each(t.data_inputs,function(t){var o=e.nodeView.addDataInput(t,s);u[t.name]=o}),_.each(_.difference(_.values(o.terminalViews),_.values(u)),function(t){t.el.terminal.destroy()}),o.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&o.updateDataOutput(t.data_outputs[0]),a.replaceWith(s),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=$(this.element).find(".toolFormBody");e.find("div").remove();var o=""+t+"
";this.config_form=o,e.html(o),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});t.default=s});
\ No newline at end of file
From 1173ce6cf9fc2b46da127e1177fd12a2bbc60bb0 Mon Sep 17 00:00:00 2001
From: Evgeny Anatskiy
Date: Wed, 29 Nov 2017 13:10:40 +0100
Subject: [PATCH 4/4] add copy&paste feature
---
.../scripts/mvc/workflow/workflow-canvas.js | 23 +++++++++++++++++++
static/scripts/bundled/workflow.bundled.js | 2 +-
.../scripts/mvc/workflow/workflow-canvas.js | 2 +-
3 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/client/galaxy/scripts/mvc/workflow/workflow-canvas.js b/client/galaxy/scripts/mvc/workflow/workflow-canvas.js
index f1417aac7a9..ef5b1a52d9f 100644
--- a/client/galaxy/scripts/mvc/workflow/workflow-canvas.js
+++ b/client/galaxy/scripts/mvc/workflow/workflow-canvas.js
@@ -7,6 +7,8 @@ function CanvasManager(app, canvas_viewport, overview) {
this.ov = overview.find("#overview-viewport");
// Make overview box draggable
this.init_drag();
+ // Initialize Copy & Paste events
+ this.init_copy_paste();
}
$.extend(CanvasManager.prototype, {
init_drag: function() {
@@ -96,6 +98,27 @@ $.extend(CanvasManager.prototype, {
only be done by dragging the borders */
$("#overview-border div").bind("drag", () => {});
},
+ init_copy_paste: function() {
+ document.addEventListener('copy', (e) => {
+ if (this.app.workflow.active_node) {
+ e.clipboardData.setData('application/json', JSON.stringify({
+ nodeId: this.app.workflow.active_node.id
+ }));
+ }
+ e.preventDefault();
+ });
+
+ document.addEventListener('paste', (e) => {
+ var nodeId;
+ try {
+ nodeId = JSON.parse(e.clipboardData.getData('application/json')).nodeId;
+ } catch (error) {}
+ if (nodeId && this.app.workflow.nodes.hasOwnProperty(nodeId)) {
+ this.app.workflow.nodes[nodeId].clone();
+ }
+ e.preventDefault();
+ });
+ },
update_viewport_overlay: function() {
var cc = this.cc;
var cv = this.cv;
diff --git a/static/scripts/bundled/workflow.bundled.js b/static/scripts/bundled/workflow.bundled.js
index 9dc38e7ec03..f89eae71848 100644
--- a/static/scripts/bundled/workflow.bundled.js
+++ b/static/scripts/bundled/workflow.bundled.js
@@ -4,4 +4,4 @@ webpackJsonp([5],[,,,,function(t,e,i){"use strict";(function(t,n,o){function a(t
* @author Feross Aboukhadijeh
* @license MIT
*/
-t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},i=this.app.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var o=Object.assign({},n,e);i.init_field_data(o),i.update_field_data(o),t.app.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
+t.exports=function(t){return null!=t&&(i(t)||n(t)||!!t._isBuffer)}},function(t,e,i){"use strict";function n(t){this.defaults=t,this.interceptors={request:new r,response:new r}}var o=i(16),a=i(5),r=i(85),s=i(86);n.prototype.request=function(t){"string"==typeof t&&(t=a.merge({url:arguments[0]},arguments[1])),t=a.merge(o,this.defaults,{method:"get"},t),t.method=t.method.toLowerCase();var e=[s,void 0],i=Promise.resolve(t);for(this.interceptors.request.forEach(function(t){e.unshift(t.fulfilled,t.rejected)}),this.interceptors.response.forEach(function(t){e.push(t.fulfilled,t.rejected)});e.length;)i=i.then(e.shift(),e.shift());return i},a.forEach(["delete","get","head","options"],function(t){n.prototype[t]=function(e,i){return this.request(a.merge(i||{},{method:t,url:e}))}}),a.forEach(["post","put","patch"],function(t){n.prototype[t]=function(e,i,n){return this.request(a.merge(n||{},{method:t,url:e,data:i}))}}),t.exports=n},function(t,e){function i(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===n||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){m&&f&&(m=!1,f.length?p=f.concat(p):v=-1,p.length&&s())}function s(){if(!m){var t=o(r);m=!0;for(var e=p.length;e;){for(f=p,p=[];++v1)for(var i=1;i=0)return;r[e]="set-cookie"===e?(r[e]?r[e]:[]).concat([i]):r[e]?r[e]+", "+i:i}}),r):r}},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){function t(t){var e=t;return i&&(o.setAttribute("href",e),e=o.href),o.setAttribute("href",e),{href:o.href,protocol:o.protocol?o.protocol.replace(/:$/,""):"",host:o.host,search:o.search?o.search.replace(/^\?/,""):"",hash:o.hash?o.hash.replace(/^#/,""):"",hostname:o.hostname,port:o.port,pathname:"/"===o.pathname.charAt(0)?o.pathname:"/"+o.pathname}}var e,i=/(msie|trident)/i.test(navigator.userAgent),o=document.createElement("a");return e=t(window.location.href),function(i){var o=n.isString(i)?t(i):i;return o.protocol===e.protocol&&o.host===e.host}}():function(){return function(){return!0}}()},function(t,e,i){"use strict";function n(){this.message="String contains an invalid character"}function o(t){for(var e,i,o=String(t),r="",s=0,l=a;o.charAt(0|s)||(l="=",s%1);r+=l.charAt(63&e>>8-s%1*8)){if((i=o.charCodeAt(s+=.75))>255)throw new n;e=e<<8|i}return r}var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.prototype=new Error,n.prototype.code=5,n.prototype.name="InvalidCharacterError",t.exports=o},function(t,e,i){"use strict";var n=i(5);t.exports=n.isStandardBrowserEnv()?function(){return{write:function(t,e,i,o,a,r){var s=[];s.push(t+"="+encodeURIComponent(e)),n.isNumber(i)&&s.push("expires="+new Date(i).toGMTString()),n.isString(o)&&s.push("path="+o),n.isString(a)&&s.push("domain="+a),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},function(t,e,i){"use strict";function n(){this.handlers=[]}var o=i(5);n.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},n.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},n.prototype.forEach=function(t){o.forEach(this.handlers,function(e){null!==e&&t(e)})},t.exports=n},function(t,e,i){"use strict";function n(t){t.cancelToken&&t.cancelToken.throwIfRequested()}var o=i(5),a=i(87),r=i(30),s=i(16),l=i(88),u=i(89);t.exports=function(t){return n(t),t.baseURL&&!l(t.url)&&(t.url=u(t.baseURL,t.url)),t.headers=t.headers||{},t.data=a(t.data,t.headers,t.transformRequest),t.headers=o.merge(t.headers.common||{},t.headers[t.method]||{},t.headers||{}),o.forEach(["delete","get","head","post","put","patch","common"],function(e){delete t.headers[e]}),(t.adapter||s.adapter)(t).then(function(e){return n(t),e.data=a(e.data,e.headers,t.transformResponse),e},function(e){return r(e)||(n(t),e&&e.response&&(e.response.data=a(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)})}},function(t,e,i){"use strict";var n=i(5);t.exports=function(t,e,i){return n.forEach(i,function(i){t=i(t,e)}),t}},function(t,e,i){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,i){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,i){"use strict";function n(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(t){e=t});var i=this;t(function(t){i.reason||(i.reason=new o(t),e(i.reason))})}var o=i(31);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var t;return{token:new n(function(e){t=e}),cancel:t}},t.exports=n},function(t,e,i){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,i){!function(t){function e(){this.months=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],this.notKey=[",","{","}"," ","="],this.pos=0,this.input="",this.entries=new Array,this.currentEntry="",this.setInput=function(t){this.input=t},this.getEntries=function(){return this.entries},this.isWhitespace=function(t){return" "==t||"\r"==t||"\t"==t||"\n"==t},this.match=function(t,e){if(void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)!=t)throw"Token mismatch, expected "+t+", found "+this.input.substring(this.pos);this.pos+=t.length,this.skipWhitespace(e)},this.tryMatch=function(t,e){return void 0!=e&&null!=e||(e=!0),this.skipWhitespace(e),this.input.substring(this.pos,this.pos+t.length)==t},this.matchAt=function(){for(;this.input.length>this.pos&&"@"!=this.input[this.pos];)this.pos++;return"@"==this.input[this.pos]},this.skipWhitespace=function(t){for(;this.isWhitespace(this.input[this.pos]);)this.pos++;if("%"==this.input[this.pos]&&1==t){for(;"\n"!=this.input[this.pos];)this.pos++;this.skipWhitespace(t)}},this.value_braces=function(){var t=0;this.match("{",!1);for(var e=this.pos,i=!1;;){if(!i)if("}"==this.input[this.pos]){if(!(t>0)){var n=this.pos;return this.match("}",!1),this.input.substring(e,n)}t--}else if("{"==this.input[this.pos])t++;else if(this.pos>=this.input.length-1)throw"Unterminated value";i="\\"==this.input[this.pos]&&0==i,this.pos++}},this.value_comment=function(){for(var t="",e=0;!this.tryMatch("}",!1)||0!=e;){if(t+=this.input[this.pos],"{"==this.input[this.pos]&&e++,"}"==this.input[this.pos]&&e--,this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(start);this.pos++}return t},this.value_quotes=function(){this.match('"',!1);for(var t=this.pos,e=!1;;){if(!e){if('"'==this.input[this.pos]){var i=this.pos;return this.match('"',!1),this.input.substring(t,i)}if(this.pos>=this.input.length-1)throw"Unterminated value:"+this.input.substring(t)}e="\\"==this.input[this.pos]&&0==e,this.pos++}},this.single_value=function(){var t=this.pos;if(this.tryMatch("{"))return this.value_braces();if(this.tryMatch('"'))return this.value_quotes();var e=this.key();if(e.match("^[0-9]+$"))return e;if(this.months.indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw"Value expected:"+this.input.substring(t)+" for key: "+e},this.value=function(){var t=[];for(t.push(this.single_value());this.tryMatch("#");)this.match("#"),t.push(this.single_value());return t.join("")},this.key=function(t){for(var e=this.pos;;){if(this.pos>=this.input.length)throw"Runaway key";if(this.notKey.indexOf(this.input[this.pos])>=0)return t&&","!=this.input[this.pos]?(this.pos=e,null):this.input.substring(e,this.pos);this.pos++}},this.key_equals_value=function(){var t=this.key();if(this.tryMatch("=")){this.match("=");var e=this.value();return t=t.trim(),[t,e]}throw"... = value expected, equals sign missing:"+this.input.substring(this.pos)},this.key_value_list=function(){var t=this.key_equals_value();for(this.currentEntry.entryTags={},this.currentEntry.entryTags[t[0]]=t[1];this.tryMatch(",")&&(this.match(","),!this.tryMatch("}"));)t=this.key_equals_value(),this.currentEntry.entryTags[t[0]]=t[1]},this.entry_body=function(t){this.currentEntry={},this.currentEntry.citationKey=this.key(!0),this.currentEntry.entryType=t.substring(1),null!=this.currentEntry.citationKey&&this.match(","),this.key_value_list(),this.entries.push(this.currentEntry)},this.directive=function(){return this.match("@"),"@"+this.key()},this.preamble=function(){this.currentEntry={},this.currentEntry.entryType="PREAMBLE",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.comment=function(){this.currentEntry={},this.currentEntry.entryType="COMMENT",this.currentEntry.entry=this.value_comment(),this.entries.push(this.currentEntry)},this.entry=function(t){this.entry_body(t)},this.alernativeCitationKey=function(){this.entries.forEach(function(t){!t.citationKey&&t.entryTags&&(t.citationKey="",t.entryTags.author&&(t.citationKey+=t.entryTags.author.split(",")[0]+=", "),t.citationKey+=t.entryTags.year)})},this.bibtex=function(){for(;this.matchAt();){var t=this.directive();this.match("{"),"@STRING"==t.toUpperCase()?this.string():"@PREAMBLE"==t.toUpperCase()?this.preamble():"@COMMENT"==t.toUpperCase()?this.comment():this.entry(t),this.match("}")}this.alernativeCitationKey()}}t.toJSON=function(t){var i=new e;return i.setInput(t),i.bibtex(),i.entries},t.toBibtex=function(t){var e="";for(var i in t){if(e+="@"+t[i].entryType,e+="{",t[i].citationKey&&(e+=t[i].citationKey+", "),t[i].entry&&(e+=t[i].entry),t[i].entryTags){var n="";for(var o in t[i].entryTags)0!=n.length&&(n+=", "),n+=o+"= {"+t[i].entryTags[o]+"}";e+=n}e+="}\n\n"}return e}}(e)},function(t,e,i){"use strict";function n(t){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])}Object.defineProperty(e,"__esModule",{value:!0}),n(i(94)),n(i(95)),n(i(32)),n(i(35)),n(i(10)),n(i(36)),n(i(136)),n(i(137)),n(i(39))},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.aliases={mathfrak:"frak",mathcal:"cal",mathbb:"bb",mathbf:"bf",dfrac:"frac",ldots:"dots"}},function(t,e,i){"use strict";function n(t,e){return a(t,s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(e)).value))}function o(t){return a({translateTo:"unicode",mode:"Any"},s.mustNotBeUndefined(s.mustBeOk(s.latexParser.parse(t)).value))}function a(t,e){var i=t.translateTo;switch(i){case"html":throw new Error("Unsupported format: '"+i+"'. Use one of: "+Object.keys(r.supportedMarkups));case"unicode":default:return l.convertLaTeXBlocksToUnicode(t,e).result}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(32),s=i(17),l=i(97);e.convertLaTeX=n,e.convertLaTeXToUnicode=o,e.convertLaTeXBlocks=a},function(t,e,i){"use strict";function n(t,e){var i=t.length,n=e.length;if(0===i)return e;if(0===n)return t;for(var o={},a=0;ae.furthest)return t;var i=t.furthest===e.furthest?n(t.expected,e.expected):e.expected;return{status:t.status,index:t.index,value:t.value,furthest:e.furthest,expected:i}}function a(t,e,i,n){return C.Parser(function(a,r){for(var s=n,l=0,u=void 0;r=e.length||t(n))return O.makeFailure(i,"text character");var o=[n];i++;for(var a=e.charAt(i);!t(a)&&i="A"&&t<="Z"}function f(t){return t>="a"&&t<="z"}function p(t){return D.then(r(d(t,"_"),B)).map(k.newFixArg)}function m(t){return A.then(r(d(t),R)).map(k.newOptArg)}function v(t){return C.alt(p(t),m(t))}function g(t){return C.alt(C.string("{}").map(function(){return[]}),v(t).map(function(t){return t}).atLeast(0)).map(function(t){return t})}function _(t){return C.seqMap(e.commandSymbol,C.alt(e.specialChar,e.takeTill(e.endCmd)),g(t),function(t,e,i){return void 0!==i?k.newTeXComm.apply(void 0,[e].concat(i)):k.newTeXComm(e)}).map(function(t){return t})}function w(t,i,n){return C.seqMap(e.subOrSuperscriptSymbolParser(i,n),g(t),function(t,e){return k.newSubOrSuperScript(t,t===k.SubOrSuperSymbol.SUB?i:n,e)}).map(function(t){return t})}function b(t){return void 0!==t&&!0===t.status}function y(t){return void 0!==t&&!1===t.status}function x(t){if(!b(t))throw new Error("Expected parse to be success: "+JSON.stringify(t));return t}Object.defineProperty(e,"__esModule",{value:!0});var C=i(34),k=i(19),T=i(19),$=i(18),O=i(34);e.defaultParserConf={verbatimEnvironments:["verbatim"]},e.takeTill=function(t){return C.takeWhile(function(e){return!t(e)})};var M=C.regexp(/[^\n]*/),S=C.regexp(/\n?/),E=(C.regexp(/\s*/m),C.string("%")),A=C.string("["),R=C.string("]");e.notTextDefault={$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathMode={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"]":!0,"}":!0},e.notTextMathModeAndNotClosingBracket={"^":!0,_:!0,$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.notTextDefaultAndNotClosingBracket={$:!0,"%":!0,"\\":!0,"{":!0,"}":!0},e.textParser=l;var j=(l(e.notTextDefault),l(e.notTextDefaultAndNotClosingBracket),C.regexp(/ */).map(T.newTeXRaw));e.comment=E.then(M).skip(S).map(k.newTeXComment),e.specialCharsDefault={"'":!0,"(":!0,")":!0,",":!0,".":!0,"-":!0,'"':!0,"!":!0,"^":!0,$:!0,"&":!0,"#":!0,"{":!0,"}":!0,"%":!0,"~":!0,"|":!0,"/":!0,":":!0,";":!0,"=":!0,"[":!0,"]":!0,"\\":!0,"`":!0," ":!0},e.isSpecialCharacter=u,e.isNotText=c,e.mathSymbol=C.string("$"),e.commandSymbol=C.string("\\"),e.latexBlockParser=d,e.latexBlockParserTextMode=C.lazy(function(){return C.alt(C.alt(l(e.notTextDefault),e.dolMath,e.comment,l(e.notTextDefaultAndNotClosingBracket),e.environment,_("Paragraph")))}),e.latexBlockParserMathMode=function(t,i){return C.lazy(function(){return C.alt(C.alt(w("Math",t,i),l(e.notTextMathMode),e.dolMath,e.comment,l(e.notTextMathModeAndNotClosingBracket),e.environment,_("Math")))})},e.latexParser=e.latexBlockParserTextMode.many();var P=C.string("{").then(e.latexBlockParserTextMode.many()).skip(C.string("}"));e.env=C.Parser(function(t,i){var n=C.string("\\begin").then(C.string("{")).then(j).then(C.regexp(/[a-zA-Z]+/)).skip(j).skip(C.string("}"))._(t,i);if(y(n))return n;i=$.mustBeNumber(n.index);var o=n.value;return r(e.latexBlockParserTextMode,C.string("\\end").then(C.string("{")).then(j).then(C.string(o)).then(j).then(C.string("}"))).map(function(t){return k.newTeXEnv(o,t)})._(t,i)}),e.environment=C.alt(P,e.env),e.specialChar=C.test(u),e.endCmd=function(t){return!f(t)&&!h(t)};var D=C.string("{"),B=C.string("}");e.fixArg=p,e.optArg=m,e.cmdArg=v,e.cmdArgs=g,e.command=_,e.subOrSuperscriptSymbolParser=function(t,e){return C.alt(C.string(t),C.string(e)).map(function(e){return e===t?k.SubOrSuperSymbol.SUB:k.SubOrSuperSymbol.SUP})},e.shiftedScript=w,e.dolMath=function(t,e,i){return void 0===t&&(t="Dollar"),void 0===e&&(e="$"),void 0===i&&(i="$"),C.string(e).then(d("Math","_").many().map(function(n){return k.newTeXMath(t,e,i,n)})).skip(C.string(i))}(),e.isOk=b,e.isNotOk=y,e.mustBeOk=x},function(t,e,i){"use strict";function n(t){return"string"==typeof t}function o(t,e){var i=t;do{t++}while(h.isTeXChar(e[t]));return{result:e.slice(i,t).map(function(t){return t.string}).join(""),blockIndex:t}}function a(t,e,i,o){var a=d(t,o);if(n(a))return{result:a,blockIndex:e+1};for(var r=[],l=[];r.length=0&&l.push(p.substring(m))}else r.push(c)}e++;var w=r.map(function(e){return s(t,[e]).result}).map(h.newTeXRaw).map(function(t){return h.newFixArg([t])});if(w.length0&&b.push(l.join("")),{result:b.join(""),blockIndex:e}}function r(t){return void 0!==t&&"string"==typeof t.string&&"number"==typeof t.category}function s(t,e){var i=0;if(e.length<=0)return{result:"",blockIndex:i};for(var n=[];i0){var i=v.expand1argsCommand(e.name,s(t,[e.arguments[0]]).result||"");return e.arguments.length>1?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,1,function(i,n){var o=n[0],a=n.slice(1);return v.expand1argsCommand(e.name,s(t,[o]).result)+s(t,a).result})}function u(t,e){if(e.arguments.length>1){var i=w.expand2argsCommand(e.name,s(t,[e.arguments[0]]).result||"",s(t,[e.arguments[1]]).result||"");return e.arguments.length>2?i+s(t,e.arguments.slice(1)).result:i}return m.createCommandHandler(e.name,0,2,function(i,n){var o=n[0],a=n[1],r=n.slice(2);return w.expand2argsCommand(e.name,s(t,[o]).result,s(t,[a]).result)+s(t,r).result})}function c(t,e){for(var i=void 0,n=void 0,o=0;void 0===n&&o1){var a=i.slice(1);return o+s(t,a).result}return o})}function d(t,e){var i=e.name,n=p.expand0argsCommand(i);if(n)return e.arguments&&e.arguments.length>0?n+s(t,e.arguments).result:n;if(g.is1argsCommand(i))return l(t,e);if(b.is2argsCommand(i))return u(t,e);if("sqrt"===i)return c(t,e);throw f.unknownCommandError(i)}Object.defineProperty(e,"__esModule",{value:!0});var h=i(17),f=i(35),p=i(98),m=i(36),v=i(105),g=i(39),_=i(130),w=i(131),b=i(134),y=i(33),x=/^\s*/;e.isTeXChar2=r,e.convertLaTeXBlocksToUnicode=s,e.convertCommand=d},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(99),o=i(100),a=i(101),r=i(102),s=i(103),l=i(104);e.expand0argsCommand=function(t){for(var e=0,i=[a.barredLUnicode,n.spaceUnicode,r.slashedOUnicode,o.characterUnicode,l.specialCharacter,s.cyrillicUnicode];e",thickapprox:"≈",updownarrow:"↕",vartriangle:"△",Lleftarrow:"⇚",Rightarrow:"⇒",circledast:"⊛",complement:"∁",curlywedge:"⋏",longmapsto:"⟼",registered:"®",rightarrow:"→",smallfrown:"⌢",smallsmile:"⌣",sqsubseteq:"⊑",sqsupseteq:"⊒",textlangle:"〈",textrangle:"〉",upuparrows:"⇈",varepsilon:"ε",varnothing:"∅",Downarrow:"⇓",Leftarrow:"⇐",backprime:"‵",bigotimes:"⨂",centerdot:"⋅",copyright:"©",downarrow:"↓",gtreqless:"⋛",heartsuit:"♡",leftarrow:"←",lesseqgtr:"⋚",pitchfork:"⋔",spadesuit:"♠",therefore:"∴",trademark:"™",triangleq:"≜",varpropto:"∝",approxeq:"≊",barwedge:"⊼",bigoplus:"⨁",bigsqcup:"⨆",biguplus:"⨄",bigwedge:"⋀",boxminus:"⊟",boxtimes:"⊠",circledS:"Ⓢ",clubsuit:"♣",curlyvee:"⋎",doteqdot:"≑",emptyset:"∅",intercal:"⊺",leqslant:"⩽",multimap:"⊸",parallel:"∥",setminus:"∖",sqsubset:"⊏",sqsupset:"⊐",subseteq:"⊆",supseteq:"⊇",textless:"<",thicksim:"∼",triangle:"△",varkappa:"ϰ",varsigma:"ς",vartheta:"ϑ",Diamond:"◇",Uparrow:"⇑",Upsilon:"Υ",backsim:"∽",because:"∵",between:"≬",bigodot:"⨀",bigstar:"★",boxplus:"⊞",ddagger:"‡",diamond:"⋄",digamma:"Ϝ",dotplus:"∔",epsilon:"∊",gtrless:"≷",implies:"⇒",leadsto:"↝",lessdot:"⋖",lessgtr:"≶",lesssim:"≲",lozenge:"◊",natural:"♮",nearrow:"↗",nexists:"∄",nwarrow:"↖",partial:"∂",pilcrow:"¶",precsim:"≾",searrow:"↘",section:"§",succsim:"≿",swarrow:"↙",textbar:"|",uparrow:"↑",upsilon:"υ",Bumpeq:"≎",Lambda:"Λ",Subset:"⋐",Supset:"⋑",Vvdash:"⊪",approx:"≈",bigcap:"⋂",bigcup:"⋃",bigvee:"⋁",bowtie:"⋈",boxdot:"⊡",bullet:"∙",bumpeq:"≏",circeq:"≗",coprod:"∐",dagger:"†",daleth:"ד",degree:"°",eqcirc:"≖",exists:"∃",forall:"∀",gtrdot:"⋗",gtrsim:"≳",hslash:"ℏ",lambda:"λ",lfloor:"⌊",ltimes:"⋉",mapsto:"↦",models:"⊨",ominus:"⊖",oslash:"⊘",otimes:"⊗",preceq:"⪯",propto:"∝",rfloor:"⌋",rtimes:"⋊",square:"□",subset:"⊂",succeq:"⪰",supset:"⊃",varphi:"φ",varrho:"ϱ",veebar:"⊻",Delta:"Δ",Gamma:"Γ",Omega:"Ω",Theta:"Θ",Vdash:"⊩",aleph:"ℵ",Alpha:"Α",alpha:"α",angle:"∠",asymp:"≍",cdots:"⋯",cents:"¢",dashv:"⊣",ddots:"⋱",delta:"δ",doteq:"≐",equiv:"≡",frown:"⌢",gamma:"γ",gimel:"ℷ",infty:"∞",kappa:"κ",Kappa:"Κ",lceil:"⌈",nabla:"∇",notin:"∉",omega:"ω",oplus:"⊕",pound:"£",prime:"′",qquad:" ",rceil:"⌉",sharp:"♯",sigma:"σ",simeq:"≃",smile:"⌣",space:"␣",sqcap:"⊓",sqcup:"⊔",theta:"θ",times:"×",unlhd:"⊴",unrhd:"⊵",uplus:"⊎",vDash:"⊨",varpi:"ϖ",vdash:"⊢",vdots:"⋮",wedge:"∧",Finv:"Ⅎ",Join:"⋈",atop:"¦",beta:"β",Beta:"Β",beth:"ב",cdot:"⋅",circ:"∘",cong:"≅",dots:"…",euro:"€",flat:"♭",geqq:"≧",hbar:"ℏ",iota:"ι",leqq:"≦",odot:"⊙",oint:"∮",perp:"⊥",prec:"≺",prod:"∏",quad:" ",star:"⋆",succ:"≻",surd:"√",zeta:"ζ",Box:"□",Cap:"⋒",Cup:"⋓",Lsh:"↰",Phi:"Φ",Psi:"Ψ",Rsh:"↱",ast:"∗",bot:"⊥",cap:"∩",chi:"χ",Chi:"Χ",cup:"∪",div:"÷",ell:"ℓ",eta:"η",eth:"ð",geq:"≥",ggg:"⋙",int:"∫",leq:"≤",lhd:"⊲",lll:"⋘",mho:"℧",mid:"∣",neg:"¬",neq:"≠",phi:"ϕ",psi:"ψ",rhd:"⊳",rho:"ρ",Rho:"Ρ",sim:"∼",sum:"∑",tau:"τ",Tau:"Τ",top:"⊤",vee:"∨",Im:"ℑ",Pi:"Π",Re:"ℜ",Xi:"Ξ",ge:"≥",gg:"≫",in:"∈",le:"≤",ll:"≪",mp:"∓",mu:"μ",Mu:"Μ",ni:"∋",nu:"ν",Nu:"Ν",pi:"π",pm:"±",wp:"℘",wr:"≀",xi:"ξ",Omicron:"Ο",omicron:"ο",textdollar:"$",textquotesingle:"'",textbackslash:"\\",textasciigrave:"`",lbrace:"{",vert:"|",rbrace:"}",textasciitilde:"~",textexclamdown:"¡",textcent:"¢",textsterling:"£",textcurrency:"¤",textyen:"¥",textbrokenbar:"¦",textsection:"§",textasciidieresis:"¨",textcopyright:"©",textordfeminine:"ª",guillemotleft:"«",lnot:"¬",textasciimacron:"¯",textdegree:"°",textasciiacute:"´",textparagraph:"¶",textordmasculine:"º",guillemotright:"»",textonequarter:"¼",textonehalf:"½",textthreequarters:"¾",textquestiondown:"¿",AA:"Å",AE:"Æ",DH:"Ð",texttimes:"×",TH:"Þ",ss:"ß",aa:"å",ae:"æ",dh:"ð",th:"þ",DJ:"Đ",dj:"đ",Elzxh:"ħ",i:"ı",NG:"Ŋ",ng:"ŋ",OE:"Œ",oe:"œ",texthvlig:"ƕ",textnrleg:"ƞ",textdoublepipe:"ǂ",Elztrna:"ɐ",Elztrnsa:"ɒ",Elzopeno:"ɔ",Elzrtld:"ɖ",Elzschwa:"ə",Elzpgamma:"ɣ",Elzpbgam:"ɤ",Elztrnh:"ɥ",Elzbtdl:"ɬ",Elzrtll:"ɭ",Elztrnm:"ɯ",Elztrnmlr:"ɰ",Elzltlmr:"ɱ",Elzltln:"ɲ",Elzrtln:"ɳ",Elzclomeg:"ɷ",textphi:"ɸ",Elztrnr:"ɹ",Elztrnrl:"ɺ",Elzrttrnr:"ɻ",Elzrl:"ɼ",Elzrtlr:"ɽ",Elzfhr:"ɾ",Elzrtls:"ʂ",Elzesh:"ʃ",Elztrnt:"ʇ",Elzrtlt:"ʈ",Elzpupsil:"ʊ",Elzpscrv:"ʋ",Elzinvv:"ʌ",Elzinvw:"ʍ",Elztrny:"ʎ",Elzrtlz:"ʐ",Elzyogh:"ʒ",Elzglst:"ʔ",Elzreglst:"ʕ",Elzinglst:"ʖ",textturnk:"ʞ",Elzdyogh:"ʤ",Elztesh:"ʧ",textasciicaron:"ˇ",Elzverts:"ˈ",Elzverti:"ˌ",Elzlmrk:"ː",Elzhlmrk:"ˑ",Elzsbrhr:"˒",Elzsblhr:"˓",Elzrais:"˔",Elzlow:"˕",textasciibreve:"˘",textperiodcentered:"˙",texttildelow:"˜",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Iota:"Ι",Sigma:"Σ",texttheta:"θ",textvartheta:"ϑ",Stigma:"Ϛ",Digamma:"Ϝ",Koppa:"Ϟ",Sampi:"Ϡ",textTheta:"ϴ",textendash:"–",textemdash:"—",Vert:"‖",Elzreapos:"‛",textquotedblleft:"“",textquotedblright:"”",textdagger:"†",textdaggerdbl:"‡",textbullet:"•",ldots:"…",textperthousand:"‰",textpertenthousand:"‱",guilsinglleft:"‹",guilsinglright:"›",nolinebreak:"",Elzxrat:"℞",nleftarrow:"↚",nrightarrow:"↛",arrowwaveleft:"↜",arrowwaveright:"↝",nleftrightarrow:"↮",dblarrowupdown:"⇅",nLeftarrow:"⇍",nLeftrightarrow:"⇎",nRightarrow:"⇏",DownArrowUpArrow:"⇵",rightangle:"∟",nmid:"∤",nparallel:"∦",surfintegral:"∯",volintegral:"∰",clwintegral:"∱",Colon:"∷",homothetic:"∻",lazysinv:"∾",NotEqualTilde:"≂",approxnotequal:"≆",tildetrpl:"≋",allequal:"≌",NotHumpDownHump:"≎",NotHumpEqual:"≏",estimates:"≙",starequal:"≛",lneqq:"≨",lvertneqq:"≨",gneqq:"≩",gvertneqq:"≩",NotLessLess:"≪",NotGreaterGreater:"≫",lessequivlnt:"≲",greaterequivlnt:"≳",notlessgreater:"≸",notgreaterless:"≹",precapprox:"≾",NotPrecedesTilde:"≾",succapprox:"≿",NotSucceedsTilde:"≿",subsetneq:"⊊",varsubsetneqq:"⊊",supsetneq:"⊋",varsupsetneq:"⊋",NotSquareSubset:"⊏",NotSquareSuperset:"⊐",truestate:"⊧",forcesextra:"⊨",VDash:"⊫",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",original:"⊶",image:"⊷",hermitconjmatrix:"⊹",rightanglearc:"⊾",backsimeq:"⋍",verymuchless:"⋘",verymuchgreater:"⋙",Elzsqspne:"⋥",lnsim:"⋦",gnsim:"⋧",precedesnotsimilar:"⋨",succnsim:"⋩",ntriangleleft:"⋪",ntriangleright:"⋫",ntrianglelefteq:"⋬",ntrianglerighteq:"⋭",upslopeellipsis:"⋰",downslopeellipsis:"⋱",perspcorrespond:"⌆",recorder:"⌕",ulcorner:"⌜",urcorner:"⌝",llcorner:"⌞",lrcorner:"⌟",langle:"〈",rangle:"〉",Elzdlcorn:"⎣",lmoustache:"⎰",rmoustache:"⎱",textvisiblespace:"␣",Elzdshfnc:"┆",Elzsqfnw:"┙",diagup:"╱",Elzvrecto:"▯",Elzcirfl:"◐",Elzcirfr:"◑",Elzcirfb:"◒",Elzrvbull:"◘",Elzsqfl:"◧",Elzsqfr:"◨",Elzsqfse:"◪",bigcirc:"◯",rightmoon:"☾",mercury:"☿",venus:"♀",male:"♂",jupiter:"♃",saturn:"♄",uranus:"♅",neptune:"♆",pluto:"♇",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpio:"♏",sagittarius:"♐",capricornus:"♑",aquarius:"♒",pisces:"♓",quarternote:"♩",eighthnote:"♪",UpArrowBar:"⤒",DownArrowBar:"⤓",Elolarr:"⥀",Elorarr:"⥁",ElzRlarr:"⥂",ElzrLarr:"⥄",Elzrarrx:"⥇",LeftRightVector:"⥎",RightUpDownVector:"⥏",DownLeftRightVector:"⥐",LeftUpDownVector:"⥑",LeftVectorBar:"⥒",RightVectorBar:"⥓",RightUpVectorBar:"⥔",RightDownVectorBar:"⥕",DownLeftVectorBar:"⥖",DownRightVectorBar:"⥗",LeftUpVectorBar:"⥘",LeftDownVectorBar:"⥙",LeftTeeVector:"⥚",RightTeeVector:"⥛",RightUpTeeVector:"⥜",RightDownTeeVector:"⥝",DownLeftTeeVector:"⥞",DownRightTeeVector:"⥟",LeftUpTeeVector:"⥠",LeftDownTeeVector:"⥡",UpEquilibrium:"⥮",ReverseUpEquilibrium:"⥯",RoundImplies:"⥰",Elztfnc:"⦀",Elroang:"⦆",Elzddfnc:"⦙",Angle:"⦜",Elzlpargt:"⦠",ElzLap:"⧊",Elzdefas:"⧋",LeftTriangleBar:"⧏",NotLeftTriangleBar:"⧏",RightTriangleBar:"⧐",NotRightTriangleBar:"⧐",RuleDelayed:"⧴",Elxuplus:"⨄",ElzThr:"⨅",Elxsqcup:"⨆",ElzInf:"⨇",ElzSup:"⨈",ElzCint:"⨍",clockoint:"⨏",sqrint:"⨖",ElzTimes:"⨯",amalg:"⨿",ElzAnd:"⩓",ElzOr:"⩔",ElOr:"⩖",Elzminhat:"⩟",Equal:"⩵",nleqslant:"⩽",geqslant:"⩾",ngeqslant:"⩾",lessapprox:"⪅",gtrapprox:"⪆",lneq:"⪇",gneq:"⪈",lnapprox:"⪉",gnapprox:"⪊",lesseqqgtr:"⪋",gtreqqless:"⪌",eqslantless:"⪕",eqslantgtr:"⪖",NestedLessLess:"⪡",NotNestedLessLess:"⪡",NestedGreaterGreater:"⪢",NotNestedGreaterGreater:"⪢",precneqq:"⪵",succneqq:"⪶",precnapprox:"⪹",succnapprox:"⪺",subseteqq:"⫅",nsubseteqq:"⫅",supseteqq:"⫆",subsetneqq:"⫋",supsetneqq:"⫌",Elztdcol:"⫶",openbracketleft:"〚",openbracketright:"〛"},e.isCharacterUnicode=n,e.characterUnicode=function(t){return n(t)?e.characterUnicodeChart[t]:void 0}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.barredLUnicodeChart={l:"ł",L:"Ł"},e.barredLUnicode=function(t){return e.barredLUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.slashed_o="ø",e.slashed_O="Ø",e.slashedOUnicodeChart={o:e.slashed_o,O:e.slashed_O},e.slashedOUnicode=function(t){return e.slashedOUnicodeChart[t]}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.cyrillicUnicodeChart={CYRF:"Ф",CYRII:"І",CYROMEGA:"Ѡ",CYRG:"Г",cyrkvcrs:"ҝ",cyryo:"ё",CYRH:"Х",CYRZHDSC:"Җ",cyrphk:"ҧ",CYRTDSC:"Ҭ",CYRI:"И",cyryi:"ї",CYRDZHE:"Џ",cyriote:"ѥ",CYRK:"К",CYRSHHA:"Һ",CYRL:"Л",CYRM:"М",CYRCHLDSC:"Ӌ",CYRNJE:"Њ",CYRYAT:"Ѣ",CYRA:"А",CYRB:"Б",cyrchrdsc:"ҷ",cyrschwa:"ә",CYRDZE:"Ѕ",CYRIE:"Є",CYRC:"Ц",CYRZH:"Ж",CYRD:"Д",CYRABHCHDSC:"Ҿ",CYRFITA:"Ѳ",CYRE:"Е",CYRABHHA:"Ҩ",cyrya:"я",cyrdzhe:"џ",CYRIOTLYUS:"Ѩ",cyrsemisftsn:"ҍ",CYRV:"В",cyrishrt:"й",cyrdje:"ђ",cyrchldsc:"ӌ",CYRY:"Ү",cyrndsc:"ң",CYRZ:"З",CYRKHCRS:"Ҟ",CYRNG:"Ҥ",CYRCHRDSC:"Ҷ",CYRYHCRS:"Ұ",CYRSHCH:"Щ",CYRUSHRT:"Ў",cyryu:"ю",cyrksi:"ѯ",CYRN:"Н",CYRO:"О",CYRBYUS:"Ѫ",CYRP:"П",CYRZDSC:"Ҙ",CYRAE:"Ӕ",CYRR:"Р",CYRS:"С",CYRT:"Т",CYRABHCH:"Ҽ",cyruk:"ѹ",CYRU:"У",cyrii:"і",CYRSEMISFTSN:"Ҍ",cyrghcrs:"ғ",CYRISHRT:"Й",cyromegatitlo:"ѽ",cyrkbeak:"ҡ",cyrie:"є",cyrzdsc:"ҙ",CYRNDSC:"Ң",CYRGUP:"Ґ",cyrshch:"щ",CYRKHK:"Ӄ",cyrzh:"ж",CYRJE:"Ј",cyrthousands:"҂",cyrabhch:"ҽ",textnumero:"№",cyrng:"ҥ",CYRPSI:"Ѱ",CYRTETSE:"Ҵ",CYRIOTBYUS:"Ѭ",cyrnje:"њ",CYRIOTE:"Ѥ",cyrdze:"ѕ",cyrae:"ӕ",CYRHRDSN:"Ъ",CYRKOPPA:"Ҁ",CYRRTICK:"Ҏ",CYRSCHWA:"Ә",cyrtdsc:"ҭ",CYRGHK:"Ҕ",cyrabhha:"ҩ",cyrshha:"һ",CYRSH:"Ш",cyru:"у",cyrkhcrs:"ҟ",cyrt:"т",CYRERY:"Ы",cyrs:"с",cyrr:"р",CYROT:"Ѿ",cyrlyus:"ѧ",CYRNHK:"Ӈ",CYRSFTSN:"Ь",cyrghk:"ҕ",cyrp:"п",cyrabhdze:"ӡ",cyro:"о",CYRTSHE:"Ћ",cyrn:"н",CYRSDSC:"Ҫ",cyryhcrs:"ұ",cyrpsi:"ѱ",cyrz:"з",cyry:"ү",cyrje:"ј",cyrv:"в",cyrchvcrs:"ҹ",cyrkhk:"ӄ",cyre:"е",cyromega:"ѡ",cyrd:"д",cyrc:"ц",cyrb:"б",CYROTLD:"Ө",cyrgup:"ґ",CYRLJE:"Љ",cyra:"а",CYROMEGATITLO:"Ѽ",CYRGHCRS:"Ғ",CYRCHVCRS:"Ҹ",cyrm:"м",cyrl:"л",cyrsh:"ш",cyrk:"к",cyri:"и",cyrh:"х",CYRHDSC:"Ҳ",CYRIZH:"Ѵ",CYRABHDZE:"Ӡ",cyrkdsc:"қ",cyrg:"г",CYRCH:"Ч",cyrf:"ф",CYRYI:"Ї",cyrmillions:"҉",CYRKSI:"Ѯ",CYROMEGARND:"Ѻ",cyrot:"ѿ",cyrtetse:"ҵ",cyrhdsc:"ҳ",cyrushrt:"ў",cyriotlyus:"ѩ",CYRYA:"Я",cyrlje:"љ",cyrotld:"ө",CYRKDSC:"Қ",cyrhrdsn:"ъ",cyrrtick:"ҏ",cyrkoppa:"ҁ",CYRDJE:"Ђ",cyriotbyus:"ѭ",cyrhundredthousands:"҈",CYRpalochka:"Ӏ",CYRKVCRS:"Ҝ",cyromegarnd:"ѻ",cyrsftsn:"ь",cyrabhchdsc:"ҿ",cyrzhdsc:"җ",cyrerev:"э",CYRLYUS:"Ѧ",CYRKBEAK:"Ҡ",cyrery:"ы",CYREREV:"Э",cyrnhk:"ӈ",cyrsdsc:"ҫ",cyrch:"ч",cyrtshe:"ћ",CYRPHK:"Ҧ",CYRYO:"Ё",CYRYU:"Ю",CYRUK:"Ѹ"},e.cyrillicUnicode=function(t){return e.cyrillicUnicodeChart[t]}},function(t,e,i){"use strict";function n(t){return e.specialCharacters.hasOwnProperty(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.specialCharacters={i:"ı",j:"ȷ",oe:"œ",OE:"Œ",ae:"æ",AE:"Æ",aa:"å",AA:"Å",o:"ø",O:"Ø",ss:"ß",l:"ł",L:"Ł"},e.isSpecialCharacter=n,e.specialCharacter=function(t){return n(t)?e.specialCharacters[t]:void 0}},function(t,e,i){"use strict";function n(t,e){switch(t){case"cyrchar":var i=r.translateCharToCyrillic(e);if(i)return i;break;default:for(var n=0,s=[o.diacriticUnicode,a.formattingUnicode];n1||_.length>1)&&(x=1,C=3),b.draw_outlined_curve(o,a,r,s,h,x,C,g[y%g.length],_[y%_.length])}}},draw_outlined_curve:function(t,e,i,n,o,a,r,s,l){var s=s||0,l=l||0,u=this.canvas.getContext("2d");u.lineCap="round",u.strokeStyle=this.outer_color,u.lineWidth=r,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke(),u.strokeStyle=this.inner_color,u.lineWidth=a,u.beginPath(),u.moveTo(t,e+s),u.bezierCurveTo(t+o,e+s,i-o,n+l,i,n+l),u.stroke()}}),e.default=i}).call(e,i(0))},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(t,e,i){"use strict";function n(t){new a.default(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var o=i(279),a=function(t){return t&&t.__esModule?t:{default:t}}(o);window.workflowApp=n},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}function r(e){var i=t("#galaxy_tools").contents();if(0===i.length&&(i=t(document),t(this).removeClass("search_active"),i.find(".toolTitle").removeClass("search_match"),i.find(".toolSectionBody").hide(),i.find(".toolTitle").show(),i.find(".toolPanelLabel").show(),i.find(".toolSectionWrapper").each(function(){"recently_used_wrapper"!==t(this).attr("id")?t(this).show():t(this).hasClass("user_pref_visible")&&t(this).show()}),i.find("#search-no-results").hide(),i.find("#search-spinner").hide(),e)){i.find("#tool-search-query").val("search tools")}}function s(e,i){var n=g.default[i];if(n){var o=t(' ').addClass(n);e.before(o)}}Object.defineProperty(e,"__esModule",{value:!0});var l=i(3),u=a(l),c=i(280),d=a(c),h=i(281),f=a(h),p=i(282),m=a(p),v=i(190),g=a(v),_=i(287),w=a(_),b=i(4),y=a(b),x=i(203),C=a(x),k=i(42);!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]);e.default=t}(k);i(25),window.workflow_globals=window.workflow_globals||{},e.default=n.View.extend({initialize:function(e){function i(){var e=t('');window.show_modal("Save As a New Workflow",e,{OK:function(){var e=t("#workflow_rename").val().length>0?t("#workflow_rename").val():"SavedAs_"+l.workflow.name,i=t("#wf_annotation").val().length>0?t("#wf_annotation").val():"";t.ajax({url:l.urls.workflow_save_as,type:"POST",data:{workflow_name:e,workflow_annotation:i,workflow_data:function(){return JSON.stringify(l.workflow.to_simple())}}}).done(function(t){window.onbeforeunload=void 0,window.location=Galaxy.root+"workflow/editor?id="+t,hide_modal()}).fail(function(){hide_modal(),alert("Saving this workflow failed. Please contact this site's administrator.")})},Cancel:hide_modal})}function n(){l.workflow.layout(),l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview()}function a(){t.jStorage.set("overview-off",!1),t("#overview-border").css("right","0px"),t("#close-viewport").css("background-position","0px 0px")}function s(){t.jStorage.set("overview-off",!0),t("#overview-border").css("right","20000px"),t("#close-viewport").css("background-position","12px 0px")}var l=window.workflow_globals.app=this;this.options=e,this.urls=e&&e.urls||{};var c=function(){if(l.workflow.check_changes_in_active_form(),workflow&&l.workflow.has_changes){var t=function(){window.onbeforeunload=void 0,window.document.location=l.urls.workflow_index};window.show_modal("Close workflow editor","There are unsaved changes to your workflow which will be lost.",{Cancel:hide_modal,"Save Changes":function(){d(null,t)}},{"Don't Save":t})}else window.document.location=l.urls.workflow_index},d=function(e,i){if(show_message("Saving workflow","progress"),l.workflow.check_changes_in_active_form(),!l.workflow.has_changes)return hide_modal(),void(i&&i());l.workflow.rectify_workflow_outputs(),u.default.request({url:Galaxy.root+"api/workflows/"+l.options.id,type:"PUT",data:{workflow:l.workflow.to_simple()},success:function(e){var n=t("").text(e.message);if(e.errors){n.addClass("warningmark");var o=t("");t.each(e.errors,function(e,i){t("").text(i).appendTo(o)}),n.append(o)}else n.addClass("donemark");l.workflow.name=e.name,l.workflow.has_changes=!1,l.workflow.stored=!0,l.showWorkflowParameters(),e.errors?window.show_modal("Saving workflow",n,{Ok:hide_modal}):(i&&i(),hide_modal())},error:function(t){window.show_modal("Saving workflow failed.",t.err_msg,{Ok:hide_modal})}})};t("#tool-search-query").click(function(){t(this).focus(),t(this).select()}).keyup(function(){if(t(this).css("font-style","normal"),this.value.length<3)r(!1);else if(this.value!=this.lastValue){t(this).addClass("search_active");var e=this.value;this.timer&&clearTimeout(this.timer),t("#search-spinner").show(),this.timer=setTimeout(function(){t.get(l.urls.tool_search,{q:e},function(e){if(t("#search-no-results").hide(),t(".toolSectionWrapper").hide(),t(".toolSectionWrapper").find(".toolTitle").hide(),0!=e.length){var i=t.map(e,function(t,e){return"link-"+t});t(i).each(function(e,i){t("[id='"+i+"']").parent().addClass("search_match"),t("[id='"+i+"']").parent().show().parent().parent().show().parent().show()}),t(".toolPanelLabel").each(function(){for(var e=t(this),i=e.next(),n=!0;0!==i.length&&i.hasClass("toolTitle");){if(i.is(":visible")){n=!1;break}i=i.next()}n&&e.hide()})}else t("#search-no-results").show();t("#search-spinner").hide()},"json")},400)}this.lastValue=this.value}),this.canvas_manager=window.workflow_globals.canvas_manager=new f.default(this,t("#canvas-viewport"),t("#overview")),this.reset(),this.datatypes=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes",async:!1}).responseText),this.datatypes_mapping=JSON.parse(t.ajax({url:Galaxy.root+"api/datatypes/mapping",async:!1}).responseText),this.ext_to_type=this.datatypes_mapping.ext_to_class_name,this.type_to_type=this.datatypes_mapping.class_to_classes,this._workflowLoadAjax(l.options.id,{success:function(t){l.reset(),l.workflow.from_simple(t,!0),l.workflow.has_changes=!1,l.workflow.fit_canvas_to_nodes(),l.scroll_to_nodes(),l.canvas_manager.draw_overview();var e="";o.each(t.steps,function(i,n){var a="";i.errors&&(a+=""+i.errors+""),o.each(t.upgrade_messages[n],function(t){a+=""+t+""}),a&&(e+="Step "+(parseInt(n,10)+1)+": "+l.workflow.nodes[n].name+"")}),e?window.show_modal("Issues loading this workflow","Please review the following issues, possibly resulting from tool upgrades or changes.",{Continue:hide_modal}):hide_modal(),l.showWorkflowParameters()},beforeSubmit:function(t){show_message("Loading workflow","progress")}}),window.make_popupmenu&&make_popupmenu(t("#workflow-options-button"),{Save:d,"Save As":i,Run:function(){window.location=Galaxy.root+"workflows/run?id="+l.options.id},"Edit Attributes":function(){l.workflow.clear_active_node()},"Auto Re-layout":n,Close:c});var h=t.jStorage.get("overview-size");void 0!==h&&t("#overview-border").css({width:h,height:h}),t.jStorage.get("overview-off")?s():a(),t("#overview-border").bind("dragend",function(e,i){var n=t(this).offsetParent(),o=n.offset(),a=Math.max(n.width()-(i.offsetX-o.left),n.height()-(i.offsetY-o.top));t.jStorage.set("overview-size",a+"px")}),t("#close-viewport").click(function(){"0px"===t("#overview-border").css("right")?s():a()}),window.onbeforeunload=function(){if(workflow&&l.workflow.has_changes)return"There are unsaved changes to your workflow which will be lost."},this.options.workflows.length>0&&t("#left").find(".toolMenu").append(this._buildToolPanelWorkflows()),t("div.toolSectionBody").hide(),t("div.toolSectionTitle > span").wrap("");var p=null;t("div.toolSectionTitle").each(function(){var e=t(this).next("div.toolSectionBody");t(this).click(function(){e.is(":hidden")?(p&&p.slideUp("fast"),p=e,e.slideDown("fast")):(e.slideUp("fast"),p=null)})}),(0,C.default)("workflow-name","workflow-name",l.urls.rename_async,"new_name"),t("#workflow-tag").click(function(){return t(".tag-area").click(),!1}),(0,C.default)("workflow-annotation","workflow-annotation",l.urls.annotate_async,"new_annotation",25,!0,4)},_buildToolPanelWorkflows:function(){var e=this,i=t('');return o.each(this.options.workflows,function(n){if(n.id!==e.options.id){var o=new y.default.ButtonIcon({icon:"fa fa-copy",cls:"ui-button-icon-plain",tooltip:"Copy and insert individual steps",onclick:function(){n.step_count<2?e.copy_into_workflow(n.id,n.name):Galaxy.modal.show({title:"Warning",body:"This will copy "+n.step_count+" new steps into your workflow.",buttons:{Cancel:function(){Galaxy.modal.hide()},Copy:function(){Galaxy.modal.hide(),e.copy_into_workflow(n.id,n.name)}}})}}),a=t("").attr("href","#").html(n.name).on("click",function(){e.add_node_for_subworkflow(n.latest_id,n.name)});i.find(".toolSectionBg").append(t("").addClass("toolTitle").append(a).append(o.$el))}}),i},copy_into_workflow:function(e){var i=this;this._workflowLoadAjax(e,{success:function(e){i.workflow.from_simple(e,!1);var n="";t.each(e.upgrade_messages,function(e,o){n+="Step "+(parseInt(e,10)+1)+": "+i.workflow.nodes[e].name+"",t.each(o,function(t,e){n+="- "+e+"
"}),n+="
"}),n?window.show_modal("Subworkflow embedded with changes","Problems were encountered loading this workflow (possibly a result of tool upgrades). Please review the following parameters and then save.",{Continue:hide_modal}):hide_modal()},beforeSubmit:function(t){show_message("Importing workflow","progress")}})},reset:function(){this.workflow&&this.workflow.remove_all(),this.workflow=window.workflow_globals.workflow=new d.default(this,t("#canvas-container"))},scroll_to_nodes:function(){var e,i,n=t("#canvas-viewport"),o=t("#canvas-container");i=o.width()"+i+"";return e+=""},showWorkflowParameters:function(){var e=/\$\{.+?\}/g,i=[],n=t("#workflow-parameters-container"),o=t("#workflow-parameters-box"),a="",r=[];t.each(this.workflow.nodes,function(n,o){o.config_form&&o.config_form.inputs&&u.default.deepeach(o.config_form.inputs,function(t){if("string"==typeof t.value){var i=t.value.match(e);i&&(r=r.concat(i))}}),o.post_job_actions&&t.each(o.post_job_actions,function(i,n){n.action_arguments&&t.each(n.action_arguments,function(t,i){var n=i.match(e);n&&(r=r.concat(n))})}),r&&t.each(r,function(e,n){-1===t.inArray(n,i)&&i.push(n)})}),i&&0!==i.length?(t.each(i,function(t,e){a+=""+e.substring(2,e.length-1)+"
"}),n.html(a),o.show()):(n.html(a),o.hide())},showAttributes:function(){t(".right-content").hide(),t("#edit-attributes").show()},showForm:function(e,i){var n="right-content",o=n+"-"+i.id,a=t("#"+n);if(e&&0==a.find("#"+o).length){var r=t('');if(e.node=i,e.workflow=this.workflow,e.datatypes=this.datatypes,e.icon=g.default[i.type],e.cls="ui-portlet-narrow",i){var s="tool"==i.type?"Tool":"Default";r.append(new w.default[s](e).form.$el),a.append(r)}else Galaxy.emit.debug("workflow-view::initialize()","Node not found in workflow.")}t("."+n).hide(),a.find("#"+o).show(),a.show(),a.scrollTop()},isSubType:function(t,e){return t=this.ext_to_type[t],e=this.ext_to_type[e],this.type_to_type[t]&&e in this.type_to_type[t]},prebuildNode:function(e,i,n){var o=this,a=t(""),r=t(""+i+"
");s(r.find(".nodeTitle"),e),a.append(r),a.css("left",t(window).scrollLeft()+20),a.css("top",t(window).scrollTop()+20),a.append(t(""));var l=new m.default(this,{element:a});l.type=e,l.content_id=n;var u="
loading tool info...
";a.find(".toolFormBody").append(u);var c=t("");c.append(t("").addClass("fa-icon-button fa fa-files-o").click(function(t){l.clone()})),c.append(t("").addClass("fa-icon-button fa fa-times").click(function(t){l.destroy()})),a.appendTo("#canvas-container");var d=t("#canvas-container").position(),h=t("#canvas-container").parent(),f=a.width(),p=a.height();return a.css({left:-d.left+h.width()/2-f/2,top:-d.top+h.height()/2-p/2}),c.prependTo(a.find(".toolFormTitle")),f+=c.width()+10,a.css("width",f),a.bind("dragstart",function(){o.workflow.activate_node(l)}).bind("dragend",function(){o.workflow.node_changed(this),o.workflow.fit_canvas_to_nodes(),o.canvas_manager.draw_overview()}).bind("dragclickonly",function(){o.workflow.activate_node(l)}).bind("drag",function(e,i){var n=t(this).offsetParent().offset(),o=i.offsetX-n.left,a=i.offsetY-n.top;t(this).css({left:o,top:a}),t(this).find(".terminal").each(function(){this.terminal.redraw()})}),l}})}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t){function n(t,e){this.app=t,this.canvas_container=e,this.id_counter=0,this.nodes={},this.name=null,this.has_changes=!1,this.active_form_has_changes=!1,this.workflowOutputLabels={}}Object.defineProperty(e,"__esModule",{value:!0});var o=i(223),a=function(t){return t&&t.__esModule?t:{default:t}}(o),r=i(42),s=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}(r);t.extend(n.prototype,{canLabelOutputWith:function(t){return!t||!(t in this.workflowOutputLabels)},registerOutputLabel:function(t){t&&(this.workflowOutputLabels[t]=!0)},unregisterOutputLabel:function(t){t&&delete this.workflowOutputLabels[t]},updateOutputLabel:function(t,e){t&&this.unregisterOutputLabel(t),this.canLabelOutputWith(e)||s.warning("Workflow contains duplicate workflow output labels "+e+". This must be fixed before it can be saved."),e&&this.registerOutputLabel(e)},attemptUpdateOutputLabel:function(t,e,i){return!!this.canLabelOutputWith(i)&&(t.labelWorkflowOutput(e,i),t.nodeView.redrawWorkflowOutputs(),!0)},create_node:function(t,e,i){var n=this.app.prebuildNode(t,e,i);return this.add_node(n),this.fit_canvas_to_nodes(),this.app.canvas_manager.draw_overview(),this.activate_node(n),n},add_node:function(t){t.id=this.id_counter,t.element.attr("id","wf-node-step-"+t.id),this.id_counter++,this.nodes[t.id]=t,this.has_changes=!0,t.workflow=this},remove_node:function(t){this.active_node==t&&this.clear_active_node(),delete this.nodes[t.id],this.has_changes=!0},remove_all:function(){var e=this;t.each(this.nodes,function(t,i){i.destroy(),e.remove_node(i)})},rectify_workflow_outputs:function(){var e=!1,i=!1;if(t.each(this.nodes,function(n,o){o.workflow_outputs&&o.workflow_outputs.length>0&&(e=!0),t.each(o.post_job_actions,function(t,e){"HideDatasetAction"===e.action_type&&(i=!0)})}),!1!==e||!1!==i){var n=this;t.each(this.nodes,function(i,o){if("tool"===o.type){var a=!1;null===o.post_job_actions&&(o.post_job_actions={},a=!0);var r=[];t.each(o.post_job_actions,function(t,e){"HideDatasetAction"==e.action_type&&r.push(t)}),r.length>0&&t.each(r,function(t,e){a=!0,delete o.post_job_actions[e]}),e&&t.each(o.output_terminals,function(t,e){if(!0==!o.isWorkflowOutput(e.name)){a=!0;var i={action_type:"HideDatasetAction",output_name:e.name,action_arguments:{}};o.post_job_actions["HideDatasetAction"+e.name]=null,o.post_job_actions["HideDatasetAction"+e.name]=i}}),n.active_node==o&&!0===a&&n.reload_active_node()}})}},to_simple:function(){var e={};return t.each(this.nodes,function(i,n){var o={};t.each(n.input_terminals,function(e,i){o[i.name]=null;var n=[];t.each(i.connectors,function(t,e){if(e.handle1){var a={id:e.handle1.node.id,output_name:e.handle1.name},r=i.attributes.input.input_subworkflow_step_id;void 0!==r&&(a.input_subworkflow_step_id=r),n[t]=a,o[i.name]=n}})});var a={};n.post_job_actions&&t.each(n.post_job_actions,function(t,e){var i={action_type:e.action_type,output_name:e.output_name,action_arguments:e.action_arguments};a[e.action_type+e.output_name]=null,a[e.action_type+e.output_name]=i}),n.workflow_outputs||(n.workflow_outputs=[]);var r={id:n.id,type:n.type,content_id:n.content_id,tool_version:n.config_form.version,tool_state:n.tool_state,errors:n.errors,input_connections:o,position:t(n.element).position(),annotation:n.annotation,post_job_actions:n.post_job_actions,uuid:n.uuid,label:n.label,workflow_outputs:n.workflow_outputs};e[n.id]=r}),{steps:e}},from_simple:function(e,i){var n=void 0===i||i,o=this,r=0;n?o.name=e.name:r=Object.keys(o.nodes).length;var s=r,l=!1;t.each(e.steps,function(e,i){var a=o.app.prebuildNode(i.type,i.name,i.content_id);n||(i.uuid=null,t.each(i.workflow_outputs,function(t,e){e.uuid=null})),a.init_field_data(i),i.position&&a.element.css({top:i.position.top,left:i.position.left}),a.id=parseInt(i.id)+r,o.nodes[a.id]=a,s=Math.max(s,parseInt(e)+r),l||(a.workflow_outputs.length>0?l=!0:t.each(a.post_job_actions||[],function(t,e){"HideDatasetAction"===e.action_type&&(l=!0)}))}),o.id_counter=s+1,t.each(e.steps,function(e,i){var n=o.nodes[parseInt(e)+r];t.each(i.input_connections,function(e,i){i&&(t.isArray(i)||(i=[i]),t.each(i,function(t,i){var s=o.nodes[parseInt(i.id)+r],l=new a.default;l.connect(s.output_terminals[i.output_name],n.input_terminals[e]),l.redraw()}))}),l&&t.each(n.output_terminals,function(e,i){if(void 0===n.post_job_actions["HideDatasetAction"+i.name]){n.addWorkflowOutput(i.name);t(n.element).find(".callout."+i.name).find("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"),o.has_changes=!0}})})},check_changes_in_active_form:function(){this.active_form_has_changes&&(this.has_changes=!0,t("#right-content").find("form").submit(),this.active_form_has_changes=!1)},reload_active_node:function(){if(this.active_node){var t=this.active_node;this.clear_active_node(),this.activate_node(t)}},clear_active_node:function(){this.active_node&&(this.active_node.make_inactive(),this.active_node=null),this.app.showAttributes()},activate_node:function(t){this.active_node!=t&&(this.check_changes_in_active_form(),this.clear_active_node(),this.app.showForm(t.config_form,t),t.make_active(),this.active_node=t)},node_changed:function(t,e){this.has_changes=!0,this.active_node==t&&e&&(this.check_changes_in_active_form(),this.app.showForm(t.config_form,t)),this.app.showWorkflowParameters()},layout:function(){this.check_changes_in_active_form(),this.has_changes=!0;var e={},i={};t.each(this.nodes,function(t,n){void 0===e[t]&&(e[t]=0),void 0===i[t]&&(i[t]=[])}),t.each(this.nodes,function(n,o){t.each(o.input_terminals,function(n,a){t.each(a.connectors,function(t,n){var a=n.handle1.node;e[o.id]+=1,i[a.id].push(o.id)})})});for(var n=[];;){var o=[];for(var a in e)0===e[a]&&o.push(a);if(0===o.length)break;n.push(o);for(var r in o){var s=o[r];delete e[s];for(var l in i[s])e[i[s][l]]-=1}}if(!e.length){var u=this.nodes,c=80;t.each(n,function(e,i){i.sort(function(e,i){return t(u[e].element).position().top-t(u[i].element).position().top});var n=0,o=30;t.each(i,function(e,i){var a=u[i],r=t(a.element);t(r).css({top:o,left:c}),n=Math.max(n,t(r).width()),o+=t(r).height()+30}),c+=n+80}),t.each(u,function(t,e){e.redraw()})}},bounds_for_all_nodes:function(){var e,i=1/0,n=-1/0,o=1/0,a=-1/0;return t.each(this.nodes,function(r,s){var l=t(s.element);e=l.position(),i=Math.min(i,e.left),n=Math.max(n,e.left+l.width()),o=Math.min(o,e.top),a=Math.max(a,e.top+l.width())}),{xmin:i,xmax:n,ymin:o,ymax:a}},fit_canvas_to_nodes:function(){function e(t,e){return Math.ceil(t/e)*e}function i(t,e){if(t3*e){return-(t-(Math.ceil(t%e/e)+1)*e)}return 0}var n=this.bounds_for_all_nodes(),o=this.canvas_container.position(),a=this.canvas_container.parent(),r=i(n.xmin,100),s=i(n.ymin,100);r=Math.max(r,o.left),s=Math.max(s,o.top);var l=o.left-r,u=o.top-s,c=e(n.xmax+100,100)+r,d=e(n.ymax+100,100)+s;c=Math.max(c,-l+a.width()),d=Math.max(d,-u+a.height()),this.canvas_container.css({left:l,top:u,width:c,height:d}),this.canvas_container.children().each(function(){var e=t(this).position();t(this).css("left",e.left+r),t(this).css("top",e.top+s)})}}),e.default=n}).call(e,i(0))},function(t,e,i){"use strict";(function(t){function i(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag(),this.init_copy_paste()}function n(t){this.panel=t}Object.defineProperty(e,"__esModule",{value:!0}),t.extend(i.prototype,{init_drag:function(){var e=this,i=function(t,i){t=Math.min(t,e.cv.width()/2),t=Math.max(t,-e.cc.width()+e.cv.width()/2),i=Math.min(i,e.cv.height()/2),i=Math.max(i,-e.cc.height()+e.cv.height()/2),e.cc.css({left:t,top:i}),e.cv.css({"background-position-x":t,"background-position-y":i}),e.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new n(this)});var o,a;this.cv.bind("dragstart",function(){var i=t(this).offset(),n=e.cc.position();a=n.top-i.top,o=n.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+a)}).bind("dragend",function(){e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),this.overview.click(function(t){if(e.overview.hasClass("blockaclick"))e.overview.removeClass("blockaclick");else{var n=e.cc.width(),o=e.cc.height(),a=e.oc.width(),r=e.oc.height(),s=t.pageX-e.oc.offset().left-e.ov.width()/2,l=t.pageY-e.oc.offset().top-e.ov.height()/2;i(-s/a*n,-l/r*o),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}}),this.ov.bind("drag",function(t,n){var o=e.cc.width(),a=e.cc.height(),r=e.oc.width(),s=e.oc.height(),l=n.offsetX-e.overview.offset().left,u=n.offsetY-e.overview.offset().top;i(-l/r*o,-u/s*a)}).bind("dragend",function(){e.overview.addClass("blockaclick"),e.app.workflow.fit_canvas_to_nodes(),e.draw_overview()}),t("#overview-border").bind("drag",function(i,n){var o=t(this).offsetParent(),a=o.offset(),r=Math.max(o.width()-(n.offsetX-a.left),o.height()-(n.offsetY-a.top));t(this).css({width:r,height:r}),e.draw_overview()}),t("#overview-border div").bind("drag",function(){})},init_copy_paste:function(){var t=this;document.addEventListener("copy",function(e){t.app.workflow.active_node&&e.clipboardData.setData("application/json",JSON.stringify({nodeId:t.app.workflow.active_node.id})),e.preventDefault()}),document.addEventListener("paste",function(e){var i;try{i=JSON.parse(e.clipboardData.getData("application/json")).nodeId}catch(t){}i&&t.app.workflow.nodes.hasOwnProperty(i)&&t.app.workflow.nodes[i].clone(),e.preventDefault()})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,n=this.ov,o=t.width(),a=t.height(),r=i.width(),s=i.height(),l=t.position();n.css({left:-l.left/o*r,top:-l.top/a*s,width:e.width()/o*r-2,height:e.height()/a*s-2})},draw_overview:function(){var e,i,n,o,a=t("#overview-canvas"),r=a.parent().parent().width(),s=a.get(0).getContext("2d"),l=t("#canvas-container").width(),u=t("#canvas-container").height(),c=this.cv.width(),d=this.cv.height();l0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(c,d,h,f),s.strokeRect(c,d,h,f)}),this.update_viewport_overlay()}}),t.extend(n.prototype,{test:function(e,i){clearTimeout(this.timeout);var n=e.pageX,o=e.pageY,a=t(this.panel),r=a.position(),s=a.width(),l=a.height(),u=a.parent(),c=u.width(),d=u.height(),h=u.offset(),f=h.left,p=h.top,m=f+u.width(),v=p+u.height(),g=-(s-c/2),_=-(l-d/2),w=c/2,b=d/2,y=!1;if(n-5m){if(r.left>g){var x=Math.min(23,r.left-g);a.css("left",r.left-x),y=!0}}else if(o-5v&&r.top>_){var x=Math.min(23,r.top-g);a.css("top",r.top-x+"px"),y=!0}if(y){i();var a=this;this.timeout=setTimeout(function(){a.test(e,i)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),e.default=i}).call(e,i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(3),s=a(r),l=i(283),u=a(l),c=t.Model.extend({initialize:function(t,e){this.app=t,this.element=e.element,this.input_terminals={},this.output_terminals={},this.errors={},this.workflow_outputs=[]},getWorkflowOutput:function(t){return n.findWhere(this.workflow_outputs,{output_name:t})},isWorkflowOutput:function(t){return void 0!==this.getWorkflowOutput(t)},removeWorkflowOutput:function(t){for(;this.isWorkflowOutput(t);)this.workflow_outputs.splice(this.getWorkflowOutput(t),1)},addWorkflowOutput:function(t,e){if(!this.isWorkflowOutput(t)){var i={output_name:t};return e&&(i.label=e),this.workflow_outputs.push(i),!0}return!1},labelWorkflowOutput:function(t,e){var i=!1,n=null;if(this.isWorkflowOutput(t)){var o=this.getWorkflowOutput(t);n=o.label,o.label=e,i=n!=e}else i=this.addWorkflowOutput(t,e);return i&&(this.app.workflow.updateOutputLabel(n,e),this.markChanged(),this.nodeView.redrawWorkflowOutputs()),i},connectedOutputTerminals:function(){return this._connectedTerminals(this.output_terminals)},_connectedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.connectors.length>0&&e.push(i)}),e},hasConnectedOutputTerminals:function(){var t=this.output_terminals;for(var e in t)if(t[e].connectors.length>0)return!0;return!1},connectedMappedInputTerminals:function(){return this._connectedMappedTerminals(this.input_terminals)},hasConnectedMappedInputTerminals:function(){var t=this.input_terminals;for(var e in t){var i=t[e];if(i.connectors.length>0&&i.isMappedOver())return!0}return!1},_connectedMappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&i.connectors.length>0&&e.push(i)}),e},mappedInputTerminals:function(){return this._mappedTerminals(this.input_terminals)},_mappedTerminals:function(t){var e=[];return o.each(t,function(t,i){i.mapOver().isCollection&&e.push(i)}),e},hasMappedOverInputTerminals:function(){var t=!1;return n.each(this.input_terminals,function(e){e.mapOver().isCollection&&(t=!0)}),t},redraw:function(){o.each(this.input_terminals,function(t,e){e.redraw()}),o.each(this.output_terminals,function(t,e){e.redraw()})},clone:function(){var t=this,e={name:this.name,label:this.label,annotation:this.annotation,post_job_actions:this.post_job_actions},i=this.app.workflow.create_node(this.type,this.name,this.content_id);s.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{type:this.type,tool_id:this.content_id,inputs:this.tool_state},success:function(n){var o=Object.assign({},n,e);i.init_field_data(o),i.update_field_data(o),t.app.workflow.activate_node(i)}})},destroy:function(){o.each(this.input_terminals,function(t,e){e.destroy()}),o.each(this.output_terminals,function(t,e){e.destroy()}),this.app.workflow.remove_node(this),o(this.element).remove()},make_active:function(){o(this.element).addClass("toolForm-active")},make_inactive:function(){var t=this.element.get(0);!function(e){e.removeChild(t),e.appendChild(t)}(t.parentNode),o(t).removeClass("toolForm-active")},init_field_data:function(t){t.type&&(this.type=t.type),this.name=t.name,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.tool_state=t.tool_state,this.errors=t.errors,this.tooltip=t.tooltip?t.tooltip:"",this.annotation=t.annotation,this.post_job_actions=t.post_job_actions?t.post_job_actions:{},this.label=t.label,this.uuid=t.uuid,this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[];var e=this,i=new u.default({el:this.element[0],node:e});e.nodeView=i,o.each(t.data_inputs,function(t,e){i.addDataInput(e)}),t.data_inputs.length>0&&t.data_outputs.length>0&&i.addRule(),o.each(t.data_outputs,function(t,e){i.addDataOutput(e)}),i.render(),this.app.workflow.node_changed(this,!0)},update_field_data:function(t){var e=this,i=e.nodeView,a=[];if(o.each(i.outputViews,function(e,i){var o=i.output.name,r=t.data_outputs,s=!1;n.each(r,function(t){t.name==o&&(s=!0)}),!1===s&&a.push(o)}),n.each(a,function(t){n.each(i.outputViews[t].terminalElement.terminal.connectors,function(t){t&&t.destroy()}),i.outputViews[t].remove(),delete i.outputViews[t],delete e.output_terminals[t]}),o.each(e.workflow_outputs,function(t,i){i&&!e.output_terminals[i.output_name]&&e.workflow_outputs.splice(t,1)}),o.each(t.data_outputs,function(t,n){i.outputViews[n.name]?(e.output_terminals[n.name].datatypes=n.extensions,e.output_terminals[n.name].destroyInvalidConnections()):i.addDataOutput(n)}),this.tool_state=t.tool_state,this.config_form=t.config_form,this.tool_version=this.config_form&&this.config_form.version,this.errors=t.errors,this.annotation=t.annotation,this.label=t.label,"post_job_actions"in t){var r=t.post_job_actions;this.post_job_actions=r||{}}e.nodeView.renderToolErrors();var s=i.$("div.inputs"),l=i.newInputsDiv(),u={};n.each(t.data_inputs,function(t){var i=e.nodeView.addDataInput(t,l);u[t.name]=i}),n.each(n.difference(n.values(i.terminalViews),n.values(u)),function(t){t.el.terminal.destroy()}),i.terminalViews=u,e.nodeView.render(),1==t.data_outputs.length&&"collection_type"in t.data_outputs[0]&&i.updateDataOutput(t.data_outputs[0]),s.replaceWith(l),"workflow_outputs"in t&&(this.workflow_outputs=t.workflow_outputs?t.workflow_outputs:[]),this.markChanged(),this.redraw()},error:function(t){var e=o(this.element).find(".toolFormBody");e.find("div").remove();var i="
"+t+"
";this.config_form=i,e.html(i),this.app.workflow.node_changed(this)},markChanged:function(){this.app.workflow.node_changed(this)}});e.default=c}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var a=i(2),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}(a),s=i(284),l=o(s),u=i(286),c=o(u);e.default=t.View.extend({initialize:function(t){this.node=t.node,this.output_width=Math.max(150,this.$el.width()),this.tool_body=this.$el.find(".toolFormBody"),this.tool_body.find("div").remove(),this.newInputsDiv().appendTo(this.tool_body),this.terminalViews={},this.outputViews={}},render:function(){this.renderToolLabel(),this.renderToolErrors(),this.$el.css("width",Math.min(250,Math.max(this.$el.width(),this.output_width)))},renderToolLabel:function(){this.$(".nodeTitle").text(this.node.label||this.node.name)},renderToolErrors:function(){this.node.errors?this.$el.addClass("tool-node-error"):this.$el.removeClass("tool-node-error")},newInputsDiv:function(){return n("").addClass("inputs")},updateMaxWidth:function(t){this.output_width=Math.max(this.output_width,t)},addRule:function(){this.tool_body.append(n("").addClass("rule"))},addDataInput:function(t,e){var i=!0;e||(e=this.$(".inputs"),i=!1);var n=this.terminalViews[t.name],o="dataset_collection"==t.input_type?l.default.InputCollectionTerminalView:l.default.InputTerminalView;if(!n||n instanceof o||(n.el.terminal.destroy(),n=null),n){var a=n.el.terminal;a.update(t),a.destroyInvalidConnections()}else n=new o({node:this.node,input:t});this.terminalViews[t.name]=n;var r=n.el,s=new c.default.DataInputView({terminalElement:r,input:t,nodeView:this,skipResize:i}),u=s.$el;return e.append(u.prepend(n.terminalElements())),n},addDataOutput:function(t){var e=t.collection?l.default.OutputCollectionTerminalView:l.default.OutputTerminalView,i=new e({node:this.node,output:t}),n=new c.default.DataOutputView({output:t,terminalElement:i.el,nodeView:this});this.outputViews[t.name]=n,this.tool_body.append(n.$el.append(i.terminalElements()))},redrawWorkflowOutputs:function(){r.each(this.outputViews,function(t){t.redrawWorkflowOutput()})},updateDataOutput:function(t){this.node.output_terminals[t.name].update(t)}})}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n,o){function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var r=i(285),s=a(r),l=i(223),u=a(l);window.workflow_globals=window.workflow_globals||{};var c=t.View.extend({tagName:"div",className:"fa-icon-button fa fa-folder-o",initialize:function(t){this.$el.tooltip({delay:500,title:"Run tool in parallel over collection"}),this.model.bind("change",n.bind(this.render,this))},render:function(){this.model.mapOver.isCollection?this.$el.show():this.$el.hide()}}),d=c.extend({events:{click:"onClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave"},onMouseEnter:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&this.$el.css("color","red")},onMouseLeave:function(t){this.$el.css("color","black")},onClick:function(t){var e=this.model;!e.terminal.connected()&&e.mapOver.isCollection&&e.terminal.resetMapping()}}),h=t.View.extend({setupMappingView:function(t){var e=new this.terminalMappingClass({terminal:t}),i=new this.terminalMappingViewClass({model:e});i.render(),t.terminalMappingView=i,this.terminalMappingView=i},terminalElements:function(){return this.terminalMappingView?[this.terminalMappingView.el,this.el]:[this.el]}}),f=h.extend({className:"terminal input-terminal",initialize:function(t){var e=t.node,i=t.input,n=i.name,o=this.terminalForInput(i);o.multiple||this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.input_terminals[n]=o},events:{dropinit:"onDropInit",dropstart:"onDropStart",dropend:"onDropEnd",drop:"onDrop",hover:"onHover"},onDropInit:function(t,e){var i=this.el.terminal;return o(e.drag).hasClass("output-terminal")&&i.canAccept(e.drag.terminal)},onDropStart:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#BBFFBB")},onDropEnd:function(t,e){e.proxy.terminal&&(e.proxy.terminal.connectors[0].inner_color="#FFFFFF")},onDrop:function(t,e){var i=this.el.terminal;new u.default(e.drag.terminal,i).redraw()},onHover:function(){var t=this.el,e=t.terminal;if(e.connectors.length>0){var i=o("").css({display:"none"}).appendTo("body").append(o("").append(o("").addClass("fa-icon-button fa fa-times").click(function(){o.each(e.connectors,function(t,e){e&&e.destroy()}),i.remove()}))).bind("mouseleave",function(){o(this).remove()});i.css({top:o(t).offset().top-2,left:o(t).offset().left-i.width(),"padding-right":o(t).width()}).show()}}}),p=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputTerminal({element:this.el,input:t})}}),m=f.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:d,terminalForInput:function(t){return new s.default.InputCollectionTerminal({element:this.el,input:t})}}),v=h.extend({className:"terminal output-terminal",initialize:function(t){var e=t.node,i=t.output,n=i.name,o=this.terminalForOutput(i);this.setupMappingView(o),this.el.terminal=o,o.node=e,o.name=n,e.output_terminals[n]=o},events:{drag:"onDrag",dragstart:"onDragStart",dragend:"onDragEnd"},onDrag:function(t,e){var i=function(){var t=o(e.proxy).offsetParent().offset(),i=e.offsetX-t.left,n=e.offsetY-t.top;o(e.proxy).css({left:i,top:n}),e.proxy.terminal.redraw(),window.workflow_globals.canvas_manager.update_viewport_overlay()};i(),o("#canvas-container").get(0).scroll_panel.test(t,i)},onDragStart:function(t,e){o(e.available).addClass("input-terminal-active"),window.workflow_globals.workflow.check_changes_in_active_form();var i=o('').appendTo("#canvas-container").get(0);i.terminal=new s.default.OutputTerminal({element:i});var n=new u.default;return n.dragging=!0,n.connect(this.el.terminal,i.terminal),i},onDragEnd:function(t,e){var i=e.proxy.terminal.connectors[0];i&&i.destroy(),o(e.proxy).remove(),o(e.available).removeClass("input-terminal-active"),o("#canvas-container").get(0).scroll_panel.stop()}}),g=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.extensions;return new s.default.OutputTerminal({element:this.el,datatypes:e})}}),_=v.extend({terminalMappingClass:s.default.TerminalMapping,terminalMappingViewClass:c,terminalForOutput:function(t){var e=t.collection_type,i=t.collection_type_source;return new s.default.OutputCollectionTerminal({element:this.el,collection_type:e,collection_type_source:i,datatypes:t.extensions})}});e.default={InputTerminalView:p,OutputTerminalView:g,InputCollectionTerminalView:m,OutputCollectionTerminalView:_}}).call(e,i(1),i(2),i(0))},function(t,e,i){"use strict";(function(t,i,n){function o(t){this.collectionType=t,this.isCollection=!0,this.rank=t.split(":").length}Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var a={isCollection:!1,canMatch:function(t){return!1},canMapOver:function(t){return!1},toString:function(){return"NullCollectionType[]"},append:function(t){return t},equal:function(t){return t===this}},r={isCollection:!0,canMatch:function(t){return a!==t},canMapOver:function(t){return!1},toString:function(){return"AnyCollectionType[]"},append:function(t){throw"Cannot append to ANY_COLLECTION_TYPE_DESCRIPTION"},equal:function(t){return t===this}};t.extend(o.prototype,{append:function(t){return t===a?this:t===r?otherCollectionType:new o(this.collectionType+":"+t.collectionType)},canMatch:function(t){return t!==a&&(t===r||t.collectionType==this.collectionType)},canMapOver:function(t){if(t===a)return!1;if(t===r)return!1;if(this.rank<=t.rank)return!1;var e=t.collectionType;return this._endsWith(this.collectionType,e)},effectiveMapOver:function(t){var e=t.collectionType;return new o(this.collectionType.substring(0,this.collectionType.length-e.length-1))},equal:function(t){return t.collectionType==this.collectionType},toString:function(){return"CollectionType["+this.collectionType+"]"},_endsWith:function(t,e){return-1!==t.indexOf(e,t.length-e.length)}});var s=i.Model.extend({initialize:function(t){this.mapOver=t.mapOver||a,this.terminal=t.terminal,this.terminal.terminalMapping=this},disableMapOver:function(){this.setMapOver(a)},setMapOver:function(t){this.mapOver=t,this.trigger("change")}}),l=i.Model.extend({initialize:function(t){this.element=t.element,this.connectors=[]},connect:function(t){this.connectors.push(t),this.node&&this.node.markChanged()},disconnect:function(e){this.connectors.splice(t.inArray(e,this.connectors),1),this.node&&(this.node.markChanged(),this.resetMappingIfNeeded())},redraw:function(){t.each(this.connectors,function(t,e){e.redraw()})},destroy:function(){t.each(this.connectors.slice(),function(t,e){e.destroy()})},destroyInvalidConnections:function(){n.each(this.connectors,function(t){t&&t.destroyIfInvalid()})},setMapOver:function(t){this.multiple||this.mapOver().equal(t)||(this.terminalMapping.setMapOver(t),n.each(this.node.output_terminals,function(e){e.setMapOver(t)}))},mapOver:function(){return this.terminalMapping?this.terminalMapping.mapOver:a},isMappedOver:function(){return this.terminalMapping&&this.terminalMapping.mapOver.isCollection},resetMapping:function(){this.terminalMapping.disableMapOver()},resetMappingIfNeeded:function(){}}),u=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.datatypes=t.datatypes},resetMappingIfNeeded:function(){this.node.hasConnectedOutputTerminals()||this.node.hasConnectedMappedInputTerminals()||n.each(this.node.mappedInputTerminals(),function(t){t.resetMappingIfNeeded()}),!this.node.hasMappedOverInputTerminals()&&this.resetMapping()},resetMapping:function(){this.terminalMapping.disableMapOver(),n.each(this.connectors,function(t){var e=t.handle2;e&&(e.resetMappingIfNeeded(),t.destroyIfInvalid())})}}),c=l.extend({initialize:function(t){l.prototype.initialize.call(this,t),this.update(t.input)},canAccept:function(t){return!this._inputFilled()&&this.attachable(t)},resetMappingIfNeeded:function(){this.mapOver().isCollection&&((this.node.hasConnectedMappedInputTerminals()||!this.node.hasConnectedOutputTerminals())&&this.resetMapping())},resetMapping:function(){this.terminalMapping.disableMapOver(),this.node.hasMappedOverInputTerminals()||n.each(this.node.output_terminals,function(t){t.resetMapping()})},connected:function(){return 0!==this.connectors.length},_inputFilled:function(){var t;return this.connected()?this.multiple?this._collectionAttached()?inputsFilled=!0:t=!1:t=!0:t=!1,t},_collectionAttached:function(){if(this.connected()){var t=this.connectors[0].handle1;return!!t&&!!(t.isCollection||t.isMappedOver()||t.datatypes.indexOf("input_collection")>0)}return!1},_mappingConstraints:function(){if(!this.node)return[];var t=this.mapOver();if(t.isCollection)return[t];var e=[];return this.node.hasConnectedOutputTerminals()?e.push(n.first(n.values(this.node.output_terminals)).mapOver()):n.each(this.node.connectedMappedInputTerminals(),function(t){e.push(t.mapOver())}),e},_producesAcceptableDatatype:function(t){for(var e in this.datatypes){var i=this.datatypes[e];if("input"==i)return!0;var n=new Array;if(n=n.concat(t.datatypes),t.node.post_job_actions)for(var o in t.node.post_job_actions){var a=t.node.post_job_actions[o];"ChangeDatatypeAction"!=a.action_type||""!=a.output_name&&a.output_name!=t.name||!a.action_arguments||n.push(a.action_arguments.newtype)}for(var r in n){var s=n[r];if("input"==s||"_sniff_"==s||"input_collection"==s||window.workflow_globals.app.isSubType(n[r],i))return!0}}return!1},_otherCollectionType:function(t){var e=a;t.isCollection&&(e=t.collectionType);var i=t.mapOver();return i.isCollection&&(e=i.append(e)),e}}),d=c.extend({update:function(t){this.datatypes=t.extensions,this.multiple=t.multiple,this.collection=!1},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._otherCollectionType(e);i.isCollection&&this.setMapOver(i)}},attachable:function(t){var e=this._otherCollectionType(t),i=this.mapOver();if(e.isCollection){if(this.multiple)return!(this.connected()&&!this._collectionAttached())&&(1==e.rank&&this._producesAcceptableDatatype(t));if(i.isCollection&&i.canMatch(e))return this._producesAcceptableDatatype(t);return!!this._mappingConstraints().every(n.bind(e.canMatch,e))&&this._producesAcceptableDatatype(t)}return!i.isCollection&&this._producesAcceptableDatatype(t)}}),h=c.extend({update:function(t){this.multiple=!1,this.collection=!0,this.datatypes=t.extensions;var e=[];t.collection_types?n.each(t.collection_types,function(t){e.push(new o(t))}):e.push(r),this.collectionTypes=e},connect:function(t){c.prototype.connect.call(this,t);var e=t.handle1;if(e){var i=this._effectiveMapOver(e);this.setMapOver(i)}},_effectiveMapOver:function(t){var e=this.collectionTypes,i=this._otherCollectionType(t);if(!n.some(e,function(t){return t.canMatch(i)}))for(var o in e){var r=e[o];if(i.canMapOver(r)){var s=i.effectiveMapOver(r);if(s!=a)return s}}return a},_effectiveCollectionTypes:function(){var t=this.mapOver();return n.map(this.collectionTypes,function(e){return t.append(e)})},attachable:function(t){var e=this._otherCollectionType(t);if(e.isCollection){var i=this._effectiveCollectionTypes(),o=this.mapOver();if(n.some(i,function(t){return t.canMatch(e)}))return this._producesAcceptableDatatype(t);if(o.isCollection)return!1;if(n.some(this.collectionTypes,function(t){return e.canMapOver(t)})){var a=this._effectiveMapOver(t);if(!a.isCollection)return!1;if(this._mappingConstraints().every(a.canMatch))return this._producesAcceptableDatatype(t)}}return!1}}),f=l.extend({initialize:function(t){if(l.prototype.initialize.call(this,t),this.datatypes=t.datatypes,t.collection_type)this.collectionType=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),this.collectionType=r}this.isCollection=!0},update:function(t){var e;if(t.collection_type)e=new o(t.collection_type);else{t.collection_type_source||console.log("Warning: No collection type or collection type source defined."),e=r}e.collectionType!=this.collectionType.collectionType&&n.each(this.connectors,function(t){t.destroy()}),this.collectionType=e}});e.default={InputTerminal:d,OutputTerminal:u,InputCollectionTerminal:h,OutputCollectionTerminal:f,TerminalMapping:s,CollectionTypeDescription:o,NULL_COLLECTION_TYPE_DESCRIPTION:a,ANY_COLLECTION_TYPE_DESCRIPTION:r}}).call(e,i(0),i(1),i(2))},function(t,e,i){"use strict";(function(t,i){Object.defineProperty(e,"__esModule",{value:!0}),window.workflow_globals=window.workflow_globals||{};var n=t.View.extend({className:"form-row dataRow input-data-row",initialize:function(t){this.input=t.input,this.nodeView=t.nodeView,this.terminalElement=t.terminalElement,this.$el.attr("name",this.input.name).html(this.input.label),t.skipResize||(this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()),this.$el.css({position:"",left:"",top:"",display:""}),this.$el.remove())}}),o=t.View.extend({className:"form-row dataRow",initialize:function(t){this.output=t.output,this.terminalElement=t.terminalElement,this.nodeView=t.nodeView;var e=this.output,n=e.name,o=this.nodeView.node;if(e.extensions.indexOf("input")>=0||e.extensions.indexOf("input_collection")>=0||(n=n+" ("+e.extensions.join(", ")+")"),this.$el.html(n),this.calloutView=null,["tool","subworkflow"].indexOf(o.type)>=0){var r=new a({label:n,output:e,node:o});this.calloutView=r,this.$el.append(r.el),this.$el.hover(function(){r.hoverImage()},function(){r.resetImage()})}this.$el.css({position:"absolute",left:-1e3,top:-1e3,display:"none"}),i("body").append(this.el),this.nodeView.updateMaxWidth(this.$el.outerWidth()+17),this.$el.css({position:"",left:"",top:"",display:""}).detach()},redrawWorkflowOutput:function(){this.calloutView&&this.calloutView.resetImage()}}),a=t.View.extend({tagName:"div",initialize:function(t){this.label=t.label,this.node=t.node,this.output=t.output;var e=this,n=this.node;this.$el.attr("class","callout "+this.label).css({display:"none"}).append(i("").append(i("
").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png").click(function(){var t=e.output.name;n.isWorkflowOutput(t)?(n.removeWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")):(n.addWorkflowOutput(t),e.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png")),window.workflow_globals.workflow.has_changes=!0,window.workflow_globals.canvas_manager.draw_overview()}))).tooltip({delay:500,title:"Mark dataset as a workflow output. All unmarked datasets will be hidden."}),this.$el.css({top:"50%",margin:"-8px 0px 0px 0px",right:8}),this.$el.show(),this.resetImage()},resetImage:function(){this.node.isWorkflowOutput(this.output.name)?this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small.png"):this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-outline.png")},hoverImage:function(){this.$("img").attr("src",Galaxy.root+"static/images/fugue/asterisk-small-yellow.png")}});e.default={DataInputView:n,DataOutputView:o}}).call(e,i(1),i(0))},function(t,e,i){"use strict";(function(t,n){function o(t){return t&&t.__esModule?t:{default:t}}function a(t){var e=t.model.attributes,i=e.workflow,n=e.node;e.inputs.unshift({type:"text",name:"__annotation",label:"Annotation",fixed:!0,value:n.annotation,area:!0,help:"Add an annotation or notes to this step. Annotations are available when a workflow is viewed."}),e.inputs.unshift({type:"text",name:"__label",label:"Label",value:n.label,help:"Add a step label.",fixed:!0,onchange:function(e){var o=!1;for(var a in i.nodes){var r=i.nodes[a];if(r.label&&r.label==e&&r.id!=n.id){o=!0;break}}var s=t.data.match("__label");t.element_list[s].model.set("error_text",o&&"Duplicate label. Please fix this before saving the workflow."),t.trigger("change")}})}function r(t,e,i,n){var o=n.node.post_job_actions;e=e||[],e.push(t);for(var a in t.inputs){var s=t.inputs[a];if(s.action){if(s.name="pja__"+i+"__"+s.action,s.pja_arg&&(s.name+="__"+s.pja_arg),s.payload)for(var l in s.payload)s.payload[s.name+"__"+l]=s.payload[l],delete s.payload[l];var u=o[s.action+i];if(u){for(var c in e)e[c].expanded=!0;s.pja_arg?s.value=u.action_arguments&&u.action_arguments[s.pja_arg]||s.value:s.value="true"}}s.inputs&&r(s,e.slice(0),i,n)}}function s(t,e){var i=[],n=[],o=e.datatypes,a=e.node,s=e.workflow;for(var l in o)i.push({0:o[l],1:o[l]});for(l in a.input_terminals)n.push(a.input_terminals[l].name);i.sort(function(t,e){return t.label>e.label?1:t.labelhere for more information. Valid inputs are: '+n.join(", ")+"."},{action:"ChangeDatatypeAction",pja_arg:"newtype",label:"Change datatype",type:"select",ignore:"__empty__",value:"__empty__",options:i,help:"This action will change the datatype of the output to the indicated value."},{action:"TagDatasetAction",pja_arg:"tags",label:"Add Tags",type:"text",value:"",ignore:"",help:"This action will set tags for the dataset."},{action:"RemoveTagDatasetAction",pja_arg:"tags",label:"Remove Tags",type:"text",value:"",ignore:"",help:"This action will remove tags for the dataset."},{title:"Assign columns",type:"section",flat:!0,inputs:[{action:"ColumnSetAction",pja_arg:"chromCol",label:"Chrom column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"startCol",label:"Start column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"endCol",label:"End column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"strandCol",label:"Strand column",type:"integer",value:"",ignore:""},{action:"ColumnSetAction",pja_arg:"nameCol",label:"Name column",type:"integer",value:"",ignore:""}],help:"This action will set column assignments in the output dataset. Blank fields are ignored."}]};return r(c,[],t,e),c}function l(t){var e=t.model.attributes,i=e.inputs,n=e.node,o=n.post_job_actions,a=n.output_terminals&&Object.keys(n.output_terminals)[0];if(a){i.push({name:"pja__"+a+"__EmailAction",label:"Email notification",type:"boolean",value:String(Boolean(o["EmailAction"+a])),ignore:"false",help:"An email notification will be sent when the job has completed.",payload:{host:window.location.host}}),i.push({name:"pja__"+a+"__DeleteIntermediatesAction",label:"Output cleanup",type:"boolean",value:String(Boolean(o["DeleteIntermediatesAction"+a])),ignore:"false",help:"Upon completion of this step, delete non-starred outputs from completed workflow steps if they are no longer required as inputs."});for(var r in n.output_terminals)i.push(s(r,e))}}Object.defineProperty(e,"__esModule",{value:!0});var u=i(3),c=o(u),d=i(20),h=o(d),f=i(60),p=o(f),m=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new h.default(c.default.merge(t,{onchange:function(){c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:{id:i.id,type:i.type,content_id:i.content_id,inputs:e.form.data.create()},success:function(t){i.update_field_data(t)}})}})),a(this.form),this.form.render()}}),v=t.View.extend({initialize:function(t){var e=this,i=t.node;this.form=new p.default(c.default.merge(t,{text_enable:"Set in Advance",text_disable:"Set at Runtime",narrow:!0,initial_errors:!0,cls:"ui-portlet-narrow",initialmodel:function(t,i){e._customize(i),t.resolve()},buildmodel:function(t,e){e.model.get("postchange")(t,e)},postchange:function(t,o){var a=o.model.attributes,r={tool_id:a.id,tool_version:a.version,type:"tool",inputs:n.extend(!0,{},o.data.create())};Galaxy.emit.debug("tool-form-workflow::postchange()","Sending current state.",r),c.default.request({type:"POST",url:Galaxy.root+"api/workflows/build_module",data:r,success:function(n){o.model.set(n.config_form),e._customize(o),o.update(n.config_form),o.errors(n.config_form),i.update_field_data(n),Galaxy.emit.debug("tool-form-workflow::postchange()","Received new model.",n),t.resolve()},error:function(e){Galaxy.emit.debug("tool-form-workflow::postchange()","Refresh request failed.",e),t.reject()}})}}))},_customize:function(t){var e=t.model.attributes;c.default.deepeach(e.inputs,function(t){t.type&&(-1!=["data","data_collection"].indexOf(t.type)?(t.type="hidden",t.info="Data input '"+t.name+"' ("+c.default.textify(t.extensions)+")",t.value={__class__:"RuntimeValue"}):t.fixed||(t.collapsible_value={__class__:"RuntimeValue"},t.is_workflow=t.options&&0===t.options.length||-1!=["integer","float"].indexOf(t.type)))}),c.default.deepeach(e.inputs,function(t){"conditional"===t.type&&(t.test_param.collapsible_value=void 0)}),l(t),a(t)}});e.default={Default:m,Tool:v}}).call(e,i(1),i(0))}],[278]);
\ No newline at end of file
diff --git a/static/scripts/mvc/workflow/workflow-canvas.js b/static/scripts/mvc/workflow/workflow-canvas.js
index 92f20a0a416..c844a3ae699 100644
--- a/static/scripts/mvc/workflow/workflow-canvas.js
+++ b/static/scripts/mvc/workflow/workflow-canvas.js
@@ -1 +1 @@
-define("mvc/workflow/workflow-canvas",["exports"],function(t){"use strict";function i(t,i,e){this.app=t,this.cv=i,this.cc=this.cv.find("#canvas-container"),this.overview=e,this.oc=e.find("#overview-canvas"),this.ov=e.find("#overview-viewport"),this.init_drag()}function e(t){this.panel=t}Object.defineProperty(t,"__esModule",{value:!0}),$.extend(i.prototype,{init_drag:function(){var t=this,i=function(i,e){i=Math.min(i,t.cv.width()/2),i=Math.max(i,-t.cc.width()+t.cv.width()/2),e=Math.min(e,t.cv.height()/2),e=Math.max(e,-t.cc.height()+t.cv.height()/2),t.cc.css({left:i,top:e}),t.cv.css({"background-position-x":i,"background-position-y":e}),t.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new e(this)});var o,h;this.cv.bind("dragstart",function(){var i=$(this).offset(),e=t.cc.position();h=e.top-i.top,o=e.left-i.left}).bind("drag",function(t,e){i(e.offsetX+o,e.offsetY+h)}).bind("dragend",function(){t.app.workflow.fit_canvas_to_nodes(),t.draw_overview()}),this.overview.click(function(e){if(t.overview.hasClass("blockaclick"))t.overview.removeClass("blockaclick");else{var o=t.cc.width(),h=t.cc.height(),s=t.oc.width(),c=t.oc.height(),n=e.pageX-t.oc.offset().left-t.ov.width()/2,a=e.pageY-t.oc.offset().top-t.ov.height()/2;i(-n/s*o,-a/c*h),t.app.workflow.fit_canvas_to_nodes(),t.draw_overview()}}),this.ov.bind("drag",function(e,o){var h=t.cc.width(),s=t.cc.height(),c=t.oc.width(),n=t.oc.height(),a=o.offsetX-t.overview.offset().left,f=o.offsetY-t.overview.offset().top;i(-a/c*h,-f/n*s)}).bind("dragend",function(){t.overview.addClass("blockaclick"),t.app.workflow.fit_canvas_to_nodes(),t.draw_overview()}),$("#overview-border").bind("drag",function(i,e){var o=$(this).offsetParent(),h=o.offset(),s=Math.max(o.width()-(e.offsetX-h.left),o.height()-(e.offsetY-h.top));$(this).css({width:s,height:s}),t.draw_overview()}),$("#overview-border div").bind("drag",function(){})},update_viewport_overlay:function(){var t=this.cc,i=this.cv,e=this.oc,o=this.ov,h=t.width(),s=t.height(),c=e.width(),n=e.height(),a=t.position();o.css({left:-a.left/h*c,top:-a.top/s*n,width:i.width()/h*c-2,height:i.height()/s*n-2})},draw_overview:function(){var t,i,e,o,h=$("#overview-canvas"),s=h.parent().parent().width(),c=h.get(0).getContext("2d"),n=$("#canvas-container").width(),a=$("#canvas-container").height(),f=this.cv.width(),r=this.cv.height();n0&&(c.fillStyle="#E8A92D",c.strokeStyle="#E8A92D"),c.fillRect(f,r,v,l),c.strokeRect(f,r,v,l)}),this.update_viewport_overlay()}}),$.extend(e.prototype,{test:function(t,i){clearTimeout(this.timeout);var e=t.pageX,o=t.pageY,h=(b=$(this.panel)).position(),s=b.width(),c=b.height(),n=b.parent(),a=n.width(),f=n.height(),r=n.offset(),v=r.left,l=r.top,d=v+n.width(),w=l+n.height(),p=-(s-a/2),g=-(c-f/2),u=a/2,_=f/2,k=!1;if(e-5d){if(h.left>p){m=Math.min(23,h.left-p);b.css("left",h.left-m),k=!0}}else if(o-5w&&h.top>g){var m=Math.min(23,h.top-p);b.css("top",h.top-m+"px"),k=!0}if(k){i();var b=this;this.timeout=setTimeout(function(){b.test(t,i)},50)}},stop:function(t,i){clearTimeout(this.timeout)}}),t.default=i});
\ No newline at end of file
+define("mvc/workflow/workflow-canvas",["exports"],function(t){"use strict";function e(t,e,i){this.app=t,this.cv=e,this.cc=this.cv.find("#canvas-container"),this.overview=i,this.oc=i.find("#overview-canvas"),this.ov=i.find("#overview-viewport"),this.init_drag(),this.init_copy_paste()}function i(t){this.panel=t}Object.defineProperty(t,"__esModule",{value:!0}),$.extend(e.prototype,{init_drag:function(){var t=this,e=function(e,i){e=Math.min(e,t.cv.width()/2),e=Math.max(e,-t.cc.width()+t.cv.width()/2),i=Math.min(i,t.cv.height()/2),i=Math.max(i,-t.cc.height()+t.cv.height()/2),t.cc.css({left:e,top:i}),t.cv.css({"background-position-x":e,"background-position-y":i}),t.update_viewport_overlay()};this.cc.each(function(){this.scroll_panel=new i(this)});var o,a;this.cv.bind("dragstart",function(){var e=$(this).offset(),i=t.cc.position();a=i.top-e.top,o=i.left-e.left}).bind("drag",function(t,i){e(i.offsetX+o,i.offsetY+a)}).bind("dragend",function(){t.app.workflow.fit_canvas_to_nodes(),t.draw_overview()}),this.overview.click(function(i){if(t.overview.hasClass("blockaclick"))t.overview.removeClass("blockaclick");else{var o=t.cc.width(),a=t.cc.height(),n=t.oc.width(),s=t.oc.height(),c=i.pageX-t.oc.offset().left-t.ov.width()/2,h=i.pageY-t.oc.offset().top-t.ov.height()/2;e(-c/n*o,-h/s*a),t.app.workflow.fit_canvas_to_nodes(),t.draw_overview()}}),this.ov.bind("drag",function(i,o){var a=t.cc.width(),n=t.cc.height(),s=t.oc.width(),c=t.oc.height(),h=o.offsetX-t.overview.offset().left,r=o.offsetY-t.overview.offset().top;e(-h/s*a,-r/c*n)}).bind("dragend",function(){t.overview.addClass("blockaclick"),t.app.workflow.fit_canvas_to_nodes(),t.draw_overview()}),$("#overview-border").bind("drag",function(e,i){var o=$(this).offsetParent(),a=o.offset(),n=Math.max(o.width()-(i.offsetX-a.left),o.height()-(i.offsetY-a.top));$(this).css({width:n,height:n}),t.draw_overview()}),$("#overview-border div").bind("drag",function(){})},init_copy_paste:function(){var t=this;document.addEventListener("copy",function(e){t.app.workflow.active_node&&e.clipboardData.setData("application/json",JSON.stringify({nodeId:t.app.workflow.active_node.id})),e.preventDefault()}),document.addEventListener("paste",function(e){var i;try{i=JSON.parse(e.clipboardData.getData("application/json")).nodeId}catch(t){}i&&t.app.workflow.nodes.hasOwnProperty(i)&&t.app.workflow.nodes[i].clone(),e.preventDefault()})},update_viewport_overlay:function(){var t=this.cc,e=this.cv,i=this.oc,o=this.ov,a=t.width(),n=t.height(),s=i.width(),c=i.height(),h=t.position();o.css({left:-h.left/a*s,top:-h.top/n*c,width:e.width()/a*s-2,height:e.height()/n*c-2})},draw_overview:function(){var t,e,i,o,a=$("#overview-canvas"),n=a.parent().parent().width(),s=a.get(0).getContext("2d"),c=$("#canvas-container").width(),h=$("#canvas-container").height(),r=this.cv.width(),f=this.cv.height();c0&&(s.fillStyle="#E8A92D",s.strokeStyle="#E8A92D"),s.fillRect(r,f,v,d),s.strokeRect(r,f,v,d)}),this.update_viewport_overlay()}}),$.extend(i.prototype,{test:function(t,e){clearTimeout(this.timeout);var i=t.pageX,o=t.pageY,a=(y=$(this.panel)).position(),n=y.width(),s=y.height(),c=y.parent(),h=c.width(),r=c.height(),f=c.offset(),v=f.left,d=f.top,p=v+c.width(),l=d+c.height(),w=-(n-h/2),u=-(s-r/2),g=h/2,_=r/2,k=!1;if(i-5p){if(a.left>w){m=Math.min(23,a.left-w);y.css("left",a.left-m),k=!0}}else if(o-5l&&a.top>u){var m=Math.min(23,a.top-w);y.css("top",a.top-m+"px"),k=!0}if(k){e();var y=this;this.timeout=setTimeout(function(){y.test(t,e)},50)}},stop:function(t,e){clearTimeout(this.timeout)}}),t.default=e});
\ No newline at end of file